Функционально-ориентированное проектирование ИС

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

Основные понятия и классификация CASE-средств

Автоматизированное проектирование КИС (CASE-технологии)

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

Первоначально значение этого термина ограничивалось вопросами автоматизации разработки только программного обеспечения.

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

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

Большинство существующих CASE-средств ориентировано на автоматизацию проектирования программного обеспечения и основных методологий структурного (в основном) или объектно-ориентированного анализа и проектирования.

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

Преимущества CASE-средств по сравнению с традиционной технологией оригинального проектирования сводятся к следующему:

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

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

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

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

5. возможность коллективной разработки ИС в режиме реального времени.

 

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

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

 

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

Репозитарий содержит информацию об объектах проектируемой ИС и взаимосвязях между ними. Все подсистемы обмениваются данными с репозитарием.

В репозитарии хранятся описания следующих объектов:

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

· диаграмм;

· компонентов диаграмм;

· связей между диаграммами;

· программных модулей;

· библиотеки модулей и т.д.

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

Другими компонентами архитектуры CASE-средства являются:

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

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

- верификатор диаграмм – служит для контроля правильности построения диаграмм в соответствии с заданной методологией проектирования;

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

- сервис – это набор системных утилит для обслуживания репозитария.

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

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

Технологии проектирования определяются как совокупность трех составляющих:

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

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

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

Средства – это программные инструментарий для поддержки и усиления технологий.

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

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

1. по поддерживаемым методологиям проектирования: структурно-ориентированные, объектно-ориентированные и комплексно-ориентированные;

2. по поддерживаемым графическим нотациям построения диаграмм: с фиксированной нотацией, с отдельными нотациями и наиболее распространенными нотациями;

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

4. по режиму коллективной разработки проекта: не поддерживающие коллективную разработку, ориентированные на режим реального времени разработки проекта, ориентированные на режим объединения подпроектов;

5. по типу и архитектуре вычислительной техники: ориентированные на ПЭВМ, ориентированные на локальную, глобальную или смешанную вычислительную сеть.

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

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

 

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

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

Эти методологии позволяют создавать практически единый интегрированный структурный проект ИС.

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

Методология структурного анализа и моделирования подразумевает сначала создание модели AS IS, ее анализ, выявление альтернатив, улучшение бизнес-процессов, дающее в результате модель TO BE.

Автоматизация деятельности предприятия должна вестись именно согласно модели TO BE, а не AS IS, так как последнее зачастую представляет «автоматизацию хаоса», осуществленную по принципу «все оставить как есть, только чтобы компьютеры стояли», когда автоматизируются избыточные, дублирующие, а иногда и противоречивые бизнес-процессы.

Иногда модели AS IS и TO BE отличаются очень существенно. В этих случаях необходима третья, «промежуточная» модель, а возможно и несколько последовательно меняющихся моделей, описывающих процесс перехода в желаемое состояние.

 

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

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

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

Примечание: В настоящее время известно порядка 90 разновидностей структурного системного анализа.

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

В качестве базовых принципов используются следующие:

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

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

 

В структурном анализе используются в основном три группы моделей, которые:

- иллюстрируют функции, выполняемые системой;

- описывают отношения между данными;

- описывают поведение системы во времени.

Наиболее распространенными моделями этих групп являются:

· BFD (Business Function Diagram) –диаграмма бизнес-функций (иерархии функций);

· DFD (Data Flow Diagrams) – диаграммы потоков данных;

· ERD (Entity-Relationship Diagrams) – ER-модель данных предметной области (информационно-логические модели «сущность-связь);

· STD (State Transition Diagrams) – диаграммы переходов состояний (матрицы перекрестных ссылок);

· SSD (System Structure Diagram) – диаграмма структуры программного приложения.

 

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

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

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

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

Модель хранилища данных раскрывается с помощью диаграмм «сущность-связь» (ERD-диаграммы).

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

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