INF5120 ”Modellbasert Systemutvikling” ”Modelbased System development”

Lecture 5: 10.02.2014 Arne-Jørgen Berre

[email protected] or [email protected]

Telecom and Informatics 1 Oblig 1 – Group work – Service Innovation and Design

“TravelAdvisor”

1. Business Model – Osterwalder/Strategyzer.com 2. Service Design – with smaply.com Personas, Stakeholder maps, Customer/Service journey maps 3. BPMN diagrams (use of Cameo EA MagicDraw) 4. User stories (Agile) and selected Use cases (use of Cameo EA MagicDraw) 5. UI Mockup (Balsamiq) 6. Non functional requirements

Telecom and Informatics 2 Obligs

 Partially individual, partially group - in 3 parts

 Oblig 1 – Group “TravelAdvisor” - Business architecture service design and use cases/requirement models (March 10)

 Oblig 2 – Individual – EMF editor with Graphiti for “Business Architecture DSL” (April 7)

 Oblig 3 – Group “TravelAdvisor” system architecture and realisation with WebRatio/IFML (May 5)

Telecom and Informatics 3 INF5120 - Lecture plan - 2014

 1 (13/1): Introduction – overview of the course. with UML and BPMN and DSLs  2 (20/1): Business Architecture – Business Model Canvas and Business Model Innovation with Value Networks, Strategyzer tool. BPMN modeling, MagicDraw EA tool  3: (27/1): Service Innovation and Service Design, AT ONE, Smaply – BPMN Examples  4 (3/2): User experience and Touchpoints/UI Design – Balsamiq/WebRatio  5 (10/2): UML and Req.Modeling –Agile User stories versus Use cases 2.0  6 (17/2): Requirements Modeling, Goal Modeling, BMM, and Non Functional requirements –

 7 (24/2): UI Models, WebML and IFML, Process models (WebRatio)  8 (3/3): Model driven engineering – Metamodels, DSL, UML Profiles  9 (10/3): Model driven engineering, transformation technologies  10(17/3): Method Engineering, SW Process frameworks , SPEM/EPF, ISO 24744, FACESEM/ESSENCE (Brian Elvesæter)  11(24/3): MDE and DSL in practice, with ThingML example

 12(31/3): System Architecture and Information/Ontology modeling, UML, ISO 19103  13(7/4): UML Service Modeling – SoaML, UML 2.0 Service composition, MagicDraw  EASTER  14(28/4): Platform models for the Cloud, with CloudML (Alessandro Rossini)  15(5/5): System realisation models (MagicDraw, JEE), MDA-ADM, SBVR, MDI  16(12/5): Conclusion and Summary for INF5120 - Final Oblig review  17(19/5): Preparation for Exam

 Exam: Monday June 2nd, 2014, (4 hours)

Telecom and Informatics 4 INF5120 - Exercise plan - 2014

 1 (13/1): Introduction  2 (20/1): Business Architecture  3: (27/1): Service Innovation and Service Design, AT ONE, Smaply – BPMN Examples  4 (3/2): Demo: Strategyzer, Smaply, Balsamiq  5 (10/2): Group presentation: Strategyzer – Business Model  6 (17/2): Group presentation: Smaply Service Design

 7 (24/2): Group presentation: Use cases/user stories with BPMN  8 (3/3): Group presentation: UI Design, Balsamiq , Eclipse intro  9 (10/3): Delivery of Oblig 1 - Discussion  10(17/3): EMF metamodel presentation  11(24/3): Graphiti presentations

 12(31/3): Graphiti presentation  13(7/4): Delivery of Oblig 2 – Discussion, and IFML  EASTER  14(28/4): IFML  15(5/5): Delivery of Oblig 3  16(12/5): Conclusion and Summary for INF5120 - Final Oblig review  17(19/5): Preparation for Exam – Old exams

 Exam: Monday June 2nd, 2014, (4 hours)

Telecom and Informatics 5 Strategyzer (Osterwalder)

Telecom and Informatics 6 Content

 Essential  Essworks and Essence – Principles and practices  Development Essentials  Product Essentials  User stories and Agile Requirements Engineering  Essentials

Telecom and Informatics 7 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]

www.semat.org

8 Book is available now – Safaribooksonline/Addison Wesley

9 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 for specifying practices based on the kernel and for composing methods from the practices. 22 June 2011 Introduction to Essence

12 The Kernel

A stripped-down, lightweight set of definitions that captures the essence of effective, The Kernel is described scalable software using a small subset of the engineering in a practice Language. independent way. 13 Alphas: The Essential Things to Work With

Customer

Solution

Endeavor

14 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

15 Activity Spaces: The Essential Things to Do

Explore Understand Ensure Stakeholder Use the System Possibilities Stakeholder Needs Satisfaction

Understand the Shape Implement the Test Deploy Operate Requirements the System System the System the System the System

Prepare to do Coordinate Support the Team Track Progress Stop the Work the Work Activity 16 Activity Spaces: Examples

Scrum Essentials Practice Activity Space

Activity

Activity Predecessor Relationship

17 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.

18 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

Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved 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

http://agilemanifesto.org/

22 Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved User Story template

• I needs functionality to achieve the goal of

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

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

25 Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved 26 Copyright © 2006-2010 Ivar Jacobson International SA. All rights reserved Use case modeling

Telecom and Informatics 27 Create GUI Mockups

Balsamiq: http://www.balsamiq.com

Telecom and Informatics 28 SiSaS – SINTEF Software as a Service Methodology, sisas.modelbased.net

Telecom and Informatics 29 SiSaS – Disciplines and Practices

Telecom and Informatics 30 Template of a Use Case Description

……….

Telecom and Informatics Telecom and Informatics User Story template

 I needs functionality to achieve the goal of

Telecom and Informatics 33 Backlog metamodel

Telecom and Informatics Telecom and Informatics 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

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