Этапы развития CASE-систем

За последнее десятилетие сформировалось новое направление в проектировании информационных систем - автоматизированное проектирование с помощью CASE-средств. Термин CASE (Computer Aided System/Software Engineering) первоначально относился только к автоматизации разработки программного обеспечения; сейчас он охватывает процесс разработки сложных АИС в целом .

Изначально CASE-технологии развивались с целью преодоления недостатков структурной методологии проектирования (сложности понимания, высокой трудоемкости и стоимости использования, трудности внесения изменений в проектные спецификации и т. д.) за счет автоматизации и интеграции поддерживающих средств.

CASE-технологии не существуют сами по себе, не являются самостоятельными. Они автоматизируют и оптимизируют использование соответствующей методологии, дают возможность повысить эффективность ее применения.

Другими словами, CASE-технологии представляют собой совокупность методологий анализа, проектирования, разработки и сопровождения сложных систем программного обеспечения, поддержанную комплексом взаимосвязанных средств автоматизации, которые позволяют в наглядной форме моделировать предметную область, анализировать эту модель на всех стадиях разработки и сопровождения АИС и разрабатывать приложения в соответствии с информационными потребностями пользователей .

Современные CASE-средства охватывают обширную область поддержки многочисленных технологий проектирования АИС - от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл АИС. Наибольшая потребность в использовании CASE-систем испытывается на начальных этапах разработки - на этапах анализа и спецификации требований к АИС. Допущенные здесь ошибки практически фатальны, их цена значительно превышает цену ошибок поздних этапов разработки.

Основные задачи CASE-средств состоят в том, чтобы отделить начальные этапы (анализ и проектирование) от последующих и не обременять разработчиков деталями среды разработки и функционирования системы.

В большинстве современных CASE-систем применяются методологии структурного и/или объектно-ориентированного анализа и проектирования, основанные на использовании наглядных диаграмм, графов, таблиц и схем.

При грамотном применении CASE-инструментария достигается значительный рост производительности труда, составляющий (по оценкам зарубежных фирм пользователей CASE-технологий) от 100 до 600 % в зависимости от объема, сложности работ и опыта работы с CASE. При этом изменяются все фазы жизненного цикла АИС, но наибольшие изменения касаются фаз анализа и проектирования (табл. 2.5, 2.6) .

Таблица 2.5. Оценки трудозатрат по фазам жизненного цикла АИС

Таблица 2.6. Сравнение использования CASE и традиционнойразработки

Применение CASE-средств не только автоматизирует структурную методологию и дает возможность использовать современные методы системной и программной инженерии, но и предоставляет другие преимущества (рис. 2.22), в частности:

1. улучшает качество разрабатываемого программного обеспечения за счет средств автоматической генерации и контроля;

2. позволяет уменьшить время создания прототипа АИС, что дает возможность на ранних этапах оценить качество и эффективность проекта;

3. ускоряет процесс проектирования и разработки;

4. позволяет многократно использовать разработанные компоненты;

5. поддерживает сопровождение АИС;

6. освобождает от рутинной работы по документированию проекта, так как использует встроенный документатор;

7. облегчает коллективную работу над проектом.

Рис. 2.22. Преимущества разработки АИС с использованием CASE-технологий: а - коэффициент уменьшения стоимости проекта; б - коэффициент уменьше­ния временных затрат на разработку

В основе большинства CASE-средств лежат четыре главных понятия: методология, метод, нотация, средство [ 11,15, 16].

Методология определяет руководящие указания для оценки и выбора решений при проектировании и разработке АИС, этапы работы, их последовательность, правила распределения и назначения методов.

Методы - процедуры генерации компонентов и их описаний.

Нотации предназначены для описания общей структуры системы, элементов данных, этапов обработки, могут включать графы, диаграммы, таблицы, блок-схемы, формальные и естественные языки.

Средства - инструментарий для поддержки и усиления методов; поддерживает работу пользователей при создании и редактировании проекта в интерактивном режиме, помогает организовать проект в виде иерархии уровней абстракции, осуществляет проверки соответствия компонентов.

Классификация CASE-средств

До сих пор не существует устойчивой классификации CASE-средств, определены только подходы к классификации в зависимости от различных классификационных признаков. Ниже приведены некоторые из них .

Ориентация на технологические этапы и процессы жизненного цикла АИС:

1. средства анализа и проектирования. Используются для создания спецификаций системы и ее проектирования. Они поддерживают широко известные методологии проектирования;

2. средства проектирования баз данных. Обеспечивают логическое моделирование данных, генерацию структур БД;

3. средства управления требованиями;

4. средства управления конфигурацией программного обеспечения. Поддерживают программирование, тестирование, автоматическую генерацию ПО из спецификаций;

5. средства документирования;

6. средства тестирования;

7. средства управления проектом. Поддерживают планирова­ние, контроль, взаимодействие;

8. средства реверсного инжиниринга, предназначенные для переноса существующей системы в новую среду.

Поддерживаемые методологии проектирования [ 11, 12, 15, 16]:

1. функционально-ориентированные (структурно-ориентированные);

2. объектно-ориентированные;

3. комплексно-ориентированные (набор методологий проектирования).

Поддерживаемые графические нотации построения диаграмм:

1. с фиксированной нотацией;

2. с отдельными нотациями;

3. с наиболее распространенными нотациями.

Степень интегрированности:

1. вспомогательные программы (Tools), самостоятельно решающие автономную задачу;

2. пакеты разработки (Toolkit), представляющие собой совокупность средств, обеспечивающих помощь для одного из классов программных задач;

3. наборы интегрированных средств, связанных общей базой проектных данных - репозиторием, автоматизирующие все или часть работ разных этапов создания АИС (Workbench).

Коллективная разработка проекта:

1. без поддержки коллективной разработки;

2. ориентированные на разработку проекта в режиме реального времени;

3. ориентированные на режим объединения подпроектов.

Типы CASE-средств:

1. средства анализа (Upper CASE); среди специалистов называются средствами компьютерного планирования. С помощью этих CASE-средств строят модель, отражающую всю существующую специфику. Она направлена на понимание общего и частного механизмов функционирования, имеющихся возможностей, ресурсов, целей проекта в соответствии с назначением фирмы. Эти средства позволяют проводить анализ различных сценариев, накапливая информацию для принятия оптимальных решений;

2. средства анализа и проектирования (Middle CASE); считаются средствами поддержки этапов анализа требований и проектирования спецификаций и структуры АИС. Основной результат использования среднего CASE-средства состоит и значительном упрощении проектирования системы, так как проектирование превращается в итеративный процесс работы с требованиями к АИС. Кроме того, средние CASE-средства обеспечивают быстрое документирование требований;

3. средства разработки ПО (Lower); поддерживают системы разработки программного обеспечения АИС. Содержат системные словари и графические средства, исключающие необходимость разработки физических спецификаций - имеются системные спецификации, которые непосредственно переводятся в программные коды разрабатываемой системы (при этом автоматически генерируется до 80 % кодов). Главными преимуществами нижних CASE-средств являются значительное уменьшение времени на разработку, облегчение модификаций, поддержка возможностей работы с прототипами.

CASE-средства, кроме того, классифицируют по типу и архитектуре вычислительной техники, а также по типу операционной системы .

В настоящее время рынок программных продуктов представлен самым разнообразным ПО, в том числе и CASE-средствами практически любого из перечисленных классов.

Характеристики CASE-средств

Silverrun. CASE-средство Silverrun американской фирмы Computer Systems Advisers, Inc. (CSA) используется для анализа и проектирования АИС бизнес-класса и ориентировано вбольшей степени на спиральную модель ЖЦ. Оно применимо для поддержки любой методологии, основанной на раздельном построении функциональной и информационной моделей (диаграмм потоков данных и диаграмм «сущность-связь») .

Настройка на конкретную методологию обеспечивается выбором требуемой графической нотации моделей и набора правил проверки проектных спецификаций. В системе имеются готовые настройки для наиболее распространенных методологий: DATARUN (основная методология, поддерживаемая Silverrun), Gane/Sarson, Yourdon/DeMarco, Merise, Ward/Mellor, Information Engineering. Для каждого понятия, введенного в проекте, имеется возможность добавления собственных описателей. Архитектуpa Silverrun позволяет наращивать среду разработки по мере необходимости.

Silverrun имеет модульную структуру и состоит из четырех модулей, каждый из которых является самостоятельным продуктом и может приобретаться и использоваться отдельно.

1. Модуль построения моделей бизнес-процессов в форме диаграмм потоков данных Business Process Modeler (BPM) позволяет моделировать функционирование автоматизируемой организации или создаваемой АИС. Возможность работы с моделями большой сложности обеспечена функциями автоматической перенумерации, работы с деревом процессов (включая визуальное перетаскивание ветвей), отсоединения и присоединения частей модели для коллективной разработки. Диаграммы могут изображаться в нескольких предопределенных нотациях, включая Yourdon/DeMarco и Gane/Sarson. Имеется также возможность создавать собственные нотации, например в число изображаемых на схеме дескрипторов добавлять определенные пользователем поля.

2. Модуль концептуального моделирования данных Entity-Relationship eXpert (ERX) обеспечивает построение моделей данных «сущность-связь», не привязанных к конкретной реализации. Встроенная экспертная система позволяет создавать корректную нормализованную модель данных посредством ответов на содержательные вопросы о взаимосвязи данных. Предусмотрено автоматическое построение модели данных из описаний структур данных. Анализ функциональных зависимостей атрибутов дает возможность проверить соответствие модели требованиям третьей нормальной формы и обеспечить их выполнение. Проверенная модель передается в модуль Relational Data Modeler.

3. Модуль реляционного моделирования Relational Data Modeler (RDM) позволяет создавать детализированные модели «сущность-связь», предназначенные для реализации в реляционной БД. В этом модуле документируются все конструкции, связанные с построением базы данных: индексы, триггеры, хранимые процедуры и т. д. Гибкая изменяемая нотация и расширяемость репозитория позволяют работать по любой методологии. Возможность создавать подсхемы соответствует подходу ANSI SPARC к представлению схемы БД. На языке подсхем моделируются как узлы распределенной обработки, так и пользовательские представления. Этот модуль обеспечивает проектирование и полное документирование реляционных БД.

4. Менеджер репозитория рабочей группы Workgroup Repository Manager (WRM) применяется как словарь данных для хранения общей для всех моделей информации, а также обеспечивает интеграцию модулей Silverrun в единую среду проектирования.

Достоинством CASE-средства Silverrun являются высокая гибкость и разнообразие изобразительных средств построения моделей, а недостатком - отсутствие жесткого взаимного контроля между компонентами различных моделей (например, возможности автоматического распространения изменений между DFD различных уровней декомпозиции). Следует, однако, отметить, что этот недостаток может иметь существенное значение только в случае использования каскадной модели жизненного цикла .

В Silverrun включены средства:

1. автоматической генерации схем баз данных для наиболее распространенных СУБД: Oracle, Informix, DB2, Ingres, Progress, SQL Server, SQLBase, Sybase;

2. передачи данных средствам разработки приложений: JAM, PowerBuilder, SQL Windows, Uniface, NewEra, Delphi.

Таким образом, можно полностью определить ядро БД с использованием всех возможностей конкретной СУБД: триггеров, хранимых процедур, ограничений ссылочной целостности. При создании приложения данные, перенесенные из репозитория Silverrun, используются либо для автоматической генерации интерфейсных объектов, либо для быстрого их создания вручную.

Для обмена данными с другими средствами автоматизации проектирования, создания специализированных процедур анализа и проверки проектных спецификаций, составления специализированных отчетов в соответствии с различными стандартами в системе Silverrun предусмотрено три способа выдачи проектной информации во внешние файлы.

1. Система отчетов. Отчеты выводятся в текстовые файлы.

2. Система экспорта/импорта. Задается не только содержимое экспортного файла, но и разделители записей, полей в записях, маркеры начала и конца текстовых полей. Такие экспортные файлы можно формировать и загружать в репозиторий. Это дает возможность обмениваться данными с различными системами: другими CASE-средствами, СУБД, текстовыми редакторами и электронными таблицами.

