Современные case средства. CASE-средства: общий обзор и сравнительные характеристики

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

Классификация по типам отражает функциональную ориентацию CASE-средств на те или иные процессы ЖЦ.

Классификация по категориям определяет степень интегрированности по выполняемым функциям и включает отдельные локальные средства, решающие небольшие автономные задачи (tools), набор частично интегрированных средств, охватывающих большинство этапов жизненного цикла ИС (toolkit) и полностью интегрированные средства, поддерживающие весь ЖЦ ИС и связанные общим репозиторием. Помимо этого, 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).

Средства проектирования баз данных имеются также в составе CASE-средств Vantage Team Builder, Designer/2000, Silverrun и PRO-IV;

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

К ним относятся средства 4GL (Uniface (Compuware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Gupta), Delphi (Borland) и др.) и генераторы кодов, входящие в состав Vantage Team Builder, PRO-IV и частично - в Silverrun;

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



Ø средства анализа схем баз данных входят в состав Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin и S-Designor.

В области анализа программных кодов наибольшее распространение получают объектно-ориентированные CASE-средства, обеспечивающие реинжиниринг программ на языке С++ (Rational Rose (Rational Software), Object Team (Cayenne)).

Вспомогательные типы включают:

Ø средства планирования и управления проектом

o Примеры: SE Companion, Microsoft Project и др.;

Ø средства конфигурационного управления

o Пример: PVCS (Intersolv);

Ø средства тестирования

o Пример: Quality Works (Segue Software);

Ø средства документирования

o Пример: SoDA (Rational Software).

Ø локальные , поддерживающие один-два типа моделей и методов Примеры: Design/IDEF, ProCap, S-Designor, "CASE. Аналитик";

Ø малые интегрированные средства моделирования, поддерживающие несколько типов моделей и методов (ERwin, BPwin);

Ø средние интегрированные средства моделирования, поддерживающие от 4 до 10-15 типов моделей и методов (Rational Rose, Paradigm Plus, Designer/2000);

Ø крупные интегрированные средства моделирования, поддерживающие более 15 типов моделей и методов (ARIS Toolset).

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

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

Типичный представитель малых интегрированных средств моделирования - комплект программных продуктов Platinum Technology (CA/ Platinum/Logic Works), основанный на популярных пакетах BPwin и Erwin.

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

ERwin. Поддерживает несколько разновидностей методологии информационного моделирования, основанной на ER-диаграммах (сущность - связь). Интеграция моделей BPwin с моделями ERwin выполняется путем обмена данными через функции экспорта/импорта. Эти пакеты, например, являются стандартными средствами для анализа процессов в НATO

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

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

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

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

К средним интегрированным средствам можно отнести такие известные продукты, как Rational Rose (Rational Software), Paradigm Plus (CA/Platinum), Designer/2000 (Oracle).

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

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

По данным исследовательской компании International Data Corporation, среди инструментальных средств, которые можно отнести к этой категории, лидирующее положение занимает пакет Rational Rose.

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


Рис. 2.1. Применение локальных, малых и средних интегрируемых средств моделирования на различных этапах создания ИСУП

Крупные интегрированные средства моделирования . К этой категории относятся инструментальные средства, специально предназначенные для проектирования крупных ИСУП, таких, например, как системы управления предприятием класса ERP.

В качестве примера можно привести программные продукты семейства ARIS (ARIS Toolset, ARIS Easy Design) компании IDS Sheer AG. В ARIS воплощен практический опыт множества аналитиков, работающих в области проектирования ИСУП, а также учтены недостатки существующих инструментальных средств. Отличительная особенность ARIS - особое внимание к первому уровню анализа (анализ требований) .

Не отказываясь от классификации инструментальных средств на локальные, малые, средние и крупные, используем также другую классификацию инструментальных средств, аналогичную классификации ИСУП на ERP - не-ERP.

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

Если же средство моделирования принадлежит к категории не-ERP, это означает, что оно не предназначено для выполнения всех уровней анализа при проектировании ИСУП класса ERP, но его (средство) можно использовать при создании локальных, малых или средних ИСУП, не относящихся к классу ERP


