Тема: Классификация 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-средств поддерживает практически полностью процесс разработки ПС и систем, процессы сопровождения, документирования, управления конфигурацией, частично процессы обеспечения качества, верификации, аттестации. Таким образом, линейки Telelogic и 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, Telelogic 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. Классификация по методологии проектирования