
- •СОДЕРЖАНИЕ
- •1.1. Основные понятия и определения
- •1.2. Жизненный цикл программных средств
- •2.1. Стратегии разработки программных средств и систем
- •2.1.1. Базовые стратегии разработки программных средств и систем
- •2.1.2. Каскадная стратегия разработки программных средств и систем
- •2.1.3. Инкрементная стратегия разработки программных средств и систем
- •2.1.4. Эволюционная стратегия разработки программных средств и систем
- •2.2.1. Общие сведения о каскадных моделях
- •2.2.2. Классическая каскадная модель
- •2.2.3. Каскадная модель с обратными связями
- •2.2.5. V-образная модель
- •2.3.1. Базовая RAD-модель
- •2.4.1. Общие сведения об инкрементных моделях
- •2.4.2. Инкрементная модель с уточнением требований на начальных этапах разработки
- •2.5.1. Общие сведения об эволюционных моделях
- •2.5.3. Структурная эволюционная модель быстрого прототипирования
- •2.5.5. Спиральная модель Боэма
- •2.5.6. Упрощенные варианты спиральной модели
- •3.1. Классификация проектов по разработке программных средств и систем
- •3.2. Процедура выбора модели жизненного цикла разработки программных средств и систем
- •3.3. Адаптация модели жизненного цикла разработки ПС и систем к условиям конкретного проекта
- •4.1. Модульное проектирование программ
- •4.2. Метод нисходящего проектирования
- •4.2.1. Пошаговое уточнение
- •4.2.2. Кодирование программы с помощью псевдокода и управляющих конструкций структурного программирования
- •4.2.3. Использование комментариев для описания обработки данных
- •4.2.4. Анализ сообщений
- •4.3. Метод восходящего проектирования
- •4.4. Метод иерархического проектирования модулей (метод Джексона)
- •4.4.1. Основные конструкции построения структур данных
- •4.4.2. Построение структур данных
- •4.4.3. Проектирование структур программ
- •4.4.4. Этапы конструирования программы
- •4.5.1. Связность модуля
- •4.5.2. Сцепление модулей
- •5.1. Общие сведения о CASE-технологиях
- •5.2. Методология структурного анализа и проектирования SADT
- •5.2.2. Основные понятия IDEF0-модели
- •5.2.3. Синтаксис диаграмм
- •5.2.4. Синтаксис моделей
- •5.2.6. Процесс моделирования в IDEF0
- •5.3. Информационное моделирование
- •5.3.1. Сущности
- •5.3.2. Атрибуты
- •5.3.3. Способы представления сущностей с атрибутами
- •5.3.4. Классификация атрибутов
- •5.3.5. Правила атрибутов
- •5.3.6. Связи
- •5.3.7. Безусловные связи
- •5.3.8. Условные формы связи
- •5.3.9. Формализация связи
- •5.3.10. Подтипы и супертипы
- •5.3.11. Рабочие продукты информационного моделирования
- •6.1. Эволюция Case-средств
- •6.2. Концептуальные основы Case–средств
- •6.3.1. Поддержка графических моделей
- •6.3.2. Контроль ошибок
- •6.3.3. Организация и поддержка репозитория
- •6.3.4. Поддержка процесса проектирования и разработки
- •6.4. Классификация CASE–средств
- •6.4.1. Классификация по типам
- •6.4.2. Классификация по категориям
- •6.4.3. Классификация по уровням
- •6.5. Инструментальные средства компании Telelogic, предназначенные для автоматизации жизненного цикла программных средств и систем
- •6.5.1. Telelogic DOORS
- •6.5.2. Telelogic TAU
- •6.5.3. Telelogic SYNERGY
- •6.5.4. Telelogic DocExpress
- •6.5.5. Telelogic TAU Logiscope
- •7.2. Реализация процесса документирования в соответствии со стандартом ISO/IEC 15910:1999
- •7.2.2. Выполнение процесса документирования
- •7.2.3. Содержание плана документирования
- •7.2.4. Требования к содержанию спецификации стиля документации
- •ЛИТЕРАТУРА