Рис. 2.2. Оценка применимости инструментальных средств для анализа ИСУП

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

Резюме. Все рассмотренные выше инструментальные средства широко используются для моделирования и анализа систем, в том числе и при создании ИСУП.

Вопросы к главе 2

1. Дайте определение CASE-средства.

2. Что понимается под «структурной методологией»?

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

4. Какими качествами должна обладать информация для успешного внедрения CASE-средств?

5. Какие выгоды организации обеспечивает внедрение CASE-средств?

6. Перечислите основные характеристики CASE-средств?

7. Что такое «репозиторий»?

8. Как можно классифицировать CASE-средства?

9. Какие CASE-средства относят к малым?

10. Что характерно для крупных CASE-средств?

Все CASE-средства делятся на типы, категории и уровни.

1. Классификация по типам отражает функциональную ориентацию CASE-средств в технологическом процессе. Она в основном совпадает с компонентным составом CASE-средств и включает следующие основные типы:

Анализ и проектирование. Средства данной группы используются для создания спецификаций системы и ее проектирования. К таким CASE-средствам можно отнести BPWin или Analist/Designer. Их целью является определение системных требований и свойств, которыми система должна обладать, а также создание проекта системы, удовлетворяющей этим требованиям и обладающей соответствующими свойствами. Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитектуры системы, алгоритмов и структур данных.

Проектирование баз данных и файлов. Средства данной группы обеспечивают логическое моделирование данных, автоматическую генерацию схем БД и описаний форматов файлов на уровне программного кода: ERWin, Oracle Designer.

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

Сопровождение и Реинжинеринг. К таким средствам относятся документаторы, анализаторы программ, средства реструктурирования и реинжениринга: Adpac CASE Tools (Adpac). Их целью является корректировка, изменение, анализ, преобразование и реинжениринг существующей системы.

Окружение. Средства поддержки платформ для интеграции, создания и придания товарного вида CASE-средствам: Sylva Foundry (С adware).

Управление проектом. Средства, поддерживающие планирование, контроль, руководство, взаимодействие, т.е. функции, необходимые в процессе разработки и сопровождения проектов: Project Workbench (Applied Business Technology).

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

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

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

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

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

Введение………………………………………………………………………………….

1. CASE средство: определения и общая характеристика…………………………….

2. Применения CASE технологий: преимущества и недостатки……………………..

3. Внедрение CASE-технологий………………………………………………………...

4. Примеры CASE-средств и их характеристики……………………………………...

4.1 Silverrun………………………………………………………………………..

4.2 JAM…………………………………………………………………………….

4.3 Vantage Team Builder……………………………………………………….....

4.4 Локальные средства (ERwin, BPwin, S-Designor)…………………………...

4.5 Объектно-ориентированные CASE-средства (Rational Rose)……………...

4.6 Средства конфигурационного управления………………………………….

4.7 Средства документирования…………………………………………………

4.8 Средства тестирования………………………………………………………..

Заключение……………………………………………………………………………….

Литература………………………………………………………………………………..

Введение

Цель моего реферата – рассмотреть технологии разработки программных систем на основе CASE средств. В 70-х и 80-х годах при разработке ИС достаточно широко применялась структурная методология, предоставляющая в распоряжение разработчиков строгие формализованные методы описания ИС и принимаемых технических решений. На протяжении всей истории программирования программные проекты все более и более усложнялись, объем работ стремительно увеличивался, возникла потребность в универсальных средствах, которые могли бы помочь как-то структурировать создание ПО. Традиционные языки программирования в силу малой наглядности, избыточности и многословия утрачивали свою эффективность и в 70-х и 80-х годах при разработке программных систем достаточно широко применялась структурная методология. Наглядность и строгость средств структурного анализа позволяла разработчикам и будущим пользователям системы обсуждать и закреплять понимание основных технических решений. Все шло к появлению программно-технологических средств специального класса.

