- •1 Аналитическая часть 4
- •2 Проектная часть 29
- •Аналитическая часть
- •Технико-экономическая характеристика предметной области и предприятия. Анализ деятельности
- •Характеристика предприятия и его деятельности
- •Организационная структура управления предприятием
- •Определение места проектируемой задачи в списке задач и ее описание
- •Анализ системы обеспечения информационной безопасности и защиты информации
- •Выбор и обоснование стратегии автоматизации задачи
- •Выбор и обоснование способа приобретения ис для автоматизации комплекса задач
- •Обоснование проектных решений
- •Обоснование проектных решений по техническому обеспечению
- •Обоснование проектных решений по информационному обеспечению
- •Обоснование проектных решений по программному обеспечению
- •Проектная часть
- •Разработка проекта автоматизации
- •Этапы жизненного цикла проекта автоматизации
- •Ожидаемые риски на этапах жизненного цикла и их описание
Проектная часть
Разработка проекта автоматизации
Этапы жизненного цикла проекта автоматизации
Процесс создания любой ИС разделяется на ряд последовательных этапов, каждый из которых должен заканчиваться выпуском определенного продукта, например, моделей, алгоритмов, документации, программных продуктов и пр. Для каждого этапа в общем случае существуют свои технологии (методологии) и инструментальные средства проектирования, призванные обеспечить адекватную целям и задачам этого этапа разработку.
Обычно выделяют следующие общие этапы разработки ИС:
Обследование предметной области: изучение и анализ организационной структуры предприятия, его деятельности и существующей системы обработки информации; выделение и моделирование основных бизнес процессов; сбор информационных требований потенциальных пользователей; формирование требований к системе; оформление
технического задания (ТЗ) на разработку ИС (этот этап еще называют этапом системного анализа или предпроектированием).
Проектирование, включающее в себя логическое проектирование, главная часть которого - проектирование информационной основы (БД или хранилища), и техническое проектирование – определение структуры системы(состав функциональных и обеспечивающих подсистем), выбор аппаратной платформы и операционной системы, архитектуры БД (централизованная или распределенная) и др. На этом этапе оформляется технический проект ИС.
Реализация, включающая в себя разработку и наполнение БД, создание программ- приложений для функциональных подсистем. На этом этапе оформляется технический проект ИС. На этом этапе оформляется рабочий проект ИС, включающий в себя описания всех программ и инструкций для пользователей.
Тестирование, ввод в опытную эксплуатацию. На этом этапе производится комплексная отладка подсистем ИС, поэтапное внедрение системы в эксплуатацию по подразделениям предприятия. По окончании этапа оформляется акт о приемке-сдаче системы в промышленную эксплуатацию.
Эксплуатация и сопровождение ИС. На этом этапе могут быть обнаружены и должны быть исправлены ошибки и недоработки, а также сформулированы требования к возможной модернизации системы и выполнена сама модернизация. Вообще говоря, собственно к проектированию ИС имеют отношение только первые два этапа, а всю приведенную совокупность этапов, которые проходит ИС в своем развитии, начиная от момента принятия решения о создании ИС до момента прекращения ее функционирования, обычно называют жизненным циклом ИС. Описания действий и задач на каждом этапе жизненного цикла и последовательности выполнения стадий и этапов называют моделью жизненного цикла.
Модель фактически отражает различные состояния системы: ее разработку, функционирование и сопровождение в течение всей жизни ИС.
В настоящее время используются три модели жизненного цикла:
Каскадная модель (рис 8.), которая предусматривает последовательное выполнение всех вышеуказанных этапов в строго фиксированном порядке, причем переход на следующий этап возможен только после полного завершения предыдущего. Таким образом, эта модель предполагает разработку законченных продуктов на каждом этапе, что фактически исключает какое-либо изменение или уточнение требований пользователей. Эта ≪жесткая≫ модель хорошо работает только при разработке относительно простых ИС.
Итерационная модель (рис 9.) тоже предусматривает последовательное выполнение этапов, но допускает возвраты на предыдущие этапы после выполнения очередного этапа, если возникнет необходимость корректировки их результатов с учетом результатов более поздних этапов. Эта модель более соответствует реальному процессу создания ИС, но и она не всегда позволяет оперативно учитывать возникающие изменения и уточнения.
Спиральная модель (рис 10.) предполагает поэтапное создание на каждом витке некоторого прототипа системы (очередной версии) с тем, чтобы можно было оценить ее качество, уточнить требования пользователей и спланировать работы на следующем витке.
При этом используется известный в организации проектирования (и программирования!) подход ≪сверху-вниз≫, когда сначала разрабатываются общесистемные вопросы, такие, как состав функциональных подсистем и их интерфейс между собой и с БД, проектирование БД и т.п., а затем разработка и реализация конкретных задач обработки данных.
Рис. 8. Каскадная модель ЖЦ ИС
Рис. 9. Поэтапная модель с промежуточным контролем
Рис. 10. Спиральная модель ЖЦ ИС
Спиральная модель жизненного цикла может быть реализована с использованием прототипной или RAD-технологии (Rapid Application Development – быстрая разработка приложений). По этой технологии ИС разрабатывается путем последовательного расширения прототипов, начиная с детализации требований и заканчивая детализацией программного кода. Важной особенностью этой технологии является возможность активного участия на всех этапах разработки будущих пользователей системы. При использовании такой технологии возникает меньше ошибок и несоответствий между итерациями и требованиями пользователей, что позволяет, во-первых, сократить время разработки, а, во-вторых, в итоге получить систему, максимально удовлетворяющую заказчиков.
Существуют целый ряд стандартов, в которых регламентируется жизненный цикл ИС (и вообще программных систем) и предлагается определенная модель жизненного цикла. Базовым международным стандартом является стандарт ISO/IEC 12205, принятый в 1995г. В нем регламентированы основные группы процессов, включаемых в жизненный цикл ИС. Их всего пять: •
Договорные процессы, связанные с приобретением и поставкой ИС. •
Процессы предприятия, которые будут отражены в системе.
Проектные процессы.
Технические процессы, связанные с внедрением, сопровождением, обеспечением
функционирования системы.
Специальные процессы (не рассматриваем).
Существует целый ряд стандартов, регламентирующих ЖЦ ПО, а в некоторых случаях и процессы разработки.
Среди наиболее известных стандартов можно выделить следующие:
ГОСТ 34.601-90 - распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла.
ISO/IEC 12207:1995 - стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов.
Custom Development Method (методика Oracle) по разработке прикладных информационных систем - технологический материал, детализированный до уровня заготовок проектных документов, рассчитанных на использование в проектах с применением Oracle. Применяется CDM для классической модели ЖЦ (предусмотрены все работы/задачи и этапы), а также для технологий "быстрой разработки" (Fast Track) или "облегченного подхода", рекомендуемых в случае малых проектов.
Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией
версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML.
Microsoft Solution Framework (MSF) сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес- приложений.
Extreme Programming (XP). Экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последовательно дорабатываемых прототипов.
В соответствии с базовым международным стандартом ISO/IEC 12207 все процессы ЖЦ ПО делятся на три группы:
1. Основные процессы:
приобретение;
поставка;
разработка;
эксплуатация;
сопровождение.
2. Вспомогательные процессы:
документирование;
управление конфигурацией;
обеспечение качества;
разрешение проблем;
аудит;
аттестация;
совместная оценка;
верификация.
3. Организационные процессы:
создание инфраструктуры;
управление;
обучение;
усовершенствование.
В таблице 4 приведены ориентировочные описания основных процессов ЖЦ. Вспомогательные процессы предназначены для поддержки выполнения основных процессов, обеспечения качества проекта, организации верификации, проверки и тестирования ПО. Организационные процессы определяют действия и задачи, выполняемые как заказчиком, так и разработчиком проекта для управления своими процессами.
Таблица 4. Содержание основных процессов ЖЦ ПО ИС (ISO/IEC 12207)
Процесс (исполнитель процесса) |
Действия |
Вход |
Результат |
Приобретение (заказчик) |
Инициирование Подготовка заявочных предложений Подготовка договора Контроль деятельности поставщика Приемка ИС |
Решение о начале работ по внедрению ИС Результаты обследования деятельности заказчика Результаты анализа рынка ИС/ тендера План поставки/ разработки Комплексный тест ИС |
Технико-экономическое обоснование внедрения ИС Техническое задание на ИС Договор на поставку/ разработку Акты приемки этапов работы Акт приемно-сдаточных испытаний |
Поставка (разработчик ИС) |
Инициирование Ответ на заявочные предложения Подготовка договора Планирование исполнения Поставка ИС |
Техническое задание на ИС Решение руководства об участии в разработке Результаты тендера Техническое задание на ИС План управления проектом Разработанная ИС и документация |
Решение об участии в разработке Коммерческие предложения/ конкурсная заявка Договор на поставку/ разработку План управления проектом Реализация/ корректировка Акт приемно-сдаточных испытаний |
Разработка (разработчик ИС) |
Подготовка Анализ требований к ИС Проектирование архитектуры ИС Разработка требований к ПО Проектирование архитектуры ПО Детальное проектирование ПО Кодирование и тестирование ПО Интеграция ПО и квалификационное тестирование ПО Интеграция ИС и квалификационное тестирование ИС |
Техническое задание на ИС Техническое задание на ИС, модель ЖЦ Подсистемы ИС Спецификации требования к компонентам ПО Архитектура ПО Материалы детального проектирования ПО План интеграции ПО, тесты Архитектура ИС, ПО, документация на ИС, тесты |
Используемая модель ЖЦ, стандарты разработки План работ Состав подсистем, компоненты оборудования Спецификации требования к компонентам ПО Состав компонентов ПО, интерфейсы с БД, план интеграции ПО Проект БД, спецификации интерфейсов между компонентами ПО, требования к тестам Тексты модулей ПО, акты автономного тестирования Оценка соответствия комплекса ПО требованиям ТЗ Оценка соответствия ПО, БД, технического комплекса и комплекта документации требованиям ТЗ |
Позднее был разработан и в 2002 г. опубликован стандарт на процессы жизненного цикла систем (ISO/IEC 15288 System life cycle processes). К разработке стандарта были привлечены специалисты различных областей: системной инженерии, программирования, управления качеством, человеческими ресурсами, безопасностью и пр. Был учтен практический опыт создания систем в правительственных, коммерческих, военных и академических организациях. Стандарт применим для широкого класса систем, но его основное предназначение - поддержка создания компьютеризированных систем. Именно поэтому данный стандарт подходит для реализации в моем проекте. Согласно стандарту ISO/IEC серии 15288 в структуру ЖЦ следует включать следующие группы процессов:
1. Договорные процессы:
приобретение (внутренние решения или решения внешнего поставщика);
поставка (внутренние решения или решения внешнего поставщика).
2. Процессы предприятия:
управление окружающей средой предприятия;
инвестиционное управление;
управление ЖЦ ИС;
управление ресурсами;
управление качеством.
3. Проектные процессы:
планирование проекта;
оценка проекта;
контроль проекта;
управление рисками;
управление конфигурацией;
управление информационными потоками;
принятие решений.
4. Технические процессы:
определение требований;
анализ требований;
разработка архитектуры;
внедрение;
интеграция;
верификация;
переход;
аттестация;
эксплуатация;
сопровождение;
утилизация.
5. Специальные процессы:
определение и установка взаимосвязей исходя из задач и целей.
Стадии создания системы, предусмотренные в стандарте ISO/IEC 15288, несколько отличаются от рассмотренных выше. Перечень стадий и основные результаты, которые должны быть достигнуты к моменту их завершения, приведены в таблице 5.
Таблица 5. Стадии создания систем (ISO/IEC 15288)
№ п/п |
Стадия |
Описание |
1 |
Формирование концепции |
Анализ потребностей, выбор концепции и проектных решений |
2 |
Разработка |
Проектирование системы |
3 |
Реализация |
Изготовление системы |
4 |
Эксплуатация |
Ввод в эксплуатацию и использование системы |
5 |
Поддержка |
Обеспечение функционирования системы |
6 |
Снятие с эксплуатации |
Прекращение использования, демонтаж, архивирование системы |
Язык UML (Unified Modelling Language, стандарт ISO, 2005г.) – это графический язык разработки и спецификации проектов программных систем, предназначенный для описания, визуализации и документирования всех этапов процесса разработки: начиная от этапов анализа и обследования предметной области, построения логической модели данных для БД и кончая описанием структуры системы и ее программной реализации. Исторически при разработке информационных систем использовались три графических нотации:
Диаграммы ≪сущность-связь≫ (Entity-Relationship Diagrams, EDR), предназначенны для графического описания модели данных предметной области: наборов сущностей и связей между ними.
Диаграммы функционального моделирования (Structured Analysis and Design Technique, SADT), предназначенные для описания процессов функционирования системы. Диаграммы строятся по иерархическому принципу и позволяют в наглядной форме отобразить последовательность действий, необходимых для выполнения каждой функции системы. Было разработано несколько типов таких диаграмм:
IDEF0, используемых для моделирования и документирования процессов производства (бизнес-процессов);
IDEF1, используемых для отображения и документирования информации о внешнем окружении производства;
IDEF2, предназначенных для описания поведения системы во времени. Следует заметить, что эта нотация не была полностью реализована.
Диаграммы потоков данных (Data Flow Diagrams, DFD).
