Помощь в написании студенческих работ
Антистрессовый сервис

Синтез методов декомпозиции систем

РефератПомощь в написанииУзнать стоимостьмоей работы

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

Синтез методов декомпозиции систем (реферат, курсовая, диплом, контрольная)

Выбор классов представляет собой компромиссное решение, и, соответственно, не существует понятий «совершенная структура классов» и «правильный выбор объектов».

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

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

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

Опишем подход к разработке формального метода идентификации классов и объектов на основе синтеза структурного и объектно-ориентированного анализа.

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

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

Эти средства охватывают три независимых системных представления: процесс, данные и динамику (или управление) (рис. 5.1).

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

С точки зрения применимости для идентификации объектов три выбранных независимых системных представления характеризуются следующими свойствами.

  • • Диаграммы «сущности-связи» (ERD) — сущности представляют объекты, а атрибуты этих сущностей — данные, которые, в конечном счете, должны хранится в объектах. Связи между сущностями определяют создание ассоциативных объектов. ERD сложны для идентификации объектов, не хранящих данные; в эту категорию попадают объекты, распознающие происхождение событий или осуществляющие функцию контроля.
  • • Модели потоков данных — помогают установить границы системы, что удобно с точки зрения системного анализа. Внешние сущности, идентифицированные в контекстной диаграмме, представляют первичный источник или конечный приемник потока данных и являются кандидатами в объекты.
  • • Модели «события-ответы» (как форма модели «состоянияпереходы») — событийный компонент этих моделей помогает идентифицировать множество распознающих события объектов.
Основные аспекты программной системы.

Рис. 5.1. Основные аспекты программной системы

Для обозначения совокупности этих трех моделей, применимых к процессу анализа системы, используем термин, введенный Э. Йорданом: 3-View Modeling [31].

Используемые в 3VM независимые системные представления относятся к различным методикам проектирования. Схема отношений выбранных системных представлений к разным методам представлена на рис. 5.2.

Дополним метод информационного анализа проектируемых систем лингвистической составляющей. Применение лингвистических принципов к процессу анализа программных систем принято обозначать как Linguistic-based Information Analysis (LIA) — лингвистический информационный анализ. Этот метод позволяет выявлять объекты и идентифицировать компоненты объекта как такового.

Отношение составляющих 3VM к различным методикам проектирования.

Рис. 5.2. Отношение составляющих 3VM к различным методикам проектирования.

Используем два метода лингвистического информационного анализа:

  • • Частотный анализ фраз (Phrase Frequency Analysis — PFA) — поиск в выбранном текстовом ресурсе описания проблемной области для идентификации терминов, которые могут обозначать понятия области приложения.
  • • Матричный анализ (Matrix Analysis — МА) — применяется только после идентификации исходных объектов. Это таблица, строки и столбцы которой представляют собой понятия области приложения, обычно генерирующие исходное множество идентифицированных объектов. МА помогает найти объекты, которые не были выделены при первоначальном применении PFA.

Следует отметить, что метод PFA отличен от метода, применяемого при моделировании данных, когда имена существительные и глаголы идентифицируются как вероятные сущности и атрибуты. При частотном анализе фраз идентифицируются понятия, а не грамматические единицы, поскольку идентификация по типу «имя существительное/глагол» субъективна (например, слова в английском языке часто выступают в роли и существительного, и глагола).

Таким образом, предлагаемая методика идентификации объектов и классов является результатом синтеза модельного и лингвистического информационного анализа систем.

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

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

Таким образом, использование лингвистического информационного анализа совместно с таблицей конвертации приводит к объектно-ориентированной методике проектирования, так как понятия, выделенные на этапе PFA, классифицируются в таблице по объектному подходу.

Схема взаимосвязи описанных методик поиска и идентификации объектов и классов представлена на рис. 5.3.

Приведем примеры некоторых этапов практического применения описанного подхода к идентификации классов и объектов для компьютерной обучающей системы.

В результате анализа первичных документов для проектирования компьютерной обучающей системы была построена диаграмма потоков данных (Data Flow Diagram — DFD) (рис. 5.4). Следует помнить, что диаграммы потоков данных представляют собой скорее описание проекта, чем модель системы. И если модель столь очевидно ориентирована на алгоритмическую декомпозицию, в дальнейшем по этой модели очень трудно будет построить объектно-ориентированную систему. Поэтому, еще раз подчеркнем, что диаграммы потоков данных здесь являются не конечным продуктом, а инструментом разработчика. Они отражают существенные черты и достаточно независимы от системы.

Взаимосвязь методик идентификации объектов и классов.

Рис. 5.3. Взаимосвязь методик идентификации объектов и классов

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

Диаграмма потоков данных компьютерной обучающей системы.

Рис. 5.4. Диаграмма потоков данных компьютерной обучающей системы

Диаграмма «сущность-связь» для проектируемой компьютерной обучающей системы отображает реальные и воображаемые объекты, имеющие существенное значение для предметной области разработки (рис. 5.5).

Диаграмма «Сущность-связь» для компьютерной обучающей системы.

Рис. 5.5. Диаграмма «Сущность-связь» для компьютерной обучающей системы.

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

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

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

В соответствие с методикой идентификации 3VM на последующих этапах анализа необходимо построить модели «состоянияпереходы», основой которых являются диаграммы состояний прсцедентов для компьютерной обучающей системы. Например, эти диаграммы могут быть построены для следующих прецедентов:

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

На рис. 5.6 представлена диаграмма «состояния-переходы» для одного из прецедентов проектируемой компьютерной обучающей системы.

Диаграмма «состояния-переходы» для прецедента «Работа с тестом».

Рис. 5.6. Диаграмма «состояния-переходы» для прецедента «Работа с тестом».

Анализ диаграмм позволяет идентифицировать множества распознающих события объектов.

Выделенные на этапе 3VM потенциальные объекты переносятся в список понятий, который подлежит подробному анализу на этапе применения метода PFA и переводу в таблицу конвертации. Для составления списка понятий могут быть использованы:

  • • понятия, выявленные на этапе применения методики 3VM;
  • • документ-концепцию компьютерной обучающей системы;
  • • документ описания требований для компьютерной обучающей системы.

Этот первоначальный список понятий может быть достаточно обширным, например:

Студент.

Учебные материалы.

Момент времени.

Преподаватель.

Тест.

Новые учебные материалы.

Методист.

Тренажер

Новые тесты.

Администратор

Оценка успеваемости.

Согласование.

Лекция.

Знания студентов.

Руководство.

Возможность.

Успехи студентов.

Электронный документ.

Журнал изменений.

Журнал успеваемости.

Контроль знаний.

Запись об изменении.

Записи о результатах.

Журнал посещений.

Профиль.

тестирования.

Запись о посещении.

Права доступа.

Тестовое задание.

Запрос на обновление.

Ответ на вопрос.

Предмет.

Пользователь.

Правильный ответ.

Тема лекции.

Автор записи.

Неправильный ответ.

Время записи.

Место остановки пользова;

Очередь запросов.

Учебник.

теля.

Ответ.

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

  • (0) — не применим; возможно, иррелевантен; находится вне контекста заданной системы и т. д.;
  • (1) — потенциальный объект-класс;
  • (2) — возможно, часть подтиповой/надтиповой структуры; включает в себя отношения типа «род-вид» и «целое-часть»;
  • (3) — возможно, описывает атрибут объекта-класса или отношение элемента;
  • (4) — возможно, описывает службу объекта;
  • (5) — особая реализация; потенциальный элемент компонента области проблемы;
  • (6) — потенциальный элемент компонента взаимодействия с пользователем;
  • (7) — потенциальный элемент компонента управления задачей;
  • (8) — потенциальный элемент компонента управления данными.

