-
Владислав Балин
Модуль
-
С 1996 до 2000 года занимался разработкой и внедрением корпоративных информационных систем для торговых и производственных компаний в качестве аналитика, архитектора, разработчика и менеджера проектов.
С 2000 по 2005 год работал в компании CQG Int., занимался разработкой ключевых алгоритмов многозадачности, сервера хранения и обработки котировок, и интерпретатора встроенного языка обработки данных.
С 2006 года руководит разработкой ПО в области телекоммуникаций, программно-аппаратных комплексов и микроэлектроники. Является экспертом по управлению высокотехнологичными проектами в условиях присутствия больших технических рисков.
Сертифицированный Carnegie-Mellon SEI инженер по PSP/TSP. Окончил факультет Вычислительной Математики и Кибернетики МГУ им. Ломоносова в 1998 году. Известен на форумах RSDN и в ЖЖ под ником Gaperton.
Тезисы
Декларативное планирование
Одна из ключевых особенностей проектов разработки ПО состоит в наличии принципиальных инженерных проблем, которые необходимо решить по ходу работ. Способ решения этих проблем может существенно влиять как на структуру результата проекта, так и на текущие задачи. Как следствие, традиционный подход к планированию от структуры результата и активностей-задач, хорошо работающий в случае defined process, в случае разработки ПО часто приводит к "хрупким" и недостоверным планам, которые тяжелы в составлении, и быстро перестают соответствовать ситуации.
В докладе будет представлена методика планирования, основанная на опыте кросс-дисциплинарных проектов в области разработки ПО, аппаратных комплексов, и микроэлектроники. Методика представляет собой систематический подход к планированию эмпирических процессов, увязывающий воедино problem solving и process engineering, и решающий обозначенную проблему. Данный подход делает практичным кастомизацию процесса разработки под каждый проект, позволяет проверять планы на логическую корректность, и в целом значительно упрощает групповую работу над планом, повышая его качество.
Также, в докладе будут рассмотрены социальные аспекты, связанные с планированием, и командный принцип Auftragstaktik, являющийся основным руководящим принципом в немецкой армии, имеющий оптимальный баланс управляемости и децентрализации в условиях неопределенности. Будет показано, что предлагаемая методика в полной мере реализует Auftragstaktik.
В основе подхода лежит модель представления плана, в которой активности в явном виде не присутствуют. План выражен в виде набора увязанных по времени цепочек событий и целей, сформулированных декларативно, в терминах критериев проверки их достижения, которые существенно устойчивее к неопределенности, чем активности. Данный подход снижает "хрупкость" плана - активности, связанные со способами достижения целей, могут измениться по ходу проекта, однако цели меняются гораздо реже.
Не смотря на то, что подход не позволяет мыслить в терминах активностей, вынуждая при разработке плана думать о целях, активности и "задачи" никуда не пропадают. Когда костяк плана готов, из него простым преобразованием получается классический сетевой график и структура работ. При этом, предлагаемый подход приводит к устойчивой, "хорошей" группировке активностей в задачи в итоговом сетевом графике, которая отличается большой стабильностью даже в условиях неопределенности.
Второй способ использования данной модели близок по духу к agile - работать непосредственно с "картой целей", применяя тайм-боксинг планирование для определения их дат.
Также, модель может быть применена в качестве инструмента борьбы со сложностью при разработке общей структуры крупных планов, с целью распараллелить работы по планированию и обеспечить корректную сшивку независимо разработанных планов в общий план.
Оценка сроков при разработке ПО

