Тема: Классификация CASE – средств.

ПЛАН ЗАНЯТИЯ

Дисциплина: МДК 03.02 Инструментальные средства разработки ПО

Преподаватель: Машарова Р.В.

Курс: 4

Группа: 1 ПКС-19

Специальность: Программирование в компьютерных системах

Дата: 10.03.2023

Время проведения: 11.50-13.20, 3 пара

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

Цель занятия:

Дидактическая: познакомиться с классификацией CASE-средств

Развивающая: развивать логическое и критическое мышление, умение обобщать и синтезировать знания

Вид занятия лекция

Литература:

1. Буч Г, Рамбо Джеймс, Джекобсон Айвар. Язык UML. Руководство пользователя. – М.: ДМК Пресс; СПб.: Питер, 2004

2. Гагарина Л. Г., Кокорева Е. В., Виснадул Б. Д. Г12 Технология разработки программного обеспечения: учебное посо­бие / под ред. Л. Г Гагариной. — М.: ИД «ФОРУМ»: ИНФРА-М, 2008

3. Жоголев Е.А., Технология программирования. М.: Научный мир, 2004

4. Крылов Е.В., Острейковский В.А., Типикин Н.Г. Техника разработки программ. Книга 2. Технология, надежность и качество программного обеспечения — М.: Высшая школа. – 2009

5. Крылова Г.Д. Основы стандартизации, сертификации, метрологии. – М.: ЮНИТИ-ДАНА, 2003

6. Лифиц И.М. Основы стандартизации, метрологии, сертификации. – М.: Юрайт, 2003

7. Маклаков С.В.. BPwin, ERwin – CASE-средства разработки информационных систем. – М., «ДИАЛОГ-МИФИ», 2010

8. Немилостива Н.И. Стандартизация, сертификация и метрология. – Владивосток: Изд-во ВГУЭС, 2002

9. Павловская Т. А. С/С++. Программирование на языке высокого уровня: Учебник для студентов вузов. - Москва [и др.]: Питер, 2012

10. Сергеев А.Г., Латышев М.В., Терегеря В.В. Метрология. Стандартизация. Сертификация. –М.: Логос, 2003

11. Сьерра К. Бейтс Б. Изучаем java. 2012

12. Файн Я. Программирование на java / Я. Файн. – 3-е изд. – США, 2011

13. Шилдт Герберт Java. Полное руководство. 8-издание / Г.Шилдт. – 8-е изд. –2012

Тема: Классификация CASE – средств.

1. Общая классификация

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

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

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

5. Классификация по методологии проектирования

На сегодняшний день возможны варианты классификаций CASE-средств по различным признакам:

1. По типам (по функциональному назначению):

- анализ и проектирование;

- проектирование баз данных и файлов;

- программирование и тестирование;

- сопровождение и реинженерия;

- окружение;

- управление проектом.

2. По степени интегрированности:

- tools (отдельные локальные средства);

- toolkits (набор интегрированных средств, охватывающих большинство этапов разработки ЭИС);

- workbench (полностью интегрированные средства, связанные общей базой проектных данных – репозиторием).

3. По поддерживаемым методологиям проектирования:

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

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

- комплексно-ориентированные.

4. По области действия:

- верхние (Upper) CASE (средствами компьютерного планирования);

- средние (Middle) CASE считаются средствами поддержки этапов анализа требований и проектирования спецификаций и структуры ПО;

- нижние (Lower) CASE являются средствами разработки ПО.

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

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

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

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

6. По типу и архитектуре вычислительной техники:

- ориентированные на отдельные компьютеры;

- ориентированные на локальную вычислительную сеть;

- ориентированные на глобальную вычислительную сеть;

- смешанного типа.

7. По режиму коллективной разработки проекта:

- не поддерживающие коллективную разработку;

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

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

8. По типу операционной системы.

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

Данная классификация отражает функциональное назначение CASE-средства в ЖЦ ПС и систем.

2.1. Анализ и проектирование

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

2.2. Проектирование баз данных и файлов

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

2.3. Программирование и тестирование

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

2.4. Сопровождение и реинженерия

Общей целью средств этого типа является поддержка корректировки, изменения, преобразования, реинженерия существующей системы, поддержка документации по проекту. К данным средствам относятся средства документирования, анализаторы программ, средства управления изменениями и конфигурацией ПС и систем, средства реструктурирования и реинженерии. Реинженеринг (reverse engineering) – обратное проектирование.

2.5. Окружение

К средствам данного типа относятся средства поддержки интеграции CASE-средств и данных.

2.6. Управление проектом

К средствам данного типа относятся средства поддержки процесса управления ЖЦ ПС и систем. Их функциями являются планирование, контроль, руководство, организация взаимодействия и т.п.

 

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

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