1. CASE средство: определения и общая характеристика.

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

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

  • методология (Method Diagrams) , которая задает единый графический язык и правила работы с ним.
  • графические редакторы (Graphic Editors) , которые помогают рисовать диаграммы; возникли с распространением PC и GUI, так называемых «upper case технологий
  • генератор : по графическому представлению модели можно сгенерировать исходный код для различных платформ (так называемая low case часть CASE-технологии).
  • репозиторий , своеобразная база данных для хранения результатов работы программистов.

2. Применения CASE технологий: преимущества и недостатки.

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

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

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

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

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

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

3. Внедрение CASE-технологий.

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

  • определение потребностей в CASE-средствах;
  • оценка и выбор CASE-средств;
  • выполнение пилотного проекта;
  • практическое внедрение CASE-средств.

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

4. Примеры CASE-средств и их характеристики.

4.1 Silverrun

CASE-средство Silverrun американской фирмы Computer Systems Advisers, Inc. используется для анализа и проектирования ИС бизнес-класса. Оно применимо для поддержки любой методологии, основанной на раздельном построении функциональной и информационной моделей. Silverrun имеет модульную структуру и состоит из четырех модулей, каждый из которых является самостоятельным продуктом и может приобретаться и использоваться без связи с остальными модулями: модуль построения моделей бизнес-процессов, модуль концептуального моделирования данных, модуль реляционного моделирования и менеджер репозитория рабочей группы. Платой за высокую гибкость и разнообразие изобразительных средств построения моделей является такой недостаток Silverrun, как отсутствие жесткого взаимного контроля между компонентами различных моделей

CASE (Computer-Aided Software/System Engineering) - направление в программной инженерии . Содержание этого понятия обычно определяется перечнем задач, решаемых с помощью CASE, а также совокупностью применяемых методов и средств. Очень грубо, CASE - технология представляет собой совокупность методологий анализа, проектирования , разработки и сопровождения сложных систем программного обеспечения , поддержанную комплексом взаимоувязанных средств автоматизации.

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

Основные концепции

Большинство CASE-средств основано на парадигме методология/метод/нотация/средство :

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

Отличия CASE от традиционной разработки

Традиционная разработка CASE
1 Основные усилия – на кодирование и тестирование Основные усилия - на анализ и проектирование
2 “Бумажные” спецификации Быстрое итеративное прототипирование
3 Ручное кодирование Автоматическая кодогенерация
4 Ручное документирование Автоматическая генерация документации
5 Тестирование кодов Автоматический контроль проекта
6 Сопровождение кодов Сопровождение спецификаций проектирования

Модель жизненного цикла ПО

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

Простейшая модель ЖЦ:

Прототипирование -> Проектирование спецификаций -> Контроль проекта -> Кодогенерация -> Системное тестирование -> Сопровождение

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

Все CASE-средства делятся на типы, категории и уровни.

Классификация по типам

Классификация по типам отражает функциональную ориентацию CASE-средств в технологическом процессе:

  1. АНАЛИЗ И ПРОЕКТИРОВАНИЕ . Средства данной группы используются для создания спецификаций системы и ее проектирования; они поддерживают широко известные методологии проектирования. К таким средствам относятся:
    • CASE.Аналитик (Эйтэкс),
    • The Developer (ASYST Technologies),
    • POSE (Computer Systems Advisers),
    • ProKit*Workbench (McDonnell Douglas),
    • Excelerator (Index Technology),
    • Design-Aid (Nastec),
    • Design Machine (Optima),
    • MicroStep (Meta Systems),
    • vsDesigner (Visual Software),
    • Analist/Designer (Yourdon),
    • Design/IDEF (Meta Software),
    • BPWin (Logic Works),
    • SELECT (Select Software Tools),
    • System Architect (Popkin Software & Systems),
    • Westmount I-CASE Yourdon (Westmount Technology B.V. & CADRE Technologies),
    • CASE/4/0 (microTOOL GmbH).
    Их целью является определение системных требований и свойств, которыми система должна обладать, а также создание проекта системы, удовлетворяющей этим требованиям и обладающей соответствующими свойствами. На выходе продуцируются спецификации компонент системы и интерфейсов, связывающих эти компоненты, а также “калька” архитектуры системы и детальная “калька” проекта, включающая алгоритмы и определения структур данных.
  2. ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ И ФАЙЛОВ . Средства данной группы обеспечивают логическое моделирование данных, автоматическое преобразование моделей данных в Третью Нормальную Форму, автоматическую генерацию схем БД и описаний форматов файлов на уровне программного кода:
    • ERWin (Logic Works),
    • Chen Toolkit (Chen & Asssociates),
    • S-Designor (SDP),
    • Designer2000 (Oracle),
    • Silverrun (Computer Systems Advisers).
  3. ПРОГРАММИРОВАНИЕ . Средства этой группы поддерживают этапы программирования и тестирования, а также автоматическую кодогенерацию из спецификаций, получая полностью документированную выполняемую программу:
    • COBOL 2/Workbench (Mikro Focus),
    • DECASE (DEC),
    • NETRON/CAP (Netron),
    • APS (Sage Software).
    Помимо диаграммеров различного назначения и средств поддержки работы с репозитарием, в эту группу средств включены и традиционные генераторы кодов, анализаторы кодов (как в статике, так и в динамике), генераторы наборов тестов, анализаторы покрытия тестами, отладчики.
  4. СОПРОВОЖДЕНИЕ И РЕИНЖИНИРИНГ . К таким средствам относятся документаторы, анализаторы программ, средства реструктурирования и реинжениринга:
    • Adpac CASE Tools (Adpac),
    • Scan/COBOL и SuperStructure (Computer Data Systems),
    • Inspector/Recoder (Language Technology).
    Их целью является корректировка, изменение, анализ, преобразование и реинжениринг существующей системы. Средства позволяют
    • осуществлять поддержку всей системной документации, включая коды, спецификации, наборы тестов;
    • контролировать покрытие тестами для оценки полноты тестируемости;
    • управлять функционированием системы и т.п.
    Особый интерес представляют средства обеспечения мобильности (в CASE они получили название средств миграции) и реинжиниринга. К средствам миграции относятся трансляторы, конверторы, макрогенераторы и др., позволяющие обеспечить перенос существующей системы в новое операционное или аппаратурное окружение. Средства реинжиниринга включают:
    • статические анализаторы для продуцирования схем системы ПО из ее кодов, оценки влияния модификаций (например,”эффекта ряби” - внесение изменений с целью исправления ошибок порождает новые ошибки);
    • динамические анализаторы (обычно, компиляторы и интерпретаторы с встроенными отладочными возможностями);
    • документаторы, позволяющие автоматически получать обновленную документацию при изменении кода;
    • редакторы кодов, автоматически изменяющие при редактировании и все предшествующие коду структуры (например, спецификации);
    • средства доступа к спецификациям, их модификации и генерации нового (модифицированного) кода;
    • средства реверсного инжиниринга, транслирующие коды в спецификации.
  5. ОКРУЖЕНИЕ . Средства поддержки платформ для интеграции, создания и придания товарного вида CASE-средствам:
    • Multi/Cam (AGS Management Systems),
    • Design/OA (Meta Software).
  6. УПРАВЛЕНИЕ ПРОЕКТОМ . Средства, поддерживающие планирование, контроль, руководство, взаимодействие, т.е. функции, необходимые в процессе разработки и сопровождения проектов:
    • Project Workbench (Applied Business Technology).

