Как улучшить процесс разработки/тестирования/деплоя?

Доброго дня!

Подскажите, пожалуйста, как улучшить наши процессы?
Есть несколько относительно небольших проектов на yii2, один разработчик и один ПМ (я). Код на bitbacket, тестовое окружение (автоматический деплой), продакшн окружение (ручной деплой). Задачи на разработчку ставятся в WorkSection (командная система управления проектами и задачами).

Назрело несколько проблем:
- сложно отследить какие фичи оттестированы, а какие еще нет.
- сложно отследить что именно попадает в релиз.
- сложно составить changelog чтобы донести его потом до пользователей.
- собираемся брать еще 1-2 разработчиков и надо чтобы процесс разработки/деплоя не превратился в кашу.
- нет автотестов вообще

Подскажите как грамотно поступить? Может нужен таск-трекер типа JIRA для интеграции с bitbacket? Может какая то система CI? Какие правильные шаги?
  • Вопрос задан
  • 3599 просмотров
Пригласить эксперта
Ответы на вопрос 5
Серебряной пули нет, всё индивидуально, но в общем случае нужны две системы:

одна - "от PM". Это может быть и гуглодоки для начала, или Б24, или ...
вторая - "от разраба": тасктрекер, связанный с СУВ (как правило это issue в Github/Gitlab ).

Упомянутая выше JIRA или TFS вроде как "2 в 1", но, по моему опыту, для небольших проектов проще, гибче, надёжнее две отдельные системы, чем крутой корпоративный бестолковый комбайн.
Хотя, возможно, таки "пуля" есть - Redmine, но у него родовая травма в виде "сделано на Ruby"
Ответ написан
nicosha
@nicosha
VOIP Developer, DEVOps
> - сложно отследить какие фичи оттестированы, а какие еще нет.
> - сложно отследить что именно попадает в релиз.
> - сложно составить changelog чтобы донести его потом до пользователей.
> - собираемся брать еще 1-2 разработчиков и надо чтобы процесс разработки/деплоя не превратился в кашу.

1. Обязательно заведите таск трекер.
2. Согласование об именовании веток. В конце имени ветки добавляется ID таска.

- нет автотестов вообще
> Запилите автотесты.
Ответ написан
jkd
@jkd
www.fengoffice.com/web
Очередь задач
Используем несколько лет...
бесплатно и сердито...
Ну GIT разработчику обязателен
Для двоих еще не плохо https://trello.com/ подойдет
делаете столбцы - задача, на проверку, на тест, сделано... Ну или в таком духе... И все задачи туда валите.. Есть мобильная версия, так что можно задачи писать в дороге... Пришла мысль - записал...
И видно, что сделано...
Из минусов - нет статистики... Но для двоих Имхо не нужна наверное...
Ответ написан
Комментировать
возьмите тот же Trello, создайте в нем несколько колонок в стиле Agile: ToDo, In Development, Testing, ..., Release, Released (ну или другой набор, до которого Вы постепенно эволюционируете)
работайте с Git по GitFlow - это довольно удобная методология, которая наведет у вас порядок как в репозитории, как в проекте так и в релизах
если коротко:
- создаете таск
- создаете ветку из develop для этой таски (feature/*)
- кодите, коммитите, радуетесь жизни
- отдаете таску вместе с веткой тестировние (вот тут можно использовать Jenkins для того, чтобы поднять проект в тестовом окружении на какой-то ветке дабы руками не разворачивать, а можно подружить Jenkins с Bitbuket и объяснить ему, что нужно поднимать проект в тестовом окружении во время создания пулл-ректвеста feature/* => develop)
- все, что оттестировали можете сливать обратно в develop; хотя можно и не сливать их, а ждать дня релиза и тогда в develop сливать уже оттестированные фичи
- из ветки develop дулаете ветку releast/*, прогоняете по ней все регрессивное тестирование, описываете release notes
- заканчиваете релиз, мержем этой ветки в master и обратно в develop с установкой не мастере тега с номером версии
https://trello.com/
https://habrahabr.ru/post/106912/
https://jenkins.io/
мы используем JIRA+Bitbucket
Ответ написан
ulkoart
@ulkoart
JIRA интеграции с bitbacket и jenkins вполне помогут, а еще посмотрите gitlab вроде там есть некий ci.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы