August 20, 2002 RTCCM Meeting Agenda & Overview of RTCCM Nanbor Wang Department of Computer Science Washington University in St. Louis

Slides:



Advertisements
Similar presentations
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Advertisements

COM vs. CORBA.
Common Object Request Broker Architecture (CORBA) By: Sunil Gopinath David Watkins.
CORBA - Common Object Request Broker Architecture.
Seminarium on Component-based Software Engineering Jan Willem Klinkenberg CORBA.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
Variability Oriented Programming – A programming abstraction for adaptive service orientation Prof. Umesh Bellur Dept. of Computer Science & Engg, IIT.
Distributed Systems Architectures
Persistent State Service 1 CORBA Component  Component model  Container programming model  Component implementation framework  Component packaging and.
1 12/10/03CCM Workshop QoS Engineering and Qoskets George Heineman Praveen Sharma Joe Loyall Richard Schantz BBN Technologies Distributed Systems Department.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Tutorial on the Lightweight CORBA Component Model (CCM) Industrializing the Development of Distributed Real- time & Embedded Applications Other contributors.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
OpenCCM: The Open CORBA Components Platform OSMOSE WP3 CCM Meeting 14th November 2003, LIFL, Lille, France Philippe Merle Jacquard Project.
23 September 2004 Evaluating Adaptive Middleware Load Balancing Strategies for Middleware Systems Department of Electrical Engineering & Computer Science.
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
December 3, 2003 Research Sponsored by DARPA/IXO Tutorial on CORBA Component Model (CCM) and QoS-enabled CCM Nanbor Wang Craig Rodrigues Washington University.
Nanbor WangQoS-Enabled CCM Overview and CIAO Status Washington University, St. Louis QoS-Enabled CCM Meeting Overview Motivations of CORBA Component Model.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
Software Reuse Prof. Ian Sommerville
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
BBN Technologies Craig Rodrigues Gary Duzan QoS Enabled Middleware: Adding QoS Management Capabilities to the CORBA Component Model Real-time CCM Meeting.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
Christopher Gill and Nanbor Wang Department of Computer Science and Engineering Washington University, St. Louis Monday May.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Introduction to J2EE Architecture Portions by Kunal Mehta.
1 06/00 Questions 10/6/2015 QoS in DOS ECOOP 2000John Zinky BBN Technologies ECOOP 2000 Workshop on Quality of Service in Distributed Object Systems
Review of “The COMQUAD Component Model” Tore Engvig 30 April 2004.
Cli/Serv.: rmiCORBA/131 Client/Server Distributed Systems v Objectives –introduce rmi and CORBA , Semester 1, RMI and CORBA.
October 8, 2015 Research Sponsored by NASA Applying Reflective Middleware Techniques to Optimize a QoS-enabled CORBA Component Model Implementation Nanbor.
1 of of 25 3 of 25 ORBs (Object Request Broker) – A distributed software bus for communication among middleware services and applications – To.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
R R R 1 Frameworks III Practical Issues. R R R 2 How to use Application Frameworks Application developed with Framework has 3 parts: –framework –concrete.
HPEC’02 Workshop September 24-26, 2002, MIT Lincoln Labs Applying Model-Integrated Computing & DRE Middleware to High- Performance Embedded Computing Applications.
Component frameworks Roy Kensmil. Historical trens in software development. ABSTRACT INTERACTIONS COMPONENT BUS COMPONENT GLUE THIRD-PARTY BINDING.
1 06/ /21/2015 ECOOP 2000 Workshop QoS in DOSJohn Zinky BBN Technologies Quality Objects (QuO) Middleware Framework ECOOP 2000 Workshop QoS in DOS.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
OpenCCM MdC Philippe Merle LIFL - INRIA (soon)
CoSMIC: Tool-suite for Weaving Deployment & Configuration Crosscutting Concerns of CCM-based DRE Systems Dr. Aniruddha Gokhale (PI) Institute for Software.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
December 16th, 2002 Composable Distributed Real-time Systems Krishnakumar B Department Of Computer Science Washington University, St.Louis,
1 BBN Technologies Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz.
A Quick CCM Example. Tutorial on CCM Introduction A Simple Sender&Receiver Scenario Sender sends out the click-out event to inform the Receiver. Receiver.
OpenCCM: Status and Work plan Dr. Philippe Merle LIFL - INRIA ObjectWeb Architecture Meeting, Grenoble, 21 – 22.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
E81 CSE 532S: Advanced Multi-Paradigm Software Development Venkita Subramonian, Christopher Gill, Ying Huang, Marc Sentany Department of Computer Science.
August 20, 2002 Applying RT-Policies in CORBA Component Model Nanbor Wang Department of Computer Science Washington University in St. Louis
Enterprise Computing Distribution and components.
OOPSLA 2000 Workshop “The Jini™ Pattern Language” © Michael Kircher, Prashant Jain, and Kirthika Parameswaran, 2000 CORBA Based Jini™ - JinACE Michael.
(C) 2003 University of ManchesterCS31010 Lecture 14: CORBA.
Toward a Distributed and Parallel High Performance Computing Environment Johan Carlsson and Nanbor Wang Tech-X Corporation Boulder,
A Vision for Integration of Embedded System Properties Via a Model-Component-Aspect System Architecture Christopher D. Gill Department.
Data Sharing Service Kiran Devaram Samatha Gangapuram Harish Maringanti Prashant Shanti Kumar Pradeep Tallogu.
CoSMIC: An MDA Tool Suite for Distributed Real-time and Embedded Systems Tao Lu, Aniruddha Gokhale, Emre Turkay, Balachandran Natarajan, Jeff Parsons,
Sumant Tambe* Akshay Dabholkar Aniruddha Gokhale
Towards a Real-time CORBA Component Model
Distribution and components
QoS-Enabled Middleware
Applying Domain-Specific Modeling Languages to Develop DRE Systems
Component-Based Software Engineering
Tools for Composing and Deploying Grid Middleware Web Services
An Introduction to Software Architecture
Enterprise Java Beans.
Presentation transcript:

