170 likes | 295 Views
UML 2: Component model & RT feedback of AIT-WOODDES project to the U2 proposal Workshop SIVOES-MONA – UML’2002, Dresden Pr. Francois Terrier & Dr. Sébastien Gérard CEA – LIST / L-LSP (Francois.Terrier, Sebastien.Gerard)@cea.fr. Plan of the presentation. The AIT-WOODDES project outlines
E N D
UML 2: Component model & RTfeedback of AIT-WOODDES projectto the U2 proposal Workshop SIVOES-MONA – UML’2002, Dresden Pr. Francois Terrier & Dr. Sébastien Gérard CEA – LIST / L-LSP (Francois.Terrier, Sebastien.Gerard)@cea.fr
Plan of the presentation • The AIT-WOODDES project outlines • "Component model" of the U2 group • ACCORD/UML RT- Component Model
Development Validation Objecteering Internal exchange format Accord Agatha XMI XMI Rose Model exchange via XML UPPAAL XMI Internal exchange format Rhapsody ModelChecker The AIT-WOODDES platform
GSM/GPRS/UMTS GPS Internet Service provider Case study of PSA-MECEL • Routing system • Evaluate project results on: • Methodology • RT Profile adequation • Tools efficiency • Model exchange • Code generation • Validation capabilities
The UML 2.0 component concept It supports the specification of both • "logical" components(e.g. business components, processcomponents) • "physical" components UML 1.4(e.g. EJB components, CORBA components, COM+ and .NET components) • A component is modeled throughout the development lifecycle and successivelyrefined into deployment and run-time
A two-views component model • A component has an external view(or. “black-box” view)by means of its publicly visible properties • Protocol state machine attached to ports/interfacesmay define the external view more preciselyby makingdynamic constraints in the sequenceof operation calls explicit • A component also has an internal view(or “white-box” view) by means of its private properties which are itsinternal classifiers and how they are connected.
Today, in U2 proposal, 2 possible models • a component has Ports typed by Interface • components communicated together via messages going through their ports (like processes in SDL or capsules of "ROOM" model) • a component has directly Interfaces(required and provided) • components communicating also via messages but in this case,messages go through the interfaces themselves (like usual component model, e.g. CCM-CORBA Component Model, ... ) still under construction … … and should be completely revisited in incoming version !
SPE profile SPT profile AL profile Modelling tools OMG’ Standard profiles !!! ! ACCORD/UML Profile ACCORD/UML Methodology defined by user relizes + Structure of the ACCORD/UML Methodology
theSystem Class 1 theSystem envElt Use Case ucDiag describedBy Actor Diagr am * * 1 envElt Use Cases Model * Use Case theSystem dico Preliminary AnalysisModel Possible Scénario 1..* 1 Dictionary High - Level Scenarios Models RT_QoS interView 1 Analysis Model Detailed Scen arios Model RT_QoS A B structView 1 C Structural Model Detailed AnalysisModel behavView RT_QoS RT_QoS RT_QoS RT_QoS 1 Behavioural Model Details of ACCORD/UML models
Component Model ER2 ER1 «parts» Initial Model «refine» ACCORD/UML (PAM ou DAM) • Component definition 2 possible views: • “Black box” (= external view) • set of interfaces • “White box” (= internal view) • sub-system Sub-system Model C_Sub-Syst_1 C_Sub-Syst_3 Sub-Syst_1 Sub-Syst_2 C_Sub-Syst_2 Sub-Syst_3 Decomposition heuristics & component model ER1 = Heuristics to ease decomposition of a system into a sub-systems model ER2 = Model mappings to transform resulting sub-systems model into component model - required & offered interface - component connexions / association links - …
provided Interface required BehavioralFeatures RT_QoS The ACCORD/UML RT-Component Model • ACCORD/UML component Model based on • UML2 component Model + RT_QoS Component • Interface can have both BehavioralFeatures: • operations also with QoS specif. • receptions (signals) with QoS specif.
SpeedRegulator Speedometer SC_Manager SpeedSensor getSpeed( ) Regulator <<DetailledContent>> <<DetailledContent>> • “White box” = internal view • “Black box” = external view Speedometer SpeedRegulator C_Sub-Syst_1 Sub-Syst_1 Model transformation:sub-system identification / component defintion
Component Model C_Sub-Syst_1 C_Sub-Syst_3 C_Sub-Syst_2 RT_QoS RT_QoS RT_QoS UML specialisation for components
Required QoS Offered QoS « rPriority » { priorValue 5} Qos & components: on behavioral features UML Profile for QoS…
RT_QoS RT_QoS RT_QoS RT_QoS Component Model ER3 C_Sub-Syst_1 C_Sub-Syst_3 ER2 C_Sub-Syst_2 CCM Sub-system Model RT_QoS RT_QoS RT_QoS Sub-Syst_1 Sub-Syst_2 Sub-Syst_3 The ACCORD/UML RT-Component Model based on a MDA approach… ER2 = These mappings take into account specified RT features of the sub-system model PIM-to-PIM ER3 = Mappings definition from the RT-Component Model of ACCORD/UML towards a platform model (e.g., RT-CCM model)PIM-to-PSM
Valid. PAM DAM Régulateur Régulateur Afficheur Afficheur Capteur Capteur Dico Xxxx xxxx Dico Xxxx xxxx PrM ACCORD/UML: A full MDA Approach Modeling concepts Modeling rules Model enrichment PIM level Modeltranslation filter Model enrichmentmapping Runnable level OS Interf. model PSM level Code generation