3. Хранение репозитория во внешних файлах с доступом с помощью ODBC-драйверов. Для доступа к данным репозитория из наиболее распространенных СУБД обеспечена возможность хранить всю проектную информацию непосредственно в формате этих СУБД.

Silverrun поддерживает два способа групповой работы:

1) в стандартной однопользовательской версии имеется механизм контролируемого разделения и слияния моделей. Модель может быть разделена на части и распределена между несколькими разработчиками. После детальной проработки части снова собираются в единую модель;

2) сетевая версия Silverrun позволяет вести параллельную групповую работу с моделями, хранящимися в сетевом репози-тории на базе СУБД Oracle, Sybase или Informix. При этом несколько разработчиков могут работать с одной и той же моделью, так как блокировка объектов происходит на уровне отдельных элементов модели.

JAM. Средство разработки приложений JYACC"s Application Manager (JAM) - продукт фирмы JYACC. Главной особенностью является соответствие методологии RAD, так как JAM позволяет достаточно быстро реализовать цикл разработки приложения, заключающийся в формировании очередной версии прототипа приложения с учетом требований, выявленных на предыдущем шаге, и предъявить его пользователю .

JAM имеет модульную структуру и состоит из следующих компонентов:

1. ядра системы;

2. JAM/DBi - специализированных модулей интерфейса к СУБД (JAM/DBi-Oracle, JAM/DBi-Informix, JAM/DBi-ODBC и т. д.);

3. JAM/RW - модуля генератора отчетов;

4. JAM/CASEi - специализированных модулей интерфейса к CASE-средствам (JAM/CASE-TeamWork, JAM/CASE-Inno-vator и т. д.);

5. JAM/TPi - специализированных модулей интерфейса к ме­неджерам транзакций (например, JAM/TPi-Server TUXEDO и т. д.);

6. Jterm - специализированного эмулятора Х-терминала.

Ядро системы является законченным продуктом и может самостоятельно использоваться для разработки приложений. Все остальные модули - дополнительные и самостоятельно использоваться не могут.

Ядро системы включает в себя следующие основные компоненты:

1. редактор экранов. В состав редактора экранов входят среда разработки экранов, визуальный репозиторий объектов, собственная СУБД JAM - JDB, менеджер транзакций, отладчик, редактор стилей;

2. редактор меню;

3. набор вспомогательных утилит;

4. средства изготовления промышленной версии приложения.

При использовании JAM разработка внешнего интерфейса приложения представляет собой визуальное проектирование и сводится к созданию экранных форм путем размещения на них интерфейсных конструкций и определению экранных полей ввода/вывода информации. Проектирование интерфейса в JAM осуществляется с помощью редактора экранов. Приложения, разработанные в JAM, имеют многооконный интерфейс. Разработка экрана заключается в размещении на нем интерфейсных элементов, их группировке, задании значений их свойств.

Редактор меню позволяет разрабатывать и отлаживать системы меню. Реализована возможность построения пиктографических меню. Назначение пунктов меню объектам приложения осуществляется в редакторе экранов.

В ядро JAM встроена однопользовательская реляционная СУБД JDB. Основным назначением JDB является прототипирование приложений в тех случаях, когда работа со штатной СУБД невозможна или нецелесообразна. В JDB реализован необходимый минимум возможностей реляционных СУБД, в который не входят индексы, хранимые процедуры, триггеры и представления. С помощью JDB можно построить БД, идентичную целевой БД (с точностью до отсутствующих в JDB возможностей), и разработать значительную часть приложения.

Отладчик позволяет проводить комплексную отладку разрабатываемого приложения. Осуществляется трассировка всех событий, возникающих в процессе исполнения приложения.

Утилиты JAM включают три группы:

1) конверторы файлов экранов JAM в текстовые. JAM сохра­няет экраны в виде двоичных файлов собственного формата;

2) конфигурирование устройств ввода-вывода. JAM и приложения, построенные с его помощью, не работают непосредственно с устройствами ввода-вывода. Вместо этого JAM обраща ется к логическим устройствам ввода-вывода (клавиатура, терминал, отчет);

3) обслуживание библиотек экранов.

Одним из дополнительных модулей JAM является генератор отчетов. Компоновка отчета осуществляется в редакторе экранов JAM. Описание работы отчета осуществляется с помощью специального языка. Генератор отчетов позволяет определить данные, выводимые в отчет, группировку выводимой информации, форматирование вывода и т. д.

Приложения, разработанные с использованием JAM, могут быть изготовлены в виде исполняемых модулей. Для этого разработчики должны иметь компилятор С и редактор связей.

JAM содержит встроенный язык программирования JPL (JAM Procedural Language), с помощью которого в случае необходимости могут быть написаны модули, реализующие специфические действия. Данный язык является интерпретируемым. Существует возможность обмена информацией между средой визуально построенного приложения и такими модулями. Кроме того, в JAM реализована возможность подключения внешних модулей, написанных на языках, совместимых по вызовам функций с языком С.

JAM является событийно-ориентированной системой, состоящей из набора событий - открытие и закрытие окон, нажатие клавиши клавиатуры, срабатывание системного таймера, получение и передача управления каждым элементом экрана. Разработчик реализует логику приложения путем определения обработчика каждого события.

Обработчиками событий в JAM могут быть как встроенные функции JAM, так и функции, написанные разработчиком на С или JPL. Набор встроенных функций включает более 200 функций различного назначения; они доступны для вызовов из функций, написанных как на JPL, так и на С.

Промышленная версия приложения, разработанного с помощью JAM, состоит из следующих компонентов:

1. исполняемого модуля интерпретатора приложения;

2. экранов, составляющих приложение (поставляются в виде отдельных файлов, в составе библиотек экранов или встраиваются в тело интерпретатора);

3. внешних JPL-модулей (поставляются в виде текстовых файлов или в прекомпилированном виде; прекомпилиро-

4. ванные внешние JPL-модули - в виде отдельных файлов и в составе библиотек экранов);

5. файлов конфигурации приложения - файлов конфигурации клавиатуры и терминала, файла системных сообщений, файла обшей конфигурации.

Непосредственное взаимодействие с СУБД реализуют модули JAM/DBi (Database interface). Способы реализации взаимодействия в JAM разделяются на два класса: ручные и автоматические.

При ручном способе разработчик самостоятельно пишет запросы на SQL, в которых источниками и адресатами приема результатов выполнения запроса могут быть как интерфейсные элементы визуально спроектированного внешнего уровня, так и внутренние, невидимые для конечного пользователя переменные.

Автоматический режим реализуется менеджером транзакций JAM. Он осуществим для типовых распространенных видов операций с БД, так называемых QBE (Query By Example - запросы по образцу), с учетом достаточно сложных взаимосвязей между таблицами БД и автоматическим управлением атрибутами экранных полей ввода-вывода в зависимости от вида транзакции (чтение, запись и т. д.), в которой участвует сгенерированный запрос.

JAM позволяет строить приложения для работы с более чем 20 СУБД: ORACLE, Informix, Sybase, Ingres, InterBase, NetWare SQL Server, Rdb, DB2, ODBC-совместимые СУБД и др.

Отличительной чертой JAM является высокий уровень переносимости приложений между различными платформами (MS DOS/MS Windows, SunOS, Solaris (i80x86, SPARC), HP-UX, AIX, VMS/Open VMS и др.); возможно требование «перерисовать» статические текстовые поля на экранах с русским текстом при переносе между средами DOS-Windows-UNIX. Кроме того, переносимость облегчается тем, что в JAM приложения разрабатываются для виртуальных устройств ввода-вывода, а не для физических. Таким образом, при переносе приложения с платформы на платформу, как правило, требуется лишь определить соответствие между физическими устройствами ввода-вывода и их логическими представлениями для приложения.

Использование SQL в качестве средства взаимодействия с СУБД также помогает обеспечивать переносимость между СУБД. В случае переноса структуры БД приложения могут не требовать никакой модификации, за исключением инициализации сеанса работы. Это возможно, если в приложении не использовались специфические для СУБД расширения SQL.

При росте нагрузки на систему и сложности решаемых задач (распределенность и гетерогенность используемых ресурсов, количество одновременно подключенных пользователей, сложность логики приложения) применяется трехзвенная модель архитектуры «клиент - сервер» с использованием менеджеров транзакций. Компоненты JAM/TPi-Client и JAM/TPi-Server позволяют доста­точно просто перейти на трехзвенную модель. При этом ключевую роль играет модуль JAM/TPi-Server, так как основная трудность внедрения трехзвенной модели заключается в реализации логики приложения в сервисах менеджеров транзакций.

Интерфейс JAM/CASE позволяет осуществлять обмен информацией между репозиторием объектов JAM и репозиторием CASE-средства. Обмен происходит аналогично тому, как структура БД импортируется в репозиторий JAM непосредственно из БД. Отличие заключается в том, что обмен между репозиториями является двунаправленным.

Кроме модулей JAM/CASEi, существует также модуль JAM/CASEi Developer"s Kit. С помощью этого модуля можно самостоятельно разработать интерфейс (т. е. специализированный модуль JAM/CASEi) для конкретного CASE-средства, если готового модуля JAM/CASEi для него не существует.

Существует интерфейс, реализующий взаимодействие между CASE-средством Silverrun и JAM. Он производит перенос схемы БД и экранных форм приложения между CASE-средством Silverrun-RDM и JAM версии 7.0; имеет два режима работы:

1) прямой режим (Silverrun-RDM->JAM) предназначен для создания объектов CASE-словаря и элементов репозитория JAM на основе представления схем в Silverrun-RDM. Исходя из представления моделей данных интерфейса в Silverrun-RDM производится генерация экранов и элементов репозитория JAM. Мост преобразует таблицы и отношения реляционных схем RDM в последовательность объектов JAM соответствующих типов. Методика построения моделей данных интерфейса в Silverrun-RDM предполагает применение механизма подсхем для прототипирования экранов приложения. По описанию каждой из подсхем RDM мост генерирует экранную форму JAM;

2) обратный режим (JAM->Silverrun-RDM) предназначен для переноса модификаций объектов CASE-словаря в реляционную модель Silverrun-RDM.

Режим реинжиниринга позволяет переносить модификации всех свойств экранов JAM, импортированных ранее из RDM, в схему Silvcrrun. Для контроля целостности БД не допускаются изменения схемы в виде добавления или удаления таблиц и полей таблиц.

Ядро JAM имеет встроенный интерфейс к средствам конфигурационного управления (PVCS на платформе Windows и SCCS на платформе UNIX). Под управлением этих систем передаются библиотеки экранов и/или репозитории. При отсутствии таких систем JAM самостоятельно реализует часть функций поддержки групповой разработки.

На платформе MS-Windows JAM имеет встроенный интерфейс к PVCS, и действия по выборке/возврату производятся непосредственно из среды JAM.

Vantage Team Builder (Westmount I-CASE). Vantage Team Builder представляет собой интегрированный программный продукт, ориентированный на реализацию и полную поддержку каскадной модели жизненного цикла .

Vantage Team Builder обеспечивает выполнение следующих функций:

1. проектирование диаграмм потоков данных, диаграмм «сущность-связь», структур данных, структурных схем программ и последовательностей экранных форм;

2. проектирование диаграмм архитектуры системы - SAD (проектирование состава и связи вычислительных средств, распределения задач системы между вычислительными средствами, моделирование отношений типа «клиент - сер­вер», анализ использования менеджеров транзакций и особенностей функционирования систем в реальном времени);

3. генерация кода программ на языке целевой СУБД с полным обеспечением программной среды и генерация SQL-кода для создания таблиц БД, индексов, ограничений целостности и хранимых процедур;

4. программирование на языке С со встроенным SQL;

5. управление версиями и конфигурацией проекта;

6. многопользовательский доступ к репозиторию проекта;

7. генерация проектной документации по стандартным и индивидуальным шаблонам;

8. экспорт и импорт данных проекта в формате CDIF (CASE Data Interchange Format).

Vantage Team Builder поставляется в различных конфигурациях в зависимости от используемых СУБД (ORACLE, Informix, Sybase или Ingres) или средств разработки приложений (Uniface). Конфигурация Vantage Team Builder for Uniface отличается от остальных частичной ориентацией на спиральную модель жизненного цикла за счет возможностей быстрого прототипирования. Для описания проекта АИС используется большой набор диаграмм.