Классификация по категориям

  • вспомогательные программы (tools) - вспомогательные пакеты, решающие небольшую автономную задачу, принадлежащую проблеме более широкого масштаба.
  • пакеты разработчика (toolkit) - совокупность интегрированных программных средств, обеспечивающих помощь для одного из классов программных задач; использует репозитарий для всей технической и управляющей информации о проекте, концентрируясь при этом на поддержке, как правило, одной фазы или одного этапа разработки ПО.
  • инструментальные средства (workbench) - интеграция программных средств, которые
    • поддерживают системный анализ, проектирование и разработку ПО;
    • используют репозитарий, содержащий всю техническую и управляющую информацию о проекте;
    • обеспечивают автоматическую передачу системной информации между разработчиками и этапами разработки;
    • организуют поддержку практически полного ЖЦ (от анализа требований и проектирования ПО до получения документированной выполняемой программы).
    Workbench, по сравнению с toolkit, обладает более высокой степенью интеграции выполняемых функций, большей самостоятельностью и автономностью использования, а также наличием тесной связи с системными и техническими средствами аппаратно-вычислительной среды, на которой workbench функционирует. По существу, workbench может рассматриваться как автоматизированная рабочая станция, используемая как инструментарий для автоматизации всех или отдельных совокупностей работ по созданию ПО.

Классификация по уровням

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

  • Верхние (Upper) CASE часто называют средствами компьютерного планирования. Они призваны повышать эффективность деятельности руководителей фирмы и проекта путем сокращения затрат на определение политики фирмы и на создание общего плана проекта. Этот план включает цели и стратегии их достижения, основные действия в свете целей и задач фирмы, установление стандартов на различные виды взаимосвязей и т.д. Использование верхних CASE позволяет построить модель предметной области, отражающую всю существующую специфику. Она направлена на понимание общего и частного механизмов функционирования, имеющихся возможностей, ресурсов, целей проекта в соответствии с назначением фирмы. Эти средства позволяют проводить анализ различных сценариев (в том числе наилучших и наихудших), накапливая информацию для принятия оптимальных решений.
  • Средние (Middle) CASE считаются средствами поддержки этапов анализа требований и проектирования спецификаций и структуры ПО. Их использование существенно сокращает цикл разработки проекта; при этом важную роль играет возможность накопления и хранения знаний, обычно имеющихся только в голове разработчика-аналитика, что позволит использовать накопленные решения при создании других проектов. Основная выгода от использования среднего CASE состоит в значительном облегчении проектирования систем, проектирование превращается в итеративный процесс, включающий следующие действия:
    • пользователь обсуждает с аналитиком требования к проектируемой системе;
    • аналитик документирует эти требования, используя диаграммы и словари входных данных;
    • пользователь проверяет эти диаграммы и словари, при необходимости модифицируя их;
    • аналитик отвечает на эти модификации, изменяя соответствующие спецификации.
    Кроме того, средние CASE обеспечивают возможности быстрого документирования требований и быстрого прототипирования.
  • Нижние (Lower) CASE являются средствами разработки ПО (при этом может использоваться до 30% спецификаций, созданных средствами среднего CASE). Они содержат системные словари и графические средства, исключающие необходимость разработки физических спецификаций. Имеются системные спецификации, которые непосредственно переводятся в программные коды разрабатываемой системы (при этом автоматически генерируется до 80-90% кодов). На эти средства возложены также функции тестирования, управления конфигурацией, формирования документации. Главными преимуществами нижних CASE являются: значительное уменьшение времени на разработку, облегчение модификаций, поддержка возможностей прототипирования (совместно со средними CASE).

Достоинства CASE-методологий

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

CASE-средства проектирования баз данных

Тенденции развития современных информационных технологий приводят к постоянному возрастанию сложности систем баз данных. Опыт проектирования таких систем показывает, что это логически сложная, трудоемкая и длительная по времени работа, требующая высокой квалификации участвующих в ней специалистов. Начиная с 70-х и 80-х годов, при разработке информационных систем широко применяется структурная методология, предоставляющая в распоряжение разработчиков строгие формализованные методы описания систем и принимаемых технических решений. Она основана на наглядной графической технике: для описания различного рода моделей используются схемы и диаграммы. Для автоматизации этой технологии в настоящее время используются программно-технологические средства специального класса - CASE-средства, реализующие CASE-технологию создания и сопровождения информационных систем. Термин CASE (Computer Aided Software Engineering) используется в настоящее время в весьма широком смысле. Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения, в настоящее время приобрело новый смысл, охватывающий процесс разработки сложных автоматизированных систем в целом. Под термином CASE-средства понимаются программные средства, поддерживающие процессы создания и сопровождения информационных систем, включая анализ и формулировку требований, проектирование приложений и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы.

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

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

