Разработка:Регламент — различия между версиями
Alex (обсуждение | вклад) (Новая: ''' Регламент работ над Free Dean's Office (Электронный деканат)''' ==Работа основной команды разработчиков == ==Ра...) |
Alex (обсуждение | вклад) (ссылка на шаблон) |
||
(не показано 10 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
''' Регламент работ над Free Dean's Office (Электронный деканат)''' | ''' Регламент работ над Free Dean's Office (Электронный деканат)''' | ||
==Работа основной команды разработчиков == | ==Работа основной команды разработчиков == | ||
+ | * На странице "Идеи" собирается список идей, пожеланий, концепций, возможностей, которые пока не отражены в документации и которые предполагается воплотить в будущих версиях. Если идея была предложена в багтреккере, помещается ссылка на соответствующее эссе. | ||
+ | * На основании этих идей составляется "План работ" на ближайшие релизы, включающий релизы работа над которыми уже начата, либо состав которых уточняется. Для самых дальних релизов время выхода и версия может не указываться. Состав релиза может уточняться. | ||
+ | * Когда состав работ на ближайший релиз уточнен, создается страница проекта, содержащая перечень заданий для программистов, с описанием работы, уточнениями к описанию плагина, которые будут перенесены на страницу плагина после выполнения этого задания. Если проект спонсируется и работа оплачивается, так же указывается плановая трудоемкость задания в условных человеко-часах. В проекте должен участвовать хотя бы один куратор с полномочием загрузки изменений непосредственно в SVN, который и будет заниматься загрузкой полученных от разработчиков патчей в SVN. | ||
+ | * Когда программист берется работать над задачей из проекта, в описании задачи указывается его фамилия и фамилия куратора. Куратор консультирует разработчика по мере работы над заданием. Результат присылается в виде SVN diff (меню Create Patch в Eclipse). Если поведение программы после применения патча отличается или уточнено по сравнению с указанным в задании, вместе с патчем разрабтчик присылает подробное описание отличий. Куратор применяет результат к своей копии проекта, выполняет приемочное тестирование, проверяет соответствие кода требованиям кодирования. Если все требования соблюдены, код работает и полностью соответствует заданию, куратор применяет изменения в SVN, с указанием ссылки на задания и приславшего патч программиста. После этого программист должен в течении трех дней отредактировать описание всех измененных плагинов, чтобы оно соответствовало новому поведению. | ||
+ | * По мере работы над каждый плагином, обновляется страничка этого плагина в разделе Разработка. Страница должна содержать полную информацию по особенностям работы этого плагина, его внешнего API, реализованной бизнес-логике и ее нюансах. Поведение, описанное на странице плагина считается эталонным. Несоответствие работы плагина описанию на странице считается ошибкой реализации плагина. Если в плагин планируется внести изменения, непосредственно перед реализацией они описываются на странице плагина, а затем сразу же реализуются. Разрыв между изменением описания и работы плагина не должен быть больше нескольких дней. За исключением еще не созданных плагинов, работу которых допускается сперва описать полностью, а затем реализовывать. | ||
+ | * Когда патч применен, все изменения в документации добавлены, куратор еще раз тестирует плагин и проверяет соответствие его поведения указанному в документации. Если все соответствует, отмечает задание выполненным. | ||
+ | * После окончания проекта и выпуска релиза, информацию по данному релизу из плана работ перемещается на страницу релизов, там же помещается ссылка на страницу проекта, которая сохраняется в качестве истории работы над проектом. | ||
+ | |||
==Работа независимых разработчиков и команд == | ==Работа независимых разработчиков и команд == | ||
== Документы, используемые в разработке == | == Документы, используемые в разработке == | ||
=== [[Разработка:Идеи|Идеи]] === | === [[Разработка:Идеи|Идеи]] === | ||
+ | <nowiki>[[Разработка:Идеи|Идеи]]</nowiki> | ||
+ | |||
Задачи для разработки, которые еще не отражены в плане работ и документации. Новые идеи добавляются сверху. По мере исполнения - отмечаются <strike>перечеркнутым шрифтом</strike>. | Задачи для разработки, которые еще не отражены в плане работ и документации. Новые идеи добавляются сверху. По мере исполнения - отмечаются <strike>перечеркнутым шрифтом</strike>. | ||
=== [[Разработка:План работ|План работ]] === | === [[Разработка:План работ|План работ]] === | ||
+ | <nowiki>[[Разработка:План работ|План работ]]</nowiki> | ||
+ | |||
Общий план работ по будущим релизам. В плане работ отмечаются задачи, запланированные на ближайшие релизы, компоновка и очередность исполнения задач. | Общий план работ по будущим релизам. В плане работ отмечаются задачи, запланированные на ближайшие релизы, компоновка и очередность исполнения задач. | ||
=== Проект === | === Проект === | ||
+ | <nowiki>[[Разработка:Проект_yymmdd|Проект yymmdd (весия x => y]]</nowiki>, где yymmdd - это дата старта проекта | ||
+ | |||
Проектом считается набор запланированных заданий для программистов, в результате выполнения которых произойдет переход от текущего релиза к следующему. Так же проектом может считаться разработка одного или набора плагинов, реализующих новые возможности. | Проектом считается набор запланированных заданий для программистов, в результате выполнения которых произойдет переход от текущего релиза к следующему. Так же проектом может считаться разработка одного или набора плагинов, реализующих новые возможности. | ||
− | + | ||
− | |||
После окончания проекта, страница проекта помечается доступной только для чтения и ссылка на нее помещается в информацию по данному релизу. | После окончания проекта, страница проекта помечается доступной только для чтения и ссылка на нее помещается в информацию по данному релизу. | ||
Шаблон страницы проекта: | Шаблон страницы проекта: | ||
+ | |||
=== [[Разработка:Релизы|Релизы]] === | === [[Разработка:Релизы|Релизы]] === | ||
+ | <nowiki>[[Разработка:Релизы|Релизы]]</nowiki> | ||
+ | |||
На странице релизов отмечается информация по уже выпущенным релизам с кратким описанием новшеств в этих релизах, ссылкой на страницу проекта и списком участвующих программистов и организаций. | На странице релизов отмечается информация по уже выпущенным релизам с кратким описанием новшеств в этих релизах, ссылкой на страницу проекта и списком участвующих программистов и организаций. | ||
=== Страница плагина === | === Страница плагина === | ||
− | Шаблон страницы | + | Описание плагина, содержит подробную информацию о работе и устройстве плагина. Предназначено для разработчиков, но должно содержать всю необходимую информацию для написания пользовательских инструкций. |
+ | <nowiki>[[Разработка:тип_плагина/код_планина]]</nowiki> | ||
+ | |||
+ | Шаблон страницы плагина: | ||
+ | [[:Шаблон:Infobox_Plugin]] | ||
+ | |||
+ | [[Категория:Разработка]] |
Текущая версия на 18:42, 12 октября 2009
Регламент работ над Free Dean's Office (Электронный деканат)
Содержание
Работа основной команды разработчиков
- На странице "Идеи" собирается список идей, пожеланий, концепций, возможностей, которые пока не отражены в документации и которые предполагается воплотить в будущих версиях. Если идея была предложена в багтреккере, помещается ссылка на соответствующее эссе.
- На основании этих идей составляется "План работ" на ближайшие релизы, включающий релизы работа над которыми уже начата, либо состав которых уточняется. Для самых дальних релизов время выхода и версия может не указываться. Состав релиза может уточняться.
- Когда состав работ на ближайший релиз уточнен, создается страница проекта, содержащая перечень заданий для программистов, с описанием работы, уточнениями к описанию плагина, которые будут перенесены на страницу плагина после выполнения этого задания. Если проект спонсируется и работа оплачивается, так же указывается плановая трудоемкость задания в условных человеко-часах. В проекте должен участвовать хотя бы один куратор с полномочием загрузки изменений непосредственно в SVN, который и будет заниматься загрузкой полученных от разработчиков патчей в SVN.
- Когда программист берется работать над задачей из проекта, в описании задачи указывается его фамилия и фамилия куратора. Куратор консультирует разработчика по мере работы над заданием. Результат присылается в виде SVN diff (меню Create Patch в Eclipse). Если поведение программы после применения патча отличается или уточнено по сравнению с указанным в задании, вместе с патчем разрабтчик присылает подробное описание отличий. Куратор применяет результат к своей копии проекта, выполняет приемочное тестирование, проверяет соответствие кода требованиям кодирования. Если все требования соблюдены, код работает и полностью соответствует заданию, куратор применяет изменения в SVN, с указанием ссылки на задания и приславшего патч программиста. После этого программист должен в течении трех дней отредактировать описание всех измененных плагинов, чтобы оно соответствовало новому поведению.
- По мере работы над каждый плагином, обновляется страничка этого плагина в разделе Разработка. Страница должна содержать полную информацию по особенностям работы этого плагина, его внешнего API, реализованной бизнес-логике и ее нюансах. Поведение, описанное на странице плагина считается эталонным. Несоответствие работы плагина описанию на странице считается ошибкой реализации плагина. Если в плагин планируется внести изменения, непосредственно перед реализацией они описываются на странице плагина, а затем сразу же реализуются. Разрыв между изменением описания и работы плагина не должен быть больше нескольких дней. За исключением еще не созданных плагинов, работу которых допускается сперва описать полностью, а затем реализовывать.
- Когда патч применен, все изменения в документации добавлены, куратор еще раз тестирует плагин и проверяет соответствие его поведения указанному в документации. Если все соответствует, отмечает задание выполненным.
- После окончания проекта и выпуска релиза, информацию по данному релизу из плана работ перемещается на страницу релизов, там же помещается ссылка на страницу проекта, которая сохраняется в качестве истории работы над проектом.
Работа независимых разработчиков и команд
Документы, используемые в разработке
Идеи
[[Разработка:Идеи|Идеи]]
Задачи для разработки, которые еще не отражены в плане работ и документации. Новые идеи добавляются сверху. По мере исполнения - отмечаются перечеркнутым шрифтом.
План работ
[[Разработка:План работ|План работ]]
Общий план работ по будущим релизам. В плане работ отмечаются задачи, запланированные на ближайшие релизы, компоновка и очередность исполнения задач.
Проект
[[Разработка:Проект_yymmdd|Проект yymmdd (весия x => y]], где yymmdd - это дата старта проекта
Проектом считается набор запланированных заданий для программистов, в результате выполнения которых произойдет переход от текущего релиза к следующему. Так же проектом может считаться разработка одного или набора плагинов, реализующих новые возможности.
После окончания проекта, страница проекта помечается доступной только для чтения и ссылка на нее помещается в информацию по данному релизу. Шаблон страницы проекта:
Релизы
[[Разработка:Релизы|Релизы]]
На странице релизов отмечается информация по уже выпущенным релизам с кратким описанием новшеств в этих релизах, ссылкой на страницу проекта и списком участвующих программистов и организаций.
Страница плагина
Описание плагина, содержит подробную информацию о работе и устройстве плагина. Предназначено для разработчиков, но должно содержать всю необходимую информацию для написания пользовательских инструкций. [[Разработка:тип_плагина/код_планина]]
Шаблон страницы плагина: Шаблон:Infobox_Plugin