![Page 1: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/1.jpg)
Telecom and Informatics 1
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 15: 15.05.2017Arne-Jørgen Berre
![Page 2: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/2.jpg)
Course parts (16 lectures) - 2017
2
January (1-3) (Introduction to Modeling, Business Architecture and the Smart Building project): 1-16/1: Introduction to INF5120 2-23/1: Modeling structure and behaviour (UML and UML 2.0 and metamodeling) - (establish Oblig groups) 3-30/1: WebRatio for Web Apps/Portals and Mobile Apps – and Entity/Class modeling – (Getting started with WebRatio)
February (4-7) (Modeling of User Interfaces, Flows and Data model diagrams, Apps/Web Portals - IFML/Client-Side): 4-6/2: Business Model Canvas, Value Proposition, Lean Canvas and Essence 5-13/2: IFML – Interaction Flow Modeling Language, WebRatio advanced – for Web and Apps 6-20/2: BPMN process, UML Activ.Diagrams, Workflow and Orchestration modelling value networks 7-27/2: Modeling principles – Quality in Models 27/2: Oblig 1: Smart Building – Business Architecture and App/Portal with IFML WebRatio UI for Smart Building
March (8-11) (Modeling of IoT/CPS/Cloud, Services and Big Data – UML SM/SD/Collab, ThingML Server-Side): 8-6/3: Basis for DSL and ThingML -> UML State Machines and Sequence Diagrams 9-13/3: ThingML DSL - UML Composite structures, State Machines and Sequence Diagrams II 10-20/3: Guest lecture, "Experience with Modelling", Anton Landmark, SINTEF 11-27/3: ThingML part 2 and UML Service Modeling, Architectural models, SoaML. Role modeling and UML Collaboration diagrams
April/May (12-14) (MDE – Creating Your own Domain Specific Language): 12-3/4: Model driven engineering – Metamodels, DSL, UML Profiles, EMF, Sirius Editors – intro to Oblig 3
EASTER – 10/4 og 17/4 20/4: Oblig 2: Smart Building – Individual and group delivery - Internet of Things control with ThingML – Raspberry Pi, Wireless
sensors (temperature, humidity), actuators (power control)
13-24/4: MDE transformations, Non Functional requirements – Discussion of Oblig2 and 3 1. Mai – Official holiday 4/5: Oblig 3 - Your own Domain Specific Language – (ArchiMate) (Delivery – Thursday May 4th ) 14-8/5: Archimate 2.0/3.0 (Oblig 3) and Xtext (for ThingML) and NFR (Discussion of Oblig 2/ 3)
May (15-17): (Bringing it together) 15-15/5: Summary of the course – Final demonstrations (ESITO and/or GENUS), http://www.esito.no/ and https://www.genus.no/ 16-22/5: Previous exams – group collaborations (Guest lecture – ThingML language development, with Xtext, Franck Flerey SINTEF) 17-29/5: Conclusions, Preparations for the Exam by old exams June (Exam) 13/6: Exam (4 hours), Tuesday June 13th, 0900-1300
![Page 3: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/3.jpg)
Telecom and Informatics
Content
Part 1: Business Architecture, Information/Class-modeling
and Client-side Modeling - User Interfaces with IFML and
WebRatio - OBLIG 1 (Lecture 2-7)
Part 2: Server-side Modeling – ThingML, UML 2.0, Service
Modeling (SoaML) – OBLIG 2 (Lecture 8-11)
Part 3: MDE – Model Driven Engineering (Meta models,
Editors and model transformations) for Domain Specific
Languages (Sirius, EMF and Xtext), (Examples: IFML,
ThingML, UML, SoaML, Archimate, BPMN, …), – OBLIG 3
(Lecture 12-16)
3
![Page 4: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/4.jpg)
Telecom and Informatics 4
INF5120 and INF9120
”Modelbased System development”
Lecture 2: 23.01.2017Arne-Jørgen Berre
![Page 5: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/5.jpg)
Telecom and Informatics 5
![Page 6: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/6.jpg)
Telecom and Informatics 6
This Lecture, January 23, 2017
Modeling structure and behaviour (UML and
UML 2.0)
Introduction to OBLIG, "Smart Building" with Web Portal
and Mobile App development and control of Raspberry Pi
with connected wireless sensors and actuators.
![Page 7: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/7.jpg)
Telecom and Informatics
"Smart Building" - Project for spring 2017
7
Web app
User Interface
(Web portal)
SmartPhone
app
User Interface
(Android, iPhone)
Using
ThingML,
UML
Using
IFML,
UML
![Page 8: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/8.jpg)
Telecom and Informatics
Models and MetaModels
8
Parts of IFML Metamodel
![Page 9: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/9.jpg)
Telecom and Informatics
Parts of UML
Metamodel
Class
Attribute
initialValue : Expression
DataType
Operation
SpecificationisPolymorphic : Booleanconcurrency : CallConcurrencyKind
GeneralizableElement
Feature
BehaviouralFeatureStructuralFeature
Association
Classifier
0..*
+features
0..*
AssociationEnd
2..n2..n
0..*0..*
0..* 1
0..*
1
0..*
0..*
![Page 10: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/10.jpg)
Telecom and Informatics
SoaML UML Profile & Metamodel
![Page 11: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/11.jpg)
Telecom and Informatics 11
INF5120 and INF9120
”Modelbased System development”
Lecture 3: 30.01.2017Arne-Jørgen Berre
![Page 12: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/12.jpg)
Telecom and Informatics 12
This Lecture, January 30, 2017
Introduction to Web and App UI development
with WebRatio (with IFML)
![Page 14: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/14.jpg)
Telecom and Informatics 14
INF5120 and INF9120
”Modelbased System development”
Lecture 4: 06.02.2016Arne-Jørgen Berre
![Page 15: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/15.jpg)
Telecom and Informatics 15
This lecture, February 6, 2017
Business Architecture, Business Engineering
and Business Model Canvas
Introduction to Agile development
Introduction to Team management – using Upvawe.io –
for Scrum and Kanban
Business Modeling, Business Engineering
Lean Startup – Lean Canvas
![Page 16: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/16.jpg)
Telecom and Informatics
Strategyzer (Osterwalder)
16
![Page 17: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/17.jpg)
Telecom and Informatics
Lean Canvas
17
![Page 18: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/18.jpg)
Telecom and Informatics
Business Model Canvas Metamodel
18
![Page 19: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/19.jpg)
Telecom and Informatics 19
INF5120 and INF9120
”Modelbased System development”
Lecture 5: 13.02.2016Arne-Jørgen Berre
![Page 20: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/20.jpg)
Telecom and Informatics 20
This lecture, February 13, 2017
IFML and WebRatio
IFML Example
IFML Metamodel
IFML Tooling – WebRatio
IFML – Student guide - modules
![Page 21: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/21.jpg)
Telecom and Informatics
IFML Objectives
Binding to Persistence Layer
Navigation Path
Binding to Business Logic
Content
Event
![Page 22: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/22.jpg)
Telecom and Informatics
IFML Overview
![Page 23: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/23.jpg)
Telecom and Informatics
IFML Essentials
![Page 24: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/24.jpg)
Telecom and Informatics
IFML is defined through a metamodel
How does it work? IFML metamodel
(1)
…
![Page 25: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/25.jpg)
Telecom and Informatics
IFML metamodel (2): Content Binding
…
• Data binding to Classes and
Attributes
• Dynamic Behavior to Methods
and Diagrams
![Page 26: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/26.jpg)
Telecom and Informatics 26
INF5120 and INF9120
”Modelbased System development”
Lecture 6: 20.02.2016Arne-Jørgen Berre
![Page 27: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/27.jpg)
Telecom and Informatics 27
This lecture, February 20, 2017
BPMN and Process modeling
Enterprise Architecture
TOGAF
ArchiMate
Modelio Archimate, BPMN and UML modelling tool
ArchiMate Business Process
BPMN process modelling notation – part 1
![Page 28: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/28.jpg)
Telecom and Informatics 28
![Page 29: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/29.jpg)
Telecom and Informatics
TOGAF 9 (The Open Group)
29
![Page 30: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/30.jpg)
Telecom and Informatics 30
![Page 31: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/31.jpg)
Telecom and Informatics 31
http://www.togaf-modeling.org/
![Page 32: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/32.jpg)
Telecom and Informatics
ArchiMate
32
![Page 33: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/33.jpg)
Telecom and Informatics
Archi
33
http://www.archimatetool.com/
![Page 34: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/34.jpg)
Telecom and Informatics 34
![Page 35: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/35.jpg)
Telecom and Informatics 35
![Page 36: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/36.jpg)
Telecom and Informatics 36
![Page 37: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/37.jpg)
Telecom and Informatics
Overview of the ArchiMate concepts and main relationships.
![Page 38: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/38.jpg)
Telecom and Informatics 38
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 7: 27.02.2017Arne-Jørgen Berre
![Page 39: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/39.jpg)
Telecom and Informatics
Use case modeling
39
![Page 40: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/40.jpg)
Telecom and Informatics
Template of a Use Case Description
……….
![Page 41: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/41.jpg)
Telecom and Informatics
User Story template
I <in the role of XX> needs functionality <zzz> to achieve
the goal of <YYY>
41
![Page 42: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/42.jpg)
Telecom and Informatics
Backlog metamodel
![Page 43: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/43.jpg)
Telecom and Informatics
INF5120 – Modellbasert
Systemutvikling
F07-2: Architectural Patterns, Design Patterns
and Refactoring
Lecture 27.02.2017
Arne-Jørgen Berre
![Page 44: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/44.jpg)
Telecom and Informatics
Analysis(Domain)Patterns
Architecture Patterns (Macro Architecture)
Design Patterns (Micro Architecture)
Domain Framework
(OO) Reusable Components
Analysis Design Implementation
Idioms(Languagedependentpatterns)
Patterns: From Analysis to
Implementation
![Page 45: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/45.jpg)
Telecom and Informatics
General Responsibility Assignment
Software Patterns.
Responsibility assignment.
1. knowing (answering)
2. or, doing
Guidance and evaluation in
mechanistic design.
1. Expert2. Creator3. Controller4. Low Coupling5. High Cohesion6. Polymorphism7. Pure Fabrication8. Indirection9. Don’t Talk to
Strangers
![Page 46: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/46.jpg)
Telecom and Informatics
GOF (Gang of Four) 23
Patterns
Creational Patterns (5)
Abstract Factory, Builder, Factory Method, Prototype,
Singleton
Structural Patterns (7)
Adapter, Bridge, Composite, Decorator, Façade,
Flyweight, Proxy
Behavioural Patterns (11)
Chain of responsibility, Command, Interpreter,
Iterator, Mediator, Memento, Observer, State,
Strategy, Template method, Visitor
![Page 47: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/47.jpg)
Telecom and Informatics 47
Windows Explorer Screen Shot
FolderView ContentsView
![Page 48: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/48.jpg)
Telecom and Informatics 48
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 8: 06.03.2017Arne-Jørgen Berre
![Page 49: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/49.jpg)
Telecom and Informatics 49
![Page 50: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/50.jpg)
Telecom and Informatics 50
![Page 51: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/51.jpg)
UML Interactions
(Sequence Diagrams)
15.05.2017Professor Øystein Haugen | Faculty of Computer Science51
![Page 52: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/52.jpg)
Telecom and Informatics
Overview of lecture
Sequence Diagrams
What are they intended for?
Where in the software engineering process are they used?
The History Lesson
a very short history this time
Basic sequence diagrams
Interaction Fragments – structuring mechanisms
Tooling
Sequence Diagrams in Papyrus
Interactions or Sequence Diagrams?
Experiences and challenges
Interaction Metamodel
15.05.2017
Professor Øystein Haugen | Faculty of Computer Science 52
![Page 53: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/53.jpg)
Telecom and Informatics
This is a Sequence Diagram
15.05.2017
Professor Øystein Haugen | Faculty of Computer Science 53
Frame
Lifeline
Message
Combine
d
Fragment
![Page 54: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/54.jpg)
State Machines and
Model consistency
15-May-17Professor Øystein Haugen | Faculty of Computer Science54
![Page 55: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/55.jpg)
Telecom and Informatics
The architecture in a composite structure
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 55
Property
(part)
Port
Multiplicity
Connector
![Page 56: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/56.jpg)
Telecom and Informatics
The concepts in a class diagram
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 56
Property
(part)
Multiplicit
y
Compositi
on
![Page 57: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/57.jpg)
Telecom and Informatics
Happy Day Scenario
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 57
Sequence
DiagramLifeline
Message
Gate
(Papyrus
style)
Combined
Fragment
![Page 58: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/58.jpg)
Telecom and Informatics
The behavior of the AccessPoint
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 58
State
Machine
State
Transitio
n
Trigger Effect
Initial
(pseudo)state
![Page 59: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/59.jpg)
Telecom and Informatics
The behavior of the AccessPoint
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 59
B
C
D
E F
A
![Page 60: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/60.jpg)
Telecom and Informatics
The behavior of the AccessPoint
15-May-17
Professor Øystein Haugen | Faculty of Computer Science 60
State
Machine
State
Transitio
n
Trigger Effect
Initial
(pseudo)state
![Page 61: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/61.jpg)
Telecom and Informatics 61
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 9: 13.03.2017Arne-Jørgen Berre
![Page 62: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/62.jpg)
Telecom and Informatics
TheRoomX1
pim:PIMpsm:PSM
T1:ThermometerSet
onoff1:OnOffSet
get_sensor
request_actuator
human_output
human_input
usr_o
usr_i
console
tlstick:TellstickManager
timr_th:JavaTimer
timer
timer
request_sensor
In one picture
62
![Page 63: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/63.jpg)
Telecom and Informatics
sd TheRoomX1behavior
T1:ThermometerSet onoff1:OnOfftlstick:TellstickManager pim:PIM
Fetch_all_temps
temperature(id1,txt1,temp1)
temperature(id2,txt2,temp2)
Fetch_temp(id1)Fetch_temp(id1)
temperature(id1,txt1,temp1)
SwitchOn(did1)SwitchOn(did1)
SwitchOff(did2)SwitchOff(did2)
initialize(tlstck)
initialize(tlstck)
sensorinfo() sensorinfo()
deviceinfo deviceinfo
add_thermometer(id1,txt1)add_thermometer(id1,txt1)
add_thermometer(id2, txt2)add_thermometer(id2, txt2)
Fetch_all_temps
temperature(id1,txt1,temp1)
temperature(id2,txt2,temp2)
temperature(id1,txt1,temp1)
add_device(did1,didtxt1)
add_device(did2,didtxt2)add_device(did2,didtxt2)
add_device(did1,didtxt1)
The Room X1 Behavior
63
Lifelin
e Message
(asynch)
Gate
Sequence
Diagram
![Page 64: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/64.jpg)
Telecom and Informatics
The Room X1 – Simulation architecture
64
TheRoomX1sim
pim:PIMpsm:PSM
T1:ThermometerSet
onoff1:OnOffSet
get_sensor
request_actuator
human_output
human_input
usr_o
usr_i
get_values
provide_val
require_val
require_val
Turning switch on and off from Mock user interface
Reading the value from thermometers T1 in and out
tlstick:TellstickManager
to_onoff1
to_gdg
to_T1
tg:TempSim
give_values
timr_th:JavaTimer
timer
timer
request_sensor
onoffobs:OnOffSim
show_onoff
show_val
show_values
show_values
gdg:GadgetSim
show_gadgets
initial
initial
![Page 65: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/65.jpg)
Telecom and Informatics
The Room X1 in ThingML – the
configuration
65
import "psm_sim.thingml"
import "pim.thingml"
import "io.thingml"
import "javatimer.thingml"
configuration CPS {
instance tlstick:TellstickManager
instance T1:ThermometerSet
instance onoff1:OnOffSet
instance pim:PIM
instance myself:Human
instance timer : TimerJava
// SIMULATION
instance tg:TempSim
instance onoffobs:OnOffSim
instance gdg:GadgetSim
// PSM
connector tlstick.to_T1 => T1.initial
connector tlstick.to_gdg => gdg.show_gadgets
connector tlstick.to_onoff1 => onoff1.initial
connector T1.provide_val => pim.get_sensor
connector T1.timer => timer.timer
connector T1.show_values => tg.show_values
connector onoff1.show_val => onoffobs.show_onoff
// HMI
connector myself.send_cmd => pim.human_input
// PIM outwards
connector pim.request_sensor => T1.require_val
connector pim.request_actuator => onoff1.require_val
connector pim.human_output => myself.get_values
// SIMULATION
connector tg.give_values => T1.get_values
}
![Page 66: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/66.jpg)
Telecom and Informatics
sd TheRoomX1behavior
T1:ThermometerSet onoff1:OnOfftlstick:TellstickManager pim:PIM
Fetch_all_temps
temperature(id1,txt1,temp1)
temperature(id2,txt2,temp2)
Fetch_temp(id1)Fetch_temp(id1)
temperature(id1,txt1,temp1)
SwitchOn(did1)SwitchOn(did1)
SwitchOff(did2)SwitchOff(did2)
initialize(tlstck)
initialize(tlstck)
sensorinfo() sensorinfo()
deviceinfo deviceinfo
add_thermometer(id1,txt1)add_thermometer(id1,txt1)
add_thermometer(id2, txt2)add_thermometer(id2, txt2)
Fetch_all_temps
temperature(id1,txt1,temp1)
temperature(id2,txt2,temp2)
temperature(id1,txt1,temp1)
add_device(did1,didtxt1)
add_device(did2,didtxt2)add_device(did2,didtxt2)
add_device(did1,didtxt1)
The Room X1 Behavior
66
Lifelin
e Message
(asynch)
Gate
Sequence
Diagram
![Page 67: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/67.jpg)
Telecom and Informatics
The Room X1 – PIM state machine
visualized
67
State Machine
Initial
pseudo
stateStateTransitio
n
Trigg
er
Effect
![Page 68: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/68.jpg)
Telecom and Informatics
The Room X1 – A simulated execution
68
User input
command
sShows
temperatures
every 10 seconds
when PSM is
sending PIM
System
response to
user
Simulates
switch – on or
off
Fake gadget
hardware
observation
![Page 69: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/69.jpg)
Telecom and Informatics
TheRoomX3sim
pim:PIMpsm:PSM
T1:ThermometerSet
onoff1:OnOffSet
get_sensor
request_actuator
human_output
human_input
usr_o
usr_i
get_values
provide_val
require_val
require_val
Turning switch on and off from Mock user interface
Reading the value from thermometers T1 in and out
tlstick:TellstickManager
to_onoff1
to_gdg
to_T1
tg:TempSim
give_values
timr_th:JavaTimer
timer
timer
request_sensor
onoffobs:OnOffSim
show_onoff
show_val
show_values
show_values
gdg:GadgetSim
show_gadgets
initial
initial
g_temp:JavaTimer
guard_temprerature
timer
g_humn:JavaTimer
guard_human
timer
The Room X3 – Simulated Environment
69
Human
input
Temperatur
e input
Actuato
r output
![Page 70: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/70.jpg)
Telecom and Informatics
Timers in ThingML (1)
Soft timers in ThingML are instances of a Timer thing
With Java object code there is a TimerJava specialization
The timer object sends timer_timeout
receives timer_start, timer_cancel
The timer client (here PIM) receives timer_timeout
sends timer_start, timer_cancel
70
configuration CPS {
...
instance g_temp:TimerJava
instance g_humn:TimerJava
instance timer : TimerJava
// PSM
...
connector T1.timer => timer.timer
// PIM
...
connector pim.guard_temperature =>g_temp.timer
connector pim.guard_human => g_humn.timer
}
![Page 71: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/71.jpg)
Telecom and Informatics
Timers in ThingML (2)
71
thing fragment TimerMsgs {
// Start the Timer
message timer_start(delay : Integer);
// Cancel the Timer
message timer_cancel()@debug "false";
// Notification that the timer has expired
message timer_timeout();
}
thing fragment Timer includes TimerMsgs {
provided port timer {
sends timer_timeout
receives timer_start,
timer_cancel
}
}
thing fragment TimerClient includes TimerMsgs {
required port timer {
receives timer_timeout
sends timer_start, timer_cancel
}
}
![Page 72: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/72.jpg)
Telecom and Informatics 72
INF5120
”Modelbased System development”
Lecture 10: 20.03.2017Anton Landmark
(Guest lecture – no questions for the Exam)
![Page 73: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/73.jpg)
Telecom and Informatics 73
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 11: 27.03.2017Arne-Jørgen Berre
![Page 74: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/74.jpg)
Telecom and Informatics
Content
Service Modeling
SoaML introduction
UML 2.0 Collaboration models
SoaML – Service Architecture
UML 2.0 Composite models
SoaML – Port/connector models
74
![Page 75: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/75.jpg)
Telecom and Informatics
75
Marketplace Services – Example
Order
Conformation
Ship Req
Shipped
Shipped
Physical
DeliveryDelivered
Status
Provider
Consumer
Pro
vid
er
Co
nsu
me
r
Consumer
Provider
GetItThere Freight Shipper
Mechanics Are Us
DealerAcme Industries
Manufacturer
![Page 76: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/76.jpg)
Telecom and Informatics
ServiceContracts and
ServiceArchitectures Profile
![Page 77: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/77.jpg)
Telecom and Informatics
77
Service ports and service participants
A Service port: is the offer of a service by one participant to others using well defined terms,
conditions and interfaces
defines the connection point through which a Participant offers its capabilities and provides a service to clients.
It is defined using a UML Port on a Participant, and stereotyped as a <<Service>>
A Service port is a mechanism by which a provider Participant makes available services that meet the needs of consumer requests as defined by ServiceInterfaces, Interfaces and ServiceContracts.
![Page 78: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/78.jpg)
Telecom and Informatics
78
ServiceInterfaces and
Participants Profile
![Page 79: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/79.jpg)
Telecom and Informatics
Logical System ComponentsComponents
implement the
service interfaces
providing the link
to systems.
Participants and
services may be
used in multiple
architectures.
“Ports” on the participating
components provide and require
the service interfaces for each
service provided or used
![Page 80: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/80.jpg)
Telecom and Informatics 80
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 12: 03.04.2017Arne-Jørgen Berre
![Page 81: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/81.jpg)
Telecom and Informatics
Oblig 3 – Use of Eclipse EMF and
SIRIUS for the creation of an
Archimate graphical editor
81
https://eclipse.org/sirius/
![Page 82: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/82.jpg)
Telecom and Informatics
Content
Introduction to Metamodels and UML Profiles
Introduction to Eclipse, EMF and Sirius
Introduction to Oblig 3 – for May 4th
82
![Page 83: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/83.jpg)
Telecom and Informatics
The 4 layers in practice
© OMG
![Page 84: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/84.jpg)
Telecom and Informatics 84
How does MDD work? Developer develops model(s)
based on certain metamodel(s).
Using code generation templates,
the model is transformed to
executable code.
Optionally, the generated code is
merged with manually written code.
One or more model-to-model
transformation steps may precede
code generation.
ModelModel
Model
TransformerTranformation
Rules
Model
Transformer
Code
Generation
Templates
Generated
Code
Manually
Written
Code
optional
Metamodel
Metamodel
op
tio
na
l, c
an
be
re
pe
ate
d
![Page 85: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/85.jpg)
Telecom and Informatics 85
Fragments of a UML metamodel
UML
![Page 86: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/86.jpg)
Telecom and Informatics
UML Use Case Metamodel
86
![Page 87: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/87.jpg)
Telecom and Informatics
BPMN Metamodel
87
![Page 88: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/88.jpg)
Telecom and Informatics
IFML Metamodel
88
![Page 89: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/89.jpg)
Telecom and Informatics 89
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 13: 24.04.2017Arne-Jørgen Berre
![Page 90: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/90.jpg)
Telecom and Informatics
Content
MOF and EMF
Model transformations
MOFScript
ATL
Acceleo
OCL – UML Object Constraint Language
90
![Page 91: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/91.jpg)
Telecom and Informatics 91
ATHENA Model-Driven Interoperability (MDI) Framework
MDA & Interoperability
Metamodelling
UML Profiles & DSLs
Model Transformations
Method Engineering
Reusable MDI Assets
• Method chunks
• Tools and services
• Models and metamodels
• Model transformations
• DSLs and UML profiles
• Reference examples
Introduction
![Page 92: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/92.jpg)
Telecom and Informatics 92
MOF to Text Example
[template public classToJava(c : Class)]
class [c.name/] {
// Attribute declarations
[attributeToJava(c.attribute)]
// Constructor
[c.name/] () {
}
}
[/template]
[template public attributeToJava(a : Attribute)]
[a.type.name/] [a.name/];
[/template]
class Employee
{
// Attribute declarations
String name;
Department dept;
Double salary;
// Constructor
Employee()
{
}
}
![Page 93: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/93.jpg)
Telecom and Informatics 93
MOFScript a model to text tool
Provides the means of:
Editing, compiling and
executing
Syntax high-lightning
Content assist
Outline
MOFScript Console
![Page 94: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/94.jpg)
Telecom and Informatics - 94 -
sample-
Families.ecore
Eclipse Modeling Framework (EMF)
M3
M2
M1
Families.km3 ATL.km3 Persons.km3
C2C2C2
Families2Persons.atl
sample-
Persons.ecore
C2 C2 C2
Ecore.ecore C2
The big picture
1. Our goal in this mini-tutorial is to write the ATL transformation, stored in the "Families2Persons" file.
2. Prior to the execution of this transformation the resulting file "sample-Persons.ecore" does not exist. It is created by the transformation.
3. Before defining the transformation itself, we need to define the source and target metamodels ("Families.km3" and "Person.KM3").
4. We take for granted that the definition of the ATL language is available (supposedly in the "ATL.km3" file).
5. Similarly we take for granted that the environment provides the recursive definition of the metametamodel (supposedly in the "Ecore.ecore" file).
![Page 95: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/95.jpg)
Telecom and Informatics 95
UML OCL
Object Constraint Language
The Object Constraint Language
ISBN 0-201-37940-6
OCL home page
www.klasse.nl/ocl/index.htm
![Page 96: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/96.jpg)
Telecom and Informatics 96
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 14: 08.05.2017Arne-Jørgen Berre
![Page 97: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/97.jpg)
Telecom and Informatics
Content
Archimate 2.0 and 3.0
Metamodels for Archimate
Xtext
Xtext tutorial
Xtext for ThingML
NFR – Non Functional Requirements
97
![Page 98: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/98.jpg)
Telecom and Informatics
Archimate 3.0
What is new:
http://www.opengroup.org/subjectareas/enterprise/archim
ate/3.0-whats-new
Introduction to Archimate 3.0 – part 1 to 7 (vode=
https://www.youtube.com/watch?v=ULl9lf0OZco&list=PLB
8F2ECDADEE616AA
Archimate 3.0 in Practice – part 1 to 5
https://www.youtube.com/watch?v=_kmYkxKb_-
o&list=PLB8F2ECDADEE616AA&index=8
98
![Page 99: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/99.jpg)
Telecom and Informatics
Xtext
https://eclipse.org/Xtext/documentation/index.html
https://eclipse.org/Xtext/documentation/102_domainmodel
walkthrough.html
https://www.eclipsecon.org/france2015/sites/default/files/sl
ides/presentation.pdf
99
![Page 101: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/101.jpg)
Telecom and Informatics 101
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 15: 15.05.2017Arne-Jørgen Berre
![Page 102: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/102.jpg)
Course parts (16 lectures) - 2017
102
January (1-3) (Introduction to Modeling, Business Architecture and the Smart Building project): 1-16/1: Introduction to INF5120 2-23/1: Modeling structure and behaviour (UML and UML 2.0 and metamodeling) - (establish Oblig groups) 3-30/1: WebRatio for Web Apps/Portals and Mobile Apps – and Entity/Class modeling – (Getting started with WebRatio)
February (4-7) (Modeling of User Interfaces, Flows and Data model diagrams, Apps/Web Portals - IFML/Client-Side): 4-6/2: Business Model Canvas, Value Proposition, Lean Canvas and Essence 5-13/2: IFML – Interaction Flow Modeling Language, WebRatio advanced – for Web and Apps 6-20/2: BPMN process, UML Activ.Diagrams, Workflow and Orchestration modelling value networks 7-27/2: Modeling principles – Quality in Models 27/2: Oblig 1: Smart Building – Business Architecture and App/Portal with IFML WebRatio UI for Smart Building
March (8-11) (Modeling of IoT/CPS/Cloud, Services and Big Data – UML SM/SD/Collab, ThingML Server-Side): 8-6/3: Basis for DSL and ThingML -> UML State Machines and Sequence Diagrams 9-13/3: ThingML DSL - UML Composite structures, State Machines and Sequence Diagrams II 10-20/3: Guest lecture, "Experience with Modelling", Anton Landmark, SINTEF 11-27/3: ThingML part 2 and UML Service Modeling, Architectural models, SoaML. Role modeling and UML Collaboration diagrams
April/May (12-14) (MDE – Creating Your own Domain Specific Language): 12-3/4: Model driven engineering – Metamodels, DSL, UML Profiles, EMF, Sirius Editors – intro to Oblig 3
EASTER – 10/4 og 17/4 20/4: Oblig 2: Smart Building – Individual and group delivery - Internet of Things control with ThingML – Raspberry Pi, Wireless
sensors (temperature, humidity), actuators (power control)
13-24/4: MDE transformations, Non Functional requirements – Discussion of Oblig2 and 3 1. Mai – Official holiday 4/5: Oblig 3 - Your own Domain Specific Language – (ArchiMate) (Delivery – Thursday May 4th ) 14-8/5: Archimate 2.0/3.0 (Oblig 3) and Xtext (for ThingML) and NFR (Discussion of Oblig 2/ 3)
May (15-17): (Bringing it together) 15-15/5: Summary of the course – Final demonstrations (ESITO and/or GENUS), http://www.esito.no/ and https://www.genus.no/ 16-22/5: Previous exams – group collaborations (Guest lecture – ThingML language development, with Xtext, Franck Flerey SINTEF) 17-29/5: Conclusions, Preparations for the Exam by old exams June (Exam) 13/6: Exam (4 hours), Tuesday June 13th, 0900-1300
![Page 103: IJC - IPM...Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 15: 15.05.2017 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no](https://reader034.vdocument.in/reader034/viewer/2022042310/5ed7ec2b17e4482306586e74/html5/thumbnails/103.jpg)
Telecom and Informatics
Next lecture – May 29th
Presentations and discussions of Oblig 3
Exams for 2016 and 2015 (available on course web page)
(No lecture/exercise on May 22nd)
103