See also (oimt2018.ND.034.xx_SpecModelApplication..)

Slides:



Advertisements
Similar presentations
OASIS Reference Model for Service Oriented Architecture 1.0
Advertisements

The Relational Model System Development Life Cycle Normalisation
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Overview Objective: refine information gathered
2Object-Oriented Analysis and Design with the Unified Process Events and Use Cases  Use case  Activity the system carries out  Entry point into the.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Chapter 5 Entity–Relationship Modeling
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Objectives Explain how events can be used to identify use cases that define requirements Identify and analyze events and resulting use cases Explain.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Database Design Entity-Relationship Modeling N. Ilayaraja PSG Tech.
Data Modeling Using the Entity- Relationship (ER) Model
Modeling data in the Organization
Business System Development
Task 1 Scope – Controller (L=ND)
1 TOOL DESIGN A Review of Learning Design:
Business System Development
ONF presentations to ETSI NFV Info Modelling Industry Status ONF Modeling Update 29 March 2016 Note that some points are related to the Multi-SDO Issues.
Software Requirements
ONF presentations to ETSI NFV m-SDO IM/DM Workshop ONF Common Information Model – Core Information Model January 2016.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Chapter 2 Database System Concepts and Architecture
COMPONENT & DEPLOYMENT DIAGRAMS
ONF Specification Class Pattern Some items for discussion
Business Process Measures
Update Nigel Davis (Ciena).
Abstract descriptions of systems whose requirements are being analysed
Component-Level Design
Component-Level Design
Chapter 6 Normalization of Database Tables
Module 8 – Database Design Using the E-R Model
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Photonic model Nigel Davis (Ciena)
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
國立臺北科技大學 課程:資料庫系統 2015 fall Chapter 14 Normalization.
This Lecture Substitution model
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
TAPI Topology & Connectivity Enhancements Proposal for v3.0
Discussion with OASIS TOSCA
Chapter 6b: Database Design Using the E-R Model
Service-Resource-Capability and Intent (stimulated by discussion on TAPI Virtual Network) Nigel Davis
Nigel Davis (Ciena) Kam Lam (FiberHome)
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Various notes for use in “Controller, Processing Construct and Component” discussions at CORD Build face to face Nigel Davis
Nigel DAVIS (Ciena) Kam LAM (FiberHome / CICT)
Task 57 Scope – Template and Profile
Profiles and Templates
Task 34 Scope – LTP Port (L=Nigel Davis)
ONF CoreModel Profile & Template model
Spec model application
Extending and Refining the OTCC/OIMT Models
Photonic model Nigel Davis (Ciena)
Task 34 Scope – LTP Port (L=Nigel Davis)
Task 58 Scope – Occurrence Pattern
DataTypes Nigel Davis
Topology and FC properties
Control for 1.4 Nigel Davis (Ciena)
LTP Port and Spec enhancements for “2.0” Preparing to make the change
Intent for use of capability replaces Service-Resource and unifies network and virtual network (stimulated by discussion on TAPI Virtual Network) Nigel.
Task 57 Scope – Profile and Template
LTP Port and Spec enhancements for “2.0”
TAPI Topology & Connectivity Enhancements Proposal for v3.0
Drawing from TR Nigel Davis
Presentation transcript:

See also (oimt2018.ND.034.xx_SpecModelApplication..) Occurrence Unpicked Nigel Davis 20190908 See also (oimt2018.ND.034.xx_SpecModelApplication..)

Occurrence Background General model Model appearance

TR-512.7 1.4 TR-512.7 v1.4 introduced the occurrence into the specifications Section 4.1.3 “Enhanced Forwarding Spec to cater for the photonic model” states… Enable specification of a recursion of ForwardingSpecs to describe a recursion of Forwarding via the ForwardingOccurrence: A ForwardingSpec may contain many occurrences of Forwarding where: Each ForwardingOccurrence may have two or more ForwardingPortOccurrences and where the ForwardingPortOccurrences may be: bound together via ForwardingPortOccurrenceBindsToForwar dingPortOccurrence exposed at the containing level via PortSpecExposesPortOccurrence Each ForwardingOccurrence will have a ForwardingSpec that may have a further decomposition ….

TR-512.7 1.3 (& 1.4) TR-512.7 v1.3 had introduced the need to represent “cases of use of” entities It is apparent that “cases of use” are essentially “occurrences” 4.4 PC, ControlComponent and C&SC spec considerations states… The pattern is generated using a pruning and refactoring process, where the pattern model is a pruned and refactored CIM. The pattern can include more than one case of each class, along with statements of rules (in OCL) that constrain the assembly. The figure highlights use of occurrence (although prior to the model enhancement) There are several occurrences of LTP in the base scheme spec in the diagram

The general spec pattern Currently we have a rather peculiar representation of the meta-level transition that takes place in the reference An instance of a class points at a class (that specifies its detail). This is essentially an exposure of a refinement of the UML metamodel where an instance is defined by a class In the spec model an instance is defined by several classes An alternative way of looking at the basic form is An instance of a class is augmented with properties that are defined by another class The augment is a way of inserting properties into the instance which essentially redefines the instance The augmented instance is defined by several classes (the “base” class of the instance and the augmenting classes) Yang augment can only introduce properties into the instance. In the core we need to: Introduce properties Introduce constraints Redefine existing properties (narrowing them) Provide invariant data The instance is essentially fully defined by the combination of classes The current model uses the association “EntityExtendedBySpec” This should perhaps better be called “EntityFurtherDefinedBySpec” This is not a simple use of UML

Occurrence Similarly the Occurrence pattern is not a simple use of UML In a spec there may be many occurrences of a particular class (e.g., FC) The G.8032 scheme/system spec shows this clearly The LTP, FC spec etc. are now also recognised as scheme specs In the basic representation of the scheme spec a normal association has been used to show the multiplicity of occurrences Each occurrence in a spec itself has a spec There may be several occurrences with in a scheme/system that have the same spec Occurrences of the same class in a particular scheme/system may have different specs The classes associated with each occurrence with the same spec do not necessarily have the same associated occurrences As a consequence, in the worst case it appears that each occurrence needs to be laid out individually (I will call a laid out occurrence an explicit occurrence) This can be seen in the G.8032 scheme spec picture where there are many explicit occurrences of LTP In some cases it may be sufficient to lay out the pattern of multiplicities (I will call this an explicit occurrence pattern) There would appear to be a variable expansion of the essential spec model on a case by case basis Because the occurrences are classes and there will be explicit occurrences formed from them that will also be classes, the association is NOT a normal association This does also not appear to be a simple metamodel transition association as considered on the previous slide It would appear that in the general pattern this association should be a stereotype of an ordinary association It is apparent that the existing associations in the LTP and FC spec are actually occurrence associations For example, in the FC spec, the MultiSwitchedUniFlow is a class, but in an actually FC spec there will be several explicit occurrences of that class with different property values etc. where some of the properties are fixed value and some are property definitions The fixed value properties look like instance values in “slots” where as the property definitions look like attributes So it appears that most/all spec associations are occurrence associations and that the multiplicity defines whether the spec allows the formation of one or more explicit occurrences Of course the explicit occurrence, being a class, has a spec. Therefore this occurrence expansion is recursive

Class Instance conflation During the Telefonica P&T work it became apparent that there was a need for a mix of classes and instances in the model The model became a mixed meta-level model Clearly each instance needed a class so the model became a multi-metal level model An alternative, explored was to express the fixed value properties as severely constrained to be single values This approach appeared more versatile and possibly more conformant with UML (although a pain to represent) A class where all properties are severely constrained to have single values essentially has the same values as an instance On that basis, an alternative way to represent an instance would be occurrences of severely constrained classes Curiously, as we are now representing components as classes and would be representing instances as classes it would seem that UML could be further unified U2ML perhaps  Considering that in the general case there will be things with a blend of absolute value statements and range statements, the “severely constrained attribute” approach appears more appropriate

FC spec rationalization This is only partially worked at this point but… The MultiSwitchedUniFlow is clearly a constrained FC The MultiSwitchedUniFlow has a spec which is an assembly of uniflows and switches or the uniflow is a constrained MultiSwitchedUniFlow If we take the constraint route then the FC spec is formed from FCs where those FCs may be constrained to be MultiSwitchedUniFlow or Uniflows The constraint is expressed by the properties of the FC in the spec If it is specified as uni but the ports multiplicity is >2 then it is a MultiSwitchedUniFlow If it is specified as uni but the ports multiplicity is 2 and it has no switches then it is a uniflow It would appear that the FC is specified by constrained forms of itself Considering class instance conflation the constrained forms of property would be redefinitions of the versatile properties

Pruning and refactoring Considering the spec pattern, there appears to be a need to replicate and refine classes to form new constrained variants of those classes As noted in the Class Instance Conflation discussion, there appears to be an opportunity to constrain a class to represent an instance and completely replace the instance model Clearly there is a need for a derived model to abide by the model from which it is derived and for that derivation to be traceable and verifiable as well as to update as the source model is updated This appears to be the same need and process as what happens when we move from Core to TAPI Hence this appears to be Pruning and Refactoring This suggests that P&R tooling is a fundamental capability required for correct formation of specs (and also for U2ML)

LTP and FC emergence The LTP and FC are defined by its appearance and externally visible behaviour They are not defined by their internal detail, they are defined by what emerges from that internal detail The LTP clearly, as we have discussed, has FCs within it, and the FC, similarly, has LTPs within it But the FCs in an LTP spec may have LTPs within them and vice-versa So, to trivialize, it is a repeating alternation ongoing Clearly, there are LTPs and FCs at the same level so it is more of a recursive intertwining The LTP and FC specs are essentially the same intertwining except that the top level of the FC is the FC phase of the intertwining and of the LTP is the LTP phase of the intertwining Hence we need to converge the FC and LTP specs to a single spec form

Actions Spec metamodel with the occurrence stereotype General use of occurrence stereotype Dealing with occurrences How to distinguish spec occurrences Whether to version spec occurrences How to form system/scheme spec (and should we call them system specs) How to derive a specific case of a system spec from the general case E.g., Ciena G.8032 ring spec occurrence set from the general G.8032 ring spec occurrence set Classes used as instances Normalization and converge the FC and LTP spec models Speculate more on U2ML (see also next)

Progression of sub-setting – Constraining Semantics Thing has all possible properties. Specific semantics relate to the specific modelled thing and are a narrowing of thing. The definitions do NOT need to be orthogonal/disjoint although the intersections should be minimised. Consider the LTP Covers all aspects of termination and adaptation Coverage includes recursive definition of encapsulated forwarding All possible properties of termination and adaptation are within the allowed set Specific properties are defined in specific specs. These properties are expressed in the appropriate instances. Thing Component PC Equipment Information LTP Controller Canonical

Face to Face activity Depending upon time, expand various cases on the whiteboard to show the actual occurrences in the spec Equipment (see next – also have a sketch of this one on paper) Photonic (e.g. an amplifier) G.8032 ring For each case show an instance example

An Equipment case Physical hardware represented by equipment and holder Consider sub-rack (equipment) that has slots (say 10) where some have a common capability and some different Assume that the equipments in the slots have SFP etc opportunity

Background From CordBuild 2017