Разработка контента курса дистанционного обучения "DB2 универсальная база данных", страница 15

2.5.2.4. Определение деятельности внутри подсистем

Теперь построим диаграмму активности для одного из разделов курса "Средства платформы Java для создания WEB - приложений" (Рис. 2.29). Она показывает прохождение раздела курса обучаемым, при этом показаны все работы (методы), которые должен изучить слушатель в данном разделе:

Рис. 2.29 Изучение раздела курса "Средства платформы Java для создания WEB - приложений"

Рис. 2.29 (продолжение)


2.5.2.5. Создание модульной структуры контента дистанционного курса обучения

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

В основу подхода к определению модульной структуры курса положена метамодель на языке UML (Рис. 2.30):

Рис. 2.30 Метамодель модульной структуры

 Элементами метамодели, описываемыми в виде классов, являются:

- модули;

- работы (действия), которые необходимо выполнить для изучения конкретного модуля;

- объекты, входящие в состав модуля (определенные ранее классы);

- связи между модулями, которые классифицируются на связи порядка следования, организационно-структурные связи и зависимости.

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

Организационно-структурные связи, устанавливаемые между модулями, определяют модульную структуру с точки зрения подчиненности (вложенности) одних модулей другим. В данном случае, можно выделить три типа связей: ассоциация, агрегация и наследование (обобщение). Ассоциация (Association)  - структурное отношение, описывающее совокупность связей между объектами.

Разновидностью ассоциации является агрегация (Aggregation) – структурное отношение между целым и его частями.

Обобщение/наследование (Generalization) – это отношение, при котором объект специализированного элемента (потомок) может быть подставлен вместо объекта обобщенного элемента (родителя или предка). Потомок наследует структуру и поведения своего родителя.

Зависимости - это семантическое отношение между двумя сущностями, при котором изменение в одной сущности (независимая сущность) может воздействовать на семантику другой (зависимой) сущности. Существует несколько типов зависимостей (они будут рассмотрены позднее).

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

Модульная структура курса представлена на рисунке 2.31:

Рис. 2.31 Модульная структура курса

Из данной диаграммы (Рис. 2.31) видно, что курс разделен на 13 модулей: архитектура клиент-сервер,  HTML страница, технология серверного Web программирования, исполнение приложения, среда разработки, платформа Java, сервлет, jsp страница, JDBC, соединение с БД, хранимая процедура, технология EJB, использование EJB.

Между собой модули связаны следующими зависимостями:

- зависимость делегирования полномочий - модуль 1 разрешает модулю 2 выполнять определенные действия над указанными объектами.

- зависимость правила видимости данных - результаты выполнения действий объектов модуля 1 становятся видимыми модулю 2.

- зависимость ответственности за выполняемые действия - модуль 1 передает объектам модуля 2 ответственность за действия, выполняемые объектами модуля 1 над указанными данными.

- зависимость правила видимости действий -  действия, выполненные объектами модуля 1, становятся видимыми модулем 2.

- групповая зависимость - модули 1,2...n имеют групповую зависимость, когда все модули должны быть пройдены, если хотя бы один модуль не пройден, то вся группа считается не пройденной. Этот вид зависимость объединяет модули по уровням знаний обучающихся (будут представлены ниже).