При построении всех типов диаграмм обеспечивается контроль соответствия моделей синтаксису используемых методов, а также контроль соответствия одноименных элементов и их типов для различных типов диаграмм.

При построении диаграмм потоков данных DFD обеспечивается контроль соответствия диаграмм различных уровней декомпозиции. Контроль за правильностью верхнего уровня DFD осуществляется с помощью матрицы списков событий ELM. Для контроля за декомпозицией составных потоков данных используется несколько вариантов их описания: в виде диаграмм структур данных DSD или в нотации БНФ (форма Бэкуса - Наура).

Для построения SAD используется расширенная нотация DFD, дающая возможность вводить понятия процессоров, задач и периферийных устройств, что обеспечивает наглядность проектных решений .

При построении модели данных в виде ERD выполняется ее нормализация и вводится определение физических имен элементов данных и таблиц, которые будут использоваться в процессе генерации физической схемы данных конкретной СУБД. Обеспечивается возможность определения альтернативных ключей сущностей и полей, составляющих дополнительные точки входа в таблицу (поля индексов), и мощности отношений между сущностями.

Наличие универсальной системы генерации кода, основанной на специфицированных средствах доступа к репозиторию проекта, позволяет поддерживать высокий уровень исполнения проектной дисциплины разработчиками: жесткий порядок формирования моделей; жесткую структуру и содержимое докумен­тации; автоматическую генерацию исходных кодов программ и т. д.; все это обеспечивает повышение качества и надежности разрабатываемых ИС.

Для подготовки проектной документации могут использоваться издательские системы FrameMaker, Interleaf или Word Perfect. Структура и состав проектной документации настраиваются в соответствии с заданными стандартами. Настройка выполняется без изменения проектных решений.

При разработке крупных АИС вся система в целом соответствует одному проекту как категории Vantage Team Builder. Проект может быть декомпозирован на ряд систем, каждая из которых соответствует некоторой относительно автономной подсистеме АИС и разрабатывается независимо от других. В дальнейшем системы проекта могут быть интегрированы.

Процесс проектирования АИС с использованием Vantage Team Builder реализуется в виде четырех последовательных фаз (стадий) - анализа, архитектуры, проектирования и реализации, при этом законченные результаты каждой стадии полностью или частично переносятся (импортируются) в следующую фазу. Все диаграммы, кроме ERD, преобразуются в другой тип или изме­няют вид в соответствии с особенностями текущей фазы. Так, DFD преобразуются в фазе архитектуры в SAD, DSD - в DTD. После завершения импорта логическая связь с предыдущей фазой разрывается, т. е. в диаграммы можно вносить все необходимые изменения.

Конфигурация Vantage Team Builder for Uniface обеспечивает совместное использование двух систем в рамках единой технологической среды проектирования, при этом схемы БД (SQL-модели) переносятся в репозиторий Uniface, и наоборот, прикладные модели, сформированные средствами Uniface, могут быть перенесены в репозиторий Vantage Team Builder. Возможные рассогласования между репозиториями двух систем устраняются с помощью специальной утилиты. Разработка экранных форм в среде Uniface выполняется на базе диаграмм последовательностей форм FSD после импорта SQL-модели. Технология разработки АИС на базе данной конфигурации показана на рис. 2.23 .

Структура репозитория, хранящегося в целевой СУБД, и интерфейсы Vantage Team Builder являются открытыми, что в принципе обеспечивает возможность интеграции с любыми другими средствами.

Uniface. Продукт фирмы Compuware представляет собой среду разработки крупномасштабных приложений в архитектуре «клиент-сервер» и имеет следующую компонентную архитектуру :

1. Application Objects Repository (репозиторий объектов приложений) содержит метаданные, автоматически используемыt всеми остальными компонентами на протяжении жизненного цикла АИС (прикладные модели, описания данных, бизнес-правил, экранных форм, глобальных объектов и шаблонов). Репозиторий может храниться в любой из БД, поддерживаемых Uniface;

Рис. 2.23. Взаимодействие Vantage Team Builder и Uniface

2. Application Model Manager поддерживает прикладные модели (E-R-модели), каждая из которых представляет собой подмножество общей схемы БД с точки зрения данного приложения, и включает соответствующий графический редактор;

3. Rapid Application Builder - средство быстрого создания экранных форм и отчетов на базе объектов прикладной модели. Включает графический редактор форм, средства прототипирования, отладки, тестирования и документирования. Реализован интерфейс с разнообразными типами оконных элементов управления Open Widget Interface для существующих графических интерфейсов - MS Windows (включая VBX), Motif, OS/2. Универсальный интерфейс представления Universal Presentation Interface позволяет использовать одну и ту же версию приложения в среде различных графических интерфейсов без изменения программного кода;

4. Developer Services (службы разработчика) используются для поддержки крупных проектов и реализуют контроль версий (Uniface Version Control System), права доступа (разграничение полномочий), глобальные модификации и т. д. Это обеспечивает разработчиков средствами параллельного проектирования, входного и выходного контроля, поиска, просмотра, поддержки и выдачи отчетов по данным системы контроля версий;

5. Deployment Manager (управление распространением приложений) - средства, позволяющие готовить созданное приложение для распространения, устанавливать и сопровождать его (при этом платформа пользователя может отличаться от платформы разработчика). В их состав входят сетевые драйверы и драйверы СУБД, сервер приложений (полисервер), средства распространения приложений и управления БД. Uniface поддерживает интерфейс практически со всеми известными программно-аппаратными платформами, СУБД, CASE-средствами, сетевыми протоколами и менеджерами транзакций;

6. Personal Series (персональные средства) используются для создания сложных запросов и отчетов в графической форме (Personal Query и Personal Access - PQ/PA), а также для переноса данных в такие системы, как WinWord и Excel;

7. Distributed Computing Manager - средство интеграции с менеджерами транзакций Tuxedo, Encina, CICS, OSF DCE.

Версия Uniface 7 полностью поддерживает распределенную модель вычислений и трехзвенную архитектуру «клиент-сервер» (с возможностью изменения схемы декомпозиции приложений на этапе исполнения). Приложения, создаваемые с помощью Uniface 7, могут исполняться в гетерогенных операционных средах, использующих различные сетевые протоколы, одновременно на нескольких разнородных платформах (в том числе и в Internet).

В состав компонент Uniface 7 входят:

1. Uniface Application Server - сервер приложений для распределенных систем;

2. WebEnabler - серверное ПО для эксплуатации приложений в Internet и intranet;

3. Name Server - серверное ПО, обеспечивающее использование распределенных прикладных ресурсов;

4. PolyServer - средство доступа к данным и интеграции различных систем.

В список поддерживаемых СУБД входят DB2, VSAM и IMS; PolyServer обеспечивает также взаимодействие с ОС MVS.

Designer/2000 + Developer/2000. Designer/2000 2.0 фирмы ORACLE является интегрированным CASE-средством, обеспечивающим в совокупности со средствами разработки приложений Developer/2000 поддержку полного ЖЦ ПО для систем, исользующих СУБД ORACLE .

Designer/2000 представляет собой семейство методологий и поддерживающих их программных продуктов. Базовая методология Designer/2000 (CASE*Method) - структурная методология проектирования систем, полностью охватывающая все этапы жизненного цикла АИС. На этапе планирования определяются цели создания системы, приоритеты и ограничения, разрабатывается системная архитектура и план разработки АИС. В процессе анализа строятся: модель информационных потребностей (диаграмма «сущность-связь»), диаграмма функциональной иерархии (на основе функциональной декомпозиции АИС), матрица перекрестных ссылок и диаграмма потоков данных.

На этапе проектирования разрабатывается подробная архитектура АИС, проектируется схема реляционной БД и программные модули, устанавливаются перекрестные ссылки между компонентами АИС для анализа их взаимного влияния и контроля за изменениями.

На этапе реализации создается БД, строятся прикладные системы, производится их тестирование, проверка качества и соответствия требованиям пользователей. Создается системная документация, материалы для обучения и руководства пользовате­лей. На этапах эксплуатации и сопровождения анализируются производительность и целостность системы, выполняется поддержка и, при необходимости, модификация АИС.

Designer/2000 обеспечивает графический интерфейс при разработке различных моделей (диаграмм) предметной области. В процессе построения моделей информация о них заносится в репозиторий. В состав Designer/2000 входят следующие компоненты.

Nbsp; Модели жизненного цикла АИС

Модель жизненного цикла АИС - это структура, описывающая процессы, действия и задачи, которые осуществляются и ходе разработки, функционирования и сопровождения в течение всего жизненного цикла системы.

Выбор модели жизненного цикла зависит от специфики, масштаба, сложности проекта и набора условий, в которых АИС создается и функционирует.

Модель ЖЦ АИС включает:

Результаты выполнения работ на каждой стадии;

Ключевые события или точки завершения работ и принятия решений.

В соответствии с известными моделями ЖЦ ПО определяют модели ЖЦ АИС - каскадную, итерационную, спиральную.

I. Каскадная модель описывает классический подход к разработке систем в любых предметных областях; широко использовалась в 1970-80-х гг.

Каскадная модель предусматривает последовательную организацию работ, причем основной особенностью модели является разбиение всей работы на этапы. Переход от предыдущего этапа к последующему происходит только после полного завершениявсех работ предыдущего.

Выделяют пять устойчивых этапов разработки, практически не зависящих от предметной области (рис. 1.1).

На первом этапе проводится исследование проблемной области, формулируются требования заказчика. Результатом данного этапа является техническое задание (задание на разработку), согласованное со всеми заинтересованными сторонами.

В ходе второго этапа, согласно требованиям технического задания, разрабатываются те или иные проектные решения. В результате появляется комплект проектной документации.

Третий этап - реализация проекта; по существу, разработка программного обеспечения (кодирование) в соответствии с проектными решениями предыдущего этапа. Методы реализации при этом принципиального значения не имеют. Результатом выполнения этапа является готовый программный продукт.

На четвертом этапе проводится проверка полученного программного обеспечения на предмет соответствия требованиям, заявленным в техническом задании. Опытная эксплуатация позволяет выявить различного рода скрытые недостатки, проявляющиеся в реальных условиях работы АИС.

Последний этап - сдача готового проекта, и главное здесь - убедить заказчика в том, что все его требования выполнены в полной мере.

Рис.1.1 Каскадная модель ЖЦ АИС

Этапы работ в рамках каскадной модели часто называют частями проектного цикла АИС, поскольку этапы состоят из многих итерационных процедур уточнения требований к системе и вариантов проектных решений. ЖЦ АИС существенно сложнее и длиннее: он может включать в себя произвольное число циклов уточнения, изменения и дополнения уже принятых и реализованных проектных решений. В этих циклах происходит развитие АИС и модернизация отдельных ее компонентов.

Преимущества каскадной модели:

1) на каждом этапе формируется законченный набор проект ной документации, отвечающий критериям полноты и согласованности. На заключительных этапах разрабатывается пользовательская документация, охватывающая все предусмотренные стандартами виды обеспечения АИС (организационное, информационное, программное, техническое и т. д.);

2) последовательное выполнение этапов работ позволяет планировать сроки завершения и соответствующие затраты.

Каскадная модель изначально разрабатывалась для решения различного рода инженерных задач и не потеряла своего значение для прикладной области до настоящего времени. Кроме того, каскадный подход идеально подходит для разработки АИС, как уже в самом начале разработки можно достаточно точно полно сформулировать все требования с тем, чтобы предоставить разработчикам свободу технической реализации. К таким АИС, в частности, относятся сложные расчетные системы и системы реального времени.

Недостатки каскадной модели:

Существенная задержка в получении результатов;

Ошибки и недоработки на любом из этапов проявляются, как правило, на последующих этапах работ, что приводит к необходимости возврата;

Сложность параллельного ведения работ по проекту;

Чрезмерная информационная перенасыщенность каждого из этапов;

Сложность управления проектом;

Высокий уровень риска и ненадежность инвестиций.

