
- •СОДЕРЖАНИЕ
- •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. Требования к содержанию спецификации стиля документации
- •ЛИТЕРАТУРА
оценка адекватности моделей, принятие их для дальнейшего использования. Каждый из исполнителей проекта выполняет конкретные обязанности. Ряд современных CASE-средств поддерживают технологию IDEF0-моделирования.
5.3. Информационное моделирование
Цель информационного моделирования– идентифицировать сущности,
составляющие предметную область, и связи между ними. |
|
|
Результатом |
информационного |
моделированияявляется |
информационная модель |
предметной области, содержащая сущности, их |
атрибуты и отражающая взаимосвязи между сущностями.
Наиболее часто информационное моделирование используется при проектировании баз данных.
5.3.1. Сущности
Под сущностью (объектом) в информационном моделировании подразумевается абстракция множества предметов реального мира, для которой
[]:
1)все предметы множества(экземпляры) имеют одни и те же характеристики;
2)все экземпляры подчинены и согласовываются с одним и тем же набором правил и линий поведения.
Каждая сущность в информационной модели должна иметь уникальное имя и уникальныйключевой литерал – короткую форму имени сущности, которая может быть использована для связи с данной сущностью други сущностей. В качестве ключевого литерала обычно используется одна или несколько первых букв имени сущности.
Примеры имен сущностей: Человек, Дом, Студент. Ключевыми литералами для этих сущностей могут быть соответственно Ч, Д, С.
Кроме того, в большой модели для организации документации сущности должны быть пронумерованы.
Большинство сущностей относится к следующим категориям:
·реальные объекты;
·роли;
·инциденты;
·взаимодействия;
·спецификации.
Реальные объекты – это абстракции фактических предметов в физическом мире.
Например, к сущностям данной категории относятся сущности Завод, Университет, Аэропорт, Банк.
133
Роли – |
это |
абстракции |
цели |
или |
назначения |
,человекачасти |
|
|||
оборудования или организации. |
|
|
|
|
|
|
||||
Например, |
|
для |
университета |
|
сущностями-ролями |
явля |
||||
Преподаватель |
и |
Студент; для химического производства– Бак_смеситель, |
|
|||||||
Бак_с_подогревом, Бак_ для_хранения. |
|
|
|
|
|
|
||||
Инциденты – абстракция какого-либо события. |
|
|
|
|||||||
Примерами |
|
сущностей-инцидентов |
|
могут |
являться |
сущ |
||||
Землетрясение, Несчастный_случай, Запуск_космического_корабля, Выборы. |
|
|||||||||
Взаимодействия – сущности, получаемые из отношений между двумя |
|
|||||||||
сущностями. |
|
|
|
|
|
|
|
|
|
|
Примерами сущностей-взаимодействий являются сущности Перекресток |
|
|||||||||
(место |
пересечения |
улиц), Контракт (соглашение |
между |
сторонами), |
||||||
Соединение (некоторой детали с другой). |
|
|
|
|
|
|||||
Спецификации – сущности, используемые |
для |
представления правил, |
|
|||||||
стандартов, требований, критериев качества и т.п. |
|
|
|
|
Примером сущности-спецификации является сущность Рецепт– правило приготовления порции пищи.
Каждая сущность должна сопровождаться описанием. Описание – это короткое информативное утверждение, которое позволяет установить, является ли реальный предмет экземпляром сущности или нет.
Например, для сущности Студент описание может выглядеть следующим образом: «Человек, учащийся в некотором ВУЗе».
5.3.2. Атрибуты
Все предметы |
в реальном |
мире имеют некоторые характеристик |
(например, высота, температура, возраст, координаты и т.п.). |
||
Атрибут – это |
абстракция |
характеристики, которой обладают все |
возможные экземпляры сущности. Каждый атрибут обеспечивается именем, уникальным в пределах сущности. Обращение к атрибуту представляет собой составное имя:
<Имя_сущности>.<Имя_атрибута>
Например, для сущности Студент обращение к его атрибуту Фамилия имеет вид:
Студент.Фамилия
Для определенного экземпляра сущности атрибут принимает конкретное значение. Диапазон допустимых значений, которые атрибут может принимать, называется доменом. Домен должен определяться для каждого атрибута.
134
Идентификатор – это совокупность одного или нескольких атрибутов, значения которых однозначно определяют каждый экземпляр сущности.
Идентификаторы называются также первичными ключами (primary keys). |
|
||||||||
|
Например, для |
сущности |
Студент |
атрибут |
Фамилия |
явля |
|||
удовлетворительным |
идентификатором, |
если |
в |
университете |
н |
||||
однофамильцев. В более общем случае идентификатор сущности Студент будет |
|||||||||
состоять из |
трех атрибутов(Фамилия, Имя, Отчество), а возможно и более |
||||||||
(например, |
при наличии полных однофамильцев могут |
быть добавлены |
|||||||
атрибуты Домашний_адрес, Номер_группы или Дата_рождения). |
|
|
|||||||
|
Сущность может иметь несколько идентификаторов. Например, для |
||||||||
сущности |
Аэропорт |
атрибут |
Код_аэропорта |
является |
идентификатором. |
||||
Комбинация атрибутов Долгота и Широта является другим идентификатором |
|||||||||
сущности Аэропорт. |
|
|
|
|
|
|
|
||
|
Если |
сущность имеет несколько идентификаторов, один из |
них |
||||||
выбирается как привилегированный. |
|
|
|
|
|
||||
|
Для упрощения структуры информационной модели и облегчения работы |
||||||||
с |
ней |
рекомендуется |
|
в |
качестве |
идентификатора |
ис |
||
идентификационный |
номер |
экземпляра |
сущности(ID). Это позволяет |
||||||
исключить |
необходимость |
обработки |
идентификаторов, состоящих |
из |
|||||
нескольких |
атрибутов. |
Наиболее |
эффективно |
использован |
идентификационных номеров целочисленного типа. Значения ID изменяются по порядку, начиная с единицы.
Атрибуты, не являющиеся идентификаторами, называются вторичными ключами. Например, для сущности Аэропорт вторичным ключом является атрибут Тип_аэропорта, поскольку может существовать достаточно большое количество аэропортов одного типа (военных, гражданских и т.п.).
5.3.3.Способы представления сущностей с атрибутами
Сущности |
с |
атрибутами |
могут |
быть |
представлены |
различн |
|||
способами: |
|
|
|
|
|
|
|
|
|
1) Графический способ |
|
|
|
|
|
||||
При |
графическом |
способе(рисунок |
5.6) сущность |
изображается |
|||||
прямоугольником, содержащим имя, ключевой литерал сущности, ее номер в |
|||||||||
информационной |
модели, |
имена |
атрибутов. |
Имя сущности, ее номер и |
|||||
ключевой литерал (на данном рисунке букваС в скобках) могут записываться |
|||||||||
внутри, в верхней части прямоугольника(рисунок 5.6, а) или снаружи, над |
|||||||||
прямоугольником (рисунок 5.6, б). |
|
|
|
|
|
||||
Атрибуты, |
составляющие привилегированный идентификатор сущности, |
некоторым образом выделяются. Например, в классическом информационном моделировании они отмечаются * (см. рисунок 5.6, а), в CASE-средстве ERwin
135

они записываются первыми среди атрибутов и отделяются от остальных чертой (см. атрибуты Фамилия, Имя, Отчество, рисунок 5.6, б).
5. Студент (С)
*Фамилия *Имя *Отчество Адрес Дата_рождения Специальность Курс
а)
5. Студент (С)
ID_студента
Фамилия
Имя
Отчество
Адрес Дата_рождения Специальность Курс
в)
5. Студент (С)
Фамилия
Имя
Отчество
Адрес Дата_рождения Специальность Курс
б)
Рисунок 5.6 – Варианты графического представления сущности Студент: а) в классическом информационном моделировании;
б) в CASE-средстве ERwin;
в) в CASE-средстве ERwin с использованием идентификационного номера
2) Текстовый способ
При текстовом способе представления сущность описывается с помощью указания ее номера в модели(если он определен), ее имени, и заключенного в круглые скобки списка атрибутов. На первом месте в списке атрибутов записываются привилегированные идентификаторы, которые подчеркиваются.
Например, сущность, представленная на предыдущем рисунке, при текстовом способе представления будет описана следующим образом:
136