Таблица 5. /.

Таблица конвертации

Элемент.

Комом гарий.

Студент.

*.

*.

Вариант доступа к системе.

Преподаватель.

*.

*.

Вариант доступа к системе.

Методист.

*.

*.

Вариант доступа к системе.

Администратор

*.

Вариант доступа к системе.

Лекция.

*.

*.

Ответ.

*.

Журнал изменений.

*.

База для записей изменения.

Запись об изменении.

*.

*.

Профиль.

*.

Права доступа.

*.

Варианты доступа.

Ответ на вопрос.

*.

Атрибут тестового задания.

Правильный ответ.

*.

Атрибут тестового задания.

Неправильный ответ.

*

Атрибут тестового задания.

Очередь запросов.

*.

Содержит совокупность данных о запросах.

Учебный материал.

*

Атрибут лекции.

Тест.

*.

*.

Тренажер

*.

Оценка успеваемости.

*.

Атрибут записи о результате тестирования.

Знания студентов.

Успехи студентов.

*.

Журнал успеваемости.

*.

Список записей о результатах тестирования сгудснтов.

Записи о результатах тестирования.

*.

Тестовое задание.

*.

*.

Учебная дисциплина.

*.

Атрибут учебника.

Тема лекции.

*.

Атрибут лекции.

Время записи.

*.

Атрибут записей.

Учебник.

*.

*.

Продолжение таблицы 5.1.

И.

Момент времени.

*.

Новые учебные материалы.

*.

Один из видов лекций.

Новые тесты.

*.

Один из видов тестов.

Согласование.

*.

Руководство.

*.

Электронный документ.

*.

Контроль знаний.

*.

Повторяет тестирование.

Журнал посещений.

*.

Список записей о результатах работы студентов с учебником.

Запись о посещении.

*.

*.

Запрос на обновление.

*.

Пользователь.

*.

Тавтология.

Автор записи.

*.

Атрибут записей.

Место остановки пользователя.

*.

Атрибут записи о посещении.

В результате анализа таблицы конвертации можно идентифицировать следующие объекты:

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

Анализ этой таблицы конвертации также позволяет идентифицировать набор начальных атрибутов, например: время записи, тема лекции, оценка успеваемости, учебный материал, неправильный ответ, правильный ответ, ответ на вопрос.

В дальнейшем подробный анализ даст возможность расширить этот первоначальный набор атрибутов и избавиться от ошибочных вариантов. Например, исключить избыточные понятия, которые нс несут смысловой нагрузки, присущей объектам, классам и их атрибутам, такие как:

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

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

  • • студент;
  • • администратор;
  • • методист;
  • • преподаватель;
  • • пользователь.

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

Результатом такого рода анализа будет построение модели предметной области, которая представляется в виде диаграммы классов без дополнительного указания атрибутов, мощностей (кратностей) связей, операция и т. д. (рис. 5.7).

На этой диаграмме присутствуют только схематические отображения объектов-классов и предварительные связи между ними, которые строятся на основании описания требований.

Таким образом, для идентификации классов и объектов компьютерной обучающей системы осуществляются следующие этапы:

  • 1. Построение и системный анализ моделей потоков данных.
  • 2. Построение и системный анализ моделей «сущность-связь».
  • 3. Построение и системный анализ моделей «состояниспспсхол» для всех поецедентов системы.
  • 4. Применение методик LIA для анализа ранее выделенных потенциальных объектов и классов.
  • 5. Анализ документа-концепции и описания требований с применением методик LIA для определения списка понятий предметной области.
Модель предметной области КОС (объекты и классы идентифицированы по методикам 3VM и LIA).

Рис. 5.7. Модель предметной области КОС (объекты и классы идентифицированы по методикам 3VM и LIA).

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

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

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

Показать весь текст
Заполнить форму текущей работой