Задержка в получении результатов проявляется в том, что последовательном подходе к разработке согласование результатов с заинтересованными сторонами производится только е завершения очередного этапа работ. В результате может оказаться, что разрабатываемая АИС не соответствует требованиям, и такие несоответствия могут возникать на любом этапе разработки; кроме того, ошибки могут непреднамеренно вноситься и проектировщиками-аналитиками, и программистами, так как они не обязаны хорошо разбираться в тех предметных областях, для которых разрабатывается АИС.

Возврат на более ранние стадии. Этот недостаток является из проявлений предыдущего: поэтапная последовательная работа над проектом может привести к тому, что ошибки, допущенные на более ранних этапах, обнаруживаются только на последующих стадиях. В результате проект возвращается на предыдущий этап, перерабатывается и только затем передается в последующую работу. Это может послужить причиной срыва графика и усложнения взаимоотношений между группами разработчиков, выполняющих отдельные этапы.

Самый плохой вариант, когда недоработки предыдущего этапа обнаруживаются не на следующем этапе, а позднее. Например, на стадии опытной эксплуатации могут проявиться ошибки в описании предметной области. Это означает, что часть проекта должна быть возвращена на начальный этап работы.

Сложность параллельного ведения работ связана с необходимостью согласования различных частей проекта Чем сильнее взаимосвязь отдельных частей проекта, тем чаще и тщательнее должна выполняться синхронизация, тем сильнее зависят друг от друга группы разработчиков. В результате преимущества параллельного проведения работ просто теряются; отсутствие параллелизма негативно сказывается и на организации работы всего коллектива.

Проблема информационной перенасыщенности возникает вследствие сильной зависимости между различными группами разработчиков. Дело в том, что при внесении изменений в одну из частей проекта, необходимо оповещать тех разработчиков, которые использовали (могли использовать) ее в своей работе. При наличии большого числа взаимосвязанных подсистем синхронизация внутренней документации становится отдельной важнейшей задачей: разработчики должны постоянно знакомятся с изменениями и оценивать, как скажутся эти изменения на полученных результатах.

Сложность управления проектом в основном обусловлена строгой последовательностью стадий разработки и наличием сложных взаимосвязей между различными частями проекта. Регламентированная последовательность работ приводит к тому, что одни группы разработчиков должны ожидать результатов работы других команд, поэтому требуется административное вмешательство для согласования сроков и состава передаваемой документации.

В случае же обнаружения ошибок в работе необходим возврат к предыдущим этапам; текущая работа тех, кто ошибся, прерывается. Следствием этого обычно является срыв сроков выполнения как исправляемого, так и нового проектов.

Упростить взаимодействие между разработчиками и уменьшить информационную перенасыщенность документации можно, сокращая количество связей между отдельными частями проекта, но далеко не каждую АИС можно разделить на слабо связанные подсистемы.

Высокий уровень риска. Чем сложнее проект, тем дольше длится каждый этап разработки и тем сложнее взаимосвязи между отдельными частями проекта, количество которых также увеличивается. Причем результаты разработки можно реально увидеть и оценить лишь на этапе тестирования, т. е. после завершения анализа, проектирования и разработки - этапов, выполнение которых требует значительного времени и средств.

Запоздалая оценка порождает серьезные проблемы при выявлении ошибок анализа и проектирования - требуется возврат на предыдущие стадии и повторение процесса разработки. Однако возврат на предыдущие стадии может быть связан не только с ошибками, но и с изменениями, произошедшими в предметной области или в требованиях заказчика за время разработки. При этом никто не гарантирует, что предметная область снова не изменится к тому моменту, когда будет готова следующая версия проекта. Фактически это означает, что существует вероятность «зацикливания» процесса разработки: расходы на проект будут постоянно расти, а сроки сдачи готового продукта постоянно откладываться.

II. Итерационная модель заключается в серии коротких циклов (шагов) по планированию, реализации, изучению, действию.

Создание сложных АИС предполагает проведение согласований проектных решений, полученных при реализации отдельных задач. Подход к проектированию «снизу - вверх» обусловливает необходимость таких итераций возвратов, когда проектные решения по отдельным задачам объединяются в общие системные. При этом возникает потребность в пересмотре ранее сформировавшихся требований.

Преимущество итерационной модели в том, что межэтапные корректировки обеспечивают меньшую трудоемкость разработки по сравнению с каскадной моделью.

Недостатки итерационной модели:

· время жизни каждого этапа растягивается на весь период работки;

· вследствие большого числа итераций возникают рассогласования выполнения проектных решений и документации;

· запутанность архитектуры;

· трудности использования проектной документации на стадиях внедрения и эксплуатации вызывают необходимость перепроектирования всей системы.

III . Спиральная модель , в отличие от каскадной, но аналогично предыдущей предполагает итерационный процесс разработки АИС. При этом возрастает значение начальных этапов, таких как анализ и проектирование, на которых проверяется и обосновывается реализуемость технических решений путем создания прототипов.

Каждая итерация представляет собой законченный цикл разработки, приводящий к выпуску внутренней или внешней версии изделия (или подмножества конечного продукта), которое совершенствуется от итерации к итерации, чтобы стать законченной системой (рис. 1.2).

Рис. 1.2. Спиральная модель ЖЦ АИС

Таким образом, каждый виток спирали соответствует созданию фрагмента или версии программного изделия, на нем уточняются цели и характеристики проекта, определяется его качество, планируются работы на следующем витке спирали. Каждая итерация служит для углубления и последовательной конкретизации деталей проекта, в результате этого выбирается обоснованный вариант окончательной реализации.

Использование спиральной модели позволяет осуществлять переход на следующий этап выполнения проекта, не дожидаясь полного завершения текущего, - недоделанную работу можно будет выполнить на следующей итерации. Главная задача каждой итерации - как можно быстрее создать работоспособный продукт для демонстрации пользователям. Таким образом, существенно упрощается процесс внесения уточнений и дополнений проект.

Спиральный подход к разработке программного обеспечения позволяет преодолеть большинство недостатков каскадной модели, кроме того, обеспечивает ряд дополнительных возможностей, делая процесс разработки более гибким.

Преимущества итерационного подхода:

Итерационная разработка существенно упрощает внесение изменений в проект при изменении требований заказчика;

При использовании спиральной модели отдельные элементы АИС интегрируются в единое целое постепенно. Поскольку интеграция начинается с меньшего количества элементов, то возникает гораздо меньше проблем при ее проведении;

Снижение уровня рисков (следствие предыдущего преимущества, так как риски обнаруживаются именно во время интеграции). Уровень рисков максимален в начале разработки проекта, по мере продвижения разработки он снижается;

Итерационная разработка обеспечивает большую гибкость в управлении проектом, давая возможность внесения тактических изменений в разрабатываемое изделие. Так, можно сократить сроки разработки за счет снижения функциональности системы или использовать в качестве составных частей продукцию сторонних фирм вместо собственных разработок (актуально при рыночной экономике, когда необходимо противостоять продвижению изделия конкурентов);

Итерационный подход упрощает повторное использование компонентов, поскольку гораздо проще выявить (идентифицировать) общие части проекта, когда они уже частично разработаны, чем пытаться выделить их в самом начале проекта. Анализ проекта после нескольких начальных итераций позволяет выявить общие многократно используемые компоненты, которые на последующих итерациях будут совершенствоваться;

Спиральная модель позволяет получить более надежную и устойчивую систему. Это связано с тем, что по мере развития системы ошибки и слабые места обнаруживаются и исправляются на каждой итерации. Одновременно корректируются критические параметры эффективности, что в случае каскадной модели доступно только перед внедрением системы;

Итерационный подход позволяет совершенствовать процесс
разработки - в результате анализа в конце каждой итерации проводится оценка изменений в организации разработки; на следующей итерации она улучшается.

Основная проблема спирального цикла - трудность определения момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла. Иначе процесс разработки может превратиться в бесконечное совершенствование уже сделанного.

Вовлечение пользователей в процесс проектирования и копирования приложения позволяет получать замечания и дополнения к требованиям непосредственно в процессе проектирования приложения, сокращая время разработки. Представители заказчика получают возможность контролировать процесс создания системы и влиять на ее функциональное наполнение. Результатом является сдача в эксплуатацию системы, учитывающей большинство потребностей заказчиков.


Современные методологии и реализующие их технологии проектирования АИС поставляются в электронном виде вместе с CASE-средствами и включают библиотеки процессов, шаблонов, методов, моделей и других компонентов предназначенных для построения ПО того класса систем, на который ориентирована методология. Электронные методологии и технологии составляют ядро комплекса согласованных инструментальных средств разработки АИС. Особенности современных методологических решений проектирования АИС невозможно реализовать без определенных технологий проектирования, соответствующих масштабу и специфике проекта.

Технология проектирования АИС - это совокупность методов и средств проектирования АИС, а также методов и средств организации проектирования (управление процессом создания и модернизации проекта АИС).

Согласно ТП проектирования АИС представляет собой совокупность последовательно-параллельных, связанных и соподчиненных цепочек действий, каждое из которых может иметь свой предмет. Действия, которые выполняются при проектировании АИС, могут быть определены как неделимые технологические операции или как подпроцессы технологических операций. Все действия могут быть собственно проектировочными, которые формируют или модифицируют результаты проектирования, и оценочными, которые вырабатывают по установленным критериям оценки результатов проектирования.

Таким образом, технология проектирования задается регламентированной последовательностью технологических операций, выполняемых в процессе создания проекта на основе того или иного метода.

Предметом выбираемой технологии проектирования должно служить отражение взаимосвязанных процессов проектирования на всех стадиях жизненного цикла АИС.

Основные требования, предъявляемые к выбираемой технологии проектирования, следующие:

· созданный с помощью этой технологии проект должен отвечать требованиям заказчика;

· технология должна максимально отражать все этапы цикла жизни проекта;

· технология должна обеспечивать минимальные трудовые и стоимостные затраты на проектирование и сопровождение проекта;

· технология должна способствовать росту производительности труда проектировщиков;

· технология должна обеспечивать надежность процесса проектирования и эксплуатации проекта;

· технология должна способствовать простому ведению проектной документации.

Технология проектирования АИС реализует определенную методологию проектирования. В свою очередь, методология проектирования предполагает наличие некоторой концепции, принципов проектирования и реализуется набором методов и средств.

Методы проектирования АИС можно классифицировать по степени использования средств автоматизации, типовых проектах решений, адаптивности к предполагаемым изменениям.

По степени автоматизации различают:

ручное проектирование , при котором проектирование компонентов АИС осуществляется без использования специальных инструментальных программных средств; программирование производится на алгоритмических языках;

компьютерное проектирование , при котором генерация или конфигурация (настройка) проектных решений производится с использованием специальных инструментальных программных средств.

По степени использования типовых проектных решений различают:

оригинальное (индивидуальное) проектирование, когда проектные решения разрабатываются «с нуля» в соответствии с требованиями к АИС;

типовое проектирование , предполагающее конфигурацию АИС из готовых типовых проектных решений (программных модулей).

Оригинальное проектирование АИС предполагает максимальный учет особенностей автоматизированного объекта.

Типовое проектирование выполняется на основе готовых решений и является обобщением опыта, полученного ранее при создании родственных проектов.

По степени адаптивности проектных решений различаются следующие методы:

реконструкция - адаптация проектных решений выполняется путем переработки соответствующих компонентов (перепрограммирования программных модулей);

параметризация - проектные решения настраиваются в соответствии с заданными и изменяемыми параметрами;

реструктуризация модели - изменяется модель предметной области, что приводит к автоматическому переформированию проектных решений.

Сочетание различных признаков классификации методов проектирования обусловливает характер используемой технологии проектирования АИС. Выделяются два основных класса технологии проектирования: каноническая и индустриальная . Индустриальная технология проектирования в свою разбивается на два подкласса: автоматизированное (использование САSЕ-технологий) и типовое (параметрически-ориентированное или модельно-ориентированное) проектирование.

Таблица 1.1. Характеристики классов технологий проектирования

Каноническое проектирование АИС ориентировано на использование главным образом каскадной модели жизненного цикла АИС.

