+7 (499) 638-64-11
Попробовать
Постановка и автоматизация процессов разработки ПО

Уровни функциональной декомпозиции

02.12.2009 20:06

Особенностью разработки программного обеспечения является сложность и большой объем функционала, который необходимо реализовать. Для улучшения понимания и повышения управляемости процесса разработки применяют функциональную декомпозицию, которая позволяет взглянуть на продукт с точки зрения его функциональных особенностей. Это отличает разработку ПО от других видов деятельности, когда конечный результат достигается через последовательность задач, корторые необходимо выполнить для разработки продукта.

 

Вариантов функциональной декомпозиции существует множество. В DEVPROM используется подход FDD (feature driven development), выделяющий два основных уровня декомпозиции: функции (фичи, features) и пожелания (use case, user story, issue). Функции образуют некий скелет с точки зрения функциональных аспектов продукта и позволяют контролировать ход разработки на более высоком уровне. Пожелания добавляют и уточняют функции, позволяя конкретизировать функциональность продукта и расширять ее в процессе разработки. Вы можете организовывать собственные срезы по функциональности с использованием тэгов, например, для объединения пожеланий по компонентам конечного решения.

 

Уровень функций выделен специально, поскольку позволяет закреплять ответственных исполнителей по каждой используемой фазе в процессе разработки. Часто между членами команды распределяются зоны ответственности и компетентности, чтобы было легче разобраться с проблемами в некотором функционале. Редко когда все члены команды отлично знают все участки функционала, кто-то что-то знает лучше или хуже. Например, вы можете закрепить за функцией некоторого разработчика, тогда при планировании пожелания этой функции DEVPROM автоматически предложит назначить задачу этому разработчику. Тоже самое относится к аналитикам и тестировщикам.

 

Отчет "Распределение ответственных по функциям" позволяет каждому участнику команды проще найти нужный контакт, с кем можно быстро обсудить какой-то вопрос, связанный с определнным функционалом в системе. Также данный отчет поможет выявить не перегружен ли кто из членов команды лишней ответственностью.

 

Если участникам команды не нужен высокоуровневый контроль за ходом разработки функционала продукта, или не требуется закреплять ответственных за функциями, то вы можете отключить опцию "Использовать декомпозицию по функциям". Таким образом, вся функциональность будет сосредоточена только в пожеланиях.

Еще интересные статьи на эту тему: