LTP Port and Spec enhancements for “2.0” Preparing to make the change

Slides:



Advertisements
Similar presentations
Incorporating database systems into a secure software development methodology Eduardo B. Fernandez, Jan Jurjens, Nobukazu Yoshioka, and Hironori Washizaki.
Advertisements

Databases From A to Boyce Codd. What is a database? It depends on your point of view. For Manovich, a database is a means of structuring information in.
Business Process Management. Key Definitions Process model A formal way of representing how a business operates Illustrates the activities that are performed.
Generation and Implementation. More on classes Types Implementation classes Interfaces Templates Associations –Dependencies –Compositions.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Lab 04.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
® IBM Software Group © 2007 IBM Corporation Module 3: Creating UML Diagrams Essentials of Modeling with IBM Rational Software Architect, V7.5.
Introduction to Rational Rose 2000 v6.5 Copyright © 1999 Rational Software, all rights reserved 1 Introduction to Rational Rose 2000 Create Use Case Model.
Cliquez pour modifier le style du titre Cliquez pour modifier les styles du texte du masque Deuxième niveau Troisième niveau Quatrième niveau Cinquième.
Design Patterns: MORE Examples
Problems With Assistance Module 2 – Problem 7
Algorithms and Problem Solving
DATA COLLECTION METHODS IN NURSING RESEARCH
OTSi Termination Model
Chapter 4: Business Process and Functional Modeling, continued
Chapter 1: Introduction to Systems Analysis and Design
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.
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Implementation SIG Future Discussion Points and Possible Next Steps
TS-0034 scope against TS-0001, and managing stage 2 Semantics
Chapter 8 Analysis & Modeling
SSP4000 Introduction to the Research Process Wk9: Introduction to qualitative research, Part 2 The focus of week 9 is to introduce students to the characteristics.
Process Modelling Chapter 6.
Update Nigel Davis (Ciena).
H070 Topic Title H470 Topic Title.
Chapter 10: Process Implementation with Executable Models
UML Diagrams: The Static Model Class Diagrams
Lec 3: Object-Oriented Data Modeling
Teaching slides Chapter 8.
Review of Part C of the Code – Inducements & Applicability
The Object-Oriented Thought Process Chapter 07
Week 12: Activity & Sequence Diagrams
Patterns.
Chapter 20 Object-Oriented Analysis and Design
Evolve What is a Component?
Problems With Assistance Module 4 – Problem 2
Step 7: High-Level Product Specification
Chapter 13 Quality Management
Review: Design Pattern Structure
An Introduction to Software Architecture
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
ONF OTCC TAPI Contribution
Photonic model Nigel Davis (Ciena)
Chapter 1: Introduction to Systems Analysis and Design
4: Object-oriented Analysis & Design
SysML Modelica Integration Working Group Meeting 3/4/09
Verification Concepts for SysmL v2
Web-based Imaging Management System Working Group - WIMS
Refining the Requirements Model
Chapter 1: Introduction to Systems Analysis and Design
Discussion with OASIS TOSCA
Service-Resource-Capability and Intent (stimulated by discussion on TAPI Virtual Network) Nigel Davis
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Task 57 Scope – Template and Profile
Task 34 Scope – LTP Port (L=Nigel Davis)
Spec model application
Extending and Refining the OTCC/OIMT Models
Task 2a Scope – Processing Construct (L=ChrisH)
Photonic model Nigel Davis (Ciena)
Task 34 Scope – LTP Port (L=Nigel Davis)
Task 58 Scope – Occurrence Pattern
Control for 1.4 Nigel Davis (Ciena)
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
Task xx Scope – Expected Equipment
LTP Port and Spec enhancements for “2.0”
Drawing from TR Nigel Davis
See also (oimt2018.ND.034.xx_SpecModelApplication..)
Presentation transcript:

LTP Port and Spec enhancements for “2.0” Preparing to make the change Nigel Davis (Ciena) 20181205

