Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

08-requirements

.pdf
Скачиваний:
5
Добавлен:
17.03.2015
Размер:
105.51 Кб
Скачать

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Проектирование Сценариев Использования

Васильев Андрей

ЯрГУ, Россия

09.03.2012

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Структура практических работ

Создание сценариев использования приложения и функциональной спецификации

Реализация одного модуля/сценария использования

Реализация второго модуля/сценария использования

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Моделирование предметной области

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

Создание словаря предметной области

Выявление связей между элементами

Является основой для создания других документов

Рассмотрим 10 принципов моделирования предметной области.

Рассматривайте объекты реального мира

Объекты реального мира меняются гораздо реже, чем требования к ПО

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Принципы моделирования. Продолжение

Используйте отношения между объектами

Основные типы отношений между объектами

Обобщение, блокнот есть средство записи данных

Агрегация, у книги есть обзор

Ограничьте время моделирования

Процесс моделирования предметной области - итеративный. В первую итерацию за несколько часов можно выделить до 80% элементов предметной области.

Выделите основные элементы

И постройте модель взаимоотношений вокруг этих элементов

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Принципы моделирования. Продолжение

Предметная область != Модель данных

Не каждый элемент ПО представляет данные

Даже если это данные, не обязательно прямое соотношение

Элемент предметной области != Таблица

Предметная область = словарь проекта

Двусмысленные требования и определения главный враг при разработке ПО

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Принципы моделирования. Продолжение

Начните с моделирования предметной области

Имея МПО будет в разы легче составлять другие документы и общаться с заказчиком

Модель ПО != Структура классов

Структура классов будет включать в себя различные сервисные классы, но должно быть реально найти соотношение между ними

Средства отображения не входят в МПО

Не включайте в модель предметной области "виды" приложения и другие GUI-специфические вещи.

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Пример описания предметной области

Stock

Book List

Book Catalog

Book

Master Book Catalog

Mini-catalog

Book Review

Category

Editorial Review

Reader Review

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Зачем описывать сценарии

Сценарии использования

Выделяют ключевых персонажей сценария

Показывают действия пользователя во времени

Показывают реакцию системы во времени

Помогают оценить возможные проблемы

Сценарии использования базируются на описании и в контексте модели предметной области и помогают её улучшить

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Принципы составления сценариев использования

Делайте описание сценариев кратким

Описание сценария использования, включая альтернативные пути, должно умещаться в 2-3 абзаца Ответьте на следующие вопросы:

Что происходит?

Что происходит далее? (Повторить)

Как иначе это могло произойти?

.

.

.

.

.

.

Описание предметной области

Написание сценариев использования

Лабораторная работа №1

Сценарии использования

Используйте диаграммы сценариев

Отображайте агентов: пользователей, внешние системы...

Связывайте сценарии с агентами: агент является центральной фигурой сценария

Сценарий может быть связан с несколькими агентами

Формулируйте текст в активном залоге

Пассивный залог скрывает действия агента и реакцию системы

.

.

.

.

.

.