August 20, 2002 RTCCM Meeting Agenda & Overview of RTCCM Nanbor Wang Department of Computer Science Washington University in St. Louis

Nanbor Wang Meeting Schedule Time Agendas 9:00 ~ 10:00 Overview of CCM and CIAO 10:15 ~ 12:00 RT policies/resources provisioning strategies Synergy of Qosket and CIAO 12:00 ~ 13:00 Lunch Blueberry Hill 13:00 ~ 14:30 RTCCM use cases – how to show that RTCCM is up to the task? 14:45 ~ 17:30 Extending CIAO capability

Nanbor Wang Extending CIAO Session Schedule Kokyu - Chris Gill SCTP - Gautam Thaker and Patrick Lardieri IntServ/DiffServe - Irfan Pyarali FT-CORBA - Chris Gill, Balachandran Natarajan, and Joe Cross RT-Notification Service - Irfan Pyarali MIC/MDA - Aniruddha Gokhale, Ted Bapty, Sandeep Neema, and Jeff Gray QuO/QoSket - Craig Rodrigues

Nanbor Wang Presentation Overview 1.10-minute CCM Overview 2.Research problems and proposed approaches 3.Project Timeline Evolution of DOC Middleware QoS Provisioning Abstractions

Nanbor Wang Limitation with the CORBA 2.x Object Model Application developers and system integrators are forced to play multiple roles –Application functional component developers tightly coupled application modules –Computational resource provisioners ensuring the availability of common object services ad-hoc management –System configurators boiler plate code manual application deployment Resulting in tight couplings –Brittle, non-standard implementation –Hard to adapt and maintain –Increase time-to-market

Nanbor Wang Promising Solution: Component Models Separation of concerns: –Run-time environment configuration –Connections between objects & run- time –Composition of objects Support run-time object composition –Component: a reusable entity –Container: a standardized environment for components to interact with run-time & vice versa –Component Server: a generic server process (also called application server) –Packaging and Assembling tools: collection of tools to package and compose components into deployable assemblies –Deployment mechanism: for deploying component assemblies to component servers J2EE (EJB), COM+ & CORBA Component Model (CCM)

Nanbor Wang The CORBA Component Model (CCM) Enhances CORBA Object Model Provides common run-time environment –component servers –containers Uses metadata to describe application composition, resource allocation, and infrastructure configurations –component dependencies –component connections –component configuration –component run-time services, e.g., transactional, persistence state

Nanbor Wang The CCM Big Picture IDL/CIDL Compiler IDL/CIDL File Stubs, Skeletons Packaging Tool Implementation Programming Language Tools User's Code Component Descriptor Default Properties Assembly Tool Component Assembly Package Home PropertiesComponent Properties Deployment Tool Assembly Descriptor CORBA Component Package softpkg Descriptor User written file Compiler Generated files CORBA Component Package CORBA Component Package designers implementer packager assembler deployer Source: OMG CCM Tutorial by Phillipe Merle Component Interconnection Definitions

Nanbor Wang Applications requires a wide variety of infrastructure support, e.g., QoS guarantees Plain CCM has no mechanisms to specify and enforce real-time QoS policies QoS policies need to be assured end-to-end for components & connections Ensuring QoS policies in component implementations leads to: –QoS mechanisms that are hard to utilize and go beyond component implementations Component connections –private connections –bandwidth reservation Component collaborations –Thread pools –Thread borrowing –Tight couplings among component implementations –Difficulty in reusing existing components (without QoS knowledge) Current CCM Fails to Address Advanced QoS Requirements QoS-enabled CCM ≠ CCM + RT CORBA Why doesn't running a RT ORB beneath CCM make it a QoS-enabled CCM implementation?

