INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen...

46
Telecom and Informatics 1 INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre [email protected] or [email protected]

Transcript of INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen...

Page 1: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics 1

INF5120

”Modellbasert Systemutvikling”

”Modelbased System development”

Lecture 5: 11.02.2013Arne-Jørgen Berre

[email protected] or [email protected]

Page 2: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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)

Page 3: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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)

Page 4: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 8: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Strategyzer (Osterwalder)

8

Page 9: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 10: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 11: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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.

Page 12: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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.

Page 13: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 14: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 15: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

User Story template

I <in the role of XX> needs functionality <zzz> to achieve

the goal of <YYY>

15

Page 16: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Backlog metamodel

Page 17: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics 17

Inf5120.modelbased.net

Page 18: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics 18

Page 19: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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/

Page 20: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 21: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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”

[email protected]

Page 22: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Book is available now – Safaribooksonline/Addison Wesley

22

Page 23: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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.

Page 24: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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.

Page 25: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Introduction to Essence

25

Page 26: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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.

Page 27: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Alphas: The Essential Things to Work With

Customer

Solution

Endeavor

27

Page 28: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 29: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 30: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Activity Spaces: Examples

Scrum Essentials PracticeActivity Space

Activity

Activity Predecessor

Relationship

30

Page 31: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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

Page 32: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved

Introduction to The Essentials

Module 1 – Principles and Practices

Page 33: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved

Introduction to The Essentials

Module 2 – Software Development

Essentials

Page 34: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Use case modeling

35

Page 35: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Create GUI Mockups

36

Balsamiq: http://www.balsamiq.com

Page 36: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

SiSaS – SINTEF Software as a Service

Methodology, sisas.modelbased.net

37

Page 37: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

SiSaS – Disciplines and Practices

38

Page 38: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Template of a Use Case Description

……….

Page 39: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Page 40: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

User Story template

I <in the role of XX> needs functionality <zzz> to achieve

the goal of <YYY>

41

Page 41: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Backlog metamodel

Page 42: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Telecom and Informatics

Page 43: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved

Introduction to The

Essentials

Module 3 – Use-Case Essentials

Page 44: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved

Introduction to The

Essentials

Module 3 – Use-Case Essentials

Page 45: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved

Use-Case 2.0

Module 2 – Finding Actors and Use

Cases

Page 46: INF5120 - Lect. 5€¦ · ”Modelbased System development” Lecture 5: 11.02.2013 Arne-Jørgen Berre arneb@ifi.uio.no or Arne.J.Berre@sintef.no. Telecom and Informatics 2 INF5120

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