В зависимости от сложности объекта автоматизации и набора задач, требующих решения при создании конкретной АИС, стадии и этапы работ могут иметь различную трудоемкость. Допускается объединять последовательные этапы и исключать некоторые из них на любой стадии проекта. Допускается также начинать выполнение работ следующей стадии до окончания предыдущей.

Стадии и этапы создания АИС, выполняемые организациями-участниками, прописываются в договорах и технических заданиях на выполнение работ.

Стадия 1. Формирование требований к АИС:

· обследование объекта и обоснование необходимости создания АИС;

· формирование требований пользователей к АИС;

· оформление отчета о выполненной работе и тактико-технического задания на разработку.

Стадия 2. Разработка концепции АИС:

· изучение объекта автоматизации;

· проведение необходимых научно-исследовательских работ;

· разработка вариантов концепции АИС, удовлетворяющих требованиям пользователей;

· оформление отчета и утверждение концепции.

Стадия 3. Техническое задание:

Разработка и утверждение технического задания на создание АИС.

Стадия 4. Эскизный проект:

· разработка предварительных проектных решений по системе и ее частям;

· разработка эскизной документации на АИС и ее части.

Стадия 5. Технический проект:

· разработка проектных решений по системе и ее частям;

· разработка документации на АИС и ее части;

· разработка и оформление документации на поставку комплектующих изделий;

· разработка заданий на проектирование в смежных частях проекта.

Стадия 6. Рабочая документация:

· разработка рабочей документации на АИС и ее части;

· разработка и адаптация программ.

Стадия 7. Ввод в действие:

· подготовка объекта автоматизации; подготовка персонала;

· комплектация АИС поставляемыми изделиями (программными и техническими средствами, программно-техническими комплексами, информационными изделиями);

· строительно-монтажные работы; пусконаладочные работы;

· проведение предварительных испытаний;

· проведение опытной эксплуатации;

· проведение приемочных испытаний.

Стадия 8. Сопровождение АИС:

· выполнение работ в соответствии с гарантийными обязательствами;

· послегарантийное обслуживание.

Обследование – это изучение и анализ организационной структуры предприятия, его деятельности и существующей системы обработки информации.

Материалы, полученные в результате обследования, используются для:

Обоснования разработки и поэтапного внедрения систем;

Составления технического задания на разработку систем;

Разработки технического и рабочего проектов систем.

На этапе обследования целесообразно выделить две составляющие: определение стратегии внедрения АИС и детальный анализ деятельности организации.

Основная задача первого этапа обследования - оценка реального объема проекта, его целей и задач на основе выявленных функций и информационных элементов автоматизируемого объекта высокого уровня. Эти задачи могут быть реализованы или заказчиком АИС самостоятельно, или с привлечением консалтинговых организаций. Этап предполагает тесное взаимодействие с основными потенциальными пользователями системы и бизнес-экспертами. Основная задача взаимодействия - получить полное и однозначное понимание требований заказчика. Как правило, нужная информация может быть получена в результате интервью, бесед или семинаров с руководством, экспертами и пользователями.

По завершении стадии обследования появляется возможность определить вероятные технические подходы к созданию системы и оценить затраты на ее реализацию (на аппаратное обеспечение, на закупаемое программное обеспечение и на разработку нового программного обеспечения).

Результатом этапа определения стратегии является документ (технико-экономическое обоснование - ТЭО - проекта), где четко сформулировано, что получит заказчик, если согласится финансировать проект, когда он получит готовый продукт (график выполнения работ) и сколько это будет стоить (для крупных проектов - это график финансирования на разных этапах работ). В документе желательно отразить не только затраты, но и выгоду проекта, например время окупаемости проекта, ожидаемый экономический эффект (если его удается оценить).

Ограничения, риски, критические факторы, которые могут повлиять на успешность проекта;

Совокупность условий, при которых предполагается эксплуатировать будущую систему, - архитектура системы, аппаратные и программные ресурсы, условия функционирования, обслуживающий персонал и пользователи системы;

Сроки завершения отдельных этапов, форма приемки/сдачи работ, привлекаемые ресурсы, меры по защите информации;

Описание выполняемых системой функций;

Возможности развития и модернизации системы;

Интерфейсы и распределение функций между человеком и системой;

требования к ПО и системам управления базами данных (СУБД).

На этапе детального анализа деятельности организации изучаются деятельность, обеспечивающая реализацию функций управления, организационная структура, штаты и содержание работ по управлению предприятием, а также характер подчиненности вышестоящим органам управления. Здесь следует наметить инструктивно-методические и директивные материалы, на основании которых определяются состав подсистем и перечень задач, а также возможности применения новых методов решения задач.

Аналитики собирают и фиксируют информацию в двух взаимосвязанных формах:

Функции - информация о событиях и процессах, которые происходят в автоматизируемой организации;

Сущности - информация о классах объектов, имеющих значение для организации и о которых собираются данные.

При изучении каждой функциональной задачи управления определяются:

Наименование задачи; сроки и периодичность ее решения;

Степень формализуемости задачи;

Источники информации, необходимые для решения задачи;

Показатели и их количественные характеристики;

Порядок корректировки информации;

Действующие алгоритмы расчета показателей и возможные методы контроля;

Действующие средства сбора, передачи и обработки информации;

Действующие средства связи;

Принятая точность решения задачи;

Трудоемкость решения задачи;

Действующие формы представления исходных данных и результатов их обработки в виде документов;

Потребители результатной информации по задаче.

Одной из наиболее трудоемких, хотя и хорошо формализуемых, задач этого этапа является описание документооборота opганизации. При обследовании документооборота составляется схема маршрута движения документов, которая должна отразить:

Количество документов;

Место формирования показателей документов;

Взаимосвязь документов при их формировании;

Маршрут и длительность движения документа;

Место использования и хранения данного документа;

Внутренние и внешние информационные связи;

Объем документа в знаках.

По результатам обследования устанавливают перечень задач I управления, подлежащих автоматизации, и очередность их разработки.

На этапе обследования следует классифицировать планируемые функции системы по степени важности. Один из возможных форматов представления такой классификации - MuSCoW . Эта аббревиатура расшифровывается так: Must have - необходимые функции; Should have - желательные функции; Could have - I возможные функции; Won"t have - отсутствующие функции.

Функции первой категории обеспечивают критичные для I успешной работы системы возможности. Реализация функций второй и третьей категорий ограничивается временными и финансовыми рамками: разрабатывается необходимое, а также максимально возможное в порядке приоритета число функций вто- 1 рой и третьей категорий. Последняя категория функций особенно важна, поскольку нужно четко представлять границы проекта I и набор функций, которые будут отсутствовать в системе.

Модели деятельности организации создаются в двух видах 1 :

Модель «как есть» («as is») - отражает существующие в op- I ганизации бизнес-процессы;

Модель «как должно быть» («to be») - отражает необходи- ] мые изменения бизнес-процессов с учетом внедрения АИС. j

Уже на этапе анализа необходимо привлекать к работе группы тестирования для решения следующих задач:

Получения сравнительных характеристик предполагаемых к 1 использованию аппаратных платформ, операционных систем, СУБД и т. п.;

Разработки плана работ по обеспечению надежности АИС и ее тестирования.

Привлечение тестировщиков на ранних этапах разработки является целесообразным для любых проектов. Чем позже обнаружены ошибки в проектных решениях, тем дороже обходится их исправление; худший вариант - их обнаружение на этапе внедрения. Таким образом, чем раньше группы тестирования начнут выявлять ошибки в АИС, тем ниже стоимость работы над системой. Время на тестирование системы и на исправление обнаруженных ошибок должно быть предусмотрено не только на этапе разработки, но и на этапе проектирования.

Облегчить и увеличить эффективность тестирования призваны специальные системы отслеживания ошибок. Их использование позволяет иметь единое хранилище ошибок, отслеживать их повторное появление, контролировать скорость и эффективность исправления ошибок, видеть наиболее нестабильные компоненты системы, а также поддерживать связь между группой разработчиков и группой тестирования.

Результаты обследования представляют объективную основу для формирования технического задания на АИС.

Техническое задание – это документ, определяющий цели, требования и основные исходные данные, необходимые для разработки автоматизированной системы управления.

При разработке технического задания (ТЗ) необходимо решить следующие задачи:

· установить общую цель создания АИС;

· установить общие требования к проектируемой системе;

· разработать и обосновать требования, предъявляемые к информационному, математическому, программному, техническому и технологическому обеспечению;

· определить состав подсистем и функциональных задач;

· разработать и обосновать требования, предъявляемые к подсистемам;

· определить этапы создания системы и сроки их выполнения;

· провести предварительный расчет затрат на создание системы и определить уровень экономической эффективности внедрения;

· определить состав исполнителей.

Раздел Содержание
Общие сведения Полное наименование системы и ее условное обозначение. Шифр темы или шифр (номер) договора. Наименование предприятий разработчика и заказчика сист емы, их реквизиты. Перечень документов, на основании которых создается ИС. Плановые сроки начала и окончания работ. Сведения об источниках и порядке финансирования работ. Порядок оформления и предъявления заказчику результатов работ по созданию системы, ее частей и отдельных средств
Назначение и цели создания (развития) системы Вид автоматизируемой деятельности. Перечень объектов, на которых предполагается использование системы. Наименования и требуемые значения технических, технологических, производственно-экономических и др. показателей объекта, которые должны быть достигнуты при внедрении ИС
Характеристика объектов автоматизации Краткие сведения об объекте автоматизации. Сведения об условиях эксплуатации и характеристиках окружающей среды
Требования к системе Требования к системе в целом: требования к структуре и функционированию системы (перечень подсистем, уровни иерархии, степень централизации, способы информационного обмена, режимы функционирования, взаимодействие со смежными системами, перспективы развития системы); требования к персоналу (численность пользователей, квалификация, режим работы, порядок подготовки); показатели назначения (степень приспособляемости системы к изменениям процессов управления и значений параметров) требования к надежности, безопасности, эргономике, транспортабельности, эксплуатации, техническому обслуживанию и ремонту, защите и сохранности информации, защите от внешних воздействий, к патентной чистоте, по стандартизации и унификации. Требования к функциям (по подсистемам): перечень подлежащих автоматизации задач; временной регламент реализации каждой функции; требования к качеству реализации каждой функции, к форме представления выходной информации, характеристики точности, достоверности выдачи результатов; перечень и критерии отказов. Требования к видам обеспечения: математическому (состав и область применения математических моделей и методов, типовых и разрабатываемых алгоритмов);

Типовые требования к составу и содержанию технического задания приведены в табл. 1.6.

Тавблица 1.6. Состав и содержание технического задания (ГОСТ 34.602-89)

информационному (состав, структура и организация данных, обмен данными между компонентами системы, информационная совместимость со смежными системами, используемые классификаторы, СУБД, контроль данных и ведение информационных массивов, процедуры придания юридической силы выходным документам); лингвистическому (языки программирования, языки взаимодействия пользователей с системой, системы кодирования, языки ввода-вывода); программному (независимость программных средств от платформы, качество программных средств и способы его контроля, использование фондов алгоритмов и программ); техническому; метрологическому; организационному (структура и функции эксплуатирующих подразделений, защита от ошибочных действий персонала); методическому (состав нормативно-технической документации)
Состав и содержание работ по созданию системы Перечень стадий и этапов работ. Сроки исполнения. Состав организаций-исполнителей работ. Вид и порядок экспертизы технической документации. Программа обеспечения надежности. Программа метрологического обеспечения
Порядок контроля и приемки системы Виды, состав, объем и методы испытаний системы. Общие требования к приемке работ по стадиям. Статус приемной комиссии
Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие Преобразование входной информации к машиночитаемому виду. Изменения в объекте автоматизации. Сроки и порядок комплектования и обучения персонала
Требования к документированию Перечень подлежащих разработке документов. Перечень документов на машинных носителях
Источники разработки Документы и информационные материалы, на основании которых разрабатывается ТЗ и система

Эксклюзивный проект предусматривает разработку предварительных проектных решений по системе и ее частям. Выполнение эскизного проектирования не является строго обязательной стадией. Если основные проектные решения определены ранее или достаточно очевидны для конкретной АИС и объекта автомати зации, то эта стадия может быть исключена из общей последовательности работ.