Nanbor Wang QoS-Enabled Component Middleware Separate the concerns for QoS managements Separate the roles –Application component developers –QoS assurance mechanism developers –QoS provisioning managers –ORB configurators Compose QoS assurance mechanisms –ORB – OS –Application-specific Adaptive Specify metadata for QoS requirements of –components –component connections Extend component middleware to support more advanced infrastructure and resource management

Nanbor Wang Specifying QoS Policies in CCM Applications Context: –Delay specifying QoS policies till application composition time Problems: –CCM specification doesn’t consider QoS policies –QoS policies usually managed via ad-hoc interfaces, e.g., RT policies –QoS Policies can bind to either Components Connections Solution Approach: –Extend composition metadata to incorporate QoS policies Expected Results: –Implement a CCM deployment framework that realizes extended metadata. –Categorize bindings of QoS policies

Nanbor Wang Supporting QoS Assurance Mechanisms Context: –Modern applications need to leverage various QoS assurance mechanisms Problems: –No standard way to support these QoS mechanisms –knowledge of ORB internals required a priori –Unforeseen QoS assurance mechanisms Solution Approach: –Configure the middleware dynamically Expected Result: –Extend and implement CCM deployment mechanisms to describe and deploy ORB modules

Nanbor Wang QoS Assurances Require End-to-end Enforcement Context: Many QoS properties –need to be enforced end-to-end –require some degree of adaptation Problem: –Lack of standard interaction model with QoS mechanisms Solution Approach: –Apply meta-programming techniques Expected Result: –Extend and Implement CCM metadata to configure and compose interceptors/smart proxies

Nanbor Wang Configuring Component Adaptation Context: –Many QoS properties need to be enforced end-to-end –We need to apply meta- programming techniques to insert adaptive behaviors Problem: –Components need to adapt as a whole, not as multiple individual interfaces Solution Approach: –Apply reflective middleware technologies to containers Expected Result: –Develop QoS-enabled containers in CCM

Nanbor Wang Configuring Client-side Adaptation Context: –We are applying meta-programming techniques to insert adaptive behaviors for QoS requirements –Objects with same interface may require different adaptive behaviors Problem: –Coarse-grained existing meta- programming support Smart proxies – all references Interceptors – all invocations Solution Approach: –Control effective meta-mechanisms through CORBA policies –Utilizing extension interface pattern Expected Result: –Develop mechanisms to associate interceptors and smart proxies with object references via CORBA policies

Nanbor Wang Client-side Policy Aggregates Context: –Modern systems often require multiple QoS assurance mechanisms –Objects often require multiple adaptive behaviors Problem: –Ad-hoc configuration interfaces Brittle client-side implementation Difficult to update matching client/server policies requiring end-to-end assurance Solution Approach: –Configure ORB dynamically –Define policy aggregates dynamically using metadata (using Extension Interface pattern) Expected Results: –Develop a CCM assembly-like client side configuration mechanisms Define policy aggregates with XML-based descriptors Package required ORB mechanisms and adaptive strategies Enable Client to associate objects with named policy aggregates

Nanbor Wang Component-Integrated ACE ORB (CIAO) Extension to component assembly descriptors –Component and connection QoS specifications –ORB modules –Adaptation modules QoS-enabled containers Policy-based adaptation insertion Client-side policy aggregates Integrating RT-CORBA & ACE QoS API (AQoSA) Benchmark and document test applications using various combinations of QoS aggregates

Nanbor Wang Project Timeline Extension to CORBA Core Default implementation of –CCMObject Navigations Receptacles Events –CCMHome –KeylessCCMHome Partial support for basic container/callback interfaces: –CCMContext, SessionContext –EnterpriseComponent, SessionComponent HomeExecutorBase interface Support (hand crafted) monolithic executor implementation Extension to IDL compiler and Typecode factory. IDL compiler: shall recognize all CCM keyword extensions but not necessarily generate code for these added keywords. Adaptive configuration of Notification Service/Event Channels Partial implementation of Deployment module CIAO 0.1 alpha release - (TAO 1.3, Oct. 2002)

Nanbor Wang Project Timeline Support for various RT and QoS Policies Support for policy-based adaptation mechanism HomeFinder interface HomeRegistration interface Configuration interfaces –Configurator –StandardConfigurator –HomeConfiguration Other basic container programming interfaces –EntityContext –EntityComponent Extension to Interface Repository IDL should generate correct client/server side mapping for component extension CIDL implementation that generates skeleton implementation for –Navigations, Receptacles, and Events interfaces of a components –component executor and home_executor templates for monolithic component implementation Complete Deployment implementation, assuming the revised deployment specification will be available CIAO 0.2 beta release - (TAO 1.3.x, Apr. 2003)

Nanbor Wang Project Timeline Transaction module? CCM2Context, Session2Context, Entity2Context and PSS functionality? Support for ExecutorLocator based component implementation ProxyHomeRegistration interface CIAO 1.0 release - (TAO 1.4, Oct. 2003)

Nanbor Wang Bryan Hall We are here! Men’s room Coke machine Coffee & tea