- •Основные понятия и определения
- •Модели жизненного цикла разработки программных средств и систем
- •Стратегии разработки программных средств и систем
- •Каскадная модель жизненного цикла разработки программных средств и систем
- •Преимущества каскадной модели жизненного цикла
- •Недостатки каскадной модели жизненного цикла
- •Область применения каскадной модели
- •V-образная модель жизненного цикла разработки программных средств и систем
- •Преимущества V-образной модели жизненного цикла
- •НедостаткиV-образной модели жизненного цикла
- •Область применения V-образной модели
- •Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем
- •Преимущества структурной эволюционной модели быстрого прототипирования
- •Недостатки структурной эволюционной модели быстрого прототипирования
- •Область применения структурной эволюционной модели быстрого прототипирования
- •Модель быстрой разработки приложений rad
- •Преимущества модели быстрой разработки
- •Недостатки модели быстрой разработки
- •Область применения модели быстрой разработки rad
- •Инкрементная модель жизненного цикла разработки программных средств и систем
- •Преимущества инкрементной модели жизненного цикла
- •Недостатки инкрементной модели жизненного цикла
- •Область применения инкрементной модели
- •Спиральная модель жизненного цикла разработки программных средств и систем
- •Преимущества спиральной модели жизненного цикла
- •Недостатки спиральной модели жизненного цикла
- •Область применения спиральной модели
- •Упрощенные варианты спиральной модели
- •Классификация проектов по созданию и развитию программных средств и систем
- •Классические технологии проектирования программ
- •Модульное проектирование программ
- •Метод нисходящего проектирования
- •Пошаговое уточнение
- •Кодирование программы с помощью псевдокода и управляющих конструкций структурного программирования
- •Использование комментариев для описания обработки данных
- •Анализ сообщений
- •Связность модуля
- •Сцепление модулей
- •Метод восходящего проектирования
- •Методы расширения ядра
- •Метод иерархического проектирования модулей (метод Джексона)
- •Основные конструкции построения структур данных
- •Построение структур данных
- •Создание структур программ
- •Этапы конструирования программы
- •Case-технологии проектирования программного обеспечения
- •Общие сведения о case-технологиях
- •Информационное моделирование
- •Сущности
- •Атрибуты
- •Способы представления сущностей с атрибутами
- •5. Студент (с)
- •Классификация атрибутов
- •Правила атрибутов
- •Безусловные связи
- •Условные формы связи
- •Формализация связи
- •Подтипы и супертипы
- •Рабочие продукты информационного моделирования
- •Методология структурного анализа и проектирования sadt
- •Введение
- •Общие сведения о методологии структурного анализа и проектирования sadt
- •Достоинства методологии sadt
- •Основные понятия idef0-модели
- •Синтаксис диаграмм
- •Синтаксис моделей
- •Декомпозиция и её стратегии при idef0-моделировании
- •Процесс моделирования в idef0
- •Инструментальные средства проектирования программного обеспечения
- •ЭволюцияCase-средств
- •Case–модель жизненного цикла.
- •Сравнительная оценка трудозатрат по этапам жизненного цикла.
- •Концептуальные основыCase–средств
- •Состав и функциональные особенностиCase–средств
- •КлассификацияCase–средств
Подтипы и супертипы
При разработке информационной модели предметной области могут возникнуть ситуации, когда несколько сущностей имеют общие атрибуты (Рисунок 4 .66).
Рисунок 4.66 –Сущности химического производства с общими атрибутами
В этом случае рекомендуется создать общую сущность (супертип) для представления характеристик, совместно используемых специализированными сущностями (подтипами). Такие сущности связаны между собой связью супертип–подтип. Данная связь при изображении перечеркивается вблизи сущности-супертипа (Рисунок 4 .67).
В конструкции супертип–подтип один реальный экземпляр представляется комбинацией экземпляра супертипа и экземпляра одного подтипа.
Рисунок 4.67 –Сущности супертип и подтип, образованные из сущностей с общими атрибутами
Рабочие продукты информационного моделирования
Для информационной модели разрабатываются три рабочих продукта:
Диаграмма информационной структуры– графическое представление информационной модели. Такие диаграммы называются еще диаграммами «сущность--связь» илиER–диаграммами Чена (ER– аббревиатура английских словEntity(сущность) иRelationship(связь)).
Описание сущностей и атрибутов– списки всех сущностей модели, всех атрибутов (вместе с их доменами) и их описание.
Описание связей– перечни связей вместе с их описаниями.
Методология структурного анализа и проектирования sadt
Введение
Как показывают исследования, большинство ошибок вносится в программы на ранних этапах их разработки (на этапах анализа и проектирования) и гораздо меньше их возникает на этапах кодирования и тестирования-отладки.
Как правило, ошибки, возникающие на ранних этапах создания системы, являются следствием неполноты функциональных спецификаций или несогласованности между спецификациями и проектом, выполненным по ним. Очевидно, что основная причина этого кроется в неадекватности используемых методов создания систем поставленным задачам.
В 80-е годы разработан ряд методов структурного проектирования программ, специально предназначенных для использования на ранних этапах процесса разработки сложных систем широкого профиля и позволяющих существенно сократить возможности внесения ошибок в разрабатываемую систему. Наиболее известными и широко используемыми из данных методов являются:
метод структурного анализа и проектирования SADTРосса;
методы, ориентированные на потоки данных (методы Йодана, ДеМарко, Гейна, Сарсона);
методы структурирования данных (методы Джексона-Уорнера, Орра, Чена).
Появление новых методов проектирования поставило задачу создания программного обеспечения (ПО), позволяющего автоматизировать их использование при проектировании больших систем. К середине 80-х годов сформировался рынок программных средств, названных CASE-системами.
Первоначально термин CASEтрактовался какComputerAidedSoftwareEngineering(компьютерная поддержка проектирования ПО). В настоящее время данному термину придается более широкий смысл и он расшифровывается какComputerAidedSystemEngineering(компьютерная поддержка проектирования систем), а современныеCASE-средства ориентируются на создание спецификаций, проектирование и моделирование сложных систем широкого назначения.
Наиболее перспективные CASE-продукты базируются на предположении, что программная система – это частный случай системы вообще. Процесс создания ПО хотя и имеет свои особенности, но включает в себя практически те же стадии, что и системы общего назначения.
С середины 70-х годов в США финансировался ряд проектов, ориентированных на разработку методов описания и моделирования сложных систем [1]. Один из них – проект ICAM(IntegratedComputer-AidedManufacturing). Его целью являлась разработка подходов, обеспечивающих повышение эффективности производства благодаря систематическому внедрению компьютерных технологий. В соответствии с проектомICAMбыло разработано семейство методологийIDEF(ICAMDEFinition), которое состоит из трех самостоятельных методологий моделирования различных аспектов функционирования производственной среды или системы:
IDEF0 – методология создания функциональной модели производственной среды или системы (основана на методе SADT Росса);
IDEF1 – методология создания информационной модели производственной среды или системы (основана на реляционной теории Кодда и использовании ER-диаграмм Чена);
IDEF2 – методология создания динамической модели производственной среды или системы.
Позднее в рамках проекта ICAMбыли начаты работы по созданию технологии объединения в сеть неоднородных вычислительных систем. Одним из практических результатов данных работ стало создание методологии семантического моделирования данных IDEF1X – расширения методологии IDEF1.
Методологии IDEF0 и IDEF1X являются стандартизированными и, будучи независимыми, дают адекватное и достаточно полное представление о сложной системе.