Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CASE.docx
Скачиваний:
6
Добавлен:
14.09.2019
Размер:
9.96 Mб
Скачать

3 Лекция.

………………………………………..

4 Лекция

Спецификация программного обеспечения

Спецификации – это описание функций и ограничений программного обеспечения. Бывают функциональные и эксплуатационные.

Требования к спецификациям:

  1. Полнота. Должна содержать всю основную информацию.

  2. Точность. Спецификация должна однозначно восприниматься как заказчикам, так и разработчиком.

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

Формальная модель - это представление концептуальной модели с помощью формальных языков.

Концептуальная модель – это совокупность взаимосвязанных понятий, образующих смысловую структуру предметной области.

Группы формальных моделей:

  1. Универсальные. Не зависят от подхода. Попадают: математический аппарат, языки моделирования, псевдокоды.

  2. Модели, используемые при структурной методологии (ориентированные на функции, на данные, на потоки данных).

  3. Используемые при объектно-ориентированном подходе (ориентированные на функции, на данные, на динамику взаимодействия, на описание действий и т.д.).

Универсальные формальные модели.

Диаграммы переходов состояний.

STD (State Transition Diagram) – графическая форма представления конечного автомата.

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

Основные элементы.

  1. Состояние.

    1. Терминальное состояние.

    2. Нетерминальное состояние.

  1. П ереход между состояниями

И сходное состояние Завершение работы

Всегда Всегда Всегда

Иниц. Вычислен. Завершение

Структурный подход. Функциональное моделирование.

Структурный подход.

Основные принципы.

  1. Декомпозиция (анализ)

  2. Иерархическое упорядочивание. Организация составных частей задачи в иерархические древовидные структуры.

  3. Абстрагирование. Выделение существенных свойств и отвлечение от несущественных.

  4. Формализация. Использование формальных моделей для описания задач.

Структурная декомпозиция – представление программного обеспечения в виде совокупности функциональных структур (подсистем) выполняющих автоматизированные функции.

Модели, составляющие полное описание программного обеспечения при структурном подходе:

  1. Функциональные. Structured Analysis Design Technique (IDEF0)

  2. Потоков данных. Date Flow Diagram (IDEF3)

  3. Модели данных. Entity Relationship Diagram(IDEF1/1х)

Функциональное моделирование на примере SADT.

SADT – Совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта.

Основные принципы SADT.

  1. Отображение моделирование функции в виде блоков.

  2. Отображение интерфейсов блоков в виде дуг (стрелок).

  3. Описание взаимодействие блоков с помощью дуг.

IDEF0 – функциональный вариант SADT технологии.

Основные принципы IDEF0 моделирования.

  1. Функциональная декомпозиция.

  2. Принцип ограничения сложности.

  3. Принцип контекстной диаграммы (контекста). Моделирование системы начинают с построения ее контекстной диаграммы, представляющая в виде единственного блока главной функцией моделируемой системы и определяющая границы системы.

Контекст.

Контекст – абстрактное описание системы.

Состав контекста:

  1. Предмет или объект моделирования.

  2. Область моделирования.

  3. Цель моделирования.

  4. Точка зрения на модель.

Предмет моделирования – моделируемая система, при этом необходимо установить границы моделирования, т.е. определить, что будет рассмотрено в качестве компонента в системе, а что как внешнее воздействие.

Область моделирования – границы моделирования, включает ширин и глубину. Ширина определяет границы модели – что будет рассматриваться внутри систем, а что снаружи; глубина определяет степень детализации модели, т.е. на каком уровне модель будет завершенной.

Цель моделирования – вопросы, на которые построенная модель должна дать ответы.

Примеры:

  1. Почему этот процесс должен быть смоделирован?

  2. Что должна показать модель?

Точка зрения.

  1. Точка зрения должна соответствовать цели моделирования;

  2. Модель должна строиться с единой точки зрения.

Основные элементы нотации IDEF0

  1. Работа Activity – поименованный процесс, функция или задача. Изображается в виде прямоугольника. Наименование это отглагольная форма.

  2. Дуги или стрелки. Описывает взаимодействие между собой и внешним миром. Дуги именуется существительными.

Типы дуг:

  1. Вход (input) – материал или информация, которая используется (преобразовывается) функцией. Блок может не иметь ни одной входной дуги.

  2. Управление – правила, стратегии, стандарты, которые влияют на выполнение работы. Каждая работа должная иметь хотя бы одну дугу управления.

  3. Выход output – результат выполнения функции. Каждая работа должна иметь хотя бы одну дугу.

  4. Механизм – ресурсы, с помощью которых выполняется работа.

  5. Вызов. Стрелка указывает на другую модель.

Виды дуг:

  1. Граничные. Служат для описания взаимодействия системы с окружающим миром. ICOM-код. Он состоит из двух систем: символа и числа.

  2. Внутренние. Используются для связи работ между собой. Физически это наборы данных.

Иерархия:

Моделируемую систему строят иерархию диаграмм. Диаграммы каждого следующего уровня уточняют структуру предыдущего.

Построение модели начинают с единственного блока.

Каждая подфункция может использовать только те данные, которая используется в родительской функции, тем самым сохраняется целостность системы.

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

Доминирования – влияние одного блока на другой.

Все диаграммы связаны друг с другом иерархической нумерацией блоков.

Виды влияния блоков

  1. Прямая связь по входу. Выход блока подается на вход блока с меньшим доминированием.

  2. Прямая связь по управлению. Выход блока подается на управление блока с меньшим доминированием.

  3. Обратная связь по входу. Выход блока подается на вход блока с большим доминированием.

  4. Обратная связь по управлению. Выход блока подается на управление блока с большим доминированием.

  5. Связь выход механизм. Выход блока подается на механизм блока с меньшим доминированием.

Ветвление дуг.

Дуги могут:

  1. Ветвиться. Ветвление означает что вся информация или ее часть могут использоваться в каждом ответвлении. Дуга помечается до ветвления, чтобы идентифицировать передаваемый набор данных. Если ветвь дуги после ветвления не помечена, то считается, что ветвь содержит весь набор данных, иначе содержание ветви необходимо уточнить.

  1. Объединяться.

Туннелированние стрелок.

  1. Квадратное. Нарушение преемственности между уровнями диаграмм.

  2. Используется для изображения малозначимых стрелок.

Основные правила IDEF0- моделирования

  1. Ограничение количества блоков на каждом уровне декомпозиции (3-6 блоков).

  2. Связность диаграмм (наличие номеров у блоков).

  3. Уникальность наименований.

  4. Разделение входов и управления (правило уведомления ролей данных).

Виды IDEF0 диаграмм:

  1. Диаграммы AS-IS (как есть). Функциональная модель существующих процессов. Анализ данной модели позволяет обнаружить наиболее слабые места, существующей организации процессов.

  2. Диаграммы TO-BE (как должно быть). Функциональная модель описывающая новую организацию процессов с учетом недостатков выделенных в AS-IS модели.

ЭТИ ДИАГРАММЫ НИЧЕМ НЕ ОТЛИЧАЮТСЯ

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]