- PVSM.RU - https://www.pvsm.ru -
Привет, у нас довольно большой поток разношерстных проектов. В какой-то момент нам пришла в голову светлая идея создать внутреннюю хартию ведения проектов, с которой соглашается каждый участник команды. Есть надежда, что это сократит издержки, увеличит качество и уменьшит количество неразберихи, позволит проще вводить новых «игроков» и вообще В качестве системы управления проектами выбрана Redmine, и надо сказать даже в default устанвоке эта штука правильно решает много вопросов за тебя: разделение на ОшибкаУлучшение, интеграция Git, лог действий, подпроекты, удобная Wiki и.т.д.
Каждое приложение — один проект в формате Redmine
Например, мобильное приложение «Для поиска свежего хлеба». Скорее всего приложение будет иметь три стороны: web, android&iOs, тогда структура проектов выглядит так:
Задачи внутри проекта
Стандартный процесс статусов задачи (М. — менеджер, П. — программист): М.Создана → П.В работе → П.Решена → М.Закрыта. (М. при необходимости менять на К — клиент)
Уточнение параметров задачи: М. Создана → П. Обратная связь → М. Обратная связь → П. В работе.
Типа задач: Ошибка — багфикс, Поддержка — плановая работа, Улучшение — работы не входящие в первоначальный план.
Мало, но емко в Wiki.
Например: FTP доступ, контакты участников команды и.т.д. Иначе говоря информация несущая административный характер. Redmine — стремление построить единое информационное пространство, в котором каждому участнику команды доступна вся необходимая информация.
Git
Обязательность связки коммит-задача. По возможности, следовать правилу одна выполненная задача — привязанный коммит. И соответственно наоборот, к каждому коммиту привязана задача. При описании коммита (commit -m), указать ид задача — «refs #Issue ID».
Миграции БД
Программист создает в корне проект файл migration.sql в котором содержится инструкция к созданию БД.
Хранение файлов
Файлы — хранение файлов внутри дирректории проекта. PSD и PDF в соответствующих папках внутри первичного проекта (design и ui). Таким образом сохраняется история рисования, места на hdd не жалко).
Описание test-cases.
По мере реализации проекта, менеджер совместно с программистом описывают сценарии тестирования приложения. В завершении каждого микрорелиза, в конце спринта проводится регрессивное тестирование проекта. На основании выполненных задач в релизе документ дополняется.
Майлстоуны
Мы поддерживаем идеологию непрерывной интеграции, при старте проекта менеджер проекта оценивает ключевые этапы в разработке проекта. И отмечает их на оперативном плане. Например, «Возможна регистрация пользователей» 15-го мая. Таким образом можно примерно оценить протяженность проекта, стоимость и нагрузку специалистов.
Не проверено на практике Спринт
Длительность спринта для каждого проекта варьируется от 3-х до 5 рабочих дней, и для каждой команды устанавливается индивидуально. В начале спринта команда совместно выбирает задачи для следующей итерации (берется в учет выставленный приоритет и личный интерес к задаче). По окончании спринта команда встречается на «ретроспективе», обсуждая ход предыдущего спринта, как правило это не занимает более 20 минут. Итак, на входе есть задачи, в процессе спринта они решаются, в результате получаем рабочие интерфейсы. Если задача не решена в ходе спринта, программист в комментариях описывает причину. В конце каждого спринта команда проводит регрессивное тестирование.
Алгоритм реализации проекта
P.S. Итак, %username%, обращаюсь к тебе. Все пункты проверены на практике и написаны кровью. Но если ты поделишься капелькой мудрости, я буду очень благодарен. Конкрентно интересует, как вы используете Redmine, есть ли у вас в команде стандарты написания кода?
Автор: RUQ
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/php-2/9955
Нажмите здесь для печати.