Функции АИС;

Функции подсистем, их цели и ожидаемый эффект от внедрения;

Состав комплексов задач и отдельных задач;

Концепция информационной базы и ее укрупненная структура;

Функции системы управления базой данных;

Состав вычислительной системы и других технических средств;

Функции и параметры основных программных средств.

По результатам проделанной работы оформляется, согласовывается и утверждается документация в объеме, необходимом для описания полной совокупности принятых проектных решений и достаточном для дальнейшего выполнения работ по созданию системы.

В соответствии с ГОСТ 19.102-77 стадия эскизного проектирования содержит два этапа: разработку эскизного проекта; утверждение эскизного проекта.

Первый этап разработки состоит из:

Предварительной разработки структуры входных и выходных данных;

Уточнения методов решения задачи;

Разработки общего описания алгоритма решения задачи;

Разработки технико-экономического обоснования;

Разработки пояснительной записки.

При этом допускается объединение и исключение некоторых работ.

Ниже приведен набор документов, который должен и может быть подготовлен по окончании эскцзного проектирования.

Обязательные документы:

1) уточненное техническое задание на проектирование и раз-
работку АИС;

2) спецификация квалификационных требований на АИС;

3) комплект спецификаций требований на функциональные программные компоненты и описания данных;

4) спецификация требований на внутренние интерфейсы компонент и интерфейсы с внешней средой;

5) описание системы управления базой данных, структуры и распределения программных и информационных объектов в базе данных;

6) проект руководства по защите информации и обеспечению надежности функционирования АИС;

7) предварительный вариант руководства администратора АИС;

8) предварительный вариант руководства пользователя АИС;

9) уточненный план реализации проекта;

10)уточненный план управления обеспечением качества АИС;

11)пояснительная записка предварительного проекта АИС;

12) уточненный контракт (договор) с заказчиком на деталь-
ное проектирование АИС.

Документы, оформляемые по согласованию с заказчиком:

1) предварительное описание функционирования АИС;

2) схема потоков данных между функциональными компонентами АИС;

3) уточненная схема архитектуры АИС, взаимодействия программных и информационных компонент, организации вычислительного процесса и распределения ресурсов;

4) описание показателей качества компонент и требований к ним по этапам разработки АИС;

5) отчет о технико-экономических показателях, графике реализации проекта, распределении ресурсов и бюджета;

6) таблица распределения специалистов по компонентам и по этапам работ;

7) аттестаты разработчиков на право использования технологии и средств автоматизации разработки АИС;

8) описание требований к составу и формам результирующих документов по этапам работ;

9) план отладки программных компонент, обеспечения ее методами и средствами автоматизации тестирования;

10) предварительное руководство для детального проектиро-
вания, программирования и отладки компонент АИС;

11) предварительный план продажи и внедрения;

12) описание предварительной структуры базы данных.

Технический проект системы - это техническая документация, содержащая общесистемные проектные решения, алгоритмы решения задач, а также оценку экономической эффективности АИС.На этом этапе осуществляется комплекс научно-исследовательских и экспериментальных работ для выбора основных проектных решений и расчет экономической эффективности системы. Состав и содержание технического проекта приведены в табл. 1.7

Таблица 1.7. Содержание технического проекта

Раздел Содержание
Пояснительная записка Основания для разработки системы. Перечень организаций разработчиков. Краткая характеристика объекта с указанием основных технико-экономических показателей его функционирования и связей с другими объектами. Краткие сведения об основных проектных решениях по функциональной и обеспечивающим частям системы
Функциональная и организационная структура системы Обоснование выделяемых подсистем, их перечень и назначение. Перечень задач, решаемых в каждой подсистеме, с краткой характеристикой их содержания. Схема информационных связей между подсистемами и между задачами в рамках каждой подсистемы
Постановка задач и алгоритмы решения Организационно-экономическая сущность задачи (наименование, цель решения, краткое содержание, метод, периодичность и время решения задачи, способы сбора и передачи данных, связь задачи с другими задачами, характер использования результатов решения, в которых они используются). Экономико-математическая модель задачи (структурная и развернутая форма представления). Входная оперативная информация (характеристика показателей, диапазон изменения, формы представления). Нормативно-справочная информация (НСИ) (содержание и формы представления). Информация, хранимая для связи с другими задачами. Информация, накапливаемая для последующих решений данной задачи. Информация по внесению изменений (система внесения изменений и перечень информации, подвергающейся изменениям). Алгоритм решения задачи (последовательность этапов расчета, схема, расчетные формулы). Контрольный пример (набор заполненных данными форм входных документов, условные документы с накапливаемой и хранимой информацией, формы выходных документов, заполненные по результатам решения экономико-технической задачи и в соответствии с разработанным алгоритмом расчета)
Организация информационной базы Источники поступления информации и способы ее передачи. Совокупность показателей, используемых в системе. Состав документов, сроки и периодичность их поступления. Основные проектные решения по организации фонда НСИ. Состав НСИ, включая перечень реквизитов, их определение, диапазон изменения и перечень документов НСИ. Перечень массивов НСИ, их объем, порядок и частота корректировки информации. Структура фонда НСИ с описанием связи между его элементами; требования к технологии создания и ведения фонда. Методы хранения, поиска, внесения изменений и контроля. Определение объемов и потоков информации НСИ. Контрольный пример по внесению изменений в НСИ. Предложения по унификации документации
Альбом форм документов Отсутствует
Система математического обеспечения Обоснование структуры математического обеспечения. Обоснование выбора системы программирования. Перечень стандартных программ
Принцип построения комплекса технических средств Описание и обоснование схемы технологического процесса обработки данных. Обоснование и выбор структуры комплекса технических средств и его функциональных групп. Обоснование требований к разработке нестандартного оборудования. Комплекс мероприятий по обеспечению надежности функционирования технических средств
Расчет экономической эффективности системы Сводная смета затрат, связанных с эксплуатацией систем. Расчет годовой экономической эффективности, источниками которой являются оптимизация производственной структуры хозяйства (объединения), снижение себестоимости продукции за счет рационального использования производственных ресурсов и уменьшения потерь, улучшения принимаемых управленческих решений
Мероприятия по подготовке объекта к внедрению системы Перечень организационных мероприятий по совершенствованию бизнес-процессов. Перечень работ по внедрению системы, которые необходимо выполнить на стадии рабочего проектирования, с указанием сроков и ответственных лиц
Ведомость документов Отсутствует

На стадии «Рабочая документация» осуществляется создание программного продукта и разработка всей сопровождающей документации. Документация должна содержать все необходимые и достаточные сведения для обеспечения выполнения работ по вводу АИС в действие и ее эксплуатации, а также для поддержания уровня эксплуатационных характеристик (качества) системы. Разработанная документация должна быть соответствующим образом оформлена, согласована и утверждена.

На стадии «Ввод в действие» для АИС устанавливают следующие основные виды испытаний: предварительные испытания, опытная эксплуатация и приемочные испытания. При необходимости допускается дополнительно проведение других видов испытаний системы и ее частей.

В зависимости от взаимосвязей компонентов АИС и объекта автоматизации испытания могут быть автономные и комплексные. В автономных испытаниях участвуют компоненты системы. Их проводят по мере готовности частей системы к сдаче в опытную эксплуатацию. Комплексные испытания проводят для групп взаимосвязанных компонентов (подсистем) или для системы в целом.

Для планирования проведения всех видов испытаний разрабатывается документ «Программа и методика испытаний». Разработчик документа устанавливается в договоре или ТЗ. В качестве приложения в документ могут включаться тесты или контрольные примеры.

Отладка - наиболее трудоемкий процесс проектирования. Скрытые ошибки иногда проявляются после многолетней эксплуатации системы. Полностью избежать ошибок невозможно, что обусловлено астрономическим числом вариантов работы системы. Проверить их все на правильность работы в обозримые сроки практически невозможно.

Затраты на выявление и устранение ошибок на более поздних этапах проектирования возрастают примерно экспоненциально (рис. 1.10) .

Исследователи насчитывают 169 типов ошибок, сведенных в 19 больших классов:

1) логические;

2) ошибки манипулирования данными;

3) ошибки ввода-вывода;

4) ошибки в вычислениях;

Рис. 1.10. Относительные затраты на обнаружение и исправление одной ошибки

5) ошибки в пользовательских интерфейсах;

6) ошибки в операционной системе и вспомогательных программах;

7) ошибки компоновки;

8) ошибки в межпрограммных интерфейсах;

9) ошибки в интерфейсах «Программа - системное ПО»;

10) ошибки при обращении с внешними устройствами;

11) ошибки сопряжения с базой данных (БД);

12) ошибки инициализации БД;

13) ошибки изменений по запросу извне;

14) ошибки, связанные с глобальными переменными;

15) повторяющиеся ошибки;

16) ошибки в документации;

17) нарушение технических требований;

18) неопознанные ошибки;

19) ошибки оператора.

Не все ошибки исходят от разработчика. По данным разных исследователей, от 6 до 19 % ошибок порождаются ошибками в документации .

Соотношение разработки и испытаний на различных этапах проектирования АИС приведено на рис. 1.11.

Данная цепочка лишь условно «вытягивается» в линию. Внутри нее всегда существуют возвратные циклы. Для выявления ошибок разработчики создают специальные тесты и проводят этап отладки. Если ошибок не найдено, это еще не означает, что их нет - может быть, тест оказался слишком слабым.

Рис. 1.11. Соотношение разработки и испытаний по этапам проектирования АИС

Методика отладки учитывает симптомы возможных ошибок:

Неверная обработка (неправильный ответ, результат) - до 30 %;

Неверная передача управления - 16 %;

Несовместимость программ с используемыми данными - 15 %;

Несовместимость программ по пересылаемым данным - до 9 %.

При разработке отладочных заданий решаются следующие задачи:

Составление тестов;

Выбор точек, зон и маршрутов контроля;

Определение перечня контролируемых величин и порядка фиксации их значений;

Задание порядка тестирования;

Оценка достоверности и трудоемкости отладки.

Отлаживаемая программа должна хотя бы один раз проработать по каждой ветви алгоритма и при этом присвоить переменным ряд значений, захватывая границы диапазона, несколько значений внутри него, нулевые значения и особые точки (если есть). Для специализированных систем разрабатывают специальные языки отладки. Они могут содержать относительно небольшое число команд (20-30) с дополнительными настроечными параметрами для решения следующих задач:

Управления выводом;

Моделирования процесса исполнения отлаживаемой программы;

Выдачи состояния компонент памяти в процессе исполнения программ;

Проверки условий достижения определенных состояний в процессе исполнения программы;

Установления тестовых значений исходных данных;

Осуществления условных переходов в тестировании в зависимости от результатов исполнения других макрокоманд или различных тестов;

Выполнения служебных операций по подготовке программы к тестированию.

Процесс отладки нельзя отнести к полностью формализованному, поэтому существуют эмпирические рекомендации по его проведению, которые приведены ниже.

1. Используйте семантический, заранее продуманный подход к отладке, планируйте процесс отладки и тщательно проектируйте тестовые наборы данных с наиболее простых вариантов, исключая наиболее вероятные источники ошибок.

2. Для упорядочения процесса тестирования собирайте и анализируйте информацию:

Об особенностях и статистике ошибок;

О специфике исходных данных и последовательности изменения переменных в программе и их взаимном влиянии;

О структуре алгоритма и особенностях его программной реализации.

3. В каждый момент времени определяйте местоположение только одной ошибки.

Используйте средства регистрации и отображения информации об ошибках, включая в программу специальный отладоч ный код для распечатки выборочных значений переменных, сообщений об окончании отдельных участков программы, трассировки, логических условий и т. п.

5. Внимательно изучайте полученные выходные данные и сравнивайте их с ожидаемыми, заранее рассчитанными результатами.

6. Обращайте внимание на данные, тщательно анализируйте работу программы при использовании граничных значений и при неправильном вводе; контролируйте типы данных, диапазоны, размеры полей и точность.

7. Используйте анализ потоков данных и потоков управления для проверки корректности и установления областей определения данных для разных маршрутов выполнения программы.

