Распределенные объектные технологии Калиниченко Леонид Андреевич Профессор кафедры АСВК ф-та ВМиК, Зав. лабораторией Института проблем информатики РАН (ИПИ РАН) Нахимовский пр-т, 36-1; Тел. (499) 1292098 E-mail: leonidk@synth.ipi.ac.ru http://www.ipi.ac.ru/synthesis/student для доступа к файлам, перечисленным далее: DOT0: DIS Frameworks Intro DOT1: Distributed Systems DOT2: Object-Oriented Principl. DOT3: OO Middleware Principl. DOT4: CORBA, RMI DOT5: Resolving Heterogeneity DOT6: Dynamic Request DOT13A: Formal Meth. (intro) DOT13B: Types, Refnmnt., AMN (7-19, 24, 25, 28-34, 36,37, 42-44, 47, 51-56, 59-66) DOT13C: Examples: Machines DOT14: Ontologies DOT6A: Compositional IS dsgn. DOT14Aonto: Ontologies DOT15: Compositional Design DOT7: Advanced Synchroniz. DOT8: Naming and Trading DOT9: Distr. Objects Lifecycles DOT10: Persistence Service DOT11: Transaction Service DOT12: Security in Distr. Obj. DOT15A: Compositional Dsgn. 2 DOT16: DBMS Manifestos Order of using files of the DOT Course Практическая часть курса: Service Oriented Architecture (SOA) Вовченко Алексей Евгеньевич Аспирант кафедры АСВК ф-та ВМиК, Сотрудник Института проблем информатики РАН (ИПИ РАН) Нахимовский пр-т, 36-1 Тел. (499) 1291770 E-mail: itsnein@gmail.com Представление курса и задания по рефератам • На странице • http://master.cmc.msu.ru/?q=node/604#kalinichenko_2008 • находятся: • Представление курса РОТ-2010 (настоящий файл) • Описание курса и темы рефератов • Назначение тем рефератов студентам Примеры тем магистерских диссертаций 1. Исследование подходов к интеграции в посредниках данных в Web 2. Разработка средств идентификации ресурсов, релевантных предметной области (ПО), по метаданным и онтологическим описаниями ПО 3. Разработка средств отображения спецификаций ресурсов в спецификации задачи при использовании канонической информационной модели 4. Извлечение понятий и их связей из текстов описания предметных областей для создания онтологий 5. Разработка подходов к использованию гибридной грид-инфраструктуры для решения научных задач 6. Создание средств отображения разрешимого подмножества средств канонической информационной модели в инструментарий дескриптивной логики (язык OWL, средства рассуждений) 7. Создание методов определения концептуальных схем предметных областей средствами канонической информационной модели Подход к преподаванию курса • Изучить процедуру создания новых ИТ в контексте распределенных объектных технологий (РОТ). OMG как организация обеспечивающая создание де-факто индустриальных стандартов а области РОТ. • Традиционный стиль преподавания курса и его недостатки – пассивное прослушивание лекций, никакой работы в семестре, ознакомление с учебниками и другими материалами за день до экзамена или даже во время экзамена. • Новый способ преподавания. Направлен на активное изучение предмета слушателями. Самостоятельная работа. Предполагается подготовка студентами рефератов , являющихся результатом активного изучения соответствующей части курса. Две части курса • Курс методологический. Главное – осознание подходов к созданию РОТ, ведущих к интероперабельности компонентов информационных систем. • Первая часть курса посвящена изучению основ известной технологии объектного промежуточного слоя распределенных систем CORBA. Модели, архитектура, языки, службы, прикладные области. Эволюция архитектуры. Компонентная архитектура. Одновременно с изучением этой архитектуры нужно разобраться в подходе OMG к созданию объектных технологий, получающих статус индустриального стандарта. Вторая часть курса посвящена представлению начального этапа создания новых РОТ – проведению исследований и формированию прототипов архитектурных и модельных решений. В качестве примеров рассматриваются композиционная архитектура и архитектура предметных посредников как примеры начальных шагов по созданию новых РОТ. Главное – осознание мотивации к созданию РОТ, к разработке проектов языков, моделей, алгоритмов, созданию прототипов. • Организация • Создаются «бригады» из двух студентов. Один из них отвечает за подготовку заданного реферата по первой части курса, а другой – за подготовку реферата по второй части курса. В процессе работы они обмениваются результатами и способствуют формированию качественного текста . Оценка выставляется по каждому реферату отдельно, однако итоговая оценка у каждого студента бригады есть среднее арифметическое от оценок по каждому из двух рефератов. Такая организация вводится для того, чтобы в процессе самостоятельной работы все студенты вникли в тематику и первой и второй части курса. • Одновременно с методологическим курсом будет идти практикум по SOA в виде упражнений в среде Eclipse. • Оценки определяют уровень освоения предмета и оказывают определяющее влияние на экзаменационную оценку. Темы рефератов по первой части курса Основы технологии объектного промежуточного слоя распределенных систем CORBA Развитие технологий распределенных интероперабельных систем Введение в объектные технологии распределенных интероперабельных систем Объектно-ориентированный промежуточный слой, введение в CORBA Организация взаимодействия объектов в CORBA Идентификация релевантных распределенных объектов и определение их местонахождения 6. Жизненный цикл распределенных объектов 7. Долговечность объектов 8. Распределенные объектные транзакции 1. 2. 3. 4. 5. Темы рефератов по второй части курса Введение в технологии композиционного проектирования информационных систем 1. Семантическая интероперабельность при проектировании ИС: проблемы и подходы к их решению 2. Роль формальных методов в процессе проектирования семантически интероперабельных ИС 3. Алгебра типов как основа процесса композиционного проектирования ИС 4. Языки онтологического моделирования 5. Вопросы онтологического моделирования в процессе проектирования семантически интероперабельных ИС 6. Идентификация и регистрация компонентов в модели приложения для их повторного использования 7. Проектирование семантически интероперабельных систем в компонентной среде объектного промежуточного слоя 8. Проектирование семантически интероперабельных систем в сервисориентированной среде Развитие технологий распределенных интероперабельных систем • • • • • • Эволюция архитектуры информационных систем Понятие промежуточного слоя RPC как основа промежуточного слоя Мониторы обработки транзакций Понятие об архитектуре CORBA Сервис-ориентированные архитектуры Литература • DOT0 (Lecture notes): Distributed Information Systems Frameworks: an Introduction • Alonso G., et al Web Services: Concepts, Architectures and Applications. Springer • В.Эммерих. Конструирование распределенных объектов. Мир, • History of CORBA + History 2 • CORBA BASICS • CORBA 2.4 (CORBA overview) • Object Management Architecture • Object Management Group Terms and Acronyms Введение в объектные технологии распределенных систем • • • • • Распределенные системы: общие понятия Свойства распределенных систем Объекты в распределенной среде Эволюция объектных технологий UML как средство конструирования распределенных объектов Литература • DOT1: Distributed Systems, DOT2: Object-Oriented Principles • В.Эммерих. Конструирование распределенных объектов • History of CORBA • CORBA BASICS • CORBA 2.4 (Object model, IDL) • UML Profile for CORBA Specification • Object Management Group Terms and Acronyms • Wikipedia Объектно-ориентированный промежуточный слой, введение в CORBA • • • • • • Объектно-ориентированный промежуточный слой IDL и его роль в объектных архитектурах Соотношение компонентов промежуточного слоя и сетевых архитектур Введение в CORBA Архитектура CORBA, брокер объектных заявок (ORB) Разрешение неоднородности в распределенных системах Литература • DOT3: OO Middleware Principles, DOT4: CORBA, DOT5: Resolving heterogeneity • В.Эммерих. Конструирование распределенных объектов • History of CORBA • CORBA BASICS • CORBA 2.4 (Object model, IDL, ORB Interoperability Architecture, GIOP, IIOP) • Object Management Architecture • Object Management Group Terms and Acronyms • Wikipedia Организация взаимодействия объектов в CORBA • • • • Динамические заявки в CORBA Конструирование родовых (generic) приложений Организация взаимодействия объектов в CORBA Способы синхронизации заявок Литература • DOT6: Dynamic Requests, DOT7: Communication between Distributed Objects • В.Эммерих. Конструирование распределенных объектов. Мир • History of CORBA • CORBA BASICS • Object Management Architecture • CORBA 2.4 (ORB, Dynamaic Invocation, Interface Repository, CORBA Messaging) • CORBA Reflection • Object Management Group Terms and Acronyms • Wikipedia Идентификация релевантных распределенных объектов и определение их местонахождения • • • Организация служб (services) в CORBA, взаимодействие с объектами при помощи ORB Служба именования CORBA Служба объектного трейдинга CORBA Литература • DOT8: Locating Distributed Objects • В.Эммерих. Конструирование распределенных объектов. Мир • History of CORBA • CORBA BASICS • CORBA 2.4 (CORBA Overview) • Naming Service • Trading Service • Object Management Group Terms and Acronyms • Wikipedia Жизненный цикл распределенных объектов • • • • Организация служб (services) в CORBA, взаимодействие с объектами при помощи ORB Создание, миграция, удаление распределенных объектов. Роль фабрик Составные объекты. Служба связей (Relationship Service). Ролевые объекты Жизненный цикл составных объектов Литература • DOT9: Lifecycle of Distributed Objects • В.Эммерих. Конструирование распределенных объектов. Мир • History of CORBA • CORBA BASICS • CORBA 2.4 (CORBA Overview) • Life cycle service • Relationship Service • Object Management Group Terms and Acronyms • Wikipedia Долговечность объектов • • • Организация служб (services) в CORBA, взаимодействие с объектами при помощи ORB Принципы долговременного хранения объектов Служба долговременного хранения CORBA Литература • DOT10: Object Persistence • В.Эммерих. Конструирование распределенных объектов. Мир • History of CORBA • CORBA BASICS • CORBA 2.4 (CORBA Overview) • Life cycle service • Relationship Service • Object Management Group Terms and Acronyms • Wikipedia Распределенные объектные транзакции • • • • • • Организация служб (services) в CORBA, взаимодействие с объектами при помощи ORB Свойства ACID транзакций. Плоские и вложенные транзакции Управление одновременным выполнением транзакций Двухфазное блокирование транзакций Двухфазная фиксация CORBA Transaction Service Литература • DOT11: Distributed Object Transactions • В.Эммерих. Конструирование распределенных объектов. Мир • History of CORBA • CORBA BASICS • CORBA 2.4 (CORBA Overview) • Transaction Service • Object Management Group Terms and Acronyms • Wikipedia Изучение процесса создания новых технологий в OMG Примеры заданий как части реферата: Используя документы Technology adoption process, OMG's Technology Adoption Process, OMG Terminology Related to the Process of Technology Adoption, представить процесс создания объектных технологий в OMG и определить роли участвующих организаций и групп OMG. Примеры RFI и RFP: Future Development of UML (RFI), Business Process Model and Notation (BPMN) 2.0 (RFP). Используя документы Technology adoption process, OMG's Technology Adoption Process, OMG Terminology Related to the Process of Technology Adoption, представить процесс создания службы транзакций как технологии OMG (например, в виде графа) и определить роли участвующих организаций и групп OMG. Примеры RFI и RFP: Future Development of UML (RFI), Business Process Model and Notation (BPMN) 2.0 (RFP). Литература по CORBA • • • • • • • • • • • • • • Object Management Group Terms and Acronyms History of CORBA CORBA History -2 CORBA 2.4 (2000) Object Management Architecture OMG Terminology Related to the Process of Technology Adoption Technology adoption process OMG's Technology Adoption Process http://www.omg.org/gettingstarted/processintro.htm CORBA BASICS CORBA Reflection UML Profile for CORBA Specification Business Process Model and Notation (BPMN) 2.0 Request For Proposal Future Development of UML RFI CORBA Services (Naming Service, Trading Service, Life cycle service, Relationship Service, Persistent Object Service, Transaction Service)