Слайд 3Управление кодом
Репозиторий:
Subversion (на начальных стадиях CVS)
http://subversion.tigris.org/
Слайд 4Управление кодом
Репозиторий:
Subversion (на начальных стадиях CVS)
http://subversion.tigris.org/
Отслеживание изменений,
Web интерфейс к репозиторию:
FishEye
(Atlassian)
http://www.atlassian.com/software/fisheye/
Слайд 8Управление задачами
JIRA issue tracker
(Atlassian, http://www.atlassian.com/software/jira/)
Bug tracker
Слайд 9Управление задачами
JIRA issue tracker
(Atlassian, http://www.atlassian.com/software/jira/)
Bug tracker
Feature request tracker
Слайд 10Управление задачами
JIRA issue tracker
(Atlassian, http://www.atlassian.com/software/jira/)
Bug tracker
Feature request tracker
Unit tests problems tracker
Слайд 11Управление задачами
JIRA issue tracker
(Atlassian, http://www.atlassian.com/software/jira/)
Bug tracker
Feature request tracker
Unit tests problems tracker
Documentation
tasks tracker
Слайд 13Пространство для документов проекта
(project Wiki pages)
Confluence
(Atlassian, http://www.atlassian.com/software/confluence/)
Слайд 14Тестирование
PHPUnit (Sebastian Bergmann)
http://www.phpunit.de/
Continous Integration Server (Atlassian)
http://www.atlassian.com/software/bamboo/
Слайд 16Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Слайд 17Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Аудио-конференции (Skype)
Слайд 18Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Аудио-конференции (Skype)
IRC
Слайд 19Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Аудио-конференции (Skype)
IRC
Обмен текстовыми данными (http://paste2.org/)
Слайд 21Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Аудио-конференции (Skype)
IRC
Обмен текстовыми данными (http://paste2.org/)
Wiki pages
Слайд 22Коммуникации
e-mails
Списки рассылки (внутренние/общие/тематические)
Аудио-конференции (Skype)
IRC
Обмен текстовыми данными (http://paste2.org/)
Wiki pages
Web сайт проекта
Слайд 23Модель разработки, используемая в ZF
Слайд 25Цели проекта
Продвижение PHP в корпоративную среду:
Слайд 26Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Слайд 27Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Гарантировать лицензионную чистоту, создаваемого кода
Слайд 28Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Гарантировать лицензионную чистоту, создаваемого кода
Гарантировать поддержку и сопровождение кода
Слайд 29Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Гарантировать лицензионную чистоту, создаваемого кода
Гарантировать поддержку и сопровождение кода
Популяризация PHP 5 и ОО подхода в PHP
Слайд 30Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Гарантировать лицензионную чистоту, создаваемого кода
Гарантировать поддержку и сопровождение кода
Популяризация PHP 5 и ОО подхода в PHP
Представить на примере создаваемого framework’а пример “правильного” использования OO подхода в PHP
Слайд 31Цели проекта
Продвижение PHP в корпоративную среду:
Обеспечить разработчиков framework’ом, качество которого отвечало
бы корпоративным стандартам
Гарантировать лицензионную чистоту, создаваемого кода
Гарантировать поддержку и сопровождение кода
Популяризация PHP 5 и ОО подхода в PHP
Представить на примере создаваемого framework’а пример “правильного” использования OO подхода в PHP
Создать спрос на поддержку PHP 5
Слайд 32Организационная структура
команды разработчиков
Слайд 33Организационная структура
команды разработчиков
Core team
3-5 чел
Слайд 34Организационная структура
команды разработчиков
Слайд 35Организационная структура
команды разработчиков
Слайд 36Community
Организационная структура
команды разработчиков
Слайд 37Этапы развития проекта Zend Framework
Слайд 38Этапы развития проекта Zend Framework
Лето 2005 Старт проекта
Слайд 39Этапы развития проекта Zend Framework
Лето 2005 Старт проекта
Апрель 2006 Выход первой публичной версии (ZF
0.1.3)
Слайд 40Этапы развития проекта Zend Framework
Лето 2005 Старт проекта
Апрель 2006 Выход первой публичной версии (ZF
0.1.3)
Март 2007 Выход первой beta версии (ZF 0.9.0)
Слайд 41Этапы развития проекта Zend Framework
Лето 2005 Старт проекта
Апрель 2006 Выход первой публичной версии (ZF
0.1.3)
Март 2007 Выход первой beta версии (ZF 0.9.0)
Конец мая 2007 Выход первого RC (ZF 1.0.0 RC1)
Слайд 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’а
Слайд 43Этапы развития проекта 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)
Слайд 44Release policy проекта Zend Framework
Major releases (X.0.0):
Может включать изменения, не поддерживающие
обратную совместимость.
Может включать в себя новые фичи
Слайд 45Release policy проекта Zend Framework
Major releases (X.0.0):
Может включать изменения, не поддерживающие
обратную совместимость.
Может включать в себя новые фичи
Minor releases (n.X.0)
BC breaks допустимы только для исправления критических ошибок
Может включать в себя новые фичи
Слайд 46Release policy проекта Zend Framework
Major releases (X.0.0):
Может включать изменения, не поддерживающие
обратную совместимость.
Может включать в себя новые фичи
Minor releases (n.X.0)
BC breaks допустимы только для исправления критических ошибок
Может включать в себя новые фичи
Mini releases (n.m.X)
BC breaks допустимы только для исправления критических ошибок
Может включать только исправления ошибок
Слайд 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)
Слайд 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
Слайд 49Этапы развития проекта 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
Слайд 50Этапы развития проекта Zend Framework
Лето 2005
Апрель 2006
30.06.2007
I
II
III
I. Внутренняя разработка.
II. Период неофициальных версий.
III.
Официальное развитие framework’а.
Слайд 51Этап I. Внутренняя разработка.
Особенности
Некоторая изолированность разработчиков.
Разработка производится как в обычном закрытом
проекте
Общение всей команды происходит ~раз в месяц
Задачи
Наработка функционала
Подготовка среды, в которой будет существовать проект (репозиторий кода, issue tracker, web сайт, …)
Отработка процессов релиза framework’а
Слайд 52Этап II. Период неофициальных версий.
Особенности
Необходимость сверхбыстрого реагирования на обращения пользователей и
сторонних разработчиков.
Отработка методов принятия коллегиальных решений в отношении действий сторонних разработчиков*.
Общение всей команды происходит ~раз в неделю.
Задачи
Получить версию продукта 1.0.0
Привлечение к проекту сторонних разработчиков.
Получить feedback от первых пользователей продукта
Слайд 53Этап III. Официальное развитие framework'а.
Особенности
Повышенный overhead на коммуникации
Увеличение доли задач по сопровождению
Общение
всей команды происходит каждый день
Задачи
Развитие проекта, поддержка