8. Используйте одновременно различные средства отладки, не останавливаясь на одной возможности. Привлекайте автоматизированные средства и одновременно ручную отладку и тестирование, проверяя текст программы с точки зрения функционирования с учетом наиболее вероятных ошибок.

9. Документируйте все обнаруженные и исправленные ошибки, их отличия, местоположение и тип. Эта информация будет полезна для предупреждения будущих ошибок.

10.Измеряйте сложность программ. В программах с высокой сложностью высока вероятность ошибок спецификаций и проектирования, а с низкой сложностью - кодирования и канцелярских ошибок.

11.Для повышения опыта и тренировки в отладке искусственно помещайте в программы ошибки. После определенного периода отладки программисту следует указать на оставшиеся и не обнаруженные им ошибки. Подобное «засевание» широко используют для оценки числа необнаруженных ошибок (если равномерно обнаруживаются и исправляются и искусственные, и реальные ошибки, то по процентному соотношению обнаруженных внесенных и реальных ошибок можно предположить, сколько еще их осталось).

Предварительные испытания проводят для определения работоспособности системы и решения вопроса о возможности ее приемки в опытную эксплуатацию. Предварительные испытания следует выполнять после проведения разработчиком отладки и тестирования поставляемых программных и технических средств системы и представления соответствующих документов об их готовности к испытаниям, а также после ознакомления персонала АИС с эксплуатационной документацией.

Опытную эксплуатацию системы проводят с целью определения фактических значений количественных и качественных характеристик системы и готовности персонала к работе в условиях се функционирования, а также определения фактической эффективности и корректировки, при необходимости, документации.

Приемочные испытания проводят для определения соответствия системы техническому заданию, оценки качества опытной эксплуатации и решения вопроса о возможности приемки системы в постоянную эксплуатацию.

НОРМАТИВНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ СОЗДАНИЯ АИС.

Основные понятия проектирования АИС

В общем плане АИС включает в себя: пользователя(потребителя), информационные ресурсы, носители информации, средства сбора, хранения обработки информации, средства передачи информации.

В основе проектирования АИС лежат две взаимосвязанные составляющие:

Стандарты проектирования;

Методика проектирования.

Основные понятия, подходы и определения проектирования АИС регламентируются тремя видами конструкторской и программной документации:

  1. единой системой конструкторской документации(ЕСКД);
  2. единой системой программной документации(ЕСПД);
  3. комплексом руководящих документов на АИС.

Состав проектной документации – это комплекс стандартов и руководящих документов на АИС ГОСТ 24.104-85, ГОСТ 34.003-90, ГОСТ 34.201-90 включает в себя методические указания на информационные технологии и автоматизированные системы, а также требования к содержанию документов.

Цель проектирования- выявление относительно простой внутренней структуры, называемой архитектурой системы.

АИС разрабатывается как некоторый проект. Многие особенности управления проектами и фазы разработки проекта(фазы жизненного цикла) являются общими, не зависящими не только от предметной области, но и от характера проекта. Понятие проект является сложным понятием и для него трудно подобрать однозначную формулировку.

Проект – это ограниченное по времени целенаправленное изменение отдельной системы с изначально четко определенными целями, достижение которых определяет завершение проекта, а также с установленными требованиями к срокам, результатам, риску, рамкам расходования средств и ресурсов и к организационной структуре.

Для экономических систем под проектом ЭИС будем понимать проектно-конструкторскую и технологическую документацию, в которой представлено описание проектных решений по созданию и эксплуатации ЭИС в конкретной программно-технической среде.

Под проектированием ЭИС понимается процесс преобразо­вания входной информации об объекте проектирования, о мето­дах проектирования и об опыте проектирования объектов ана­логичного назначения в соответствии с ГОСТом в проект ЭИС. С этой точки зрения проектирование ЭИС сводится к последова­тельной формализации проектных решений на различных стади­ях жизненного цикла ЭИС: планирования и анализа требований, технического и рабочего проектирования, внедрения и эксплуа­тации ЭИС.

Объектами проектирования ЭИС являются отдельные элемен­ты или их комплексы функциональных и обеспечивающих частей. Так, функциональными элементами в соответствии с традицион­ной декомпозицией выступают задачи, комплексы задач и функ­ции управления. В составе обеспечивающей части ЭИС объекта­ми проектирования служат элементы и их комплексы информаци­онного, программного и технического обеспечения системы.

В качестве субъекта проектирования ЭИС выступают коллек­тивы специалистов, которые осуществляют проектную деятель­ность, как правило, в составе специализированной (проектной) организации, и организация-заказчик, для которой необходимо разработать ЭИС. Масштабы разрабатываемых систем опреде­ляют состав и количество участников процесса проектирования. При большом объеме и жестких сроках выполнения проектных работ в разработке системы может принимать участие несколько проектных коллективов (организаций-разработчиков). В этом случае выделяется головная организация, которая координирует деятельность всех организаций-соисполнителей.

Форма участия соисполнителей в разработке проекта системы может быть различной. Наиболее распространенной является фор­ма, при которой каждый соисполнитель выполняет проектные ра­боты от начала до конца для какой-либо части разрабатываемой системы. Обычно это бывает функциональная подсистема или вза­имосвязанный комплекс задач управления. Реже встречается фор­ма участия соисполнителей, при которой отдельные соисполните­ли выполняют работы на отдельных этапах процесса проектирования. Возможен вариант, при котором функции заказчика и разра­ботчика совмещаются, то есть ЭИС проектируется собственными силами.

Осуществление проектирования ЭИС предполагает исполь­зование проектировщиками определенной технологии проекти­рования, соответствующей масштабу и особенностям разрабаты­ваемого проекта.

Технология проектирования ЭИС - это совокупность методо­логии и средств проектирования ЭИС, а также методов и средств организации проектирования (управление процессом создания и модернизации проекта ЭИС)

Методология(концепция + метод)

Инструментальные средства Организация

проектирования проектирования

В основе технологии проектирования лежит технологический процесс, который определяет действия, их последовательность, состав исполнителей, средства и ресурсы, требуемые для выпол­нения этих действий.

Так, технологический процесс проектирования ЭИС в целом делится на совокупность последовательно-параллельных, связан­ных и соподчиненных цепочек действий, каждое из которых мо­жет иметь свой предмет. Действия, которые выполняются при про­ектировании ЭИС, могут быть определены как неделимые техно­логические операции или как подпроцессы технологических операций. Все действия могут быть собственно проектировочны­ми, которые формируют или модифицируют результаты проекти­рования, и оценочными действиями, которые вырабатывают по установленным критериям оценки результатов проектирования.

Таким образом, технология проектирования задается регла­ментированной последовательностью технологических операций, выполняемых в процессе создания проекта на основе того или иного метода, в результате чего стало бы ясно, не только ЧТО должно быть сделано для создания проекта, но и КАК, КОМУ и в КАКОЙ ПОСЛЕДОВАТЕЛЬНОСТИ это должно быть сделано.

Предметом любой выбираемой технологии проектирования должно служить отражение взаимосвязанных процессов проек­тирования на всех стадиях жизненного цикла ЭИС.

К основным требованиям, предъявляемым к выбираемой тех­нологии проектирования, относятся следующие:

Созданный с помощью этой технологии проект должен отве­чать требованиям заказчика;

Выбранная технология должна максимально отражать все эта­пы цикла жизни проекта;

Выбираемая технология должна обеспечивать минимальные трудовые и стоимостные затраты на проектирование и сопро­вождение проекта;

Технология должна быть основой связи между проектирова­нием и сопровождением проекта;

Технология должна способствовать росту производительнос­ти труда проектировщика;

Технология должна обеспечивать надежность процесса про­ектирования и эксплуатации проекта;

Технология должна способствовать простому ведению проект­ной документации.

Основу технологии проектирования ЭИС составляет методо­логия, которая определяет сущность, основные отличительные тех­нологические особенности.

Методология проектирования предпо­лагает наличие некоторой концепции, принципов проектирования, реализуемых набором методов проектирования, которые, в свою очередь, должны поддерживаться некоторыми средствами проек­тирования.

Организация проектирования предполагает определение мето­дов взаимодействия проектировщиков между собой и с заказчиком в процессе создания проекта ЭИС, которые могут также поддер­живаться набором специфических средств.

Методы проектирования ЭИС можно классифицировать по степени использования средств автоматизации, типовых проект­ных решений, адаптивности к предполагаемым изменениям.

Так, по степени автоматизации методы проектирования раз­деляются на методы:

ручного проектирования , при котором проектирование ком­понентов ЭИС осуществляется без использования специаль­ных инструментальных программных средств, а программи­рование - на алгоритмических языках;

компьютерного проектирования , которое производит генера­цию или конфигурацию (настройку) проектных решений на основе использования специальных инструментальных про­граммных средств.

По степени использования типовых проектных решений разли­чают следующие методы проектирования:

Оригинального (индивидуального) проектирования, когда проектные решения разрабатываются «с нуля» в соответствии с требованиями к ЭИС;

Типового проектирования, предполагающего конфигурацию ЭИС из готовых типовых проектных решений (программных модулей).

Оригинальное (индивидуальное) проектирование ЭИС харак­теризуется тем, что все виды проектных работ ориентированы на создание индивидуальных для каждого объекта проектов, кото­рые в максимальной степени отражают все его особенности.

Типовое проектирование выполняется на основе опыта, по­лученного при разработке индивидуальных проектов. Типовые проекты как обобщение опыта для некоторых групп организаци­онно-экономических систем или видов работ в каждом конкрет­ном случае связаны со множеством специфических особенностей и различаются по степени охвата функций управления, выполняе­мым работам и разрабатываемой проектной документации.

По степени адаптивности проектных решений методы проек­тирования классифицируются на методы:

Реконструкции, когда адаптация проектных решений выпол­няется путем переработки соответствующих компонентов (пе­репрограммирования программных модулей);

Параметризации, когда проектные решения настраиваются (пе­регенерируются) в соответствии с изменяемыми параметрами;

Реструктуризации модели, когда изменяется модель проблем­ной области, на основе которой автоматически перегенери­руются проектные решения.

Сочетание различных признаков классификации методов про­ектирования обусловливает характер используемой технологии проектирования ЭИС, среди которых выделяются два основных

класса: каноническая и индустриальная технологии (табл. 2.1). Индустриальная технология проектирования, в свою очередь, разбивается на два подкласса: автоматизированное (использова­ние CASE-технологий) и типовое (параметрически-ориентиро­ванное или модельно-ориентированное) проектирование. Ис­пользование индустриальных технологий проектирования не ис­ключает использования в отдельных случаях канонической технологии.

Таблица 2.1 Характеристики классов технологий проектирования

Для конкретных видов технологий проектирования свойствен­но применение определенных средств разработки ЭИС, которые поддерживают выполнение как отдельных проектных работ, эта­пов, так и их совокупностей. Поэтому перед разработчиками ЭИС, как правило, стоит задача выбора средств проектирования, которые по своим характеристикам в наибольшей степени соот­ветствуют требованиям конкретного предприятия.

Средства проектирования должны быть:

В своем классе инвариантными к объекту проектирования;

Охватывать в совокупности все этапы жизненного цикла ЭИС;

Технически, программно и информационно совместимыми;

Простыми в освоении и применении;

Экономически целесообразными.

Средства проектирования ЭИС можно разделить на два клас­са: без использования ЭВМ и с использованием ЭВМ.

Средства проектирования без использования ЭВМ применя­ются на всех стадиях и этапах проектирования ЭИС. Как прави­ло, это средства организационно-методического обеспечения операций проектирования и в первую очередь различные стан­дарты, регламентирующие процесс проектирования систем. Сюда же относятся единая система классификации и кодирования ин­формации, унифицированная система документации, модели опи­сания и анализа потоков информации и т.п.

Средства проектирования с использованием ЭВМ могут при­меняться как на отдельных, так и на всех стадиях и этапах про­цесса проектирования ЭИС и соответственно поддерживают раз­работку элементов проекта системы, разделов проекта системы, проекта системы в целом. Все множество средств проектирова­ния с использованием ЭВМ делят на четыре подкласса.

