
- •Cals/case-технологии проектирования информационных систем
- •Содержание
- •Введение
- •1. Информационная поддержка жизненного цикла продукции и cals-технологии
- •Концепция информационной поддержки жизненного цикла изделий
- •Классификация программных продуктов cals
- •Экономические аспекты применения cals
- •Развитие cals за рубежом
- •Проблемы развития cals-технологий в России
- •Автоматизация проектирования информационных систем. Case-технологии
- •Классификация case-средств
- •Проблемы внедрения case-средств
- •3. Структурный подход к проектированию ис
- •3.1. Методология функционального моделирования sadt
- •Моделирование потоков данных (процессов)
- •Моделирование данных
- •Case-метод Баркера
- •Методология idef1
- •Методология, используемая в case-средстве Vantage Team Builder
- •Пример использования структурного подхода
- •Описание предметной области
- •Организация проекта
- •Методология datarun
- •Унифицированный язык моделирования uml
- •Введение в uml
- •Концептуальная модель uml
- •Правила языка uml
- •Общие механизмы языка uml
- •Архитектура
- •Жизненный цикл разработки по
- •Организация проектирования с использованием языка uml
- •Библиографический список
Автоматизация проектирования информационных систем. Case-технологии
Аббревиатура CASE (Computer-Aided Software Engineering – автоматизированная разработка программного обеспечения) обозначает специальный тип программного обеспечения, предназначенного для поддержки таких процессов создания ПО, как разработка требований, проектирование, кодирование и тестирование программ. Поэтому к CASE-средствам относятся редакторы проектов, словари данных, компиляторы, отладчики, средства построения систем и т.п. CASE-средства предлагают поддержку процесса создания ПО путем автоматизации некоторых этапов разработки, а также создания и представления информации, необходимой для разработки.
В настоящее время подходящие CASE-технологии существуют для большинства процессов, выполняемых в ходе разработки ПО. Это ведет к улучшению качества создаваемых программ и повышению производительности труда разработчиков программного обеспечения. Уже сложилась развитая индустрия CASE-средств, а круг поставщиков и разработчиков этих программных продуктов очень широк.
Классификация case-средств
Существует несколько различных классификаций CASE-средств, и каждая предлагает свой взгляд на эти программные продукты. Рассмотрим классификацию по категориям, где CASE-средства классифицируются по степени интеграции программных модулей, поддерживающих различные процессы разработки ПО. Эта классификация содержит три основные категории:
вспомогательные программы (tools) поддерживают отдельные процессы разработки ПО, такие как проверка непротиворечивости архитектуры системы, компиляция программ, сравнение результатов тестов и т.д. Вспомогательные программы могут быть универсальными функционально законченными средствами или могут входить в состав инструментальных средств;
инструментальные средства (workbenches) поддерживают определенные процессы разработки ПО, такие как создание спецификации, проектирования. Обычно они представляют собой набор интегрированных вспомогательных программ;
рабочие среды разработчиков (environments) поддерживают все или большинство процессов разработки ПО и включают в себя несколько различных интегрированных инструментальных средств.
Схематично классификация по категориям с примерами CASE-средств различных категорий представлена на рис. 2.
Вспомогательные программы выбираются разработчиками ПО обычно по своему усмотрению. Инструментальные средства поддерживают определенные методы разработки на основе некоторой модели разработки ПО, наборов правил и нормативных указаний. Интегрированные рабочие среды представляют инфраструктуру поддержки для данных, управления и интеграции системных представлений. Экспертные рабочие среды более интеллектуальны. Они включают базу знаний о процессах создания ПО и механизм, предлагающий разработчику те или иные вспомогательные или инструментальные средства.
Инструментальные средства обычно объединяют через общий репозиторий. Структура пакета инструментальных средств показана на рис. 3.
Рис. 2. Классификация CASE-средств по категориям
Рис. 3. Пакет инструментальных CASE-средств
Такой пакет образуют следующие средства.
Редакторы диаграмм предназначены для создания диаграмм потоков данных, иерархий объектов, диаграмм «сущность-связь». Эти редакторы не только имеют средства рисования, но и поддерживают различные типы объектов, используемых в диаграммах.
Средства проектирования, анализа и проверки выполняют проектирование ПО и создают отчет об ошибках и дефектах в системной архитектуре. Они могут работать совместно с системой редактирования, поэтому обнаруженные ошибки можно устранить на ранней стадии проектирования.
Центральный репозиторий позволяет проектировщику найти нужный проект и соответствующую ему проектную информацию.
Словарь данных хранит информацию об объектах, которые используются в структуре системы.
Средства генерирования отчетов на основе информации из центрального репозитория автоматически генерируют системную документацию.
Средства создания форм определяют форматы экранных форм и документов.
Средства импортирования и экспортирования позволяют обмениваться информацией из центрального репозитория различным инструментальным средствам.
Генераторы программного кода автоматически генерируют программы на основе проектов, хранящихся в центральном репозитории.
Различают два класса инструментальных систем технологии программирования: инструментальные системы поддержки проекта и языково-зависимые инструментальные системы.
Инструментальная система поддержки проекта это открытая система, способная поддерживать разработку ПС на разных языках программирования после соответствующего ее расширения программными инструментами, ориентированными на выбранный язык. Набор инструментов такой системы поддерживает разработку ПС, а также содержит независимые от языка программирования инструменты, поддерживающие разработку ПС (текстовые и графические редакторы, генераторы отчетов и т.п.). Кроме того, он содержит инструменты расширения системы. Ядро такой системы обеспечивает, в частности, доступ к репозиторию.
Языково-зависимая инструментальная система это система поддержки разработки ПС на каком-либо одном языке программирования, существенно использующая в организации своей работы специфику этого языка. Эта специфика может сказываться и на возможностях ядра (в том числе и на структуре репозитория), и на требованиях к оболочке и инструментам. Примером такой системы является среда поддержки программирования на Аде.
Помимо этого CASE-средства можно классифицировать по применяемым методологиям и моделям систем и БД; степени интегрированности с СУБД; доступным платформам.
Классификация по типам в основном совпадает с компонентным составом CASE-средств и включает:
средства анализа (Upper CASE), предназначенные для построения и анализа моделей предметной области (Design/IDEF (Meta Software), BPwin (Logic Works));
средства анализа и проектирования (Middle CASE), поддерживающие наиболее распространенные методологии проектирования и использующиеся для создания проектных спецификаций (Vantage Team Builder (Cayenne), Designer/2000 (ORACLE), Silverrun (CSA), PRO-IV (McDonnell Douglas), CASE Аналитик (МакроПроджект)). Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитектуры системы, алгоритмов и структур данных;
средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных (как правило, на языке SQL) для наиболее распространенных СУБД. К ним относятся ERwin (Logic Works), S-Designor (SDP) и DataBase Designer (ORACLE);
средства разработки приложений. К ним относятся средства 4GL (Uniface (Compuware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Gupta), Delphi (Borland) и др.) и генераторы кодов, входящие в состав Vantage Team Builder, PRO-IV и частично – в Silverrun;
средства реинжиниринга, обеспечивающие анализ программных кодов и схем баз данных и формирование на их основе различных моделей и проектных спецификаций. Средства анализа схем БД и формирования ERD входят в состав Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin и S-Designor. В области анализа программных кодов наибольшее распространение получают объектно-ориентированные CASE-средства, обеспечивающие реинжиниринг программ на языке С++ (Rational Rose (Rational Software), Object Team (Cayenne)).
Вспомогательные типы включают:
средства планирования и управления проектом (SE Companion, Microsoft Project и др.);
средства конфигурационного управления (PVCS (Intersolv));
средства тестирования (Quality Works (Segue Software));
средства документирования (SoDA (Rational Software)).