Организационная структура CelsiusTech
Па протяжении десятилетнего периода деятельности CelsiusTech, на который мы обращаем основное внимание, организационная структура компании и принципы ее работы претерпели некоторые изменения — можно даже сказать, прошли несколько этапов. Соответственно изменились предъявляемые к персоналу требования, касающиеся знаний и навыков. Организация работы над проектом до 1986 года Во главе процесса разработки военно-морской системы командования и управления (Мк2.5) стоял руководитель проекта. Его задача состояла в том, чтобы перенести обязанности отдельных функциональных областей — например, вооружения или СЗ (командования, управления и связи) — на крупные сегменты системных средств. Организационная структура проекта Мк2.5 изображена на рис. 15.8. Каждую функциональную область (командование и управление, сопровождение цели и т. д.) возглавлял руководитель проекта, располагавший определенным кругом сотрудников в прямом подчинении и ответственный за все операции разработки системы вплоть до выпуска и интеграции. Рис. 15.8. Организационная структура проекта Мк2.5, 1980-1985
По наблюдениям CelsiusTech, столь дробная структура сформировала оригинальный режим разработки, обладавший следующими характеристиками. В процессе системного анализа устанавливалось соответствие основных сегментов системы и функциональных областей. Так как требования и интерфейсы распределялись и описывались документально, а взаимодействие между отдельными функциональными областями было ограниченно, в ходе проектирования, реализации и тестирования формировалось несколько вариантов интерпретации требований и интерфейсов. Факты несовместимости интерфейсов, как правило, удавалось обнаружить лишь на этапе интеграции системы; отсюда — временные затраты на распределение обязанностей, затягивание и усложнение процессов интеграции и установки. Знания руководителей функциональных областей в основном ограничивались сферой их обязанностей. Руководители функциональных областей не слишком стремились коллективно решать проблемы, возникавшие на программном уровне. Рис. 15.9. Организационная структура линейки продуктов SS2000, 1987-1991
Организационная структура проекта SS2000 с конца 1986 по 1991 год С появлением в конце 1986 года линейки продуктов SS2000 организационная структура утратила ряд характеристик, унаследованных от периода проекта Мк2.5. Структура CelsiusTech, просуществовавшая с конца 1986 по 1991 год, изображена на рис. 15.9. Теперь обязанности по созданию линейки продуктов и поставке на ос опюпе клиентских систем перешли к генеральному руководителю программ. Осознавая недостатки имевшего место в прошлом дробления структуры, руководство CelsiusTech организовало сильную команду управленцев, которые понимали, что развитие линейки продуктов есть пополнение активов компании, ни в коем случае не сводящееся к построению громоздкой конструкции. В соответствии с этой новой концепцией все руководители проектов были подчинены генеральному руководителю. Разработчики распределялись согласно различным функциональным областям (например, вооружениям и СЗ), а также направлялись на создание человеко-машинного интерфейса (human-computer interface, HCI), общих служб (применяемых в рамках функциональных областей) и интерфейсов с различными аппаратными и операционными системами (которые обобщенно назывались Base System). Далее, была сформирована компактная, высокопрофессиональная группа архитекторов, получившая комплексные полномочия и абсолютный контроль над разработкой; отчитывались ее участники напрямую перед генеральным руководителем программ. Руководство CelsiusTech пришло к выводу о том, что успешность линейки продуктов обусловливается наличием стабильной и гибкой архитектуры, известной всем в компании и наделенной серьезными полномочиями (эти полномочия делегировались высшими руководителями компании). Таким образом, компания затеяла реорганизацию, учитывающую преимущества ABC — архитектура становилась центром новой методики и в то же время начинала оказывать воздействие на организационную структуру самой компании. В качестве основной задачи при создании линейки продуктов было задано скоординированное определение многочисленных выпусков и управление ими. Желая усилить управление выпусками, CelsiusTech объединила обязанности по интеграции программных систем и управлению конфигурациями в рамках новой группы, непосредственно подчинявшейся генеральному руководителю программ. Как группа архитекторов, так и группа управления интеграцией и конфигурациями вводились в CelsiusTech впервые; как оказалось впоследствии, они сильно поспособствовали созданию линейки продуктов SS2000. Обязанности группы архитекторов распространялись на первоначальную разработку архитектуры линейки продуктов, а также на последующее владение этой архитектурой и контроль за ней. Тем самым в масштабах всех функциональных областей обеспечивалась непротиворечивость проектного решения и согласованность его интерпретации. В частности, в обязанности группы архитекторов входили следующие операции: ♦ Выработка понятий и принципов линейки продуктов. ♦ Выявление уровней и их экспортных интерфейсов. ♦ Описание интерфейсов, обеспечение их целостности и управляемости развития. ♦ Распределение функций системы между уровнями. ♦ Установление общих механизмов или служб. ♦ Определение, макетирование и координация общих механизмов наподобие обработки ошибок и протоколов межпроцессного взаимодействия. ♦ Консультирование сотрудников проекта относительно понятий и принципов линейки продуктов. Первую итерацию архитектуры удалось создать за две недели силами двух старших инженеров с богатым опытом работы в данной предметной области. Оставаясь скелетом существующей линейки продуктов до настоящего времени, она формулирует основополагающие понятия, определяет уровни, идентифицирует примерно 125 системных функций (из 200 существующих па сегодняшний день), относит их к конкретным уровням, устанавливает принципиальные механизмы распределения и взаимодействия. По завершении первой итерации и группу архитекторов были привлечены главные проектировщики из всех функциональных областей. Эта обширная команда, состоявшая теперь из десяти старших инженеров, приступила к расширению и уточнению архитектуры. Новая система, таким образом, кардинально отличалась от старой, в которой руководители функциональных областей независимо друг от друга вырабатывали проектные решения и интерфейсы. Обязанности объединенной группы управления интеграцией и конфигурациями сводились к следующему: ♦ Разработка стратегий и планов тестирования, а также контрольных примеров, которые не должны ограничиваться тестированием отдельных блоков. ♦ Координация всех тестовых прогонов. ♦ Разработка пошаговых графиков производства (совместно с группой архитекторов). ♦ Интеграция и выпуск правильных подсистем. ♦ Управление конфигурациями библиотек разработки и библиотек выпусков. ♦ Создание носителя для поставки программного обеспечения.
|