Не бывает одного верного процесса разработки. Разные типы продуктов, клиенты, сложность, состав команды и многое другое влияют на процесс, который позволит эффективно вести разработку ПО. Мы упаковали "в коробку" несколько типовых процессов для наиболее распространенных ситуаций.
Начните с использования "коробочного" процесса и настройте его таким образом, чтобы он отражал специфику именно вашей команды, проекта или организации.
Тонкая настройка процесса заключается в следующем:
Выполненные настройки затем можно сохранить для повторного использования в качестве процесса. На базе этого процесса можно создавать новые проекты и активности, либо применять эти настройки к ранее созданным проектам и активностям.
Управление списком ранее созданных процессов осуществляется в административном разделе приложения, в меню Проекты - Процессы.
Все основные проектные артефакты имеют свой жизненный цикл (ЖЦ), который используется для управления этими артефактами. Первичные требования (пожелания) создаются, прорабатываются, реализуются, тестируются и т.п. Каждый статус (этап) связан с технологией производства. Системные требования в свою очередь разрабатываются, утверждаются, согласуются и затем реализуются. Эти статусы связаны с разработкой и документированием требований.
С каждым статусом могут быть связаны:
Система отслеживает время, которое артефакт находится в каждом состоянии. Поле "Время в состоянии" отображает это время и может быть выведено в списках или на досках. Система также считает общую длительность жизненного цикла. Чтобы узнать, например, сколько времени мы разрабатывали конкретный раздел документа. В некоторых состояниях команда не работает с артефактом, например, ждем согласования от заказчика. Чтобы время ожидания не искажало продолжительность жизненного цикла, его можно исключить из учета установив галочку "Исключить из времени решения время нахождения в этом состоянии".
Базовое состояние позволяет понять системе, на каком участке ЖЦ находится артефакт - он только что создан, он находится в работе или работа над ним завершена, без детализации. Базовые состояния используются в системных действиях, для отображения UID-ов артефактов, а также для построения кросс-проектных досок.
Правила перехода из одного состояния в другое задаются "Переходами". В настройках перехода можно указать - нужно ли запросить причину изменения статуса, каким ролям можно выполнять такой переход, какие при этом должны быть соблюдены предусловия. Также на конкретные переходы можно "повесить" системные действия или очистку значений полей.
Вы можете разработать PHP-скрипт, который установить в качестве предусловия для перехода. Если условие выполняется, то скрипт должен вернуть true, если нет, то false. Перед выполнением перехода, система выполнит скрипт. В зависимости от результата, операция либо будет успешной, либо система сообщит о нарушении предусловия для перехода. Функциональность доступна при наличии лицензии модуля "Скриптовая автоматизация" и настроенных правах на этот модуль. Результаты работы скриптов можно отслеживать в Административном разделе, в модуле PHP-скрипты.
Для состояний пожеланий и доработок можно задать дополнительные параметры:
Системные действия для первичных требований (Пожеланий и Доработок) можно расширять при помощи автоматических действий. Эти действия позволяют менять атрибуты пожеланий, сбрасывать их значения, создавать задачи или комментарии при изменении статуса, значений атрибутов, при создании комментариев или по расписанию.
Ошибки или доработки являются разными типами одного артефакта (Пожелание или История пользователя), также бывают разного типа задачи, требования и другие проектные артефакты. Возможна настройка различных ЖЦ (статусных моделей) для разных типов одного артефакта.
Различия в ЖЦ могут быть незначительными и существенными. Например, если Ошибка должна пройти дополнительную стадию воспроизведения силами тестировщика, то такое отличие в ЖЦ от остальных пожеланий является незначительным. С другой стороны, Заявки обрабатываемые поддержкой и Пожелания реализуемые командой разработки имеют совершенно разные ЖЦ.
Степень отличия ЖЦ | Способы настройки |
---|---|
Незначительные отличия | В настройках переходов можно использовать предикаты "Тип: Ошибка" для того, чтобы предоставлять возможность перемещать в конкретное состояние артефакты конкретного типа. |
Значительные отличия | Как правило, существенные отличия в ЖЦ связаны с различными процессами, в которые вовлечен данный артефакт. Например, обработка заявок (пользовательских требований) на первой линии поддержки требует и дополнительной настройки интерфейса ПО. По этой причине разные ЖЦ для пользовательских требований оформляются разными процессами (проектами). Объединить такие процессы и проекты в общее пространство управления можно при помощи Программы проектов или Портфеля проектов. Таким образом, на уровне программы проектов видны все пользовательские требования, а на уровне подпроектов (отличающихся процессов), можно управлять ЖЦ конкретным пользовательским требованием в зависимости от этапа обработки: поддержка или реализация. |
Модуль "Детализация времени цикла..." позволяет проанализировать нахождение подмножества артефактов в различных состояниях и выявить: время нахождения в состоянии, процент времени нахождения от общего времени цикла и т.п.
У системных действий могут быть параметры, о значении которых можно узнать из таблицы ниже.
Для системных действий можно указать признак "Уведомлять пользователя перед выполнением действия", который позволит сообщить заранее, что при выполнении перехода или изменении состояния, будет выполнено данное системное действие. Например, это может пригодиться при выполнении каскадных действий, таких как изменение статусов родительских или дочерних разделов требований, тестовой или эксплуатационной документации.
Название действия | Назначение и особенности использования |
---|---|
Изменить состояние исходных пожеланий |
Если историю, пожелание или заявку связать с одним или несколькими пожеланиями с использованием связи типа "Реализация", то при помощи данного системного действия можно управлять состоянием этих пожеланий. В качестве параметра необходимо указать ссылочное имя состояния, в которое необходимо переместить исходные пожелания. |
Реализовать в проекте |
При выполнении системного действия, будет создана копия пожелания, истории или заявки в целевом проекте. Между пожеланиям будет установлена связь с типом "Реализация". Кодовое имя целевого проекта, где необходимо создать копию, указывается в параметрах системного действия. Можно указать несколько кодовых названий, разделенных запятой. В этом случае будут созданы несколько реализаций исходного пожелания. |
Название действия | Назначение и особенности использования |
---|---|
Изменить состояние истории или пожелания (по первому переходу), если все задачи текущего этапа имеют одно состояние |
Например, история или доработка находится на стадии разработки. При этом история декомпозирована на задачи тестирования, документирования и т.п. Необходимо автоматически перенести историю на стадию тестирования, если все задачи, связанные с разработкой выполнены. Привязка типов задач к этапу (состоянию истории или доработки) осуществляется на форме изменения статуса доработки: |
Переместить связанные артефакт в следующее состояние |
Связанным артефактом может быть бизнес- или системное требование, тестовый сценарий или раздел технической документации. Данное действие позволяет автоматизировать изменение состояние связанного артефакта, например, при завершении задачи. Варианты применения:
|
Название действия | Назначение и особенности использования |
---|---|
Отметить устаревшей документацию связанной функции |
С требованием может быть связана одна или несколько функций. Это означает, что данное требование уточняет (специфицирует) эти функции системы или фичи продукта. С функциями также могут быть связаны тестовые сценарии или разделы эксплуатационной документации. Данное системное действие позволяет отметить устаревшей документацию, связанную с функциями. |
Для настройки специфической автоматизации, то есть для расширения встроенных системных действий, предназначены "Автоматические действия". С их помощью вы можете изменить атрибуты артефактов, перенести их в другой проект, добавить комментарий или создать задачу. Автоматическое действие можете обратиться по некоторому адресу в сети и передать нужную информацию, то есть вызвать так называемый веб-хук - ссылку на другом сервере. Вы можете отправить Email на указанный адрес.
Автоматические действия срабатывают при наступлении следующих событий:
Дополнительно к этому автоматическое действие может быть привязано к конкретному переходу или состоянию в настройках жизненного цикла. Вам необходимо описать условие, при котором сработает данное автоматическое действие, а также указать необходимые изменения, которые должны быть выполнены.
Порядок выполнения автоматических действий определяется их нумерацией. Номера можно изменить на форме редактирования или путем перетаскивания строк в списке действий.
В тексте сообщения можно использовать вставку атрибутов, таким образом, подставлять название, описание или другие свойства сущности, для которой вызвано автоматическое действие.
Если сотрудник забыл списать время по назначенной ему истории, то отправим ему уведомление о необходимости сделать это.
Для этого создадим повторяющееся задание, например, в конце рабочего дня, и используем его в качестве триггера для автоматического действия.
В качестве действия выберем "Добавить комментарий" и введем такой текст:
Комментарий будет добавлен к истории и исполнитель будет явно уведомлен о необходимости списать часы.
Можно отправить почтовое уведомление на конкретный Email или пользователям системы. Для этого необходимо заполнить поля на соответствующей вкладке: