Lecture 5: 10.02.2014 Arne-Jørgen Berre
Total Page:16
File Type:pdf, Size:1020Kb
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 – Eclipse 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. Enterprise Architecture 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 – Requirements Engineering 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 Unified Process Essworks and Essence – Principles and practices Software Development Essentials Product Essentials User stories and Agile Requirements Engineering Use Case 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 modeling language 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 <in the role of XX> needs functionality <zzz> to achieve the goal of <YYY> 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 <in the role of XX> needs functionality <zzz> to achieve the goal of <YYY> 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.