INF5120 ”Modellbasert Systemutvikling” ”Modelbased System ...
INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen...
Transcript of INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen...
Telecom and Informatics 1
INF5120
”Modellbasert Systemutvikling”
”Modelbased System development”
Lecture 5: 11.02.2013Arne-Jørgen Berre
Telecom and Informatics 2
INF5120 - Lecture plan - 2013
1 (14/1): Introduction – overview Enterprise Architecture with UML and BPMN and DSLs
2 (21/1): Service Innovation and Design, AT ONE method/workshop – myServiceFellow (Marika Lüders)
3: (28/1): Value Networks/VDML BPMN, vs. UML Activity diagrams - Oryx
4 (4/2): User experience and Touchpoints/UI Design – Balsamiq – (Amela Karahasanovic)
5 (11/2): UML and Req.Modeling –Agile User stories versus Use cases
6 (18/2): Requirements Modeling, Goal Modeling, BMM, and Non Functional requirements
7 (25/2): Model driven engineering – Metamodels, DSL, UML Profiles etc.
8 (4/3): Model driven engineering EMF, Eclipse, GMF
9 (11/3): Model driven engineering , transformation technologies (Franck Fleurey)
10(18/3): UML Service Modeling – SoaML, UML 2.0 Service composition, USDL, ISO 19119
11(8/4): BPMN and Business Process Management and CMMN and Case Management
12(15/4): UML and Entity and Information modeling, UML, ISO 19103
13(22/4): UML and Semantic models, Facts, SBVR, Ontologies, Rules
14(29/4): UML and Platform models, realisation, migration, Java, Apps, CloudML
15(6/5): Software Process modeling frameworks – SPEM/EPF, ISO 24744, FACESEM/ESSENCE
16(13/5): Conclusion and Summary for INF5120 - Preparation for Exam
Exam: Monday June 3rd, 2013, (4 hours)
Telecom and Informatics 3
INF5120 – Oblig plan - 2013
1 (14/1): Introduction
2 (21/1): myServiceFellow
3: (28/1): Oryx
4 (4/2): Balsamiq
5 (11/2): Use cases 2.0
6 (18/2): Oblig 1 – Group work
7 (25/2): EMF and Eclipse – Group presentation – Business Model
8 (4/3): EMF and GMF – Group presentation -
9 (11/3): Delivery of Oblig 1 – “Concierge – BA and Requirements Model”
10(18/3): Walk through of Oblig 1
11(8/4): Delivery of Oblig 2 – “Value Network editor in Eclipse”
12(15/4): Walk through of Oblig 2
13(22/4): Group work, Oblig 3 – Group presentation
14(29/4): Group work, Oblig 3 – Group presentation
15(6/5): Delivery of Oblig 3 – “Concierge – SA Model”
16(13/5): Walk trough of Oblig 3 - Preparation for Exam
Exam: Monday June 3rd, 2013, (4 hours)
Telecom and Informatics
Obligs
Partially individual, partially group - in 3 parts
Oblig 1 – Group “Personal Concierge” - Business
architecture and requirement models (March 11)
Oblig 2 – Individual – Eclipse editor for “Value networks”
(April 8)
Oblig 3 – Group “Personal Concierge” – System
architecture (May 6)
4
Telecom and Informatics
Student Groups
Group 1
Group 2
Group 3
5
Ungrouped – for group 4 and 5 …
Not attending ?? (have sent an e.mail now):
Telecom and Informatics
Students (1/2)
6
Davlet Dzhakishev
Soheil Mashayekhi
Yannick Lew
Animut Demeke
Karoline Lunder
Shahzad karamat
[email protected] Eunji Lee
Tommy Vitikka
Telecom and Informatics
Students (2/2) [email protected]
7
Philip Scheel
Zahraa Almasslawi
Arshad Alikamran
Ulrike Janke
Guangyu Han
Jesper Vestlie
Loan Nguyen
Bushra
Henrik Vest Simonsen
Mathias Renner
Telecom and Informatics
Strategyzer (Osterwalder)
8
Telecom and Informatics
ServiceML Editor
Web-based modelling editor http://tomcat.thingml.org/backend/poem/repository
User guide http://epf.thingml.org/wikis/neffics/practice.business.
service_modelling.base-
sintef/guidances/toolmentors/neffics_service_modell
ing_editor_user_guide_D29F2B87.html
Currently being extended to support AT
ONE Method (i.e., the Service
Innovation practice) http://epf.thingml.org/wikis/neffics/practice.innovatio
n.service_innovation.base-
sintef/guidances/practices/service_innovation_F3FE
D330.html
9
A
T
O
N
E
Telecom and Informatics
A – Actors
10
Value Network (VDML)
Services Architecture (SoaML)
Services Architecture (Business-SoaML)
Hybrid notation• Participants (from Value Network)
• Conversation (from BPMN 2.0)
• Groups a set of Flows
Telecom and Informatics
T – Touchpoints
11
Service Journey
Map• Service Journey:
Chronological
mapping (from the
customer point of
view) of a service
encounter.
• Model as "Stages"
• Attach
touchpoints to the
different stages
• Library of different
types of
touchpoints to
select from.
Telecom and Informatics
O – Offerings
12
Service Contract• Detailing of the
conversation.
• Conversation is
the grouping of
flows
(messages).
• Service
Contract
defines the
interfaces on
both side
(structure) and
the protocol
(behaviour) for
how to use
these
interfaces.
Telecom and Informatics
N – Needs
13
Goals and Objectives• We have not yet
implemented modelling
support for needs.
• One idea is to use a very
small subset of BMM
(Business Motivation
Model) standard.
• Goal: a statement about a
state or condition of the
enterprise to be brought
about or sustained through
appropriate Means (i.e.,
Offerings expressed as
Service Contracts).
• Objective: An Objective is a
statement of an attainable,
time-targeted, and
measurable target that the
enterprise seeks to meet in
order to achieve its Goals
Example of Goals and Objectives diagram
Telecom and Informatics
E – Experiences
14
Experiences• The idea is to extend the Service Journey Map.
• Each user/customer capture experiences (emotional
icons) related to each touchpoints and deviations in
the ideal/expected journey (seen from a Service
Provider side).Ref. also
myServiceFellow smart phone app
Telecom and Informatics
User Story template
I <in the role of XX> needs functionality <zzz> to achieve
the goal of <YYY>
15
Telecom and Informatics
Backlog metamodel
Telecom and Informatics 17
Inf5120.modelbased.net
Telecom and Informatics 18
Telecom and Informatics
Manifesto for Agile Software
Development
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
19
http://agilemanifesto.org/
Telecom and Informatics
Content
Essential Unified Process
Essworks and Essence – Principles and practices
Software Development Essentials
Product Essentials
User stories and Agile Requirements Engineering
Use Case Essentials
20
www.semat.org
21
Essence – Kernel and Language for
Software Engineering Methods
The joint submission for the OMG FACESEM standard
“A Foundation for the Agile Creation
and Enactment of Software Engineering Methods”
Book is available now – Safaribooksonline/Addison Wesley
22
22 June 2011
Problem Statement
• Why do so few software development teams really use
traditionally engineered methods and processes?
– Methods viewed as being too heavyweight and inflexible (i.e., “not
agile”)
– Not enough flexibility for the team to customize and tailor the
process they use (i.e., “be agile”)
– The underlying metaphor “The process is the program, the team is
the machine” doesn’t work.
• As a result, develop teams end up with
– An ad hoc development approach, or
– An approach overly influenced by the latest “hot” fad, or
– A limited tailoring of some method dictated to them.
• This limits the ability of a team to be effective and scalable
while remaining flexible and agile.
22 June 2011
Scope
• Goal: To support a development team in defining, refining and
customizing themselves the process they are actually using.
• Approach: A framework that allows for the rapid construction of
software methods for the team’s own use.
• Standard: A common foundation for various such frameworks.
• Foundational Concepts
– Method – A systematic way of doing things in a particular discipline (software engineering). A method is composed from practices.
– Practice – A general, repeatable approach to doing something with a specific purpose in mind, providing a systematic and verifiable way of addressing a particular aspect of the work at hand.
– Enactment – The carrying out of a method in the context of a specific project effort. A method is an enactable composite practice.
– Kernel – A domain model (for software engineering), providing a common terminology of concepts and their relationships that may be used in the definition of practices.
– Language – A modeling language for specifying practices based on the kernel and for composing methods from the practices.
Introduction to Essence
25
The Kernel
26
A stripped-down,
lightweight set of
definitions that captures
the essence of effective,
scalable software
engineering in a practice
independent way.
The Kernel is described
using a small subset of the
Language.
Alphas: The Essential Things to Work With
Customer
Solution
Endeavor
27
Alphas: Example
Requirements
Description
What the software system must do to address the opportunity and satisfy the stakeholders.
It is important to discover what is needed from the software system, share this understanding among the stakeholders and the
team members, and use it to drive the development and testing of the new system.
Associations
scopes and constrains : Work
28
Activity Spaces: The Essential Things to Do
29
Explore
PossibilitiesEnsure Stakeholder
Satisfaction
Shape
the System
Implement the
System
Test
the System
Deploy
the System
Use the System
Operate
the System
Understand
Stakeholder Needs
Prepare to do
the Work
Coordinate
Activity
Support the Team Stop the WorkTrack Progress
Understand the
Requirements
Activity Spaces: Examples
Scrum Essentials PracticeActivity Space
Activity
Activity Predecessor
Relationship
30
Focus areas
• Embodies the essence of software engineering in a kernel.
• Works with methods in an agile way that are as close to
practitioners’ practice as possible.
• Applies the principle of “separate of concerns”, focusing on
the things that matter the most.
• Focuses on helping the least experienced developers over
helping more experienced developers.
• Reflects an understanding that the majority of the
development community is interested in…
– the use of methods, not their definition.
– practice, not process or method engineering.
– intuitive and concrete graphical syntax, not formal semantics.
31
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Introduction to The Essentials
Module 1 – Principles and Practices
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Introduction to The Essentials
Module 2 – Software Development
Essentials
Telecom and Informatics
Use case modeling
35
Telecom and Informatics
Create GUI Mockups
36
Balsamiq: http://www.balsamiq.com
Telecom and Informatics
SiSaS – SINTEF Software as a Service
Methodology, sisas.modelbased.net
37
Telecom and Informatics
SiSaS – Disciplines and Practices
38
Telecom and Informatics
Template of a Use Case Description
……….
Telecom and Informatics
Telecom and Informatics
User Story template
I <in the role of XX> needs functionality <zzz> to achieve
the goal of <YYY>
41
Telecom and Informatics
Backlog metamodel
Telecom and Informatics
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Introduction to The
Essentials
Module 3 – Use-Case Essentials
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Introduction to The
Essentials
Module 3 – Use-Case Essentials
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Use-Case 2.0
Module 2 – Finding Actors and Use
Cases
Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved
Use-Case 2.0
Module 7 - Adapting Your Use-Case
Model - Using Include and Extend