1.Квартира (К) |
2.Владелец_квартиры (ВК) |
||
|
|
|
|
Адрес |
|
Имя_владельца |
|
Номер_квартиры |
|
|
|
|
(Другие атрибуты) |
|
|
(Другие атрибуты) |
|
|
|
|
|
|
|
|
|
|
|
3.Владение (В)
Адрес (R1) Номер_квартиры (R1) Имя_владельца (R1)
Рисунок 5.17 – Вариант представления формализованной связи многие-ко-многим посредством ассоциативной сущности
5.3.10. Подтипы и супертипы
При разработке информационной модели предметной области могут возникнуть ситуации, когда несколько сущностей имеют общие атрибуты.
Рисунок 5.18 иллюстрирует такую ситуацию для химическог производства.
4.Бак_для_хранения (БХ) |
5.Бак_смеситель(БС) |
6.Бак_с_подогревом (БП) |
|||||
|
|
|
|
|
|
|
|
|
ID_бака |
|
|
ID_бака |
|
ID_бака |
|
|
|
|
|
|
|
|
|
|
|
|
|
Емкость |
|
|
|
|
Емкость |
|
|
|
Емкость |
|
|
|
|
|
|||||
|
Дата_изготовления |
|
|
Дата_изготовления |
|
Дата_изготовления |
|
|
|
|
|
ID_cмесителя |
|
ID_калорифера |
|
|
|
|
|
|
|
|
|
Рисунок 5.18 – Сущности химического производства с общими атрибутами
В этом случае рекомендуется создать общую сущность(супертип) для представления характеристик, совместно используемых специализированными
146

сущностями (подтипами). Такие сущности связаны между собойсвязью супертип–подтип. Данная связь при изображении перечеркивается вблизи
сущности-супертипа (рисунок 5.19). |
|
|
|
||||
В |
конструкции |
супертип–подтип |
один |
реальный |
эк |
||
представляется комбинацией |
экземпляра супертипа и |
экземпляра |
одного |
||||
подтипа. |
|
|
|
|
|
|
|
|
|
7. Бак (Б) |
|
|
|
||
|
|
|
|
Супертип |
|
|
|
|
|
ID_бака |
|
|
|
Емкость Дата_изготовления
Является
R4
|
|
4.Бак_для_хранения |
5. Бак_смеситель |
|
6.Бак_с_подогревом |
|||
|
|
|
|
|
|
|
|
|
|
|
ID_бака (R4) |
|
|
ID_бака (R4) |
|
|
ID_бака (R4) |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
Подтипы |
|
ID_смесителя |
|
|
ID_калорифера |
|||
|
|
|
|
|
|
|
|
|
Рисунок 5.19 – Сущности супертип и подтип, образованные из сущностей с общими атрибутами (пример 1)
Рисунок 5.20 содержит еще один пример использования супертипа и подтипов для предметной области «Аудиторный фонд университета».
5.3.11.Рабочие продукты информационного моделирования
Для информационной модели разрабатываются три рабочих продукта:
1) Диаграмма информационной структуры – графическое представление информационной модели. Такие диаграммы называютсядиаграммами
«сущность--связь» или ER–диаграммами Чена (ER – аббревиатура английских слов Entity (сущность) и Relationship (связь)).
2)Описание сущностей и атрибутов– списки всех сущностей модели,
всех атрибутов (вместе с их доменами) и их описание.
3)Описание связей – перечни связей вместе с их описаниями.
147

7. Аудитория (А)
ID_аудитории Супертип
Номер_аудитории Количество мест
Является
R4
4. Лекционная (Лк) |
5. Лабораторная (Лр) |
|
6. Практическая |
|||||
|
|
|
|
|
|
|
|
|
|
ID_аудитории (R4) |
|
|
ID_аудитории (R4) |
|
|
ID_аудитории (R4) |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
Наличие ТСО |
|
|
Кол-во компьютеров |
|
|
Наличие_розеток |
|
|
|
|
|
|
|
|
|
|
Подтипы
ТСО – технические средства обучения
Рисунок 5.20 – Сущности супертип и подтип, образованные из сущностей с общими атрибутами (пример 2)
148
РАЗДЕЛ 6. ИНСТРУМЕНТАЛЬНЫЕ
СРЕДСТВА РАЗРАБОТКИ
ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ
6.1. Эволюция Case-средств
Очевидно, что большие размеры и высокая сложность разрабатываемых программных средств при ограничениях на бюджетные и временные затраты проекта могут привести к низкому качеству конечных программных продуктов
исистемы в целом. В этой связи в последнее время все большее внимание уделяется современным технологиям и инструментальным средств, обеспечивающим автоматизацию процессов жизненного цикла программных средств (CASE-средствам). Использование таких инструментальных средств позволяет существенно сократить длительность и стоимость разработки систем
иПС при одновременном повышении качества процесса разработки, каки следствие, качества разработанных программных средств.
Вистории развития CASE–средств обычно выделяется шесть периодов. Данные периоды отличаются применяемой техникой и методами разработки программных средств. Эти периоды используют в качестве инструментальных средств следующие средства [14].
Период 1. Ассемблеры, анализаторы.
Период 2. Компиляторы, интерпретаторы, трассировщики. Период 3. Символические отладчики, пакеты программ. Период 4. Системы анализа и управления исходными текстами.
Период 5. Первое поколение CASE (CASE-I). Это CASE–средства анализа
требований, |
проектирования |
спецификаций |
|
и |
структуры, |
||||
редактирования |
интерфейсов. |
Адресованы |
непосредственно |
||||||
системным |
аналитикам |
и |
проектировщикам. Поддерживают |
||||||
графические |
|
модели, |
экранные |
редакторы, |
проектирование |
||||
спецификаций, словари данных. Не предназначены для поддержки |
|||||||||
полного |
жизненного |
|
цикла(ЖЦ) |
программных |
|
средств, |
|||
концентрируют внимание на функциональных спецификациях и на |
|||||||||
начальных |
стадиях |
разработки |
проекта(анализе |
требований |
|||||
системы, проектировании |
|
архитектуры |
системы, анализе |
требований программных средств, проектировании программной архитектуры, логическом проектировании баз данных).
149
Период 6. Второе поколение CASE (CASE-II). Это CASE–средства генерации исходных текстов. Они поддерживают полный жизненный цикл разработки программных средств. Используют средства поддержки автоматической кодогенерации, представления графических системных требований и спецификаций проектирования. Содержат средства контроля, анализа и интеграции системной информации и информации по управлению проектированием. Содержат также средства построения прототипов и моделей системы, тестирования, верификации и анализа сгенерированных программ, генерации документов по проекту, контроля на соответствие стандартам по всем этапам жизненного цикла.
CASE-технологии предлагают новый, основанный на автоматизации, подход к концепции жизненного цикла программных средств. Современные
варианты |
CASE-моделей жизненного цикла, называемые |
обычно RAD- |
|||||
моделями, рассмотрены в подразд. 2.3 настоящего обучающего курса. |
|
||||||
Наибольшие изменения |
в |
жизненном |
цикле ПС |
при |
использовании |
||
CASE-технологий касаются первых этапов жизненного цикла, связанных с |
|||||||
анализом |
требований |
и |
проектированием. CASE-средства |
позволяют |
|||
использовать визуальные |
среды |
разработки, средства моделирования и |
|||||
быстрого |
прототипирования |
|
разрабатываемой |
системы. Это |
позволяет на |
ранних этапах разработки оценить, насколько будущая система устраивает заказчика и насколько она дружественна будущему пользователю.
Таблица 6.1 содержит усредненные сравнительные оценки трудозатрат по основным этапам жизненного цикла программных средств при различных подходах к разработке.
Таблица 6.1 – Сравнительная оценка трудозатрат по этапам жизненного цикла
№ |
Анализ, |
Проектирование, |
Кодирование, |
Тестирование, |
п/п |
% |
% |
% |
% |
1 |
20 |
15 |
20 |
45 |
|
|
|
|
|
2 |
30 |
30 |
15 |
25 |
|
|
|
|
|
3 |
45 |
40 |
— |
15 |
|
|
|
|
|
Номерам строк в данной таблице соответствуют:
1 – традиционная разработка с использованием классических технологий;
2 – разработка с использованием современных методологий;
3 – разработка с использованием CASE–технологий.
150