К первому подклассу относятся операционные сред­ства, которые поддерживают проектирование операций обработ­ки информации. К данному подклассу средств относятся алго­ритмические языки, библиотеки стандартных подпрограмм и классов объектов, макрогенераторы, генераторы программ ти­повых операций обработки данных и т.п., а также средства рас­ширения функций операционных систем (утилиты). В данный класс включаются также такие простейшие инструментальные средства проектирования, как средства для тестирования и от­ладки программ, поддержки процесса документирования проек­та и т.п. Особенность" последних программ заключается в том, что с их помощью повышается производительность труда проек­тировщиков, но не разрабатывается законченное проектное ре­шение.

Таким образом, средства данного подкласса поддерживают отдельные операции проектирования ЭИС и могут применяться независимо друг от друга.

Ко второму подклассу относят средства, поддержи­вающие проектирование отдельных компонентов проекта ЭИС. К данному подклассу относятся средства общесистемного назна­чения:

Системы управления базами данными (СУБД);

Методоориентированные пакеты прикладных программ (ре­шение задач дискретного программирования, математичес­кой статистики и т.п.)

Табличные процессоры;

Статистические ППП;

Оболочки экспертных систем;

Графические редакторы;

Текстовые редакторы;

Интегрированные ППП (интерактивная среда с встроенными диалоговыми возможностями, позволяющая интегрировать вышеперечисленные программные средства).

Для перечисленных средств проектирования характерно их использование для разработки технологических подсистем ЭИС: ввода информации, организации хранения и доступа к данным, вычислений, анализа и отображения данных, приня­тия решений.

К третьему подклассу относятся средства, поддержи­вающие проектирование разделов проекта ЭИС . В этом подклассе выделяют функциональные средства проектирования.

Функциональные средства направлены на разработку автома­тизированных систем, реализующих функции, комплексы задач и задачи управления. Разнообразие предметных областей порож­дает многообразие средств данного подкласса, ориентированных на тип организационной системы (промышленная, непромыш­ленная сферы), уровень управления (например, предприятие, цех, отдел, участок, рабочее место), функцию управления (планиро­вание, учет и т.п.).

К функциональным средствам проектирования систем обра­ботки информации относятся типовые проектные решения, фун­кциональные пакеты прикладных программ, типовые проекты.

К четвертому подклассу средств проектирования ЭИС относятся средства, поддерживающие разработку проекта на стадиях и этапах процесса проектирования. К данному классу относится подкласс средств автоматизации проектирования ЭИС (CASE-средства).

Современные CASE-средства, в свою очередь, классифициру­ются в основном по двум признакам:

1) по охватываемым этапам процесса разработки ЭИС;

2) по степени интегрированности: отдельные локальные сред­ства (tools), набор неинтегрированных средств, охватывающих большинство этапов разработки ЭИС (toolkit) и полностью ин­тегрированные средства, связанные общей базой проектных дан­ных - репозиторием (workbench).

Проектирование АИС является творческим процессом. Каждый проект проходит в своем развитии определенные состояния: от состояния, когда «проекта еще нет», до состояния, когда «проекта уже нет». Совокупность ступеней развития от возникновения идеи до полного завершения проекта принято разделять на стадии(фазы, этапы). В определении количества стадий(фаз) и их содержания имеются некоторые отличия, но тем не менее суть содержания жизненного цикла разработки АИС в раз­личных подходах одинакова.

Правительство Белгородской области Автоматизированная информационная система «Проектное управление» АИС «Проектное управление» Нормативная база Решение создано в соответствии с установленными в Российской Федерации стандартами, закрепленными в: 1. ГОСТ Р 54869—2011 «Проектный менеджмент. Требования к управлению проектом». 2. ГОСТ Р 54870—2011 «Проектный менеджмент. Требования к управлению портфелем проектов». 3. ГОСТ Р 54871—2011 «Проектный менеджмент. Требования к управлению программой». При создании и настройке системы учтены положения Постановления правительства Белгородской области от 31.05.2010 года N 202-пп "Об утверждении Положения об управлении проектами в органах исполнительной власти и государственных органах Белгородской области". 2 АИС «Проектное управление» Технология разработки Сеть Интернет Локальная сеть Решение разработано на базе платформы Motiware Melody One. Благодаря web-интерфейсу системы все участники проектной деятельности получают доступ к необходимым данным в любое время и из любой точки земного шара. Для доступа к системе достаточно подключения к сети Интернет и установленного браузера. Серверная часть 3 АИС «Проектное управление» Цели Цели создания и внедрения системы: . Повысить эффективность реализации проектов на территории субъекта РФ за счет обеспечения команд проектов актуальной, полной и достоверной информацией. . Улучшить взаимодействие органов государственной власти органов местного самоуправления с гражданами и бизнесом в части инициации и реализации проектов. . Обеспечить всех участников проектной деятельности удобными средствами и инструментами управления проектом. . Упростить мониторинг хода реализации проектов путем сокращения временных затрат на подготовку и анализ отчетных данных. 4 АИС «Проектное управление» Функции системы Система позволяет организовать полный цикл процесса управления проектом и/или портфелем проектов. Проект в системе последовательно проходит несколько стадий - от регистрации инициативной заявки до перемещения завершенного проекта в архив. . Рассмотрение инициативных заявок. Инициация. Планирование. Реализация и Контроль. Завершение 5 АИС «Проектное управление» Работа с инициативными заявками АИС «Проектное управление» Проекты Инициативные заявки Портал взаимодействия с гражданами и бизнесом Архив (отклоненные заявки) 6 АИС «Проектное управление» Этап инициации проекта 2. Инициация проекта. Автоматическое присвоение проекту уникального регистрационного номера. . Формирование карточки проекта на основе данных, указанных в инициативной заявке. 7 АИС «Проектное управление» Этап инициации проекта 3. Формирование паспорта проекта. Возможность поэтапного редактирования карточки (полей) паспорта проекта. . Учет бюджета проекта в разрезе источников финансирования. . Формирование команды проекта с указанием ролей участников. . Ввод и редактирование характеристик проекта. . Генерация по установленной форме и выгрузка из системы паспорта проекта в формате *.docx. 8 АИС «Проектное управление» Этап планирования проекта 4. Создание плана управления проектом. Представление плана управления проектов с помощью диаграммы Ганта. . Планирование работ по проекту с указанием дат начала и окончания, ответственных исполнителей и требований к результатам работы. . Создание иерархического перечня работ по проекту. . Генерация по установленной форме и выгрузка из системы плана управления проектом в формате *.docx. 9 АИС «Проектное управление» Этап реализации и контроля 5. Организация процесса внесения изменений в паспорт и план управления проектом. Создание и редактирование новых версий паспорта и/или плана управления проектом. . Формирование по установленному образцу и выгрузка из системы ведомости изменений в формате *.docx. . Согласование ведомости изменений с группой мониторинга и контроля. 10 АИС «Проектное управление» Этап реализации и контроля 6. Учет выполнения работ по проекту. Возможность прикрепления исполнителями файлов-отчетов о выполнении работ. . Учет фактических дат выполнения работ и отклонений от плановых сроков. . Мониторинг наступающих и просроченных контрольных событий. 11 АИС «Проектное управление» Этап завершения 7. Формирование итогового отчета. Расчет оценки успешности проекта. . Формирование по установленному образцу и выгрузка из системы итогового отчета в формате *.docx. 12 АИС «Проектное управление» Архив проектов 8. Ведение архива проектов. Создание единого хранилища данных обо всех проектах, когда-либо инициированных на территории субъекта РФ. . Доступ к полной информации о завершенных и перемещенных в архив проектах. . Защита от внесения изменений в завершенные проекты. 13 АИС «Проектное управление» Отчеты и аналитика Одной из задач системы является обеспечение участников проектной деятельности отчетной информацией о проектах в удобной и наглядной форме. АИС позволяет автоматически сформировать документацию проекта: . Паспорт проекта. . План управления проектом. . Итоговый отчет. 14 АИС «Проектное управление» Сведения о внедрении Более АИС «Проектное управление» успешно применяется для осуществления проектной деятельности органами власти Белгородской области. 4200 проектов 5000 пользовател ей АИС «Проектное управление» 60000 работ (контрольных событий) 19 муниципальны х районов 3 городских округа 15 Правительство Белгородской области Благодарю за внимание! 16

Политика конфиденциальности персональных данных и условия обработки персональных данных

Настоящая Политика конфиденциальности персональных данных действует в отношении всех персональных данных, которые Компания «ТЕКОРА» может получить от Вас во время использования Вами сайтов компании.

Заполняя форму на сайте http://www.сайт/ и других веб-сайтах Компании «ТЕКОРА», которые собирают данные и ссылаются на эти условия, Вы даете свое добровольное согласие Компании «ТЕКОРА» на обработку нижеследующих персональных данных с применением автоматизированных средств обработки или без таковых: фамилия, имя, отчество; место работы, наименование занимаемой должности; адрес электронной почты; номер контактного телефона.

Предоставляя Компании «ТЕКОРА» информацию, необходимую для инициирования дальнейшего взаимодействия, Вы выражаете согласие на ее использование в соответствии с настоящей Политикой.

Если Вы не согласны с приведенными в настоящем документе условиями, пожалуйста, не используйте данные веб-сайты и не заполняйте формы запроса информации.

Компания «ТЕКОРА» означает:

ЗАО «ТЕКОРА», Юридический адрес: 119285 г. Москва, ул. Мосфильмовская, д.22, стр.1.

Почтовый адрес: 117997, ГСП-7, г. Москва, ул. Профсоюзная, д.65, оф.369.

Под обработкой персональных данных понимаются действия, предусмотренные законодательством Российской Федерации, в том числе Федеральным законом от 27.07.2006 N 152-ФЗ "О персональных данных".

Предоставляя свои персональные данные Вы соглашаетесь на их обработку, включая сбор, запись, систематизацию, накопление, хранение, уточнение (обновление, изменение), извлечение, использование, передачу, обезличивание, удаление, уничтожение Компанией «ТЕКОРА» в целях обработки Ваших заказов и запросов, для осуществления деятельности по продвижению товаров, работ, услуг или объектов интеллектуальной собственности на рынке путем осуществления прямых контактов с Вами с помощью средств связи, оценки и анализа сайта, анализа покупательских особенностей и предоставления персональных рекомендаций; информирования Вас об акциях, скидках и специальных предложениях посредством электронных рассылок, а также в целях связи с Вами (по электронной почте и/или телефону).

Предоставляя Компании «ТЕКОРА» свои персональные данные, Вы можете быть уверены, что они не будут предоставляться третьим сторонам, за исключением случаев, когда это требуется в интересах деловых отношений между Вами и Компанией «ТЕКОРА». В некоторых случаях Компания «ТЕКОРА» обязана передавать Ваши персональные данные третьим лицам в связи с требованиями применимого законодательства. Например, это может быть в случае, когда существуют основания подозревать в совершении преступления или неправомерном использовании веб-сайта Компании «ТЕКОРА».

Вы можете в любой момент отказаться от получения сообщений по электронной почте, однако это не затрагивает передачу сообщений по электронной почте, которые требуются в целях реализации деловых отношений между Вами и компанией «ТЕКОРА».

Указанные веб-сайты содержат несколько ссылок на компании, с которыми Компания «ТЕКОРА» поддерживает деловые отношения. Компания «ТЕКОРА» не несет ответственность за соответствие требованиям по защите персональных данных в отношении использования веб-сайтов партнеров Компании «ТЕКОРА». Для получения информации о защите данных при посещении этих сайтов, пожалуйста, ознакомьтесь с политиками конфиденциальности на веб-сайтах соответствующих компаний.

Персональные данные, собираемые Компанией «ТЕКОРА», хранятся на защищенных серверах. Доступ разрешен только ограниченному числу уполномоченных лиц, которые нуждаются в нем для того, чтобы управлять веб-сайтами Компании «ТЕКОРА» или обеспечить их надлежащую функциональность, особенно в части технической поддержки.

Настоящим согласием Вы подтверждаете, что являетесь субъектом предоставляемых персональных данных, а также подтверждаете достоверность предоставляемых данных.