




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、MARTE TutorialAn OMG standard: UML profile to develop Real-Time and Embedded systemsOverview, NFP / VSL, GCMContext of This Work2Modelplex MARTE Tutorial January 2009The present courseware has been elaborated in the context of the MODELPLEX European IST FP6 project ().Co-funded by the European Commi
2、ssion, the MODELPLEX project involves 21 partners from 8 different countries. MODELPLEX aims at defining and developing a coherent infrastructure specifically for the application of MDE to the development and subsequent management of complex systems within a variety of industrial domains. To achieve
3、 the goal of large-scale adoption of MDE, MODELPLEX promotes the idea of a collaborative development of courseware dedicated to this domain. The MDE courseware provided here with the status of open-source software is produced under the EPL 1.0 license. 3Modelplex MARTE Tutorial January 2009AgendaPar
4、t 1Marte OverviewPart 2A component model for RT/EPart 3Non-functional properties modeling4Modelplex MARTE Tutorial January 2009UML Profiling BasicsProfile:Lightweight Extension / Specialization of the UML metamodelFor particular application domainsStereotypesExtension / Specialization of existing me
5、taclassesContains a set of “tagged values” (i.e. domain specific properties)ConstraintsOn the usage of stereotypesOn the usage of constructs provided by the source metamodelNotation options (i.e. icons, figures)applyUml2:KernelOperationstereotypecppVirtualprofileC+ProfileMyModelMyClassmyOpA()myOpB()
6、 cppVirtual myOpC()5Modelplex MARTE Tutorial January 2009Design Pattern Adopted for the MARTE ProfileStage 1 Description of MARTE domain models (DV)Purpose: Formal description of the concepts required for MARTETechniques: Meta-modelingStage 2 Mapping of MARTE domain models towards UML2: UML Represen
7、tation (UR)Purpose: MARTE domain models design as a UML2 extensionsTechniques:UML2 profile6Modelplex MARTE Tutorial January 2009How to read this tutorialWithin next slides, we may shown models at different levels of abstraction. We will clarify each level through following pictogramsFor Domain View
8、levelFor UML Profile View LevelFor User Model View Level7Modelplex MARTE Tutorial January 2009Example: Domain model Profile Usage8Modelplex MARTE Tutorial January 2009Relationships with other OMG StandardsRelationships with generic OMG standardsProfile the UML2 superstructure meta-modelReplace UML P
9、rofile for SPT (Scheduling, Performance and Time)Use OCL2 (Object Constraints Language)Relationships with RT&E specific OMG standardsExisting standardsThe UML profile for Modeling QoS and FT Characteristics and MechanismsAddressed through MARTE NFP package (in a way detailed in the NFP presentation)
10、 The UML profile for SoC (System On Chip)More specific than MARTE purposeThe Real-Time CORBA profileReal-Time CORBA based architecture can be annotated for analysis with MarteThe UML profile for Systems Engineering (SysML)Specialization of SysML allocation concepts and reuse of flow-related concepts
11、Ongoing discussion to include VSL in next SysML versionOverlap of team members9Modelplex MARTE Tutorial January 2009MARTE OverviewFoundations for RT/E systems modeling and analysis: CoreElements NFPs Time Generic resource modeling Generic component modeling AllocationSpecialization of foundations fo
12、r annotating model for analysis purpose: Generic quantitative analysis Schedulability analysis Performance analysisSpecialization of MARTE foundations for modeling purpose (specification, design, ): RTE model of computation and communication Software resource modeling Hardware resource modelingExtra
13、cted from S.Gerard (ECRTS07)10Modelplex MARTE Tutorial January 2009MARTE Frontiers and ChallengesMARTE define the language constructs only!Common patterns, base building blocks, standard NFP annotationsGeneric constraints that do not force specific execution models, analysis techniques or implementa
14、tion technologiesIt does not cover methodologies aspects:Interface-Based Design, Design Space ExplorationMeans to manage refinement of NFP measurement modelsConcrete processes to storage, bind, and display NFP context modelsMapping to transform MoCCs into analysis modelsMARTE is to the RTES domain a
15、s UML to the System &Software domain: a family of large and openspecification formalisms!11Modelplex MARTE Tutorial January 2009AgendaPart 1Marte OverviewPart 2A component model for RT/EPart 3Non-functional properties modeling12Modelplex MARTE Tutorial January 2009Component-based paradigms in the RT
16、E domainComponent architectures are increasingly used in RTE execution platformsNeed for manageable and reusable pieces of softwareKey examples: Lightweight-CCM, SCA, AutosarConcept of component also used to structure System / Software engineering processesEntities under analysis/design broken down
17、into a series of componentsApplicable at different stages of the processDifferent kind: active vs. passive (e.g., UML active classes)Examples of related languages: SysML, AADLThere is a need to provide modeling constructs to support these concepts at different levels of abstraction13Modelplex MARTE
18、Tutorial January 2009What is a component in UML?UML distinguishes the notions of structured class and componentThe kernel of the language defines Class and InterfaceStructuredClasses defines Port and Connector and provide the ability to describe a Class as an assembly of partsBasic and PackagingComp
19、onent define the notion of component realization and adds packaging capabilitiesIn any case, no support for flow-oriented communications14Modelplex MARTE Tutorial January 2009General Component ModelIntroduced to cope with various component-based modelsSysML, Spirit, AADL, Lightweight-CCM, EAST-ADL2,
20、 AutosarDoes not imply any specific model of computationRelies mainly on UML structured classes, on top of which a support for SysML blocks has been addedAtomic and non-atomic flow portsFlow properties and flow specificationsBut also providing a support for Lightweight-CCM, AADL and EAST-ADL2, Spiri
21、t and Autosar15Modelplex MARTE Tutorial January 2009The MARTE GCM subprofile16Modelplex MARTE Tutorial January 2009Example of component definitionStandard UML port typed by a class that uses the LocationAccess interfaceAtomic flow port typed by a ClassifierComplex flow port typed by a flow specifica
22、tion17Modelplex MARTE Tutorial January 2009Example of component usageUML delegation connector used with an atomic flow portOutgoing atomic flow portIncoming atomic flow portUML delegation connector used with a non-atomic flow port18Modelplex MARTE Tutorial January 2009AgendaPart 1Marte OverviewPart
23、2A component model for RT/EPart 3Non-functional properties modeling19Modelplex MARTE Tutorial January 2009NFP tutorial Goals To give a “MARTE NFPs” background, yes, but also To know its main design rationales To know its modeling capabilities/alternatives and to learn how and when to use them20Model
24、plex MARTE Tutorial January 2009Information used to:Static V&V: performance prediction, resource usage evaluation, Dynamic configuration: resource management, mode changes, Should include design process information:How information was obtained (estimations, measurement,)?How information was calculat
25、ed (derived parameters, refinement)?How accurate information is?Non-Functional PropertiesAn information of a modeled system, or systempart, which is not related to its functional purpose(e.g., latencies, memory size, power consumption)21Modelplex MARTE Tutorial January 2009Main known approaches:NFR
26、Framework: an approach to evaluate different quality goals and their interference.CQML (Aagedal): language for expressing qualities in contract-aware components (no semantic link to execution model)QCCS: it enhances CQML by providing refinement capabilities and a link to a basic execution model (ope
27、ration, event identification)OMG approaches:SPT Profile: Tag Value Language (TVL) for expressing mathematical, logical and basic time expressions.QoS Profile (based on CQML): QoS value qualifiers, required an offered constraints (assume/guarantee component interfaces), catalog approach.Previous Work
28、22Modelplex MARTE Tutorial January 2009NFPs sub-profile based on the QoS Profile:Measurements: magnitude + unit (e.g., energy, data size, duration)Qualifiers: Value source, statistical measure, value precision,Value Specification Language (VSL) based on TVL and OCL:Mathematical expressions (arithmet
29、ic, logical, )Time expressions (delays, periods, trigger conditions,)Variables: placeholders for unknown analysis parameters.The MARTEs NFP Modeling Framework(NFPs Profile + VSL)A set of extensions to specify semantically richnon-functional annotations23Modelplex MARTE Tutorial January 2009NFP Frame
30、work:Basic Description 24Modelplex MARTE Tutorial January 2009Three main stereotypes:Nfp, Nfptype, NfpConstraint, UnitA predefined library of Units and NfpTypes:Power, Frequency, DataSize, DataTxRate, Duration, BoundDuration,A set of generic qualifier for these NFP TypesA placeholder for “expression
31、s” in addition to the actual “value”.Three mechanism to annotate NFP values:Tagged ValuesInstanceSpecification SlotsConstraintsThe NFPs Profile25Modelplex MARTE Tutorial January 2009Extending UML Expressiveness for NFPsCAN Bus with Pure UMLCAN Bus with MARTEs NFP26Modelplex MARTE Tutorial January 20
32、09Basic NFP Annotation Mechanism (Slots)2) Declare NFPs in user models1) Declare NFP types3) Specify NFP values- Define classifiers and their attributes using NFP types- Such attributes are tagged as nfp- Instantiate classifiers and specify their slot values using VSL- Define measurement units and c
33、onversion parameters- Define NFP types with qualifiers27Modelplex MARTE Tutorial January 2009Formally defined (unlike TVL)Provide a metamodel based on the UML one (DataTypes & ValueSpecifications)A subset of additional metaclasses are implemented as Stereotypes (DataTypes)Expression metaclasses are
34、extended as an orthogonal language.MARTE proposes a grammar implementationIt may be implemented by a separated metamodel (e.g. based on Ecore)A extended system of data types:Composite types: Tuples, Choice, Collection typesSubtypes: bounded subtypeA extended language for expressions:Primitives, Comp
35、osites, Expression&Variables, Time Expressions.Three mechanism to annotate NFP values:Tagged Values, InstanceSpecification Slots, and ConstraintsThe Value Specification Language28Modelplex MARTE Tutorial January 2009Basic Textual Expressions in VSLValue Spec.ExamplesReal Number1.2E-3 /scientific not
36、ationDateTime#12/01/06 12:00:00# /calendar date timeCollection1, 2, 88, 5, 2 /sequence, bag, ordered set.1,2,3, 3,2 /collection of collectionsTuple and choice(value=2.0, unit= ms) /duration tuple valueperiodic(period=2.0, jitter=3.3) /arrival patternInterval1.251 /upper opened interval between integ
37、ers$A1.$A2 /interval between variablesVariable declaration & Callio$var1 /input/output variable declarationvar1 /variable call expression.Arithmetic Operation Call+(5.0,var1) /”add” operation on Real datatypes5.0+var1 /infix operator notationConditional Expression(var16.0)?(106):1) /if true return 1
38、0 exp 6,else 1Extended Primitive ValuesExtended Composite ValuesExtended Expressions29Modelplex MARTE Tutorial January 2009Design Rationales & Further Usage30Modelplex MARTE Tutorial January 2009UML-Related Concepts31Modelplex MARTE Tutorial January 2009Why not the QoS Profile?Too complex annotation
39、 mechanismTwo stages to annotate model & models borrowed by InstanceSpecificationsBut mainly political reasons ;-)Result NFP stereotypes replace QoS onesWhy not Stereotypes to extend UML expressions?As we intend to annotate NFP values in Tagged Values, we dont want to stereotype information within T
40、aggedValuesWe dont want to confuse users by mixing M1 and M2 levelsResult Qualifiers in NfpTypes & a new textual language: VSLSome Design Choices32Modelplex MARTE Tutorial January 2009Annotating NFPs in Tagged Values: Ex.CAN Bus annotated with Stereotypes33Modelplex MARTE Tutorial January 2009Annota
41、ting NFPs in Tagged ValuesMARTE pre-defined2) Define NFP-like extensions1) Declare NFP types3) Specify NFP values- Define stereotypes and their attributes using NFP types- Apply stereotypes and specify their tag values using VSL- Define measurement units and conversion parameters- Define NFP types w
42、ith qualifiers34Modelplex MARTE Tutorial January 2009Annotating NFPs in Constraints2) Declare NFPs1) Declare NFP types3) Specify NFP values-Define classifiers and their attributes using NFP typesCreate Constraints to define assertions on NFP values using VSLnfpConstraint is a required, offered, or contract constraint of NFPs- Define measurement units and conversion parameters- Define NFP types with qualifiers35Modelplex MARTE Tutorial January 2009Why not OCL instead of VSL?Too hard to le
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度金融行業(yè)員工勞動集體合同(風險管理)
- 二零二五年度房屋抵押擔保企業(yè)節(jié)能減排貸款協(xié)議
- 二零二五停薪留職員工離職權益保障與就業(yè)創(chuàng)業(yè)輔導合同
- 二零二五年度國際學術研討會贊助協(xié)議
- 二零二五年度柴油價格風險管理合同
- 美術課后特色課題申報書
- 安裝路燈施工合同
- 2024-2025學年陜西省西安市高一上學期期末考試地理試卷(解析版)
- 旅游管理學專業(yè)知識應用能力測試卷
- 自我探索與成長(山東女子學院)知到課后答案智慧樹章節(jié)測試答案2025年春山東女子學院
- 深大基坑設計施工關鍵技術孫加齊
- 《神經(jīng)外科常見疾病》課件
- DL-T5707-2014電力工程電纜防火封堵施工工藝導則
- 煙花爆竹經(jīng)營單位安全教育培訓課件
- 人教版五年級數(shù)學下冊第二單元練習題
- 酒店傳染病防控緊急預案
- 職業(yè)素養(yǎng)提升第2版(大學生職業(yè)素養(yǎng)指導課程)全套教學課件
- 西師版小學數(shù)學六年級下冊單元測試卷(含答案)
- 2024年公安機關理論考試題庫500道【綜合卷】
- 《研學旅行課程設計》課件-制訂研學課程目標
- 2024年四川成都市公共交通集團有限公司招聘筆試參考題庫含答案解析
評論
0/150
提交評論