Компонентная модель организации программных систем. Семакин М.М. - 13 стр.

UptoLike

Составители: 

13
7. ПРИМЕР ДЕКОМПОЗИЦИИ ЗАДАЧИ И ОПИСАНИЯ
СБОРКИ КОМПОНЕНТОВ В СИСТЕМУ
7.1. Техническое задание
Задача: написать двумерный редактор сплайна и обеспечить максимальную уни-
версальность для расширения.
Характерные особенности и технические требования:
1. Сплайн представляет собой кривую третьего порядка в форме Эрмита.
2. Экспорт/импорт сплайна в текстовый файл определенного формата.
3. Возможность добавлять/изменять/удалять узлы сплайна.
4. Возможность изменять вектора (модуль и направление)
касательных слева и
справа в узлах сплайна.
5. Автоподбор значений касательных, исходя из условия гладкости и непрерывно-
сти кривой.
6. Режим: скрыть/показать узлы.
7. Режим: скрыть/показать касательные.
8. Цветовое выделение элементов сплайна (узлы, касательные, кривая).
Все перечисленные возможности должны поддерживаться как диалогом, так про-
граммным интерфейсом.
7.2. Декомпозиция задачи
На этапе декомпозиции задачи необходимо определить:
1) инвариантные (системные) и задачные компоненты;
2) используемые библиотеки функций;
3) какая часть кода будет реализована средствами языка сборки.
К инвариантным относятся все компоненты задействующие наиболее общие меха-
низмы, присущие большинству задач:
y ввод/вывод;
y пользовательский диалог;
y доступ к базам данных;
y
распределенный (сетевой) доступ;
y а также другие компоненты.
Задачные компоненты характерны именно для данной задачи, по крайней мере, на
данном уровне систематизации компонентов.
В качестве библиотечных выносятся только те функции, которые не влияют на
внутренние данные компонентов и, наоборот, в компоненте реализуются только методы,
непосредственно влияющие на его состояние, либо
выдающие информацию компоненте.
Исходя из технического задания, удобно поделить представление сплайна на четы-
ре слоя (вида):
1. Общее информационное представление.
2. Графическое представление (вывод на экран).
3. «Статический интерфейс» (диалог с пользователем на основе: кнопок, полей
ввода текста, переключателей, и т.п.).
        7. ПРИМЕР ДЕКОМПОЗИЦИИ ЗАДАЧИ И ОПИСАНИЯ
             СБОРКИ КОМПОНЕНТОВ В СИСТЕМУ
      7.1. Техническое задание
      Задача: написать двумерный редактор сплайна и обеспечить максимальную уни-
версальность для расширения.

      Характерные особенности и технические требования:
      1. Сплайн представляет собой кривую третьего порядка в форме Эрмита.
      2. Экспорт/импорт сплайна в текстовый файл определенного формата.
      3. Возможность добавлять/изменять/удалять узлы сплайна.
      4. Возможность изменять вектора (модуль и направление) касательных слева и
         справа в узлах сплайна.
      5. Автоподбор значений касательных, исходя из условия гладкости и непрерывно-
         сти кривой.
      6. Режим: скрыть/показать узлы.
      7. Режим: скрыть/показать касательные.
      8. Цветовое выделение элементов сплайна (узлы, касательные, кривая).

      Все перечисленные возможности должны поддерживаться как диалогом, так про-
граммным интерфейсом.


      7.2. Декомпозиция задачи
      На этапе декомпозиции задачи необходимо определить:
      1) инвариантные (системные) и задачные компоненты;
      2) используемые библиотеки функций;
      3) какая часть кода будет реализована средствами языка сборки.

      К инвариантным относятся все компоненты задействующие наиболее общие меха-
низмы, присущие большинству задач:
      y ввод/вывод;
      y пользовательский диалог;
      y доступ к базам данных;
      y распределенный (сетевой) доступ;
      y а также другие компоненты.

      Задачные компоненты характерны именно для данной задачи, по крайней мере, на
данном уровне систематизации компонентов.

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

       Исходя из технического задания, удобно поделить представление сплайна на четы-
ре слоя (вида):
       1. Общее информационное представление.
       2. Графическое представление (вывод на экран).
       3. «Статический интерфейс» (диалог с пользователем на основе: кнопок, полей
           ввода текста, переключателей, и т.п.).


                                         13