'

Практика распределенной разработки в Open-Source проектах.

Понравилась презентация – покажи это...





Слайд 0

Практика распределенной разработки в Open-Source проектах. Александр Веремьев (Zend Framework core team) alexander.v@zend.com


Слайд 1

Инструментарий


Слайд 2

Управление кодом Репозиторий: Subversion (на начальных стадиях CVS) http://subversion.tigris.org/


Слайд 3

Управление кодом Репозиторий: Subversion (на начальных стадиях CVS) http://subversion.tigris.org/ Отслеживание изменений, Web интерфейс к репозиторию: FishEye (Atlassian) http://www.atlassian.com/software/fisheye/


Слайд 4

FishEye notifications


Слайд 5

FishEye notifications


Слайд 6

FishEye code browser


Слайд 7

Управление задачами JIRA issue tracker (Atlassian, http://www.atlassian.com/software/jira/) Bug tracker


Слайд 8

Управление задачами JIRA issue tracker (Atlassian, http://www.atlassian.com/software/jira/) Bug tracker Feature request tracker


Слайд 9

Управление задачами JIRA issue tracker (Atlassian, http://www.atlassian.com/software/jira/) Bug tracker Feature request tracker Unit tests problems tracker


Слайд 10

Управление задачами JIRA issue tracker (Atlassian, http://www.atlassian.com/software/jira/) Bug tracker Feature request tracker Unit tests problems tracker Documentation tasks tracker


Слайд 11

JIRA issue (пример)


Слайд 12

Пространство для документов проекта (project Wiki pages) Confluence (Atlassian, http://www.atlassian.com/software/confluence/)


Слайд 13

Тестирование PHPUnit (Sebastian Bergmann) http://www.phpunit.de/ Continous Integration Server (Atlassian) http://www.atlassian.com/software/bamboo/


Слайд 14

Коммуникации e-mails


Слайд 15

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические)


Слайд 16

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические) Аудио-конференции (Skype)


Слайд 17

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические) Аудио-конференции (Skype) IRC


Слайд 18

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические) Аудио-конференции (Skype) IRC Обмен текстовыми данными (http://paste2.org/)


Слайд 19

http://paste2.org/


Слайд 20

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические) Аудио-конференции (Skype) IRC Обмен текстовыми данными (http://paste2.org/) Wiki pages


Слайд 21

Коммуникации e-mails Списки рассылки (внутренние/общие/тематические) Аудио-конференции (Skype) IRC Обмен текстовыми данными (http://paste2.org/) Wiki pages Web сайт проекта


Слайд 22

Модель разработки, используемая в ZF


Слайд 23

Цели проекта


Слайд 24

Цели проекта Продвижение PHP в корпоративную среду:


Слайд 25

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам


Слайд 26

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам Гарантировать лицензионную чистоту, создаваемого кода


Слайд 27

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам Гарантировать лицензионную чистоту, создаваемого кода Гарантировать поддержку и сопровождение кода


Слайд 28

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам Гарантировать лицензионную чистоту, создаваемого кода Гарантировать поддержку и сопровождение кода Популяризация PHP 5 и ОО подхода в PHP


Слайд 29

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам Гарантировать лицензионную чистоту, создаваемого кода Гарантировать поддержку и сопровождение кода Популяризация PHP 5 и ОО подхода в PHP Представить на примере создаваемого framework’а пример “правильного” использования OO подхода в PHP


Слайд 30

Цели проекта Продвижение PHP в корпоративную среду: Обеспечить разработчиков framework’ом, качество которого отвечало бы корпоративным стандартам Гарантировать лицензионную чистоту, создаваемого кода Гарантировать поддержку и сопровождение кода Популяризация PHP 5 и ОО подхода в PHP Представить на примере создаваемого framework’а пример “правильного” использования OO подхода в PHP Создать спрос на поддержку PHP 5


Слайд 31

Организационная структура команды разработчиков


Слайд 32

Организационная структура команды разработчиков Core team 3-5 чел


Слайд 33

Организационная структура команды разработчиков


Слайд 34

Организационная структура команды разработчиков


Слайд 35

Community Организационная структура команды разработчиков


Слайд 36

Этапы развития проекта Zend Framework


Слайд 37

Этапы развития проекта Zend Framework Лето 2005 Старт проекта


Слайд 38

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3)


Слайд 39

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0)


Слайд 40

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1)


Слайд 41

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1) 30.06.2007 Первая официальная версия framework’а


Слайд 42

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1) 30.06.2007 Первая официальная версия framework’а Март 2008 Выход первого за v1.0.0 minor релиза (ZF 1.5.0)


Слайд 43

Release policy проекта Zend Framework Major releases (X.0.0): Может включать изменения, не поддерживающие обратную совместимость. Может включать в себя новые фичи


Слайд 44

Release policy проекта Zend Framework Major releases (X.0.0): Может включать изменения, не поддерживающие обратную совместимость. Может включать в себя новые фичи Minor releases (n.X.0) BC breaks допустимы только для исправления критических ошибок Может включать в себя новые фичи


Слайд 45

Release policy проекта Zend Framework Major releases (X.0.0): Может включать изменения, не поддерживающие обратную совместимость. Может включать в себя новые фичи Minor releases (n.X.0) BC breaks допустимы только для исправления критических ошибок Может включать в себя новые фичи Mini releases (n.m.X) BC breaks допустимы только для исправления критических ошибок Может включать только исправления ошибок


Слайд 46

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1) 30.06.2007 Первая официальная версия framework’а Март 2008 Выход первого за v1.0.0 minor релиза (ZF 1.5.0)


Слайд 47

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1) 30.06.2007 Первая официальная версия framework’а Март 2008 Выход первого за v1.0.0 minor релиза (ZF 1.5.0) Сентябрь 2008 ZF 1.6.0


Слайд 48

Этапы развития проекта Zend Framework Лето 2005 Старт проекта Апрель 2006 Выход первой публичной версии (ZF 0.1.3) Март 2007 Выход первой beta версии (ZF 0.9.0) Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1) 30.06.2007 Первая официальная версия framework’а Март 2008 Выход первого за v1.0.0 minor релиза (ZF 1.5.0) Сентябрь 2008 ZF 1.6.0 Ноябрь 2008 ZF 1.7.0 Апрель 2009 ZF 1.8.0 Июль 2009 ZF 1.9.0


Слайд 49

Этапы развития проекта Zend Framework Лето 2005 Апрель 2006 30.06.2007 I II III I. Внутренняя разработка. II. Период неофициальных версий. III. Официальное развитие framework’а.


Слайд 50

Этап I. Внутренняя разработка. Особенности Некоторая изолированность разработчиков. Разработка производится как в обычном закрытом проекте Общение всей команды происходит ~раз в месяц Задачи Наработка функционала Подготовка среды, в которой будет существовать проект (репозиторий кода, issue tracker, web сайт, …) Отработка процессов релиза framework’а


Слайд 51

Этап II. Период неофициальных версий. Особенности Необходимость сверхбыстрого реагирования на обращения пользователей и сторонних разработчиков. Отработка методов принятия коллегиальных решений в отношении действий сторонних разработчиков*. Общение всей команды происходит ~раз в неделю. Задачи Получить версию продукта 1.0.0 Привлечение к проекту сторонних разработчиков. Получить feedback от первых пользователей продукта


Слайд 52

Этап III. Официальное развитие framework'а. Особенности Повышенный overhead на коммуникации Увеличение доли задач по сопровождению Общение всей команды происходит каждый день Задачи Развитие проекта, поддержка


Слайд 53

Вопросы Александр Веремьев alexander.v@zend.com


×

HTML:





Ссылка: