В прошлой раз я рассказал о предыстории написания этого блока статей. В этой статье я расскажу о том фундаменте, который нужно заложить для дальнейшей постройки процесса разработки программного обеспечения.
Но прежде еще раз уточнюсь что на момент нулевой точки не было ни общего плана проекта(со промежуточными сроками), ни полного перечня работ, ни регулярных собраний по проекту. Задачи поднимались так сказать интуитивно. Надо отдать должное разработчиками – благо с виденьем большинства проблем у них было все замечательно.
Для дальнейших работ и для того, чтобы процессом хоть как-то начать управлять надо было перекладывать его на твердое основание. Этим твердым основанием в моем случае послужила Система управления задачами и ошибками Redmine, База знаний Wiki, Система контроля версий SVN и регулярные еженедельные совещания по проекту.
Все продукты с открытым кодом и достаточно просты в использовании. Здесь же надо сказать об отличной связке Redmine c различными системами контроля версий, благодаря которой выполнение каждой задачи можно отследить с точностью до изменения сроки кода и затраченного на это времени.
Теперь по-шагово:
1) Согласовываем решение с руководством, если это возможно, или не особо согласовываем, если это невозможно. (Практика показывает, что стоит сначала что-то начать, потом уже показывать)
2) Сообщаем команде, например в понедельник, что начнем пользоваться современными системами багтрекинга и системой контроля версий, чтобы их не отрывать по каждой ошибке, чтобы все ошибки можно было фиксировать, и в будущем не вызывать их из отпуска по какой-то мелочи. (Это и на самом деле так)
3) Выделяем время и устанавливаем Redmine, Wiki и SVN. (1 день)
4) Прикручиваем SVN к Redmine (или поднимаем уже прикрученный) (до 1 недели)
5) Настраиваем, вбиваем пользователей, почту.
6) Берем один небольшой проект и переносим все задачи в редмайн – еще 1 день.
7) Пишем краткую инструкцию по пользованию связкой Redmine и SVN и учетом времени. (если кому-надо рыбу могу скинуть)
8) Начинаем всем этим пользоваться – и немного корректировать во время работы.
На этом первый шаг закончен!!!!
У меня качественный прогресс уже есть. Мы используем redmine и ежедневно фиксируемся в SVN с указанием количества затраченного времени. Конечно, понадобилось использовать различные подходы к ежедневному фиксированию всей команды, однако результат на лицо. Все работают в едином пространстве и не требуется постоянно следить за версиями и т.д.
П.С. Сам я начинал постройку данных инструментов со статьи «Интеграция Open Source-систем для управления разработкой ПО» Стас Фомин Customized InformSystems email: stas@custis.ru