1. Средства анализа, предназначенные для построения и анализа моделей предметной области (Bpwin, Design/IDEF);

2. Средства анализа и проектирования, предназначенные для создания проектных спецификаций (CASE.Аналитик, Vantage Team Builder, Designer/2000, Silverrun, PRO-IV);

3. Средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных для наиболее распространенных СУБД (Silverrun, Vantage Team Builder, Designer/2000, ERwin, S-Designor);

4. Средства разработки приложений и генераторы кодов (Vantage Team Builder, Silverrun, PRO-IV);

5. Средства реинжениринга, обеспечивающие анализ программных кодов, схем баз данных и формирование на их основе различных моделей и проектных спецификаций. Средства анализа схем баз данных входят в состав: (Silverrun, Vantage Team Builder, Designer/2000, Erwin, S-Designor). Для анализа программных кодов используются такие средства, как Rational Rose и Object Team.

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

CASE-средство Silverrun американской фирмы Computer Systems Advisers (CSA) используется для анализа и проектирования информационных систем бизнес-класса и ориентировано, в большей степени, на спиральную модель жизненного цикла. Оно применимо для поддержки любой методологии, основанной на раздельном построении функциональной и информационной моделей (диаграмм потоков данных и диаграмм «сущность-связь»). Silverrun имеет модульную структуру и состоит из четырех модулей, каждый из которых является самостоятельным продуктом. Модуль построения моделей бизнес-процессов в форме диаграмм потоков данных (BMP – Business Process Modeler) позволяет моделировать функционирование обследуемой организации или создаваемой информационной системы. Модуль концептуального моделирования данных (ERX – Entity-Relationship eXpert) обеспечивает построение моделей данных «сущность-связь», не привязанных к конкретной реализации. Модуль реляционного моделирования (RDM – Relational Data Modeler) позволяет создавать детализированные модели «сущность-связь», предназначенные для реализации в реляционной базе данных. Менеджер репозитория рабочей группы (WRM – Workgroup Repository Manager) применяется как словарь данных для хранения общей для всех моделей информации, а также обеспечивает интеграцию модулей Silverrun в единую среду проектирования. Платой за высокую гибкость и разнообразие изобразительных средств построения моделей является такой недостаток Silverrun, как отсутствие жесткого взаимного контроля между компонентами различных моделей (например, возможности автоматического распространения изменений между диаграммами потоков данных разного уровня). Но этот недостаток может иметь существенное значение только в случае использования каскадной модели жизненного цикла программного обеспечения. Для автоматической генерации схем баз данных у Silverrun существуют мосты к наиболее распространенным СУБД: Oracle, Informix, DB2, Ingres, Progress, SQL Server, SQLBase, Sybase. Для передачи данных в средства разработки приложений имеются мосты к языкам 4GL: JAM, PowerBuilder, SQL Windows, Uniface, NewEra, Delphi. Система Silverrun реализована на трех платформах – MS Windows, Macintosh, OS/2 Presentation Manager – с возможностью обмена проектными данными между ними.

