Опорные точки зрения

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

Различные методы предлагают разные трактовки выражения "точка зрения". Точки зрения можно трактовать следующим образом.

1. Как источник информации о системных данных. В этом случае на основе опорных то­чек зрения строится модель создания и использования данных в системе. В процес­се формирования требований отбираются все такие точки зрения ( и на их основе определяются данные), которые будут созданы или использованы при работе систе­мы, а также способы обработки этих данных.

2. Как структура представлений. В этом случае точки зрения рассматриваются как особая часть модели системы. Например, на основе различных точек зрения могут разрабатываться модели "сущность-связь", модели конечного авто­мата и т.д.

3. Как получатели системных сервисов. В этом случае точки зрения являются внешними (относительно системы) получателями системных сервисов. Точки зре­ния помогают определить данные, необходимые для выполнения системных сер­висов или их управления.

Наиболее эффективным подходом к анализу таких систем является использование внешних опорных точек зрения. На основе этого подхода разработан метод VORD (Viewpoint-Oriented Requirements Definition — определение требований на основе точек зрения) для формирования и анали­за требований. Основные этапы метода VORD показаны на рис. 2.:

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

2. Структурирование точек зрения — создание иерархии сгруппированных точек зре­ния. Общесистемные сервисы предоставляются более высоким уровням иерархии и наследуются точками зрения низшего уровня.

3. Документирование опорных точек зрения, которое заключается в точном описании идентифицированных точек зрения и сервисов.

4. Отображение системы точек зрения, которая показывает системные объекты, оп­ределенные на основе информации, заключенной в опорных точках зрения.

Рис. 2. Метод VORD

Пример. Рассмотрим использование метода VORD на первых трех шагах анализа требований для системы системы поддержки заказа и учета товаров в бакалейной лавке. В бакалейной лавке для каждого товара фиксируется место хранения (определенная полка), количество товара и его поставщик. Система поддержки заказа и учета товаров должна обеспечивать добавление информации о новом товаре, изменение или удаление информации об имеющемся товаре, хранение (добавление, изменение и удаление) информации о поставщиках, включающей в себя название фирмы, ее адрес и телефон. При помощи системы составляются заказы поставщикам. Каждый заказ может содержать несколько позиций, в каждой позиции указываются наименование товара и его количество в заказе. Система по требованию пользователя формирует и выдает на печать следующую справочную информацию:

· список всех товаров;

· список товаров, имеющихся в наличии;

· список товаров, количество которых необходимо пополнить;

· список товаров, поставляемых данным поставщиком.

Первым шагом в формировании требований является идентификация опорных точек зрения. Во всех методах формирования требований, основанных на использовании точек зрения, начальная идентификация является наиболее трудной задачей. Один из подходов к идентификации точек зрения — метод "мозговой атаки", когда определяются потенци­альные системные сервисы и организации, взаимодействующие с системой. Организуется встреча лиц, участвующих в формировании требований, которые предлагают свои точки зрения. Эти точки зрения представляются в виде диаграммы, состоящей из ряда круговых областей, отображающих возможные точки зрения (рис. 4). Во время "мозговой атаки" необходимо идентифицировать потенциальные опорные точки зрения, системные сервисы, входные данные, нефункциональные требования, управляющие события и исключительные ситуации.

Следующей стадией процесса формирования требований будет идентификация опорных точек зрения (на рис. 3 показаны в виде темных круговых областей) и сервисов (показаны в виде затененных областей). Сервисы должны соответствовать опорным точкам зрения. Но могут быть сервисы, которые не поставлены им в соответствие. Это означает, что на начальном этапе "мозговой атаки" некоторые опорные точки зрения не были идентифицированы.

Рис. 3. Диаграмма идентификации точек зрения

В таблице 1 показано распределение сервисов для некоторых идентифицированных на рис. 3 точек зрения. Один и тот же сервис может быть соотнесен с несколькими точками зрения.

Таблица 1 - Сервисы, соотнесенные с точками зрения

клиент постоянный покупатель товар поставщик продавец администратор
Проверка наличия товара Получение скидки Прием товара Занесение в базу данных (название, адрес, телефон и т.д.) Продажа товара Доступ к базе данных
Покупка товара Получение информацию о новых поступлениях Занесение в базу данных (данные о поставщике, кол-ве, месте хранения и.д.)   Печать чека Проверка статистики
Получение чека   Назначение цены   Доступ к каталогу Переопределение цены
Заказ товара   Переопределение цены   Проверка наличия товара Оформление заказа поставщику
Занесение покупателя и суммы покупки в базу данных   «Покупаемый» или «непокупаемый» товар   Оформление заказа покупателю Печать заказа

Информация, извлеченная из точек зрения, используется для заполнения форм шаб­лонов точек зрения и организации точек зрения в иерархию наследования. Это позволяет увидеть общие точки зрения и повторно использовать информацию в иерархии наследо­вания. Сервисы, данные и управляющая информация наследуются подмножеством точек зрения. На рис. 4 показана часть иерархии точек зрения для системы поддержки заказа и учета товаров.

Рис. 4 Иерархия точек зрения