Разработка:Регламент — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Работа основной команды разработчиков)
Строка 1: Строка 1:
 
''' Регламент работ над Free Dean's Office (Электронный деканат)'''
 
''' Регламент работ над Free Dean's Office (Электронный деканат)'''
 
==Работа основной команды разработчиков ==
 
==Работа основной команды разработчиков ==
 +
* На странице "Идеи" собирается список идей, пожеланий, концепций, возможностей, которые пока не отражены в документации и которые предполагается воплотить в будущих версиях. Если идея была предложена в багтреккере, помещается ссылка на соответствующее эссе.
 +
* На основании этих идей составляется "План работ" на ближайшие релизы, включающий релизы работа над которыми уже начата, либо состав которых уточняется. Для самых дальних релизов время выхода и версия может не указываться. Состав релиза может уточняться.
 +
* Когда состав работ на ближайший релиз уточнен, создается страница проекта, содержащая перечень заданий для программистов, с описанием работы, уточнениями к описанию плагина, которые будут перенесены на страницу плагина после выполнения этого задания. Если проект спонсируется и работа оплачивается, так же указывается плановая трудоемкость задания в условных человеко-часах. В проекте должен участвовать хотя бы один куратор с полномочием загрузки изменений непосредственно в SVN, который и будет заниматься загрузкой полученных от разработчиков патчей в SVN.
 +
* Когда программист берется работать над задачей из проекта, в описании задачи указывается его фамилия и фамилия куратора. Куратор консультирует разработчика по мере работы над заданием. Результат присылается в виде SVN diff (меню Create Patch в Eclipse).  Если поведение программы после применения патча отличается или уточнено по сравнению с указанным в задании, вместе с патчем разрабтчик присылает подробное описание отличий. Куратор применяет результат к своей копии проекта, выполняет приемочное тестирование, проверяет соответствие кода требованиям кодирования. Если все требования соблюдены, код работает и полностью соответствует заданию, куратор применяет изменения в SVN, с указанием ссылки на задания и приславшего патч программиста. После этого программист должен в течении трех дней отредактировать описание всех измененных плагинов, чтобы оно соответствовало новому поведению.
 +
* По мере работы над каждый плагином, обновляется страничка этого плагина в разделе Разработка. Страница должна содержать полную информацию по особенностям работы этого плагина, его внешнего API, реализованной бизнес-логике и ее нюансах. Поведение, описанное на странице плагина считается эталонным. Несоответствие работы плагина описанию на странице считается ошибкой реализации плагина. Если в плагин планируется внести изменения, непосредственно перед реализацией они описываются на странице плагина, а затем сразу же реализуются. Разрыв между изменением описания и работы плагина не должен быть больше нескольких дней. За исключением еще не созданных плагинов, работу которых допускается сперва описать полностью, а затем реализовывать.
 +
* Когда патч применен, все изменения в документации добавлены, куратор еще раз тестирует плагин и проверяет соответствие его поведения указанному в документации. Если все соответствует, отмечает задание выполненным.
 +
* После окончания проекта и выпуска релиза, информацию по данному релизу из плана работ перемещается на страницу релизов, там же помещается ссылка на страницу проекта, которая сохраняется в качестве истории работы над проектом.
 +
 
==Работа независимых разработчиков и команд ==
 
==Работа независимых разработчиков и команд ==
 
== Документы, используемые в разработке ==
 
== Документы, используемые в разработке ==

Версия 19:00, 7 мая 2009

Регламент работ над Free Dean's Office (Электронный деканат)

Работа основной команды разработчиков

  • На странице "Идеи" собирается список идей, пожеланий, концепций, возможностей, которые пока не отражены в документации и которые предполагается воплотить в будущих версиях. Если идея была предложена в багтреккере, помещается ссылка на соответствующее эссе.
  • На основании этих идей составляется "План работ" на ближайшие релизы, включающий релизы работа над которыми уже начата, либо состав которых уточняется. Для самых дальних релизов время выхода и версия может не указываться. Состав релиза может уточняться.
  • Когда состав работ на ближайший релиз уточнен, создается страница проекта, содержащая перечень заданий для программистов, с описанием работы, уточнениями к описанию плагина, которые будут перенесены на страницу плагина после выполнения этого задания. Если проект спонсируется и работа оплачивается, так же указывается плановая трудоемкость задания в условных человеко-часах. В проекте должен участвовать хотя бы один куратор с полномочием загрузки изменений непосредственно в SVN, который и будет заниматься загрузкой полученных от разработчиков патчей в SVN.
  • Когда программист берется работать над задачей из проекта, в описании задачи указывается его фамилия и фамилия куратора. Куратор консультирует разработчика по мере работы над заданием. Результат присылается в виде SVN diff (меню Create Patch в Eclipse). Если поведение программы после применения патча отличается или уточнено по сравнению с указанным в задании, вместе с патчем разрабтчик присылает подробное описание отличий. Куратор применяет результат к своей копии проекта, выполняет приемочное тестирование, проверяет соответствие кода требованиям кодирования. Если все требования соблюдены, код работает и полностью соответствует заданию, куратор применяет изменения в SVN, с указанием ссылки на задания и приславшего патч программиста. После этого программист должен в течении трех дней отредактировать описание всех измененных плагинов, чтобы оно соответствовало новому поведению.
  • По мере работы над каждый плагином, обновляется страничка этого плагина в разделе Разработка. Страница должна содержать полную информацию по особенностям работы этого плагина, его внешнего API, реализованной бизнес-логике и ее нюансах. Поведение, описанное на странице плагина считается эталонным. Несоответствие работы плагина описанию на странице считается ошибкой реализации плагина. Если в плагин планируется внести изменения, непосредственно перед реализацией они описываются на странице плагина, а затем сразу же реализуются. Разрыв между изменением описания и работы плагина не должен быть больше нескольких дней. За исключением еще не созданных плагинов, работу которых допускается сперва описать полностью, а затем реализовывать.
  • Когда патч применен, все изменения в документации добавлены, куратор еще раз тестирует плагин и проверяет соответствие его поведения указанному в документации. Если все соответствует, отмечает задание выполненным.
  • После окончания проекта и выпуска релиза, информацию по данному релизу из плана работ перемещается на страницу релизов, там же помещается ссылка на страницу проекта, которая сохраняется в качестве истории работы над проектом.

Работа независимых разработчиков и команд

Документы, используемые в разработке

Идеи

[[Разработка:Идеи|Идеи]]

Задачи для разработки, которые еще не отражены в плане работ и документации. Новые идеи добавляются сверху. По мере исполнения - отмечаются перечеркнутым шрифтом.

План работ

[[Разработка:План работ|План работ]]

Общий план работ по будущим релизам. В плане работ отмечаются задачи, запланированные на ближайшие релизы, компоновка и очередность исполнения задач.

Проект

Проектом считается набор запланированных заданий для программистов, в результате выполнения которых произойдет переход от текущего релиза к следующему. Так же проектом может считаться разработка одного или набора плагинов, реализующих новые возможности. Для каждого проекта заводится отдельная страница в вики, имя которой формируется по следующей схеме [[Разработка:Проект_090416]], где дата - это дата старта проекта. После окончания проекта, страница проекта помечается доступной только для чтения и ссылка на нее помещается в информацию по данному релизу. Шаблон страницы проекта:

Релизы

[[Разработка:Релизы|Релизы]]

На странице релизов отмечается информация по уже выпущенным релизам с кратким описанием новшеств в этих релизах, ссылкой на страницу проекта и списком участвующих программистов и организаций.

Страница плагина

Шаблон страницы проекта: