Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Учебник по ТООМ - файл УП_ООМ_5.doc


Учебник по ТООМ
скачать (4180 kb.)

Доступные файлы (1):

УП_ООМ_5.doc7283kb.30.03.2006 01:55скачать

содержание
Загрузка...

УП_ООМ_5.doc

1   ...   5   6   7   8   9   10   11   12   13
Реклама MarketGid:
Загрузка...
^

Список литературы


  1. Трахтенгерц

  2. Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS. 2-е изд./ Пер. с англ.: Под общей редакцией проф. С. Орлова- СПб.: Питер, 2006.-736 с.:ил.

  3. Общая алгебра. Т. 2/ В. Артамонов, В.Н.Салий, Л.А.Скорняков и др. Под общ. Ред. Л.А.Скорнякова.-М.: Наука. Гл. ред. Физ.-мат. Лит., 1991. –480 с.

  4. Вагин В.Н. Дедукция и обобщение в системах принятия решений. – М.: Наука, Гл. ред. физ.-мат. лит.; 1988, - 384 с.

  5. Буч Г., Рамбо Д., Якобсон А. Язык UML. Руководство пользователя: Пер. с англ. – М.: ДМК, 2000. 432 с.: ил.

  6. Кватрани Т. Rational Rose 2000 и UML. Визуальное моделирование: Пер. с англ. – М.: ДМК Пресс, 2001. – 176 с.: ил.

  7. Ларман К. Применение UML и шаблонов проектирования.: Пер. с англ. : Уч. Пос. – М.: Издательский дом «Вильямс», 2001. – 496 с.: ил.

  8. Трофимов С.А. Case- технологии: практическая работа в Rational Rose – М.: ЗАО «Издательство БИНОМ», 2001 г. – 272 с.: ил.

  9. А. Новичков. Эффективная разработка программного обеспечения с использованием технологий и инструментов компании RATIONAL. www.interface.com

  10. Case Studies in Object Oriented Analysis and Design. E. Yourdon, C. Argila. Copyright 1996 by Prentice-Hall PTR. Prentice-Hall, Inc. A Simon & Schuster Company. Upper Saddle River, New Jercey 07458, p.264.

  11. Коналлен Дж. Разработка Web – приложений с использованием UML. :Пер. с англ. – М.:Издательский дом «Вильямс»., 2001. – 288 с.: ил.

  12. Рамбо Дж., Якобсон А., Буч Г. UML: специальный справочник] – СПб.: Питер, 2002. – 656 с.: ил..

  13. Проблемы управления сложными объектами в проблемных ситуациях на основе инженерии знаний. / Р.А.Бадамшин, Б.Г.Ильясов, Л.Р.Черняховская. – М.: Машиностроение, 2003. – 240 с.



Приложение




^

6.2. Возможности JADE


Для достижения этой цели JADE предлагает програмисту-разработчику агентных систем следующие возможности:

  • FIPA-compliant Agent Platform – агентная платформа, основанная на FIPA и включающая обязательные типы системных агентов: AMS, ACC и DF. Эти три типа агентов автоматически активируются при запуске платформы.

  • ^ Distributed Agent Platform – распределенная агентная платформа, которая может использовать несколько хостов, при чем на каждом узле запускается только одна Java Virtual Machine. Агенты имплементируются как Java-потоки. В зависимости от местонахождения агента, посылающего сообщение, и того, кто его получает, для доставки сообщений используется соответствующий транспортный механизм.

  • ^ Multiple Domains support – ряд основанных на FIPA DF-агентов могут объединится в федерацию, таким образом имплементируя мультидоменную агентную среду.

  • Multithreaded execution environment with two-level scheduling. Каждый JADE-агент имеет собственный поток управления, но он также способен работать в многопотоковом режиме. Java Virtual Machinе проводит планирование задач, исполняемых агентами или одним из них.

  • ^ Object-оriented programming environment. Большинство концепций, свойственных FIPA-спецификации, представляются Java-классами, формирующими интерфейс пользователя.

  • Library of interaction protocols. Используются стандартные интерактивные протоколы fipa-request и fipa-contract-net. Для того, чтобы создать агента, который мог бы действовать согласно таким протоколам, разработчикам прикладных программ нужно только имплементировать специфические домен¬ные действия, в то время как вся независимая от прикладной программы протокольная логика будет осуществляться системой JADE.

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

6.3. Прототип реализации агентной системы КСПДО


Пусть с помощью UML была разработана модель КСПДО агентного типа, диаграмма архитектуры которой показана на рисунке 9, где:




Рис.9. Модель КСПДО агентного типа.


  • Student – компьютер студента, который использует мобильный агент для обучения;

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

  • Internet – группа устройств, предоставляющих доступ к глобальной сети Интернет;

  • Mobile Agent Server – сервер мобильных агентов;

  • Lockal Network – устройства локальной сети, обеспечивающие связь серверов;

  • DataBase Server – сервер БД (например, MS SQL Server 2000, Oracle9i, DB/2 Sybase), который содержит информацию о предметах, студентах и т.п.;

  • File Server – файловый сервер, хранит все материалы и контрольные работы.




Рис.10. Deployment Diagram. Диаграмма физической структуры системы.


  • Server.ServerMA – класс, использующий атрибуты классов Server.DBOperation, Server.FSOperation, Server.ControllerMA и использует их для своей работы;

  • Server.DBOperation – класс, реализующий операции работы с базой данных и содержит такие методы как ^ SaveInfoAboutStudent(), SaveControlWork(), SaveInfo() и объединяется с операцией агрегации с классом Server.ServerMA . Класс содержит атрибуты, определяющие статус соединения агентов с сервером мобильных агентов;

  • Server.ControllerMA – класс, реализующий управление очередью, которую обслуживает Server.DispetcherMA ;

  • Server.DispetcherMA – класс, который планирует приоритет в очереди агентов^ MAgent.Stu¬dyMA, MAgent.MessageMA, MAgent.MailMA, MAgent.SearchMA . Отметим, что самый высокий приоритет имеет агент, который передает сообщения MAgent.Mes¬sageMA ; потом идет MAgent.StudyMA , реализующий обучение студента, его тестирование и общается как со студентом, так и с преподавателем; следующим по приоритету идет MAgent.SearchMA , выполняющий поиск материалов на сервере дистанционного обучения или в Интернет;

  • jade.wrapper.Agent – абстрактный класс, связанный операцией наследования с классами мобильных агентов. Он относится к стандартной библиотеке классов JADE. Содержит множество методов, ответственных за операции с агентами;

  • jade.wrapper.AgentController – интерфейс, определяющий те методы, которые позволено контролировать JADE-агенту. Он содержит в себе такие методы: activate() – активирует агента, который по каким-то причинам прекратил свою работу;getName() – получает имя платформы агента; getState() – получает состояние агента; kill() – уничтожает агента; start() – запускает агента; suspend() – прерывает работу агента на некоторое время;

  • jade.wrapper.AgentContainer – этот класс является proxy классом, который позволяет обращаться к контейнеру JADE-агента. acceptNewAgent() – метод, позволяющий добавлять агента в контейнер; getState() – возвращает экземпляр состояния платформы; resume() - активирует агентную платформу.

  • jade.content.OntoACLMessage – обеспечивает работу с ACL-сообщениями, которые проходят согласно спецификации FIPA 2000 "FIPA ACL Mes¬sage Structure Specification".

  • jade.domain.FIPAAgentManagement.SearchOn - этот класс обеспечивает операцию поиска. Он позволяет также DF-агенту (фасилитатору) делать запрос другому агенту-фасилитатору на поиск информации.

Диаграмма взаимодействия классов агента обучения (Sequence Diagram) при поиске данных на сервере или в глобальной сети Интернет показана на рисунке 11.




^ Рис.11. Диаграмма взаимодействия классов агента обучения.


Эту диаграмму можно разбить на две, но из-за того, что в ней принимают участие почти одинаковые классы, было бы удобно объединить их в одну по содержанию, поскольку описывается процесс поиска данных.
Агенту обучения поступило задание найти информацию на сервере. Он взывает метод класса агента поиска^ MAgent.SearchMA – SearchOnServer. Контролер агентов вызывает метод диспетчера PutMA(), который определяет приоритет и ставит агента в очередь. Server.ControllerMA вызывает метод сервера DoWorkForMA(), исполняется поиск и посылается сообщение, если операция завершилась успешно – MAOperationOK(). Диспетчер удаляет агента из очереди. Контролер вызывает метод сервера – вернуть результаты поиска ReturnResultSearch(), которые передаются агенту обучения вместе с сообщением об успешном завершении операции. Процесс поиска в сети Интернет аналогичный, с той разницей, что для него не используются данные с сервера мобильных агентов.
Рассмотрим рисунок 12 описания Sequence Diagram.




^ Рис 12.Диаграмма взаимодействия классов Агента обучения с контролером, диспетчером и сервером агентов.


Класс StudyMA вызывает функцию ListeningMA() и посылает агента. Класс ControllerMA вызывает функцию ListeningMA(), получает агента и вызывает метод класса диспетчера агентов DispetcherMA, который ставит приоритет данного агента в очереди. Контролер анализирует запрос агента и вызывает метод класса ServerMA - DoWorkForMA(). ServerMA анализирует и хранит информацию, полученную от агента, и вызывает метод класса FSOperation – сохранения документа, полученного от агента SaveDocument(). Класс FSOperation посылает серверу сообщение, что операция прошла успешно. Соответствующая информация сохраняется в базе данных и класс DBOperation передает сообщение серверу DoOperationOK(). Контролер получает сообщения от сервера агентов об успешной операции и вызывает метод класса диспетчера для удаления агента из очереди DelMA(). ControllerMA вызывает функцию класса MessageMA, для получения нового задания. MessageMA посылает сообщение агенту, что операция успешна и можно делать другое задание, которое поступит.
Диаграмма взаимодействия классов Агента сообщений, Агента обучения, Mail-агента и Агента поиска показана на рисунке 13.




^ Рис.13. Диаграмма взаимодействия классов Агента сообщений, Агента обучения, Mail-агента и Агента поиска почты.


От Агента сообщений MAgent.MessageMA поступает запрос на проверку электронного взаимодействия. Класс MAgent.MailMA реализует метод CheckMail() и посылает сообщение о результатах его работы addReplyTo() агенту сообщений.
Класс MAgent.MessageMA вызывает метод сервера SearchOnServer(). Агент поиска MAgent.SearchMA просматривает результаты поиска ViewResultOfSearch(), и делает анализ поступившей информации. Агент сообщений получает сообщения про результаты поиска GetMessage().
Класс MAgent.MessageMA вызывает метод агента обучения MAgent.Mes¬s¬a¬geMA, который осуществляет, например, проверку контрольной работы ControllWork(). Агент обучения осуществляет проверку и дает рекомендацию пересмотреть курсы, в упражнениях к которым были допущены ошибки ViewCourse(). Так же осуществляется процесс тестирования. Также можно просто послать сообщения с запросом пересмотреть любой курс, который вас интересует.
В процессе взаимодействия эти агенты используют также стандартные методы агентной архитектуры JADE, а именно, методы класса jade.content.OntoACLMessage
Диаграмма обмена сообщениями между агентами поиска, обучения, сообщений, mail показана на рисунке 14.




Рис 14. Диаграмма обмена сообщениями между агентами поиска, обучения, сообщений, mail.




Рис.15. Диаграмма обмена сообщениями между cервером мобильных агентов и агентами, а также контролером, диспетчером и файл-сервером.


На рисунке 16. показана компонентная диаграмма, которая отображает все пакеты классов данной системы.




Рис.16. Компонентная диаграмма.


В системе, кроме стандартных пакетов агентной архитектуры JADE, разработаны такие пакеты:

  • пакет Server, в состав которого при данной реализации вошли классы: Server.ControllerMA, Server.DispetcherMA, Server.FSOperation, Server.DBOperation, Server.ServerMA;

  • пакет MAgent, в состав которого вошли такие классы как: MAgent.StudyMA, MAgent.MessageMA, MAgent.MailMA, MAgent.SearchMA.

Сгенерированный код системы показал все задуманные возможности и был готов к применению.
1   ...   5   6   7   8   9   10   11   12   13



Скачать файл (4180 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации