Допущено УМО по образованию в области экономики, менежмента, логистики и бизнес-информатики в качестве учебника для студентов высших учебных заведений, обучающихся по направлению «Бизнес-информатика» (080700)
Рецензенты:
Козырев О. Р. – директор Нижегородского филиала Национального исследовательского университета Высшей школы экономики, заместитель директора Института информационных технологий НИУ ВШЭ, профессор кафедры прикладной математики и информатики НИУ ВШЭ;
Костогрызов А. И. – заслуженный деятель науки РФ, доктор технических наук, профессор, член-корреспондент Российской академии ракетных и артиллерийских наук и Российской академии естественных наук, действительный член Академии информатизации образования, лауреат премии Ленинского комсомола в области науки и техники.
Введение
Практически в любой современной организации мы можем наблюдать тесное переплетение информационных технологий и бизнес-процессов основной деятельности. Информация для бизнеса является критически важным ресурсом, от качества информации, от скорости ее передачи, надежности хранения зависит успех бизнеса. Работа с информацией, особенно в последнее время, стала подразумевать использование компьютерных технологий. Появился термин «информатизация бизнеса», который предполагает запуск и функционирование некоторой информационной технологии для использования, обработки, хранения и передачи данных для поддержки определенной бизнес-деятельности. Как правило, при информатизации бизнеса одновременно выполняются несколько проектов в области информационных технологий (ИТ), причем все за ограниченное время и с использованием выделенных ресурсов.
Учебник целесообразно использовать при обучении студентов магистратуры по направлениям 080500.68 «Бизнес-информатика» и 231000.68 «Программная инженерия». Он также будет полезен аспирантам, руководителям ИТ-проектов, лидерам команд разработчиков, заказчиков ПО со стороны клиента, сотрудникам ИТ-служб.
Основная цель курса лекций – представить студентам, аспирантам и менеджерам проектов современный комплекс задач, методов и стандартов управления рисками ИТ-проектов при информатизации бизнеса – создания и развития сложных, тиражируемых программных средств (ПС), баз данных (БД), информационных систем (ИС), приложений инфраструктуры, сервисов и средств поддержки информационных технологий. Внимание акцентировано на комплексе методов и процессов, которые способны непосредственно обеспечить управление рисками сложных высококачественных программных продуктов, анализировать, планировать и контролировать проектные риски, эффективно работать в команде, создавать адекватную мотивацию продуктивной работы, использовать современные программные средства.
В учебнике отражены методологические основы современного управления рисками при информатизации бизнеса, раскрыта специфика ИТ-индустрии и разработки программного обеспечения. Представлены обзоры международных стандартов управления программными проектами, опыт разработки систем и комплексов программ при информатизации бизнеса, модели и процессы управления рисками в ИТ-проектах. Значительное внимание уделено областям, непосредственно влияющим на аспекты управления рисками, таким как управление качеством разработки, управление требованиями, управление командой внедрения, управление поставщиком и подрядчиком. Ряд лекций посвящен разработке требований, планированию информационной безопасности. Рассмотрены основные процессы управления рисками программных проектов: идентификация, качественная и количественная оценка, выбор методов реагирования, контроль управления рисками. Детально изложены подходы к классификации рисков и рискообразующих факторов, методы и процессы идентификации рисков, методы оценки, включая имитационное моделирование, а также даны обзор возможных методов реагирования на риски, примеры отчетности по рискам, рекомендации к ведению и хранению накопленного опыта по управлению рисками. Завершает курс лекций обзор специализированного программного обеспечения. Приведено сравнение коробочной и заказной разработки, сформулированы требования к программному продукту по управлению рисками.
Значительное внимание в курсе уделено практическому применению методологической базы по управлению рисками. Рассматриваются конкретные проекты в специфических предметных областях, проекты, осуществляемые с применением узконаправленных технологий, а также проекты со специфическим конечным продуктом. Рассматриваются конкретные примеры рисков, типичные для ИТ-области, такие как задержки в графике работ проекта, превышение бюджета, несоответствие требуемым стандартам качества или ожиданиям заказчика и прочее. Кроме того, в числе рисков можно отметить непонимание акционерами роли и места информационных технологий, сомнения в окупаемости ИТ-проектов, низкую степень готовности персонала к использованию новых технологий вообще и информационных технологий в частности, слабую материально-техническую базу многих предприятий, которая препятствует созданию фундамента для развития ИТ.
Хочется надеяться, что материал будет полезен не только ИТ-специалистам при проектировании, разработке и внедрении ПО, но и послужит практическим примером для бизнес-заказчиков, менеджеров крупных ИТ-проектов, для аналитиков и ведущих специалистов, обеспечивающих все этапы жизненного цикла крупных программных средств и систем. Практические примеры наглядно покажут, как учиться не на своих ошибках и ошибках своей проектной команды, а на типичных рисках, описанных в этом пособии.
Авторы выражают глубокую благодарность А. И. Костогрызову за предоставленные иллюстративные материалы и помощь в подготовке содержательной части, в значительной мере обеспечившую качество данного учебного пособия. А. Костогрызов внес значительный вклад в развитие отечественных программно-инструментальных комплексов в области управления рисками, которые подробно рассмотрены в отдельной главе настоящего учебника. Написанные им работы породили массу новых исследований в области программной инженерии. Оценка, которую он дал нашей рукописи, и его вклад в эту книгу просто неоценимы.
Предисловие
Настоящая монография предоставляет базовые понятия по управлению рисками при информатизации бизнеса, раскрывает специфику индустрии информационных технологий и разработки программного обеспечения. Поскольку по своему замыслу монография ориентирована на студентов магистратуры и начинающих руководителей ИТ-проектов, ее изложение построено как учебник. Но учебник не совсем обычный. Дело в том, что охватываются накопленные знания и опыт из области системной и программной инженерии, то есть того научно-практического направления, которое продолжает находиться в стадии формирования. В отличие от классиков (в России в первую очередь имеются в виду работы профессора Липаева В. В., см. также технический отчет «Руководство в области программной инженерии совокупности знаний – SWEBOK», включающий материалы исследований ученых, опубликованных в англоязычной технической литературе на протяжении последних 30 лет), учебник растолковывает азы и лишь обозначает вершины, к которым должны стремиться профессионалы.
Чтобы понять своевременность появления учебника, необходимо осознать суть основных системных изменений нашего времени. А суть эта по-крупному заключается в:
• проникновении системной и программной инженерии в различные сферы человеческой жизнедеятельности;
• развитии и широком применении «процессного подхода» на уровне международных стандартов;
• достижении системных эффектов, определяемых возможностями применяемых ИТ и возникновением новых рисков, связанных с уязвимостями самих ИТ;
• объективных потребностях адекватного прогнозирования качества и рисков на всех стадиях жизненного цикла систем для различных условий и возможных угроз.
Сегодня эффективные решения и, как следствие, высокий уровень качества (в том числе безопасности) систем[1] во многом связаны с рациональным применением стандартов. Действующие на практике стандарты лишь отражают суть научно-технических достижений, фиксируя де-юре те требования и рекомендации, выполнение которых может способствовать относительному совершенству. Конец прошлого века можно признать плодотворным для развития системной[2] и программной инженерии[3]. В целях адекватной реакции на новшества и развитие ИТ подкомитет SC7 «Программная инженерия» объединенного комитета JTC1 «Информационные технологии» преобразован в подкомитет «Системная и программная инженерия» (SС7 JTC1 ISO/IEC), что отражает стремление к целостному решению проблем стандартизации в направлении всеобъемлющего качества именно систем в их жизненном цикле, а не составных компонентов или процессов. К настоящему времени в мире уже не один год действуют стандарты для систем любой области приложения – это набравший популярность ISO 9001 «Системы менеджмента качества. Требования», ISO/IEC 15288 «ИТ. Системная инженерия – процессы жизненного цикла систем», существенно повлиявший на последующее развитие стандартизации – см. рис. 1, 2, а также стандарты серий ISO 14000 (менеджмент экологической безопасности), OHSAS 18000 (менеджмент охраны труда), ISO/IEC 20000 (сервис-менеджмент), ISO/IEC 27000 (менеджмент информационной безопасности), 31000 (менеджмент риска), развиваются стандарты серии ISO/IEC 33000 (оценка процессов) и др. Таким образом, столь естественное наличие типовых процессов и их идентичное развертывание во времени характеризуют логическую похожесть различного рода систем. Именно анализу системных процессов, регламентируемых этими стандартами, в монографии уделено особое внимание.
Чтобы понять важность рассматриваемой тематики, вспомним некоторые факты.
Рис. 1. Процессы предприятия с ориентацией на потребителя по ГОСТ РИСО 9001
Рис. 2. Процессы жизненного цикла систем по ГОСТ РИСО/МЭК 15288
Обратимся к абсолютно приземленным казусам современного интеллектуального рынка. Вспомним 1997 год, когда разразился мировой финансовый кризис. Все началось с обвала акций высокотехнологичных компаний. Ослабление валют стран Юго-Восточной Азии привело к реализованной на программном уровне реакции биржевых роботов (программных систем автоматической биржевой торговли, анализирующих ситуацию на рынках, сравнивающих ее с хранимыми в памяти ситуациями и автоматически принимающих решения). Последние в автоматическом режиме выставили на продажу громадные объемы валют, с учетом чего национальные валюты в этих странах упали в 30–100 раз! А затем дефолт 1998 года в России… Через 10 лет в августе 2007 года те же биржевые роботы среагировали столь же «адекватно», как и были запрограммированы на подобное развитие биржевой ситуации, – в результате выполнения автоматических приказов одновременно был сгенерирован вал заявок на продажу американских ипотечных облигаций. Физика процессов достаточно проста: брокер-человек справляется лишь с 3–4 портфелями одновременно и в день способен заключить до 10–15 сделок, в то время как биржевые роботы управляют 100 портфелями и могут заключать до 500 сделок в день. В погоне за прибылью не было сделано системных ограничений на вал автоматических заявок. В итоге $260 млрд. убытка – это лишь частный побочный эффект от подобной оптимизации на бирже. Подчеркнем, ущерб сопоставим с совокупным годовым бюджетом нескольких государств Восточной Европы! И если в 1997 году в инициировании кризиса объявили нескольких английских брокеров, спекулировавших в Сингапуре, то в 2007 году обвинять некого – не вредоносные, а сугубо мирные компьютерные программы инициировали глобальный финансовый кризис!
Другими словами, если 50 лет назад последствия от применения ядерного оружия оценивались как возможность многократного уничтожения жизни на земле, то сегодня проявления «мирных» угроз со стороны компьютеризированных систем оказываются соизмеримыми с применением того же самого ядерного оружия. То есть в ХХI веке военные угрозы дополнились еще более разрушительными «мирными» угрозами, связанными с широким внедрением ИТ!
На практике у каждого из заказчиков, разработчиков, производителей и пользователей современных систем неизбежно возникают принципиальные системные вопросы. Например: «Как достичь уровня международных стандартов?»; «Выполнимы ли задаваемые требования?»; «Каковы возможные ущербы?»; «Какой сделать выбор с учетом возможных рисков, затрат и ожидаемого результата?»; «Какие меры более эффективны?». Предполагаемая монография позволяет взглянуть на решение этих вопросов именно в контексте требований современных стандартов. Причем основные положения необходимо рассматривать не только для ИТ-проектов и систем, но и для любого рода систем, создаваемых или функционирующих с использованием средств автоматизации.
Значительное внимание уделено областям, непосредственно влияющим на аспекты управления рисками, таким как управление качеством разработки, требованиями, командой. Рассмотрены основные процессы управления рисками программных проектов: идентификация, качественная и количественная оценка, выбор методов реагирования, контроль в управлении рисками. Наконец, обзор специализированного программного обеспечения по управлению рисками и приведенные примеры призваны убедить читателя в реальности целенаправленного повышения эффективности современного бизнеса.
Представляется, что настоящая монография способна научить читателя не бояться использовать полученные знания по управлению рисками на практике. Ведь эти знания вполне применимы к различного рода сложным системам – системам, создаваемым и действующим в интересах органов государственной власти и корпораций, финансово-экономических и промышленных структур (в том числе отдельных предприятий, заказывающих департаментов, банков, инвестиционных и страховых компаний, энергетических, нефтегазовых и транспортных комплексов, опасного производства, авиационно-космической отрасли, жилищно-коммунального хозяйства), центров управления критическими процессами и служб по чрезвычайным ситуациям, контролирующих органов, независимых оценщиков, научно-исследовательских и проектных институтов, университетов и др. При грамотном распоряжении полученными знаниями риски и ущербы станут меньше, за счет этого авторитет и благосостояние специалистов по управлению рисками вырастут, бизнес будет укрепляться… То есть впереди – оптимистические перспективы для освоивших учебник…
Настойчивости Вам, уважаемый читатель, и успехов в изучении азов управления рисками и целенаправленном извлечении с их помощью достижимых эффектов в бизнесе!
А. И. Костогрызов
Глава 1
Риски и неопределенности при информатизации бизнеса
1.1. Информатизация бизнеса и специфика ИТ-отрасли
В любом бизнесе построение современной системы управления организацией требует внедрения качественных, признанных на международном рынке информационных технологий. Информатизация бизнеса предполагает систематическое использование информации и информационных технологий в бизнесе. Под информационной технологией будем понимать все средства обработки, передачи и использования информации, включая в том числе и компьютерные технологии. Это совокупность аппаратного обеспечения, программного обеспечения, технологий хранения информации, сетевых технологий, обеспечивающих коммуникации и связь компонент системы в единое целое. Информационная система содержит данные о различных объектах, необходимые для конкретной организации. При этом она использует информационные технологии для преобразования набора данных в поток информации, который может быть использован пользователем системы. Получается, что информационные технологии – это прежде всего высокая скорость передачи и обработки информации, а также практически не ограниченные по объему и одновременно компактные хранилища данных.
При информатизации бизнеса, как правило, задействованы колоссальные бюджеты. В крупных компаниях масштабы проектной деятельности в области информационных технологий измеряются миллионами долларов. Большие бюджеты, в свою очередь, подразумевают больший уровень рисков, ответственности и компетенции тех людей, которые управляют информатизацией бизнеса. Естественно, что организацию и управление рисками необходимо осуществлять на основе известных существующих стандартов и методологий разработчиков программных продуктов и информационных технологий, лучших практик ИТ-корпораций, личного опыта менеджеров ИТ-проектов.
Единственного правильного алгоритма управления рисками при информатизации бизнеса и реализации программных проектов просто не существует. Однако проектный характер разработки ПО, а также необходимость управления рисками в связи с высокой степенью уникальности и неопределенности программных проектов обусловили развитие специализированных методов управления рисками, которые описаны в учебном пособии.
Нужно отметить, что принятие решений при информатизации бизнеса характеризуется высокими рисками и требует от руководителя глубоких знаний методики проектного управления и понимания особенностей ее применения в сфере информационных технологий, коммуникационных навыков и умения работать с крупной командой ИТ-специалистов. Большое влияние «человеческого фактора» обусловлено тем, что при информатизации бизнеса должны создаваться определенные условия для взаимодействия сторон, и стороны, участвующие в нем, несут равную ответственность за результаты проекта. То есть здесь нельзя возложить ответственность за успех проекта только на ИТ-специалистов, точно так же, как нельзя говорить, что исключительно бизнес-заказчик виновен в том, что проект не удался.
Управляя деятельностью организации, особенно важно четко спланировать стратегию развития общей информационной инфраструктуры, конкретные этапы реализации этой стратегии и пути минимизации рисков и затрат на каждом из этих этапов. Таким образом, для сокращения издержек и повышения эффективности деятельности современные компании могут использовать автоматизацию основных процедур деятельности и сокращение издержек на ручную обработку и анализ информации либо сокращение сотрудников интеллектуального труда за счет использования компьютеров и вычислительных сетей, более рациональных алгоритмов расчетов, реализованных в виде программного обеспечения.
Можно сформулировать следующие утверждения, которые помогут более полно осознать проблематику информатизации бизнеса и влияние информационных технологий на деятельность предприятия:
1) работа предприятий и их экономическая деятельность находятся в прямой зависимости от работоспособности средств автоматизации и общего уровня ИТ внутри предприятия;
2) качество ИТ определяет оперативность управлением – скорость обмена актуальной информацией, верность расчетов экономических показателей, возможности быстро принимать стратегические и прочие решения под воздействием внешних факторов, влияющих на экономическую систему;
3) требования к предоставляемому уровню безопасности внутри экономической системы могут быть обеспечены только за счет современных информационных технологий и средств защиты информации, шифрования данных и прочего.
Используя информационные технологии, организации могут пересматривать и модернизировать свои бизнес-процессы для повышения скорости и качества представляемых услуг и снижения издержек. Новые информационные системы могут в корне изменить структуру всей организации, оказав влияние на способы функционирования организации или даже направления ее деятельности. Средства анализа, входящие в ИТ-системы, позволяют с высокой скоростью обрабатывать гигантские массивы данных и на основе полученных результатов производить/предлагать корректирующие действия в соответствии со сложившейся ситуацией.
Решение об информатизации бизнеса и переходе на новую информационную технологию должно приниматься на основе эффективности использования ИТ в данной области. В мировой практике затраты на информационные технологии связываются с оборотами компании и оцениваются в пределах 10–30 % от оборота. Естественно, что такой подход не дает ответа на главный вопрос: какие выгоды получит предприятие от использования анализируемых ИТ, – и не освобождает специалистов от необходимости расчета стоимости внедрения.
Для грамотного управления любой деятельностью по информатизации бизнеса, связанной с изменением, внедрением и созданием ИТ, следует объединять работы в рамках единого ИТ-проекта. Термин «проект» рассматривается как некая задача с заранее определенными исходными данными, преследующая конкретные цели, подверженные имеющимся у компании ресурсам. Под ИТ-проектом будем рассматривать любые работы в области аппаратного обеспечения, программного обеспечения, технологий хранения информации, сетевых технологий, обеспечивающих коммуникации, и информационных систем.
Необходимость комплексного анализа и расчета эффективности внедряемых ИТ, их значительное влияние на дальнейшую деятельность предприятия заставляют относиться к ИТ-проекту как к самостоятельному инвестиционному проекту. Такой подход означает необходимость экономического обоснования требуемых капитальных вложений, то есть сопоставления предполагаемых затрат и эффектов для принятия решения о его целесообразности.
Успех ИТ-проекта зависит от многих факторов. Но из их числа можно выделить три основных: время, качество, ресурсы. Сбалансировать их между собой всегда трудно, поэтому популярна поговорка «Выбери два из трех». Если во главу угла ставится высокое качество исполнения всех работ по проекту, то это потребует либо много времени, либо большого числа ресурсов. Главная задача руководителя проекта – уложиться в выделенный бюджет и заданные сроки и обеспечить требуемое качество имеющимися трудовыми ресурсами. Любое нарушение этих ограничений чревато различного рода рисками, которые могут также привести как к негативным, так и к позитивным последствиям.
Говоря о качестве ИТ-проектов, необходимо стремиться к достижению высокого уровня даже при специфичных особенностях ИТ-индустрии – возрастающей сложности программных систем, постоянной нехватке ресурсов, часто изменяющихся требованиях, устаревании технологий, высоких темпах разработки и высокой конкуренции поставщиков.
Рынок ИТ подразумевает большую скорость изменений. Быстроизменяющиеся внешние обстоятельства и непредсказуемые нагрузки осложняют задачу соответствия уровню сервиса.
Для поддержки современных бизнес-процессов организации вынуждены расширять и усложнять свои ИТ-инфраструктуры. При этом стоимость управления, как правило, значительно превышает закупочную стоимость инфраструктуры. В добавок управление в ИТ-области усложняется со стороны законодательства, которое ужесточает требования к безопасности, защите информации, возможностям контроля.
Учитывая специфику ИТ-проектов, можно сформулировать основные принципы управления при информатизации бизнеса, которые позволят минимизировать (или избежать) наиболее распространенные риски при внедрении ИТ:
избегать крупных проектов, то есть разбивать крупные проекты на более мелкие (принцип «Дельфины вместо китов»). При этом обязательно должен быть человек (как правило, директор программы), который управляет всеми проектами в целом и нацелен на успех реализации не отдельного проекта, а решения в целом;
привлекать для управления проектами профессионалов в управлении, а не технических специалистов. Технические специалисты видят проект в первую очередь с технической точки зрения и забывают об управленческой составляющей;
привлекать независимых экспертов (не включенных в проектную команду) для оценки рисков. Если все решения по рискам проекта принимаются только людьми, которые мотивированы на успех проекта, многие технические и технологические трудности могут рассматриваться как несущественные;
учитывать риски, связанные с организационной составляющей проекта (согласование документов, обучение пользователей и т. п.), а не только технологические.
Говоря о проектах информатизации бизнеса и внедрении ИТ, нужно отметить, что любые новые технологии реализуются в условиях большой неопределенности и негативного воздействия окружающей среды. Это вызвано тем, что осуществление и реализация большинства проектов внедрения, особенно крупных, происходят в условиях, когда трудно применить стандартные методы управления. Уникальность целей проекта и отсутствие подобных практик в компании порождают неопределенность относительно выбора и внедрения новых технологий, определения методов и средств достижения поставленной цели, принятия той или иной методологии. Менеджеры ИТ-проектов подбирают и анализируют альтернативные решения, зачастую основанные на собственной интуиции и рекомендациях консалтинговых фирм, что связано с приемом на себя значительного риска.
В основном риски ИТ-проектов рассматриваются без стандартизированной методики управления рисками и общей системы управления рисками проекта ИТ.
На фоне постоянно улучшающихся технологий, создания новых методик разработки ПО рост успешности проектов из года в год незначительный – динамика успешности проектов за последние 14 лет практически не изменилась. Согласно статистике по поводу проектов ИТ и автоматизации предприятий, собранной международным агентством ИТ-услуг The Standish Group. СHAOS Summary 2009 (рис. 3):
• 32 % проектов завершились успешно;
• 44 % испытали различные трудности (превысили бюджет, выпали из сроков и прочее);
• 24 % проектов просто провалились;
• во всех завершенных проектах только 61 % требуемых свойств были реализованы.
Рис. 3. Статистика ИТ-проектов. The Standish Group. СHAOS Summary 2009
Практика западных и отечественных исследований в области автоматизации промышленных предприятий показывает, что риск неудачи проектов ИТ пропорционален его размеру. Очень большие, очень дорогие, сложные и долговременные проекты везде и всегда терпят неудачу чаще, чем даже средние. Риск провала крупного проекта усиливается, поскольку постоянные изменения свойственны ему намного в большей степени. Меняются законы, сдвигаются приоритеты, а следом неизбежно корректируется спецификация ИТ-системы, плывет бюджет и меняются поставщики. Даже очень незначительные политические перемены могут стать причиной серьезных изменений в структуре всего проекта ИТ и его краха.
Причин провала ИТ-проекта может быть множество. Одной из серьезных могут стать неудачная формулировка и планирование проекта на стадии его инициации. Поскольку неудачи закладываются в проект еще на начальной стадии, желательно как можно раньше проследить, чтобы требуемые результаты были описаны с достаточной точностью, проект рассматривался не с точки зрения ИТ, а как часть всего процесса, направленного на достижение поставленных задач. Уже на этапе инициации и планирования необходимо заложить ключевые цели, выполнить четкую формулировку стадий выполнения проекта, расставить контрольные точки для проверки промежуточных результатов, определить критерии оценки успешности проекта. Начальная стадия проекта имеет ключевое значение для его завершения.
Еще одной очевидной причиной неудач в области ИТ-проектов является недостаточное внимание руководства к задаче управления рисками. Плохо выполненные задачи по идентификации и оценке рисков, отсутствие плана управления рисками, плана действий в случае возникновения непредвиденных обстоятельств, ответственных за тот или иной риск – все это негативно сказывается на реализации проекта внедрения информационных технологий.
Зачастую причиной неудач ИТ-проектов являются разные взгляды на успех исполнителя и заказчика. Нередко исполнитель считает проект завершенным при выполнении всех формальных признаков, заложенных в техническом задании. Заказчик, в свою очередь, считает работы выполненными, если систему можно полноценно использовать для решения задач, ради которых и был задуман проект. При этом, с точки зрения заказчика, причина неработоспособности ИТ-системы – это недоработки исполнителя. С позиции исполнителя, причиной неработоспособности системы могут служить недостаточная квалификация персонала, наличие ошибок в учете, отсутствие единой методологии использования системы, то есть те факторы, за которые полностью отвечает заказчик.