1、 ETSI GR NFV-IFA 017 V3.1.1 (2018-08) Network Functions Virtualisation (NFV) Release 3; Information Modeling; UML Modeling Guidelines Disclaimer The present document has been produced and approved by the Network Functions Virtualisation (NFV) ETSI Industry Specification Group (ISG) and represents th
2、e views of those members who participated in this ISG. It does not necessarily represent the views of the entire ETSI membership. GROUP REPORT ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 2 Reference RGR/NFV-IFA017ed311 Keywords information model, NFV, UML ETSI 650 Route des Lucioles F-06921 Sophia Ant
3、ipolis Cedex - FRANCE Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16 Siret N 348 623 562 00017 - NAF 742 C Association but non lucratif enregistre la Sous-Prfecture de Grasse (06) N 7803/88 Important notice The present document can be downloaded from: http:/www.etsi.org/standards-search The present
4、document may be made available in electronic versions and/or in print. The content of any electronic and/or print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any existing or perceived difference in contents between such versions
5、and/or in print, the only prevailing document is the print of the Portable Document Format (PDF) version kept on a specific network drive within ETSI Secretariat. Users of the present document should be aware that the document may be subject to revision or change of status. Information on the curren
6、t status of this and other ETSI documents is available at https:/portal.etsi.org/TB/ETSIDeliverableStatus.aspx If you find errors in the present document, please send your comment to one of the following services: https:/portal.etsi.org/People/CommiteeSupportStaff.aspx Copyright Notification No part
7、 may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm except as authorized by written permission of ETSI. The content of the PDF version shall not be modified without the written authorization of ETSI. The copyright and the foregoi
8、ng restriction extend to reproduction in all media. ETSI 2018. All rights reserved. DECTTM, PLUGTESTSTM, UMTSTMand the ETSI logo are trademarks of ETSI registered for the benefit of its Members. 3GPPTM and LTETMare trademarks of ETSI registered for the benefit of its Members and of the 3GPP Organiza
9、tional Partners. oneM2M logo is protected for the benefit of its Members. GSMand the GSM logo are trademarks registered and owned by the GSM Association. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 3 Contents Intellectual Property Rights 5g3Foreword . 5g3Modal verbs terminology 5g31 Scope 6g32 Referen
10、ces 6g32.1 Normative references . 6g32.2 Informative references 6g33 Definitions and abbreviations . 6g33.1 Definitions 6g33.2 Abbreviations . 7g34 Overview 7g35 UML artefact descriptions 7g35.1 Classes 7g35.1.1 Description 7g35.1.2 Class notation 7g35.1.3 Class properties . 8g35.2 Attributes in cla
11、sses 9g35.2.1 Description 9g35.2.2 Attribute notation 10g35.2.3 Attribute properties . 10g35.3 Relationships 12g35.3.1 Description 12g35.3.2 Relationship notation 13g35.3.2.1 Association notation 13g35.3.2.2 Generalization notation . 14g35.3.2.3 Dependency notation . 15g35.3.3 Relationship propertie
12、s . 15g35.4 Interfaces 18g35.5 Interface operations 18g35.6 Operation parameters . 18g35.7 Notifications . 18g35.7.1 Description 18g35.7.2 Notification notation . 18g35.7.3 Notification properties 19g35.8 Data Types 20g35.8.1 Description 20g35.8.2 Type notation 20g35.8.3 Type properties . 21g35.8.4
13、UML Primitive Types . 22g35.8.5 Pre-defined Data Types 22g35.9 Qualifiers and conditions 22g35.10 Use cases 23g35.11 Activities 23g35.12 State machines 23g36 UML profile definitions . 23g36.1 UML Profile Structure 23g36.2 Additional Properties for individual UML artefacts . 23g36.3 Additional Proper
14、ties for all UML artefacts . 27g36.3.1 LifecycleState Property . 27g36.3.2 Reference property 29g36.3.3 Example property 30g37 Recommended Modeling Patterns 30g3ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 4 7.1 Model Structure 30g37.2 Use of XOR/Choice/Proxy class 31g37.2.1 Xor constraint . 31g37.2.1.
15、1 Description 31g37.2.1.2 Example 31g37.2.1.3 Name style. 31g37.2.2 “Choice“ 32g37.2.3 Proxy class Modeling 32g37.3 UML diagram guidelines 32g37.3.1 Recommendations . 32g37.3.2 Using colours 32g37.3.3 Style sheets . 32g3Annex A: Authors Essential, or potentially Essential, IPRs notified to ETSI in r
16、espect of ETSI standards“, which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web server (https:/ipr.etsi.org/). Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence
17、of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web server) which are, or may be, or may become, essential to the present document. Trademarks The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners. ETSI claims n
18、o ownership of these except for any which are indicated as being the property of ETSI, and conveys no right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does not constitute an endorsement by ETSI of products, services or organizations associ
19、ated with those trademarks. Foreword This Group Report (GR) has been produced by ETSI Industry Specification Group (ISG) Network Functions Virtualisation (NFV). Modal verbs terminology In the present document “should“, “should not“, “may“, “need not“, “will“, “will not“, “can“ and “cannot“ are to be
20、 interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of provisions). “must“ and “must not“ are NOT allowed in ETSI deliverables except when used in direct citation. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 6 1 Scope The present document defines the gui
21、delines that have to be taken into account during the creation of a protocol-neutral UML (Unified Modeling Language) information model. These guidelines are informative for the general reader, but need to be followed when designing models for the ETSI NFV Information Model. 2 References 2.1 Normativ
22、e references Normative references are not applicable in the present document. 2.2 Informative references References are either specific (identified by date of publication and/or edition number or version number) or non-specific. For specific references, only the cited version applies. For non-specif
23、ic references, the latest version of the referenced document (including any amendments) applies. NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee their long term validity. The following referenced documents are not necessary for the appl
24、ication of the present document but they assist the user with regard to a particular subject area. i.1 Papyrus Eclipse UML Modeling Tool. NOTE: Available at https:/www.eclipse.org/papyrus/. i.2 Unified Modeling Language (UML). NOTE: Available at http:/www.uml.org/. i.3 OMG Unified Modeling Language
25、(OMG UML), Version 2.5. NOTE: Available at http:/www.omg.org/spec/UML/2.5/. i.4 Open Networking Foundation UML Modeling Guidelines V1.2, September 2016 (ONF TR-514). i.5 ETSI GR NFV-IFA 015: “Network Functions Virtualisation (NFV) Release 2; Management and Orchestration; Report on NFV Information Mo
26、del“. i.6 ETSI GS NFV 003: “Network Functions Virtualisation (NFV); Terminology for Main Concepts in NFV“. 3 Definitions and abbreviations 3.1 Definitions For the purposes of the present document, the terms and definitions given in ETSI GS NFV 003 i.6 apply. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08)
27、 7 3.2 Abbreviations For the purposes of the present document, the abbreviations given in ETSI GS NFV 003 i.6 and the following apply: MAC Media Access Control UCC Upper Camel Case UML Unified Modeling Language 4 Overview UML defines a large number of basic model elements (UML artefacts). In order t
28、o assure consistent and harmonious information models, only a selected subset of these artefacts are used in the UML model guidelines in the present document. The semantic of the selected artefacts is defined in i.2. The guidelines of each basic model artefact are divided into three parts: 1) Short
29、description. 2) Graphical notation examples. 3) Properties. The guidelines have been developed using the Papyrus open source UML tool i.1. The ONF UML Modeling Guidelines i.4 have been used as a basis for these guidelines. The present document only uses a subset of the guidelines defined in the ONF
30、UML Modeling Guidelines i.4. The parts not used are indicated clearly in each clause. NOTE: The OpenInterfaceModel Profile and its stereotypes are not used by the ETSI NFV Information Model. 5 UML artefact descriptions 5.1 Classes 5.1.1 Description Classes are used to convey a structural (often call
31、ed static) representation of an entity, including properties and attributes. 5.1.2 Class notation Figure 5.1.2-1: Graphical Notation for classes As highlighted in figure 5.1.2-1, a class is represented with a name compartment and an attributes compartment. It is recommended that the name compartment
32、 contains also the assigned lifecycle stereotypes. The attributes compartment can be set in a diagram to not expose the attributes or to expose some or all of the attributes. In some diagrams the attributes are hidden to reduce clutter, in others only a subset of the attributes is exposed to focus a
33、ttention on those attributes. It is also possible to hide the attribute compartment of a class in the class diagrams where a large number of classes need to be shown, as depicted in figure 5.1.2-2. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 8 Figure 5.1.2-2: Graphical Notation for Classes without Att
34、ributes Compartment It is recommended that the name compartment also show stereotypes for the class where relevant. When showing stereotypes, the compartment may include the stereotype “OpenModelClass“ (as all classes in the model have this stereotype by default) and may also include other stereotyp
35、es. In the general UML definition a class may have name, attribute and operation compartments, as shown in figure 5.1.2-3, but since the structural part and the behavioural part of the model are decoupled, the operation compartment, is not used and always hidden. Figure 5.1.2-3: Graphical Notation f
36、or Classes with Attributes and Deprecated Operations Compartment 5.1.3 Class properties A class has the following properties: Name: - Follows Upper Camel Case (UCC) convention. Each class in the model has a unique name. An example of Upper Camel Case: NetworkService. Documentation: - Contains a shor
37、t definition. The documentation is carried in the “Applied comments“ field in Papyrus as shown on figure 5.1.3-1; i.e. the “Owned comments“ field is not used. The complete documentation should be written in a single comment; i.e. at most one “Applied comment“. Figure 5.1.3-1: Entering documentation
38、ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 9 Superclass: - Inheritance may be used to deal with shared properties. Multiple inheritance is not supported in ETSI NFV Information Model. Abstract: - Indicates if the object class can be instantiated or is just used for inheritance; i.e. abstract classes
39、will not be instantiated. Additional properties are defined in the “OpenModelClass“ stereotype which extents by default (required) the “metaclass“ Class as shown on figure 5.1.3-2. Figure 5.1.3-2: “OpenModelClass“ Stereotype - support: g131 This property qualifies the support of the object class at
40、the management interface. See definition in clause 5.9. - condition: g131 This property contains the condition for the condition-related support qualifiers. The following class stereotype is not used for ETSI NFV Information Model: Choice. The following UML defined class properties are not used: Is
41、leaf (default = false). Is active (default = false). Visibility (default = public). 5.2 Attributes in classes 5.2.1 Description Attributes contain the properties of an object class. Note that the roles of navigable association ends become an attribute at the other associated end when this associatio
42、n end is owned by the classifier; see also “Role Type“ property in clause 5.3.3. NOTE: The association end can also be owned by the association itself in which case it does not become an attribute. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 10 5.2.2 Attribute notation The notation, shown in figure 5.
43、2.2-1, is: |“| : = . NOTE: When no default is relevant or no default is defined, the “=“ is not shown. Figure 5.2.2-1: Graphical Notation for object class with attributes 5.2.3 Attribute properties An attribute has the following properties: Name: - Follows Lower Camel Case (LCC) and is unique across
44、 all attribute names in the inheritance tree. An example of Lower Camel Case: virtualMemSize. - It is recommended that all Boolean typed attribute names start with is (e.g. isAbstract), or a verb such as has and the whole attribute name should be composed in a way that it is possible to answer it by
45、 true or false. Documentation: - Contains a short definition. The documentation is carried in the “Applied comments“ field in Papyrus; i.e. the “Owned comments“ field is not used. The complete documentation should be written in a single comment; i.e. at most one “Applied comment“. Type: - Refers to
46、a datatype or a basic UML type. See clause 5.5. - If it is needed to reference another information model element (i.e. class), then an association is used (see clause 5.3). Default Value: - Provides the value that the attribute has to start with in case the value is not provided during creation, or
47、already defined because of a system state. Multiplicity (*, 1, 1*, 01, ): - Defines the number of values the attribute can simultaneously have: g131 * is a list attribute with 0, one or multiple values; g131 1 attribute has always one value; g131 1* is a list attribute with at least one value; g131
48、01 attribute may have no or at most one value; g131 Default value is 1; g131 Other values are possible; e.g. “217“. ETSI ETSI GR NFV-IFA 017 V3.1.1 (2018-08) 11 Additional properties are defined in the “OpenModelAttribute“ stereotype which extents by default (required) the “metaclass“ Property, as s
49、hown on figure 5.2.3-1. Figure 5.2.3-1: “OpenModelAttribute“ Stereotype - isInvariant: g131 This property identifies if the value of the attribute can be changed after it has been created. - support: g131 This property qualifies the support of the object class at the management interface. See definition in clause 5.9. - condition: g131 This property contains the condition for the condition-related support qualifiers. Other properties: - PassedByReference: g131 This property is only applied to attribut