3.1. Вспомогательные программы (tools). Категория Tool (tool - рабочий инструмент)

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

3.2. Пакеты разработчика (toolkit). Категория ToolKit (tookit - набор инструментов, пакет разработчика)

Включает CASE-средства среднего уровня интегрированности. Средства

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

К CASE-средствам данной категории может быть отнесено, например, большинство CASE-средств из линеек Telelogic и AllFusion при их изолирован­ном использовании

3.3. Инструментальные средства (workbench).

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

Обычно к категории Workbench относятся линейки CASE-средств при их интегральном использовании. Примерами являются линейки Telelogic и AllFusion. Данные линейки CASE-средств поддерживает практически полностью процесс разработки ПС и систем, процессы сопровож­дения, документирования, управления конфигурацией, частично процессы обеспечения качества, верификации, аттестации. Таким образом, линейки Tele­logic и AllFusion поддерживают практически весь ЖЦ ПС и систем.

Категория workbench представляет собой интеграцию программных средств, которые

- поддерживают системный анализ, проектирование и разработку ПО;

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

- обеспечивают автоматическую передачу системной информации между разработчиками и этапами разработки;

- организуют поддержку практически полного ЖЦ (от анализа требований и проектирования ПО до получения документированной выполняемой программы).

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

Адаптированная под современное состояние выше описанная классификация CASE-систем содержит 3 класса:

1. «Tools» – инструменты, поддерживающие только определенные задачи в про- цессах ЖЦ ПО и ОЭС;

2. «Workbenches» – рабочие приложения, поддерживающие только определенный вид деятельности. Они могут включать в себя системы класса «Tools» или иметь самостоя- тельную сложную модульную структуру;

3. «Environments» – программные среды, поддерживающие все (или большую часть) процессов ЖЦ ПО и организационно-управляющих систем. Могут включать в себя системы классов «Tools», «Workbenches».

 

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

Данная классификация связана с областью действия CASE-средств в ЖЦ ПС, систем и организаций.

4.1. Верхние ( Upper ) CASE -средства

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

К средствам данного уровня можно отнести, например, Telelogic System Architect, Telelogic Focal Point, Telelogic Dashboard, средства линейки AllFusion Modeling Suite.

4.2. Средние (Middle) CASE -средства

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

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

CASE-средства данного уровня зачастую поддерживают прототипирова­ние и автоматическое документирование.

К CASE-средствам данного уровня можно отнести, например, линейку AllFusion Modeling Suite, средства Telelogic DOORS, Telelogic Modeler, Telelog­ic Tau, Telelogic Rhapsody, Telelogic Statemate, Telelogic DocExpress.

4.3. Нижние (Lower) CASE -средства

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

CASE-средства нижнего уровня, как правило, поддерживают также про­тотипирование, тестирование, управление конфигурацией, генерацию докумен­тации, облегчают модификацию и сопровождение ПС или систем.

К CASE-средствам данного уровня можно отнести AllFusion Data Modeler, Telelogic Rhapsody, Telelogic Tau, Telelogic Statemate, Telelogic TAU Logiscope, Telelogic Change, Telelogic Synergy, Telelogic DocExpress.

Следует отметить, что в состав CASE-средств среднего и высокого уров­ней интегрированности обычно входят инструментальные средства, относя­щиеся к нескольким уровням. Линейки CASE-средств, предназначенные для поддержки всего ЖЦ ПС и систем, включают в свой состав средства всех трех уровней.

5. Классификация по методологии проектирования

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

- структурный (функциональный),

- объектно-ориентированный,

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

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

- функционального моделирования IDEF0;

- структурного анализа потоков данных DFD;

- информационного моделирования IDEF1X;

- ориентированные на данные (Метод JSD Джексона, Диаграммы Варнье–Орра).

Для их реализации на сегодняшний момент широкое распространение получили:

- CA ERwin Process Modeler (ранее: BPwin),

- CA ERwin Data Modeler (ранее: ERwin),

- Vantage Team Builder,

- Oracle Designer.

Объектно-ориентированный подход использует объектную декомпозицию, при этом статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщений между объектами. Для описания данного подхода широко используется унифицированный язык моделирования UML – Unified Modeling Language.

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

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

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

Средства, отвечающие объектно-ориентированному подходу: IBM Rational Rose Enterprise, Sybase PowerDesigner, Rational Rose; Borland Together; Microsoft Visio; Sparx Systems Enterprise Architect; Gentleware Poseidon; SmartDraw; Dia; Telelogic TAU G2; StarUML и др.

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

 

Общая схема показана на рисунке 1.

 

 

Рисунок 1 –Классификация CASE-систем

Контрольные вопросы.

1. Общая классификация

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

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

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

5. Классификация по методологии проектирования