![](/books_files/covers/thumbs_240/sistemnyy-inzhener-kak-nachat-kareruvnovom-tehnologicheskom-uklade-138429.jpg)
Автор книги: Вячеслав Мизгулин
Жанр: Современная русская литература, Современная проза
Возрастные ограничения: +16
сообщить о неприемлемом содержимом
Текущая страница: 2 (всего у книги 9 страниц) [доступный отрывок для чтения: 2 страниц]
Требованиям должна в конечном итоге соответствовать реализация, поэтому даже в начале проекта необходимо иметь некоторое представление о вариантах архитектуры системы. Это во многом ограничивает требования и их фокусирует.
Всегда фиксируйте каждое новое требование в процессе работы над проектом. Когда новые требования начнут противоречить исходному техническому заданию – идите к менеджеру. Это очень серьезная проблема, которую нельзя игнорировать.
Составьте список стейкхолдеров целевой системы, определите их реальные потребности в ходе переговоров, маркетинговых исследований, консультаций с экспертами. Отталкиваясь от потребностей, вы сможете точнее формулировать требования к системе и быстрее согласовывать их со стейкхолдерами.
Глава 3. Функциональное моделирование
Сбор и анализ требований будет гораздо эффективнее, если кроме «послойного осаждения» в документации, они еще отразятся в функциональной модели системы.
Иногда о функциональной модели говорят: «Взгляд снаружи внутрь». То есть, в какой-то мере, функциональная модель представляет собой структуризацию и уточнение требований до той степени, когда не возникает вопросов, что именно должна делать целевая система. Давайте попробуем нарисовать функциональную модель системы умный бизнес-центр. Для этого нам необходимо назвать ее основную функцию. Мы снова вернулись к этому вопросу. Можно было бы нарисовать вот такую схему «на салфетке» (рис. 3).
![](image7_596500278496e50700a75891_jpg.jpeg)
Рис. 3. Контекстная функциональная модель системы управления потреблением электроэнергии и воды в бизнес-центре
Если мы напишем все функции системы через запятую в одном названии, то, фактически, мы словом «система» подменим, просто, некоторое объединение. На самом деле, мы будем проектировать в таком случае несколько разных систем, которые работают в некоторой связке: одна управляет электроэнергией, а другая – водоснабжением (может быть еще несколько аналогичных систем). Никакого системного эффекта здесь не просматривается. Можно было бы обобщить до понятия «ресурсы», но, опять таки, это обобщение не раскроет системного эффекта, возникающего при связанном функционировании перечисленных систем.
Еще одна неувязка заключается в том, что большинство требований относятся не столько к «коробочке с проводами», как мы охарактеризовали умный дом, сколько к некоторой инфраструктуре всего здания. То есть наших стейкхолдеров интересуют не сигналы управления на выходе, а конкретные действия по регулированию воды или электричества. Должен ли входить в нашу систему, например, кондиционер? И все-таки, кто же наши пользователи? Владельцы бизнес-центров, персонал, арендаторы или системные интеграторы, монтирующие «коробочку с проводами» в инфраструктуру здания? А может быть, мы должны проектировать всё здание «под ключ» вместе с умным бизнес-центром внутри?
Первый вариант, который мы рассмотрим, будет заключаться в укрупнении задачи. Давайте назовем функцией системы – поддержку комфорта в бизнес-центре (рис. 4). Таким ходом мы ставим себе задачу четкого определения термина «комфорт», вплоть до математической формулы. Для начала давайте декомпозируем комфорт, например, вот в такой кортеж:
Комфорт = <Температура воздуха, Влажность воздуха, Уровень автоматизации, Экономия>
Можно декомпозировать дальше:
Уровень автоматизации = <Включение и выключение эскалаторов, Автоматическая подача воды порциями и т.д.>
Когда мы знаем структуру, можно предложить различные математические критерии оценивания этого самого комфорта, например с помощью развесовки и суммирования. Каждый из субкритериев можно привести к нормализованному виду от 0 до 1, тогда задача оценки уровня комфорта не составит никакого труда. Но не будем углубляться в оценку – это предмет системного анализа, а не системной инженерии. Проблема в том, что поддержать тот или иной уровень комфорта система может только тогда, когда в неё входят приборы, взаимодействующие со средой, например, тот же кондиционер. Коробка с проводами сама по себе комфорт не обеспечивает – это не ее функция. Системный инженер должен обязательно обсудить с менеджерами такую проблему. Скорее всего, будет предложено не выходить за рамки идеи – коробки с проводами. Оборудовать здание кондиционерами, электроприборами и батареями – не совсем та задача, которую мы хотели решать сначала.
![](image8_596502468496e50700a75910_jpg.jpeg)
Рис. 4. Контекстная функциональная модель системы поддержки комфорта в бизнес-центре
Второй вариант функции системы (в сторону уменьшения задачи) – минимизация денежных расходов на ресурсы в бизнес-центре в реальном времени (рис. 5). Чем интересен этот вариант? Во-первых, в названии появились деньги. Мы говорим не о разных системах, которые регулируют разные ресурсы, а пересчитываем всё в деньги – тут просматривается системный эффект. Во-вторых, минимизация, как любая оптимизация, может решаться при заданных ограничениях, например, на тот самый уровень комфорта. Но для целевой системы не важно, что будет стоять за этими ограничениями. В-третьих, мы указали, что всё происходит в реальном времени, то есть целевая система не подводит итоги в конце квартала, чем мог бы заниматься рядовой специалист, а принимает и воплощает решения непосредственно в процессе потребления ресурсов. Такая формулировка уже наводит на мысль, что этим занимается компьютер, потому что, в противном случае, пришлось бы нанимать слишком много персонала и организовать их коммуникации с помощью, например, комплекта раций: один на электрощитке, а другой – у стояка и т. д. Обратите внимание, что, по сравнению с первой схемой, изменилось только название, но как принципиально это отразится на всей дальнейшей работе.
![](image9_596503598496e50700a7598f_jpg.jpeg)
Рис. 5. Контекстная функциональная модель системы минимизации денежных расходов на ресурсы в бизнес-центре в реальном времени
Интуитивно может показаться, что сейчас самое время начать функциональную декомпозицию системы, чтобы понять, как она должна работать, но это не так. Я настоятельно рекомендую выполнить обратное действие – давайте представим функцию нашей системы в составе функциональной декомпозиции использующей системы, то есть той системы, которая использует целевую систему. Чтобы это сделать, надо понять – что есть использующая система? В русскоязычной литературе часто встречается термин «надсистема», но он мне не нравится, поскольку не задает «потолок» рассуждениям о границах. Мы будем говорить именно о той системе, которая использует целевую систему «умный бизнес-центр», то есть «коробочку с проводами», то есть «систему минимизации денежных расходов бизнес-центра в реальном времени». Судя по всему, использующая система и есть бизнес-центр, но какая у него функция?
Мы уже вели рассуждения о комфорте. Если немного переформулировать функцию, связанную с комфортом, получим неплохую формулировку для использующей системы – система поддержки комфортных условий для ведения бизнеса. Вполне логично, что для комфортного ведения бизнеса нужна близкая к комнатной температура, продуманное управление потоками людей, наличие санузлов, электричества и многое другое. Немаловажно – чтобы все это укладывалось в реалистичный бюджет. Было бы неплохо весь список этих условий включить в новый кортеж, характеризующий уровень комфорта. Он будет похож на предыдущий, но более полный, потому что мы теперь правильно определили системные уровни для поставленной задачи.
Основной критерий правильного использования функциональной модели – резкое ускорение процесса проектирования. Если у вас возникают трудности в разработке, вернитесь к функциональной модели. При этом неважно, занимались вы функциональным моделированием «на бумаге» или нет. Все равно в вашей голове есть какая-то функциональная модель. Нарисуйте то, что у вас в голове, используя один из формализмов функционального моделирования.
Что вы делаете? Систему, которая обеспечивает комфорт или систему, которая экономит деньги? Это же два абсолютно разных проекта. Какой бюджет у модернизации бизнес-центра, а какой – у создания «коробочки с проводами»? Самые частые ошибки в инженерных проектах, которые я наблюдал на практике, были связаны с неверными представлениями о функции целевой системы. Когда в голове «комфорт», а проект про «коробочку с проводами», будут большие сложности с принятием решений.
Итак, обратимся к использующей системе – бизнес-центру. Мы определили функцию использующей системы и можем выполнить функциональную декомпозицию следующим способом.
Определяем входные потоки:
– внешние условия, включая погоду, механические воздействия, городской шум и другое;
– ресурсы, приходящие к нам через инженерные коммуникации: вода, электричество, газ или еще что-то;
– запросы на сервисы – в любом бизнес-центре нужны санузлы, уборщицы или что-то более специфичное типа эскалаторов (сервис транспорта), центров печати.
Определяем выходные потоки:
– мы ожидаем, что здание обеспечит нам внутренний комфортный климат, огородив от внешней среды;
– мы ожидаем, что услуги/сервисы будут оказаны, в результате чего мы получим воду, напечатанные документы, поменяем местоположение и т. д.
Обращаю внимание, что рассуждение про потоки идет параллельно рассуждению о конструкции: здание, инженерные коммуникации, эскалаторы и т. д. То есть мы немного забегаем вперед, простраивая логическую архитектуру. Для системной инженерии это обычное дело, когда приходится перескакивать между разными точками зрения (частными методами описания), чтобы удержать в голове целостность системы. Для кого-то, возможно, было бы удобно нарисовать схему логической архитектуры уже сейчас в каком-то виде: показать стены, инженерные коммуникации, эскалаторы, санузлы и т. д. Я этого делать не буду. К логической архитектуре мы подойдем чуть позже. На данном этапе нам не столько важны варианты воплощения, сколько общая идея того, что происходит внутри использующей системы. Важно – использующая система пока существует без «коробочки с проводами».
![](image10_596cd00476d44c070022408a_jpg.jpeg)
Рис. 6. Функциональная диаграмма использующей системы без целевой системы (как есть)
Далее нам надо понять, какие изменения претерпевают потоки, пока они доходят от входа к выходу, и как они влияют друг на друга внутри использующей системы. Это творческая задача, требующая хорошей технической подготовки. Каждый факт изменения потока мы фиксируем в виде той или иной функции, которую использующая система должна выполнять, чтобы реализовать свою главную функцию. Так и получается декомпозиция использующей системы.
Это один из возможных способов. Более академический вариант – выполнить поиск аналогов, а также (что гораздо сложнее) найти описания функционирования этих аналогов, потом выбрать наиболее близкое к вашему случаю описание и представить его в виде функциональной модели.
Стейкхолдер (СХ1), то есть владелец бизнес-центра, хочет экономить. То есть хочет регулировать использование ресурсов так, чтобы ему это обходилось дешевле, а условия ведения бизнеса при этом держались на заданном уровне. Вставляем целевую систему в качестве новой функции и смотрим, что получилось (рис. 7). Будем целевую систему и потоки, связанные с ней, рисовать жирными линиями, чтобы смотрелось нагляднее. Введем идетификаторы для элементов: ПТ – потоки; ИС – использующая система; СОО – системы в операционном окружении; ЦС – целевая система, которую вы сейчас проектируете.
![](image11_5965de098496e50700a7851d_jpg.jpeg)
Рис. 7. Функциональная диаграмма использующей системы с целевой системой
Каждый поток, входящий или выходящий из использующей системы, может быть ассоциирован с потребностью.
Например, «ПТ3. Внешние условия» может быть ассоциирован с потребностью обеспечивать комфортные условия в условиях пустыни. «ПТ1. Запросы на сервисы» может быть ассоциирован с потребностью в определенном количестве людей, которых должен обслуживать центр. «ПТ2. Результаты сервисов» может быть связан с потребностями ускорения процессов, повышения качества. Условия среды в (ПТ6) сами по себе являются важной потребностью, ведь если мы просто будем экономить на всём, в бизнес-центре может стать, например, душно и жарко. Потоки (ПТ8) и (ПТ9), с одной стороны внешние, а с другой – относятся к целевой системе. Эти потоки могут быть связаны с потребностями сервисного обслуживания, то есть дополнительно – (СХ6) техобслуживание.
Требования к целевой системе мы можем теперь разделить на 4 группы:
– требования к управлению сервисами (Т2, Т3);
– требования к управлению средой (Т1, Т4);
– требования к мониторингу среды;
– требования к мониторингу сервисов.
В скобках приведены идентификаторы тех требований, которые мы уже писали ранее. Как видно, мы интуитивно заметили только две группы требований. Требования к мониторингу сервисов могут быть связаны, например, с количеством сервисов, которыми система должна управлять, типами сервисов и их результатов; это могут быть расстояния, время, частота получения информации и многое другое. Мониторинг среды также имеет свои особенности, например: количество точек сбора информации, конкретные измеряемые характеристики, периодичность измерений и многое другое.
Самое время определиться с тем, какие именно ресурсы и сервисы будут связаны с целевой системой. Это приведет к декомпозиции как самой функции системы, так и к декомпозиции потоков. Важно заметить, что каждый элемент схемы нуждается в спецификации, включающей как минимум:
– идентификатор;
– короткое название;
– полное название;
– входные параеметры;
– выходные параметры;
– иные функциональные связи.
У начинающих системных аналитиков часто возникает вопрос: «А когда нужно прекращать декомпозировать? Сколько уровней должно быть?». Если спецификация функции занимает меньше A4, значит её уже не надо декомпозировать. Еще вариант – если по спецификации можно найти и купить соответствующий модуль.
Когда функциональное описание использующей системы вместе со встроенной целевой системой будет закончено, нужно вспомнить, что было на рисунке 1. У нас есть первый вариант плана. Самое время оценить осуществимость такого плана. На данном этапе, конечно, рано выполнять подсчет затрат на весь проект. Требования совсем «сырые». Однако, имеет смысл пересмотреть список стейкхолдеров. В частности, существуют стейкхолдеры, связанные с системами в операционном окружении, от которых очень сильно зависит успех проекта. Как видно из рисунка 7, целевая система взаимодействует с системами обеспечения комфортных внутренних условий (вентиляция, отопление, увлажнение и проч.) и системами обеспечения сервисов (санузлы, эскалаторы, центры печати и проч.). Наша «коробочка с проводами» начнет использоваться только тогда, когда будет подключена ко всем требуемым системам в операционном окружении. Если отталкиваться от того, что валидация должна выполняться на предмет удовлетворения потребностей стейкхолдеров, то становится не очень понятно, как это сделать, когда система еще не встроена в использующую систему, но уже произведена и должна быть продана, чтобы компенсировать затраты на производство. Валидация, с точки зрения системной инженерии, возможна лишь в условиях эксплуатации (или максимально приближенных) и должна проводиться с участием пользователя и заказчика.
Если вы проектируете «коробочку с проводами», а ваша компания не планирует выполнять монтажные работы, потому что это другой бизнес, то, выходит, вы не можете гарантировать удовлетворение потребностей в рамках текущего проекта.
Получается, что успешность нашей системы зависит от того, как сработают еще две группы стейкхолдеров, относящихся к системам обеспечения сервисов и к системам обеспечения комфортных внутренних условий (среды). Это огромное количество различных стейкхолдеров, занимающихся эскалаторами, принтерами, кондиционерами, инженерной инфраструктурой, проводкой и т. д. Их то мы и забыли включить в таблицу 3. Надо это обязательно сделать. Тем не менее проблема зависимости от этих стейкхолдеров в вопросе успеха «коробочки» остается нерешенной. Как выполнять валидацию? Валидация – это практика жизненного цикла системы. Может быть, сейчас правильнее задать вопрос – а какой у целевой системы жизненный цикл?
Определите основную функцию целевой системы, выделяющую ее среди других систем в операционном окружении. Определите использующую систему, найдите стейкхолдеров на уровне использующей системы. Свяжите потребности с входами и выходами использующей системы, а требования – с входами и выходами целевой системы.
Глава 4. Жизненный цикл системы и проекта
Конечно, менеджеры к этому моменту уже должны были согласовать жизненный цикл, но есть ли в нем валидация? Обычно менеджеры без особых проблем решают организационные вопросы с помощью модели жизненного цикла. Часто его выбирают исходя из опыта управления и не ждут сюрпризов, но сейчас возникла ситуация, в которой успех целевой системы «повис на волоске» из-за неоднозначности приемки и валидации, а это, между прочим, непосредственно относится к модели жизненного цикла, то есть инженерные и менеджерские задачи теперь неразделимы.
Допустим вы пойдете к менеджеру проекта и попросите показать выбранную модель жизненного цикла. Самое частое представление, которое я наблюдал на практике в ИТ-компаниях, может быть изображено так (рис. 8).
![](image12_5965e7b099fa7e060078bbcb_jpg.jpeg)
Рис. 8. Типовой жизненный цикл проекта
Часто проект не любят официально заканчивать. Вообще, у нас понятие проекта иногда имеет под собой какой-то мистический смысл. Ну и, как следствие, есть путаница между жизненным циклом проекта и жизненным циклом системы. В результате, а где, вообще, в жизненном цикле – валидация целевой системы? Если бы всё было так просто – взять и перерисовать этот жизненный цикл – но проблемы заключаются в деньгах.
Каждая стадия жизненного цикла имеет свой бюджет, во многом связанный с различными интересами вполне конкретных стейкхолдеров. Добавить еще одну стадию – забрать деньги из другой.
![](image13_5965e97799fa7e060078bc37_jpg.jpeg)
Рис. 9. Типовой вариант спирального жизненного цикла проекта
Вам могли показать другой вариант жизненного цикла, например как на рисунке 9. Спиральный жизненный цикл часто используют в индустрии программного обеспечения и информационных систем, даже чаще, чем это официально преподносится. Идея такого жизненного цикла предельно проста. Каждый виток – полный набор стадий от замысла до, иногда, продажи и сопровождения. Переход на новый виток выполняется в том случае, когда завершенный виток был успешен и есть благоприятный прогноз развития проекта. Обычно каждый новый виток значительно дороже предыдущего, разрабатываемый функционал шире, сама система сложнее. Вопрос в том, сколько должно быть приемок и валидаций в таком жизненном цикле?
В целом, впечатление от знакомства с жизненным циклом проекта у любого инженера обычно сумбурное и смутное, как будто речь идет не о том, чем занимается инженер, а о какой-то другой реальности. Это очень плохо, когда так происходит.
Часто валидацию осуществляют путем имитации условий эксплуатации. Например, чтобы выполнить валидацию двигателя, надо где-то взять несколько автомобилей, соответствующих выявленным потребностям, вставить туда новые двигатели, провести тесты, то есть поездить на этих автомобилях, проанализировать результаты, подвести итоги.
То же самое, с точки зрения системной инженерии, нужно сделать и для вашей «коробочки умного дома». Надо где-то взять несколько домов, соответствующих выявленным потребностям (то есть это будут бизнес-центры определенного класса), вставить туда ваши «коробочки», подключить, провести тесты, проанализировать результаты, подвести итоги. В процессе валидации обязательно должны участвовать люди, поэтому надо быть готовым к обработке анкет. Все это довольно масштабное мероприятие, порой даже самое дорогое в проекте.
Если не обговорить необходимость в таких крупных затратах «на берегу», что остается делать в середине проекта? Можно просто сделать «коробочку», а потом продавать её – сразу. Как вы думаете, если сделать новый двигатель, пропустить стадию испытаний на разных, например, автомобилях, и сразу выставить продукцию на продажу – будет ли проект успешен? Какие могут быть последствия от выбора такого жизненного цикла? Самое время обсудить проектные риски с руководством.
Системному инженеру было бы интереснее взглянуть на модель жизненного цикла такого рода (рис. 10).
![](image14_5965ec411a33490600faed24_jpg.jpeg)
Рис. 10. Вариант совмещения жизненного цикла системы и жизненного цикла проекта
На представленном рисунке видно, насколько могут различаться жизненные циклы проекта и системы.
Жизненный цикл системы – это набор связанных процессов, реализуемых одновременно, а жизненный цикл проекта – разовая последовательность работ. Проект – это, как бы, один проход через полный или частичный жизненный цикл системы.
Самый главный вопрос, который возникает при просмотре этой диаграммы, заключается в том, когда должен закончиться проект? Это любимый вопрос менеджеров проектов, отводящий нас к цели проекта. Хорошие менеджеры обычно планируют заработать денег на проектах, благодаря чему они отлично знают, когда нужно остановиться. Но это далеко не всегда так. Бывают случаи, когда проект перерастает в другой проект, в новый процесс, в программу, а иногда он просто кончается, порой внезапно. Прогнозировать подобные исходы весьма затруднительно, поэтому инженеру нужно стараться всегда делать системы как можно лучше. Используя наработки по успешным системам, гораздо проще инициировать новые проекты.
Менеджер будет стараться экономить деньги. Инженер должен стараться сделать систему лучше, а для этого потребуются дорогие материалы, модули, участие экспертов. Валидация может стать корнем раздора между менеджером проекта и системным инженером, особенно когда системный инженер подключается к проекту не с самого начала, потому что уровень затрат на валидацию может стать сюрпризом для менеджера.
Между делом выяснилось, что группа специалистов уже давно проектирует умный бизнес-центр без вашего участия. Так получилось, что ваша работа проистекает в команде менеджера проекта и отвечаете вы за документацию, а настоящая разработка идет в другой комнате третий месяц подряд – возможно даже она началась до формальной инициации проекта. Ваша реакция?
Скажем так, это неплохо, когда разработка и концептуализация идут параллельно. Плохо – когда они не связаны между собой в рамках проектирования. Само слово «проектирование» в России имеет несколько значений:
– чаще всего это слово означает любую работу на бумаге, включая концептуальный этап, разработку инженерных решений, иногда даже работу конструктора;
– иногда под проектированием понимают именно написание документации;
– редко, но встречается такой вариант, когда проектирование смешивают с управлением проектом, что нас, как системных инженеров, не устраивает.
Путаница связана с тем, что слово «проект» можно перевести на английский как project и как design. Когда я буду говорить про проект, я обычно буду иметь в виду project, а под проектированием я буду понимать design, при том я буду понимать под проектированием любую работу на бумаге (в компьютере), предшествующую непосредственному изготовлению изделия. Если изделие изготавливается в процессе проектирования – будем называть это конструированием. Если изделие изготавливается серийно, когда проектирование завершено – это уже производство.
Итак, группа специалистов уже запроектировала «коробочку с проводами», которая оперирует набором условий типа:
«Если (выполняется комплекс условий по входам), то (выходной вектор преобразуется по определенным правилам)».
Многие специалисты искренне не понимают, зачем нужны системные специалисты, ведь и так всё понятно, что надо делать. С точки зрения группы специалистов – этот продукционный решатель является, собственно говоря, конечным продуктом. Ну и чего же в нем не хватает? Даже не важно на каком уровне решена задача: микросхемой, программным обеспечением, либо, вообще, механически или гидравлически. Самое удивительное на данный момент заключается в том, что эти специалисты собрали готовый, с их точки зрения, продукт, когда мы с вами еще только обдумываем жизненный цикл системы. Упрекать их в этом, конечно, нельзя.
Вас не должна пугать параллельность в работах. Для того, чтобы уместить в голове такой жизненный цикл и управлять им, используйте горбатую диаграмму (рис. 11).
![](image15_5965f1b71a33490600faeeda_jpg.jpeg)
Рис. 11. Горбатая диаграмма жизненного цикла проекта
На горбатой диаграмме представлены распределения человеко-часов по стадиям и практикам жизненного цикла проекта. Практика разработки концепции применяется на стадии исследований и немного захватывает разработку. Инженерия требований идет с некоторой периодичностью вплоть до производства итерациями согласований. Архитектура обычно прорабатывается «большим горбом», потому что изменение архитектуры ведет к непредсказуемым последствиям – прорабатывают один раз и надолго. Дизайн, изготовление, сборка и проверка идут взаимозависимыми колебаниями довольно часто, поскольку речь идет о постоянном выпуске прототипов (опытных образцов). Валидация выполняется в конце разработки (в т.ч. имитационно).
Надо понимать, что между стадиями жизненного цикла есть интервалы времени (гейты) для принятия решения о переходе на следующую стадию. В этом, собственно, и состоит смысл планирования, чтобы расставить интервалы (гейты) принятия решений. Как правило, следующая стадия дороже предыдущей, поэтому решение принимается долго, иногда дольше самой стадии. Системный инженер должен это понимать, и читать планы проектов и диаграммы жизненного цикла правильно.
Часто реальная продолжительность стадии жизненного цикла вдвое меньше запланированной именно из-за согласований, которые «сжирают» основное рабочее время.
Вот, вы пришли к руководителю проекта и начали тяжелый разговор:
– Ингеборг Карлович, есть несколько проблем.
– Каких? – недовольно пробурчал менеджер проекта.
– Во-первых, у нас не налажены отношения со стейкхолдерами, поэтому все время меняется концепция продукта, из-за этого невозможно составить список адекватных требований и, вообще, непонятно что мы делаем в конечном счете. Как мы поймем, что система будет сделана правильно, если у нас даже не запланированы затраты на валидацию? Какой реальный срок проекта? Какая цель? Кто, вообще, ставит задачи команде? Почему так получилось, что я еще пишу требования, а разработчики уже паяют там что-то в своей коморке?
– Так… – растянул Ингеборг Карлович, почесав затылок, – ты у нас системный аналитик. Вот и отвечай, почему такой бардак происходит? Чтобы завтра к обеду у меня на столе лежало техническое задание на умный бизнес-центр, понятно?
Как вы, наверное, уже догадались – так разговор начинать нельзя. Предположим, что прошлый разговор вам приснился в страшном сне, а настоящий разговор будет только сейчас.
– Ингеборг Карлович, есть несколько предложений.
– Каких? – безучастно пробурчал руководитель проекта.
– Давайте добавим в планы по проекту валидацию системы.
– Зачем? У нас же есть стадия разработки. Там предусмотрены различные проверки.
– Там не предусмотрены испытания нашей программно-аппаратной системы внутри самого бизнес-центра.
– Какого бизнес-центра? – удивился руководитель проекта.
– Ну мы ведь должны ориентироваться на определенный класс бизнес-центров. Чтобы выпустить продукт, нам нужен хотя бы один успешный кейс.
– Так вы сначала сделайте систему, – улыбнулся Ингеборг Карлович, – потом мы её продадим и проверим.
– А если она не заработает?
– А это уже ваша работа – чтобы она заработала.
– Тут не поспоришь, – промелькнуло в голове.
В этот момент становится отчетливо понятно, что внедрение системной инженерии на предприятии зависит не только от наличия системных инженеров. Теоретически можно попытаться держать в голове менеджерский жизненный цикл и системно-инженерный жизненный цикл одновременно, отдавая себе отчет, что стадия продаж – это, на самом деле, производство, где, как бы, заложены приемочные испытания (и валидация).
Реальная проблема заключается в том, что руководитель проекта сказал фактически следующее:
– Сделайте что-нибудь, а мы потом это как-нибудь продадим, чтобы убедиться, что вы сделали именно то, что надо.
Когда дело касается сложных систем, в том числе информационных, порой становится сложно понять, что происходит в проекте. Так или иначе, всегда есть хорошая аналогия между ИТ-проектом и строительным проектом.
Сейчас самое время воспользоваться такой аналогией со стройкой. Если бы Ингеборг Карлович был руководителем проекта по строительству жилой многоэтажки, то его слова звучали бы так:
– Вы мне спроектируйте нормальную жилую многоэтажку, да так чтобы я ее мог воткнуть в любую инфраструктуру на любой местности, в любом районе, независимо от класса жилья – там же все одинаково, а потом мы ее будем всем продавать. Когда продадим первую, вторую, третью – построим все по-быстрому и проверим, хороший у вас проект или нет.
Есть такие руководители, которые действительно не понимают, почему у них проблемы случаются. Некоторые искренне верят, что все делают правильно. Конечно, крупные компании с большим опытом порой выделяют инвариант среди своих продуктов и переходят на платформы, получая линейки продуктов. Что же делать системному аналитику в случае, когда речь идет об универсальной разработке с бюджетом разового проекта, которую, кроме всего прочего, собираются выводить на конкурентный рынок? Я бы сказал так – без вас этот проект завалят. Давайте спасать.
Используйте практики и стадии для моделирования жизненного цикла проекта и системы, чтобы оценить реалистичность проекта и возможность воплотить успешную систему. Четко определяйте периоды принятия решений между стадиями жизненного цикла. Помните, что стадии жизненного цикла разделяются гейтами, которые, порой, занимают много времени.
Внимание! Это не конец книги.
Если начало книги вам понравилось, то полную версию можно приобрести у нашего партнёра - распространителя легального контента. Поддержите автора!Правообладателям!
Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.Читателям!
Оплатили, но не знаете что делать дальше?