Проектирование корпоративной информационной системы
8.1 Жизненный цикл корпоративной информационной системы
Понятие жизненного цикла является одним из базовых понятий методологии проектирования информационных систем. Жизненный цикл информационной системы (ЖЦ ИС) представляет собой непрерывный процесс, начинающийся с момента принятия решения о создании информационной системы и заканчивающийся в момент полного изъятия ее из эксплуатации.
Существует ряд стандартов и методик, используемых при разработке КИС:
- ISO/IEC 12207 – стандарт на процессы и организацию жизненного цикла, который распространяется на все виды программного обеспечения;
- Rational Unified Process (RUP) – итеративная методология разработки;
- Rapid Application Development (RAD) – методология быстрой разработки приложений, представляющая комплекс специальных инструментальных средств, позволяющих оперировать с определенным набором графических объектов, функционально отображающих отдельные компоненты приложений;
- Custom Development Method (CDM) – методология по разработке прикладных информационных систем рассчитанных на использование в проектах с применением компонентов Oracle.
Стандарт ISO/IEC 12207 определяет структуру жизненного цикла, включая процессы, работы и задачи, выполняемые в процессе создания информационной системы. В нем работы, которые могут выполняться в жизненном цикле, распределены по следующим группам процессов (рис. 8.1):
- основные;
- вспомогательные;
- организационные.
К основным процессам относятся:
1) заказ – включает определение потребностей заказчика в информационной системе, подготовку и выпуск заявки на подряд, выбор поставщика и управление процессом заказа вплоть до завершения приемки системы (выполняется заказчиком);
2) поставка – включает принятие решения о подготовке предложения в ответ на заявку на подряд, присланную заказчиком, или с подписания договора и вступления с заказчиком в договорные отношения по поставке системы; определение процедур и ресурсов, необходимых для выполнения проекта, включая разработку проектных планов и их выполнение посредством поставки ИС (выполняется поставщиком);
3) разработка – включает анализ требований, проектированию, программирование, сборку, тестирование, ввод в действие и приемку информационной системы (выполняет разработчик);
4) эксплуатация – процесс состоит из следующих работ: подготовка процесса; эксплуатационные испытания; эксплуатация системы; поддержка пользователя (выполняет разработчик);
5) сопровождение – реализуется при изменениях или модификациях информационной системы и соответствующей документации, вызванных возникшими проблемами или потребностями в модернизации или настройке Целью процесса является изменение существующей ИС при сохранении ее целостности (выполняет разработчик).
К вспомогательным процессам жизненного цикла относятся:
1) документирование – формализованное описание информации, созданной в процессе жизненного цикла (набор работ, при помощи которых планируют, проектируют, разрабатывают, выпускают, редактируют, распространяют и сопровождают те документы, в которых нуждаются все заинтересованные лица – администраторы, инженеры и пользователи информационной системы);
2) управление конфигурацией – административные и технические процедуры на всем протяжении жизненного цикла программных средств для обозначения, определения и установления состояния программных объектов в системе; управления изменениями и выпуском объектов; описания и сообщения о состояниях объектов и заявок на внесение изменений в них; обеспечения полноты, совместимости и правильности объектов; управления хранением, обращением и поставкой объектов;
3) обеспечение качества – обеспечение гарантий, что программные продукты и процессы в жизненном цикле соответствуют установленным требованиям и утвержденным планам. Для обеспечения качества могут использоваться результаты других вспомогательных процессов (верификация, аттестация, совместные анализы, аудит и решение проблем);
4) верификация – определение, что программные продукты функционируют в полном соответствии с требованиями или условиями, реализованными в предшествующих работах (поставка, разработка, эксплуатация или сопровождение); анализ, проверка и тестирование;
5) аттестация – определение полноты соответствия созданной системы или программного продукта установленным требованиям и функциональному назначению;
6) совместный анализ – оценка состояний и при необходимости результатов работ по проекту;
7) аудит – определение соответствия разработанной системы или программного продукта требованиям, планам и условиям договора;
8) решение проблем – анализ и решение проблем, обнаруженных в ходе выполнения разработки, эксплуатации, сопровождения и других процессов.
Ответственность за работы и задачи вспомогательного процесса несет организация, выполняющая данный процесс.
Управление проектом связано с планированием и организацией работ, созданием коллективов разработчиков и контролем сроков и качества выполняемых работ.
К организационным процессам жизненного цикла относятся:
1) управление – включает общие работы и задачи, используемые управляющими любого процесса (администратор отвечает за управление продуктом, проектом, работами и задачами процессов заказа, поставки, разработки, эксплуатации, сопровождения или вспомогательными процессами);
2) создание инфраструктуры – установление и обеспечение инфраструктуры, необходимой для любого процесса (технических и программных средств, инструментальных средств, методик, стандартов и условий для разработки, эксплуатации и сопровождения);
3) усовершенствование – установление, оценка, измерение, контроль и улучшение любого процесса жизненного цикла программных средств;
4) обучение – обеспечение первоначального и последующего обучения персонала.
Полный жизненный цикл информационной системы включает в себя, как правило, стратегическое планирование, анализ, проектирование, реализацию, внедрение и эксплуатацию. В общем случае жизненный цикл можно достаточно произвольно разбить на ряд стадий. Наиболее распространенное деление предложено Rational Software Corporation в методологии RUP, в соответствии с которой жизненный цикл ИС подразделяется на четыре стадии: начало; проектирование; разработка; внедрение. Границы каждой стадии задаются временными моментами, в которые необходимо принимать определенные критические решения и достигать определенных ключевых целей.
Начало: устанавливается область применения и граничные условия функционирования системы. Для этого идентифицируются все внешние объекты, с которыми должна взаимодействовать разрабатываемая система, и определяется характер этого взаимодействия; идентифицируются все функциональные возможности системы и производится описание наиболее существенных из них. Перечень работ включает: разработку концепции проекта; определение требований к системе; экономическое обоснование; разработку календарного плана работ.
Проектирование – определить, испытать и создать базовую версию архитектуры системы, которую необходимо разработать. Выделяют следующие критерии завершения работ на данной стадии:
- архитектура, выбранная для системы, определена и проверена исполняемыми версиями, полученными в результате итераций, на которых отрабатывались ключевые требования к системе;
- риски идентифицированы и приняты меры по смягчению их последствий;
- определена большая часть детализованных требований к системе;
- разработаны планы для итераций стадии разработки.
В конце стадии оцениваются результаты и, если были достигнуты приемлемые итоги проект переходит к следующей стадии.
Разработка – наиболее трудоемкая стадия, т.к.к этому времени определены риски, связанные с разработкой системы, задана архитектура и определено большинство требований. После завершения каждой итерации формируется новая более стабильная версия, в которой реализовано больше функциональных возможностей.
Внедрение – включает исправление дефектов и заключительные процессы (доработка справочной системы, конфигурирование и настройка).
Модель жизненного цикла информационной системы – некоторая структура, определяющая последовательность осуществления процессов, действий и задач, выполняемых на протяжении жизненного цикла информационной системы, взаимосвязи между ними. Она зависит от специфики ИС и условий, в которых система создается и функционирует.
Наиболее распространенными модели жизненного цикла являются:
- каскадная модель;
- спиральная модель.
Каскадная модель ЖЦ ИС (рис. 8.2) предусматривает последовательную организацию работ. При этом основной особенностью является разбиение всей разработки на этапы, переход с одного этапа на следующий происходит только после того, как полностью завершены все работы на предыдущем. Каждый этап завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Основные этапы разработки по каскадной модели:
- анализ требований заказчика;
- проектирование;
- разработка;
- тестирование и опытная эксплуатация;
- ввод в действие готового продукта.
На первом этапе проводится исследование проблемы, которая должна быть решена, четко формулируются все требования заказчика. Результатом, получаемым на данном этапе, является техническое задание, согласованное со всеми заинтересованными сторонами.
Техническое задание – это документ, определяющий цели, требования и основные исходные данные, необходимые для разработки информационной системы.
При разработке технического задания решаются следующие задачи:
- определение общей цели создания информационной системы, состава подсистем и функциональных задач;
- разработка и обоснование требований, предъявляемых к подсистемам;
- разработка и обоснование требований, предъявляемых к информационной базе, математическому и программному обеспечению, комплексу технических средств (включая средства связи и передачи данных);
- формулировка общих требований к проектируемой системе;
- определение перечня задач создания системы и исполнителей;
- выделение этапов создания системы и сроки их выполнения;
- предварительный расчет затрат на создание системы и определение уровня экономической эффективности ее внедрения.
На втором этапе разрабатываются проектные решения, удовлетворяющие всем требованиям, сформулированным в техническом задании. Результатом его является комплект проектной документации, содержащий все необходимые данные для реализации проекта.
Третий этап – реализация проекта – включает разработку программного обеспечения в соответствии с полученными на предыдущем этапе проектными решениями.
На четвертом этапе проводится тестирование полученного программного обеспечения на предмет соответствия требованиям, заявленным в техническом задании.
Последний этап – ввод в действие готового продукта.
Основные преимущества каскадной модели:
- на каждом этапе формируется законченный набор проектной документации, отвечающей критериям полноты и согласованности. На заключительных этапах разрабатывается пользовательская документация, охватывающая все предусмотренные стандартами виды обеспечения информационной системы (организационное, методическое, информационное, программное, аппаратное);
- выполнение в логичной последовательности этапов работ позволяет планировать сроки завершения и соответствующие затраты.
Каскадная модель жизненного цикла хорошо подходит для проектов, обладающих следующими характеристиками:
- требования полностью известны и понятны на начало проекта и не претерпевают значительных изменений в ходе его реализации;
- требования можно выполнить, используя технологии, которые предполагается применить в проекте;
- технологии, используемые в проекте, не меняются в течение проекта;
- риски определены и проанализированы в начале проекта;
- команда разработчиков, назначенная на проект, хорошо знакома с предметной областью, имела опыт работы с ней и с технологиями, применяемыми в проекте.
Каскадная модель имеет ряд недостатков, ограничивающих ее применение при разработке информационных систем:
- задержка в получении результатов – из-за последовательного подхода к разработке согласование результатов с заинтересованными сторонами производится только после завершения очередного этапа работ. Может оказаться, что разрабатываемая информационная система не соответствует требованиям пользователей, несоответствия могут возникать на любом этапе разработки – искажения могут непреднамеренно вноситься проектировщиками-аналитиками и программистами из-за недостаточного знания специфики предметной области, для которой разрабатывается информационная система. Кроме того, используемые модели (функциональная, информационная) автоматизируемого объекта, а также проекты интерфейса пользователя, требования к пользовательской документации могут в силу различных причин устареть за время разработки (например, из-за внесения изменений в законодательство, колебания курса валют и т.п.);
- возврат на более ранние стадии – ошибки, допущенные на более ранних этапах, как правило, обнаруживаются на последующих стадиях работы над проектом, и проект следует возвратить на предыдущие этапы (рис. 8.3), что может служить причиной срыва графика работ и усложнения взаимоотношений между группами разработчиков, выполняющих отдельные этапы;
- сложность параллельного ведения работ, связанная с необходимостью постоянного согласования различных частей проекта;
- высокий уровень риска – результаты разработки можно реально увидеть и оценить лишь на этапе тестирования, то есть после завершения анализа, проектирования и разработки, что порождает серьезные проблемы при выявлении ошибок, требует возврата проекта на предыдущие стадии и повторение процесса разработки.
Эти недостатки либо делают каскадную модель полностью неприменимой, либо приводят к увеличению сроков разработки и стоимости проекта.
Спиральная модель жизненного цикла (рис. 8.4) предполагает итерационный процесс разработки информационной системы. При этом возрастает значение начальных этапов жизненного цикла (анализ и проектирование), на которых проверяется и обосновывается реализуемость технических решений путем создания действующих прототипов.
Каждый виток спирали соответствует созданию фрагмента или версии программного изделия, на нем уточняются цели и характеристики проекта, определяется его качество, планируются работы на следующем витке спирали. На каждой итерации углубляются и последовательно конкретизируются детали проекта, в результате чего выбирается обоснованный вариант, который доводится до окончательной реализации. Главная задача каждой итерации – создать работоспособный продукт, который можно показать пользователям системы. Таким образом, существенно упрощается процесс внесения уточнений и дополнений в проект.
Спиральный подход к разработке программного обеспечения позволяет преодолеть большинство недостатков каскадной модели и, кроме того, обеспечивает ряд дополнительных возможностей, делая процесс разработки более гибким.
К достоинствам этого типа модели относятся:
- существенное упрощение внесения изменений в проект при изменении требований заказчика;
-
постепенная интеграция отдельных элементов ИС в единое целое;
- уменьшение рисков, т.к. риски обнаруживаются во время итерации, риски максимальны в начале разработки проекта, по мере продвижения разработки ожидаемые риски снижаются;
- обеспечение гибкости в управлении проектом за счет повторного использования компонентов;
- получение более надежной и устойчивой системы, что связано с возможностью обнаружения и исправления ошибок и слабых мест на каждой итерации;
- совершенствование процесса разработки – анализ, проводимый в конце каждой итерации, позволяет проводить оценку результатов и выработку рекомендаций по изменению разработки, и улучшению ее на следующей итерации.
Основная проблема спиральной модели жизненного цикла – определение момента перехода на следующий этап. Для ее решения вводятся временные ограничения на каждый этап. Поэтому завершение итерации производится строго в соответствии с планом, даже если не вся запланированная работа выполнена. Планирование работ обычно проводится на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.
Основные понятия проектирования КИС
В основе проектирования ИС лежит моделирование предметной области. Под моделью предметной области понимается некоторая система, имитирующая ее структуру или функционирование и отвечающая основному требованию – быть адекватной этой области.
Предварительное моделирование предметной области позволяет сократить время и сроки проведения проектировочных работ и получить более эффективный и качественный проект. Без проведения моделирования велика вероятность допущения большого количества ошибок в решении стратегических вопросов, приводящих к экономическим потерям и высоким затратам на последующее перепроектирование системы.
К моделям предметных областей предъявляются следующие требования:
- формализация, обеспечивающая однозначное описание структуры предметной области;
- понятность для заказчиков и разработчиков на основе применения графических средств отображения модели;
- реализуемость, подразумевающая наличие средств физической реализации модели предметной области в ИС;
- обеспечение оценки эффективности реализации модели на основе определенных методов и вычисляемых показателей.
Для реализации перечисленных требований строится система моделей, которая отражает структурный и оценочный аспекты функционирования предметной области.
Особенности деятельности предприятия оказывают влияние на структуру информационной системы, однако структуры разных предприятий в целом схожи между собой. Любую организацию можно рассматривать как совокупность взаимодействующих элементов (подразделений), каждый из которых может иметь свою, структуру. В общем случае можно выделить три вида связей между подразделениями предприятия:
- функциональные – каждое подразделение выполняет определенные виды работ в рамках единого бизнес-процесса;
- информационные – подразделения обмениваются информацией (документами, факсами, письменными и устными распоряжениями и т.п.);
- внешние – некоторые подразделения взаимодействуют с внешними системами, причем их взаимодействие также может быть как информационным, так и функциональным.
Общность структуры разных предприятий позволяет сформулировать некоторые единые принципы построения корпоративных информационных систем:
1. Системность – предусматривает рассмотрение предприятия как единого целого и выделение в нем типов связей между структурными подразделениями или бизнес-процессами, устанавливает направления информационных потоков, функций отдельных подразделений. Данный принцип позволяет согласовать по целям функционирования, входным и результирующим документам и защите информации все составные части объекта;
2. Развитие – система создается с учетом постоянного изменения бизнеса и потребностей пользователей, что требует наличия в системе инструментария для адаптации или модернизации в соответствии с новыми требованиями;
3. Совместимость – разработанная ИС должна быть открытой, ориентированной на максимальное использование стандартов на все виды обеспечения;
4. Непосредственное участие работников предприятия в процессе проектирования и разработки ИС – непрерывный контроль со стороны заказчика позволяет избежать неправильных постановок задач и ускорить процесс внедрения системы;
5. Безопасность – предполагает обеспечение безопасности всех информационных процессов;
6. Эффективность – достижение рационального соотношения между затратами на создание ИС и результатами ее эксплуатации.
В общем случае процесс разработки информационной системы может быть рассмотрен с двух точек зрения:
- по содержанию действий разработчиков (групп разработчиков) – в данном случае рассматривается статический аспект процесса разработки, описываемый в терминах основных потоков работ (исполнители, действия, последовательность действий ит.п.);
- по времени или по стадиям жизненного цикла разрабатываемой системы – в данном случае рассматривается динамическая организация процесса разработки, описываемая в терминах циклов, стадий, итераций и этапов.
Проект – это ограниченное по времени целенаправленное изменение отдельной системы с изначально четко определенными целями, достижение которых означает завершение проекта, а также с установленными требованиями к срокам, результатам, риску, бюджетом, организационной структуре.
Можно выделить следующие основные отличительные признаки проекта как объекта управления:
- изменчивость – целенаправленный перевод системы из существующего в некоторое желаемое состояние, описываемое в терминах целей проекта;
- ограниченность бюджета и требуемых ресурсов;
- комплексность – наличие большого числа факторов, прямо или косвенно влияющих на прогресс и результаты проекта;
- правовое и организационное обеспечение – создание специфической организационной структуры на время реализации проекта.
Перед полномасштабным внедрением КИС в организации выполняется пилотный проект, целью которого является экспериментальная проверка правильности решений, принятых на предыдущих этапах, и подготовка к внедрению.
Преимущества пилотного проекта:
- небольшая стоимость по сравнению с полномасштабным внедрением;
- малые сроки реализации с большой практической ценностью;
- построение модели предприятия для дальнейшего внедрения.
Пилотный проект дает возможность апробировать новые подходы и методики. В случае дальнейшей работы по полномасштабному внедрению предприятие получает готовую модель системы. Практические навыки и опыт, полученные во время выполнения пилотного проекта, позволяют избежать возможных стратегических ошибок при полномасштабном внедрении.
Эскизный проект предусматривает разработку предварительных проектных решений по системе и ее частям. Содержание эскизного проекта задается в ТЗ.
Технический проект системы – это техническая документация, содержащая общесистемные проектные решения, алгоритмы решения задач, оценку экономической эффективности ИС и перечень мероприятий по подготовке объекта к внедрению.
Типовое проектирование ИС предполагает создание системы из готовых типовых элементов. Основным требованием для применения методов типового проектирования является возможность декомпозиции проектируемой ИС на множество составляющих компонентов (подсистем, комплексов задач, программных модулей и т.д.). Для реализации выделенных компонентов выбираются имеющиеся на рынке типовые проектные решения.
Типовое проектное решение (ТПР) – это тиражируемое проектное решение. Основными видами ТПР являются: типовые решения по задаче или по отдельному виду обеспечения задачи; отдельные подсистемы, разработанные с учетом функциональной полноты и минимизации внешних информационных связей; полный набор функциональных и обеспечивающих подсистем ИС.
Типовое проектирование предполагает реализацию одного из подходов к проектированию: параметрически-ориентированного (оценка пригодности пакетов прикладных программ (ППП) для решения задач, анализ и оценка доступных ППП, выбор и закупка наиболее подходящего пакета, настройка параметров или доработка закупленного ППП) и модельно-ориентированного (адаптация типовой ИС в соответствии с моделью объекта автоматизации, т.е. ее построение с использованием специального программного инструментария – SAP Business Engineering Workbench (BEW), BAAN Enterprise Modeler).
Для обоснования целесообразности и осуществимости проекта, анализа хода его реализации, а также для заключительной оценки степени достижения поставленных целей проекта и сравнения фактических результатов с запланированными существует ряд характеристик проекта. К важнейшим из них относятся технико-экономические показатели:
- объем работ;
- сроки выполнения;
- себестоимость;
- экономическая эффективность, обеспечиваемая реализацией проекта;
- социальная и общественная значимость проекта.
Основные стадии проектирования информационной системы. Каждый проект проходит в своем развитии определенные состояния: от состояния, принятия решения о создании информационной системы, до вывода из эксплуатации. Совокупность ступеней развития принято разделять на стадии.
Можно выделить следующие стадии развития информационной системы:
Концептуальная стадия. Главным содержанием работ является определение проекта, разработка его концепции, включающая:
формирование идеи, постановку целей;
формирование команды проекта;
изучение требований заказчика;
- сбор исходных данных и анализ существующего состояния;
- определение основных требований, требуемых материальных, финансовых и трудовых ресурсов;
- представление предложений, их экспертизу и утверждение.
Подготовка технического предложения. Целью данной стадии является уточнение технического предложения в ходе переговоров с заказчиком о заключении Договора. Общее содержание работ этой фазы:
- разработка и утверждение технического задания;
- составление бюджета проекта;
- разработка планов работ;
- подписание Договора с заказчиком.
На стадии проектирования определяются подсистемы, их взаимосвязи, выбираются наиболее эффективные способы выполнения проекта и использования ресурсов. Характерные работы этой фазы:
- выполнение базовых проектных работ;
- разработка частных технических заданий;
- выполнение концептуального проектирования;
- разработка технических спецификаций;
- представление проектной разработки, экспертиза и утверждение.
На стадии разработки производятся координация и оперативный контроль работ по проекту, осуществляется изготовление подсистем, их объединение и тестирование. Основное содержание:
- выполнение работ по разработке программного обеспечения;
- подготовка к внедрению системы;
- контроль и регулирование основных показателей проекта.
На стадии ввода системы в эксплуатацию проводятся испытания, идет опытная эксплуатация системы в реальных условиях, ведутся переговоры о результатах выполнения проекта и о возможных новых контрактах. Основные виды работ:
- комплексные испытания;
- подготовка кадров для эксплуатации создаваемой системы;
- подготовка рабочей документации, сдача системы заказчику и ввод ее в эксплуатацию;
- сопровождение, поддержка, сервисное обслуживание;
- накопление опытных данных для последующих проектов, анализ опыта, состояния, определение направлений развития.
Дата добавления: 2016-06-24; просмотров: 2692;