Vantage Team Builder представляет собой интегрированный программный продукт, ориентированный на реализацию каскадной модели жизненного цикла программного обеспечения. Vantage Team Builder обеспечивает выполнение следующих функций: 1) проектирование диаграмм потоков данных, «сущность-связь», структур данных, структурных схем программ и последовательностей экранных форм; 2) генерацию кода программ на языке 4GL целевой СУБД с полным обеспечением программной среды и генерация SQL-кода для создания таблиц баз данных, индексов, ограничений целостности и хранимых процедур; 3) программирование на языке C со встроенным SQL; 4) управление версиями и конфигурацией проекта; 5) генерация проектной документации по стандартным и индивидуальным шаблонам; 6) экспорт и импорт данных проекта. Vantage Team Builder поставляется в различных конфигурациях в зависимости от используемых СУБД (Oracle, Informix, Sybase, Ingress) или средств разработки приложений (Uniface). Конфигурация Vantage Team Builder обеспечивает совместное использование двух систем в рамках единой технологической среды проектирования, при этом схемы баз данных (SQL - модели) переносятся в репозиторий Uniface, и, наоборот, прикладные модели, сформированные средствами Uniface, могут быть перенесены в репозиторий Vantage Team Builder. Возможности рассогласования между репозиториями двух систем устаняются с помощью специальной утилиты. Разработка экранных форм в среде Uniface выполняется на базе диаграмм последовательностей форм (FSD) после импорта SQL – модели. Vantage Team Builder функционирует на всех основных Unix – платформах (Solaris, SCO UNIX, AIX, HP-UX) и VMS.



CASE-средство Designer/2000 фирмы Oracle является интегрированным CASE-средством, обеспечивающим в совокупности со средствами разработки приложений Developer/2000, поддержку полного жизненного цикла программного обеспечения для систем, использующих СУБД Oracle. В состав Designer/2000 входят следующие компоненты: 1) Repository Administrator – средства управления репозиторием (создание, удаление приложений, управление доступа к данным со стороны различных пользователей, экспорт и импорт данных); 2) Repository Object Navigator - средство доступа к репозиторию. Обеспечивающие многооконный объектно-ориентированный интерфейс доступа ко всем элементам репозитория; 3) Process Modeller – средство анализа и моделирования деловой деятельности, основывающиеся на концепциях реинжениринга бизнес-процессов и глобальной системы управления качеством; 4) Systems Modeller – набор средств построения функциональных и информационных моделей проектируемой информационной системы, включающий средства для построения диаграмм «сущность-связь», диаграмм функциональных иерархий, диаграмм потоков данных и средство анализа и модификации связей объектов репозитория различных типов; 5) Systems Designer – набор средств проектирования информационных систем, включающий средство построения структуры реляционной базы данных, а также средства построения диаграмм, отображающих взаимодействие с данными, иерархию, структуру и логику приложений, реализуемую хранимыми процедурами на языке SQL; 6) Server Generator – генератор описаний объектов базы данных Oracle (таблиц, индексов, ключей, последовательностей и т.д.). Помимо продуктов Oracle, генерация и реинжиниринг баз данных может выполняться для СУБД Informix, DB/2,Microsoft SQL Server, Sybase, a а также для баз данных, доступ к которым реализуется посредством ODBC; 7) Forms Generator – генератор приложения, включающий в себя различные экранные формы, средства контроля данных, проверки ограничений целостности и автоматические подсказки; 8) Repository Reports – генератор стандартных отчетов. Среда функционирования Designer/2000 – Windows 3.x, Windows 95, Windows NT.

Erwin – средство логического моделирования баз данных, использующее методологию IDEF1X. Erwin реализует проектирование схемы баз данных, генерацию её описания на языке целевой СУБД (Oracle, Informix, DB/2, Ingres, Progress, SQL Server, SQLBase, Sybase и др.) и реинжениринг существующей базы данных. Erwin выпускается в нескольких различных конфигурациях, ориентированных на наиболее распространенные средства разработки приложений 4GL. Версия Erwin/Open полностью совместима со средствами разработки приложений PowerBuilder и SQLWindows и позволяет экспортировать описание спроектированной базы данных непосредственно в репозитории данных средств.

S –Designor представляет собой CASE – средство для проектирования реляционных баз данных. S –Designor реализует стандартную методологию моделирования данных и генерирует описание баз данных для таких СУБД, как Oracle, Informix, DB/2, Ingres, Progress, SQL Server, SQLBase, Sybase и др. Для существующих систем выполняется реинжениринг баз данных.

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

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



Поделиться