Опубликован: 20.07.2007 | Доступ: свободный | Студентов: 765 / 147 | Оценка: 4.30 / 4.06 | Длительность: 09:58:00
Специальности: Программист
Лекция 6:

Выработка концепции. Планирование

< Лекция 5 || Лекция 6: 123 || Лекция 7 >
2.5.2. Концепция решения

Концепция решения (solution concept) предоставляет общее описание подходов, которые проектная группа предполагает использовать для разрешения проблем и/или удовлетворения потребностей заинтересованных сторон.

Цели и Задачи

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

В нашем случае цели системы:

  • работать с аэропортами и рейсами;
  • подобрать клиенту оптимальный маршрут.

Задачи системы:

  • решать однокритериальную задачу поиска кратчайших путей на графах (критерий - цена);
  • работать с базой данных аэропорта;
  • бронировать билеты;
Предположения и Ограничения

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

В нашем случае на первую вариант системы накладываются следующие ограничения:

  • система не является распределенной;
  • нет разграничения прав между менеджерами и пользователями;
  • интерфейс системы представлен в одном окне;
  • система должна наглядно демонстрировать формы и способы хранения и взаимодействия данных.
Пользователи

Основой формулировки требований является анализ использования, включающий определение пользователей (users) и описание того, как пользователи будут взаимодействовать с решением.

В системе будет две группы пользователей:

  • Менеджеры аэропорта
  • Покупатели билетов
Сценарии использования

Сценарии использования (usage scenarios) определяют последовательности действий, которые пользователи выполняют при взаимодействии с решением. MSF не специфицирует явным образом способы описания сценариев использования. Один из возможных (и достаточно распространенных) вариантов - язык UML.

Начнем с диаграммы использования.


Рис. 6.1a.

Затем расшифруем отдельные сценарии.


Рис. 6.1b.
2.5.3. Рамки

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

Рамки решения (solution scope) определяют функциональность решения и его возможности (включая те, что не относятся к программному обеспечению). Возможность (функциональность, составляющая, feature) - это требуемый или желаемый аспект программного или аппаратного обеспечения. Например, предварительный просмотр перед печатью может быть возможностью текстового процессора; шифрование почтовых сообщений - возможностью почтовой программы. Сопроводительные руководства пользователей, интерактивные файлы помощи, операционные руководства и обучение также могут быть составляющими решения.

Рамки проекта (project scope) определяют объем работ, который должен быть выполнен проектной группой для поставки заказчику каждого из элементов, определенного рамками решения.

Функциональность решения
  • Хранилище находится в оперативной памяти
  • Добавление аэропортов по нажатию кнопки
    • Проверка корректности введеных данных
      • Проверка существования аэропорта с введенным номером
    • Создание визуальной формы для отображения аэропорта
  • Добавление рейсов
    • Проверка корректности введены данных
    • Проверка существования рейса с введенным номером
    • Проверка на существование аэропортов рейса
  • Добавление в визуальные формы аэропортов информации о добавленных рейсах
  • Удаление аэропортов
  • Удаление всех сопутствующих рейсов
  • Удаление рейсов
  • Поиск минимального по стоимости маршрута
  • Заказ билетов на найденные маршруты
< Лекция 5 || Лекция 6: 123 || Лекция 7 >