Adding port to LTP The LTP represents the effects of functionality related to termination and adaptation of signal protocols and to control of that functionality The functionality represented is of significant variety and complexity The LTP encapsulates/abstracts that complexity and exposes the effects via its attributes and associations (as do all classes that represent functionality) The representation is spread across the LTP/LP classes which provide mainly structure and association to other things the LTP/LP spec classes which provides detailed structure the specific “filled out” specs which provide detailed attributes etc. per Type of LTP The LTP is asymmetric from a Component-Port pattern perspective Hence it should have ports Current LTP ports are not explicitly modelled and the asymmetry is modelled using associations to represent different port roles A port role may be represented by two associations Some associations do not unambiguously represent the role Some potential port roles are not supported by the current association set The LTP ports and LP ports are “wired up” for a particular “case” using the “filled out” spec Hence the model needs to correctly support the wiring – this will take some validation It may be correct to move some of the structure to the LP class from spec and to consider the blur of type and class But this does not change the need to add port

LTP shown as a system of Components

Strengthening the Component-Port This provides a sketch of the LTP and LP ports The LTP is a Component that is a System of Components, LPs. The LTP and LP ports are not exposed directly There appear to be several cases that would benefit from LTP/LP port exposure However, exposure of a generalized Port appear to complicate the model It is proposed that: The LTP class and the LP class have LtpPort and LpPort added The Spec model be further enhanced to deal with ports Changes to add Ports be considered as a 2.0 release considering the significance of the change We work to make 1.n and 2.n compatible 

LTP with ports New model sketch

Actions (high level) Core classes (see next slide for options for LTP work) LTP  LogicalTerminationPoint + LtpPort LP  LayerProtocol + LpPort Spec class Refine port models that have already been added to LP/LTP Diagrams Refine all diagrams (probably in conjunction with a move to Photon (as I have to tackle most diagrams then too) Definitions Refine definitions of the two classes

Approach and activities – LTP options Add LtpPort, keep old associations as deprecated and add new associations to LtpPort. Update all diagrams. This appears a reasonably correct way of doing the work as the semantics are not changed and the LtpPort provides a new alternative approach to representation of the existing semantics. This maintains backward compatibility in that the associations are still present. But the attributes will clutter the classes. We could delete all the old associations (but then (2) seems a better option) This will take significant work Add LtpPort and move associations etc. from LtpPort. Update all diagrams Association end semantics change. This means we have xmiIds with changed semantics. In a purist world we should not do this… but… This forces a move to the LtpPort as there is no alternative This will take a little less work than (1) Convert LogicalTerminationPoint into LtpPort and add new LogicalTerminationPoint. Move associations as appropriate. Further semantic change issues This forces a move to LtpPort as there is no alternative Add two new classes replacing LogicalTerminationPoint and rebuild the model From a pure semantic perspective this could be argued as correct as the LTP semantics have changed, although I would argue that the composition that is the LTP is unchanged. This is the most complicated and heaviest option from a work perspective

LtpPort role and adding rules The LtpPort is added due to asymmetry and hence there is a “ltpPortRole” FORWARDING…. More complex as there is LP attachment point “to TCP” “to CP” (which may have associated monitors) Inward or outward facing CLIENT PROVIDER CONTROL… More complex The ltpPortRole should really be as the FcPort role which is defined by the spec In the case of FcPort this is essentially always a sub-role of FORWARDING In the case of LTP, CLIENT, PROVIDER and CONTROL are perhaps more fundament – we do not want to leave these freeform. Perhaps ltpPortRole has two elements (fixed role and fluid role) Would also make sense for CONTROL which is potentially complex Perhaps all port role attributes should have a fixed element and a fluid element (as an FcPort could be for CONTROL!) We could take the opportunity to strengthen the model with rules that correctly restrict the use of port with respect to port role Perhaps there is a general pattern to this where there are some formally defined aspects and some freeform aspects Need to be careful here

First cut LTP with Port (showing primary context) Note that the view mapping function should describe the inter-view relationship. It can be argued that this is a CONTROL port… Provider Discussed in Ottawa. Key challenges highlighted

Dealing with port role complexity… suggestion for self-joins The associations vary by role of port The sketch shows a possible mechanism to support port role variety for the self joins Only one rule is shown (in free hand) Note that the “abstract” inheritance is to depict that the classes are NOT to be instantiated

LTP spec V1.4

Further discussion