From Inception to Elaboration Chapter 8 Applying UML and Patterns -Craig Larman.

Slides:



Advertisements
Similar presentations
FROM INCEPTION TO ELABORATION Use Cases, Domain Models & SSDs Oh My!
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
CS487 Software Engineering Omar Aldawud
Chapter 2 Iterative , Evolutionary, and Agile. 2.1 What is the UP? Are Other Methods Complementary? 2.2 What is Iterative and Evolutionary Development?
Chapter 4: Inception is Not the Requirements Phase
PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases.
Object-Oriented Analysis and Design
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Rational Unified Process
COMP 350: Object Oriented Analysis and Design Lecture 3 Case Studies, Inception & Use Cases References: Craig Larman Chapters 3-6.
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
OO Development Process. UML and Process UML standardizes notation, not process –Increase likelihood of widespread acceptance There is significant variability.
Object-oriented Analysis and Design
NJIT 1 Iteration 2 Requirements and More GRASP Chapter 24.
Dr. Kivanc DincerCS319 Week 1 - Sept.12,20051 Chapter 4 INCEPTION IS NOT THE REQUIREMENTS PHASE Objectives Define the inception step. Motivate the following.
Iterative development and The Unified process
COMP 350: Object Oriented Analysis and Design Lecture 2
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
NJIT Inception is not the Requirements Phase Chapter 4 Applying UML and Patterns Craig Larman.
Week 3 Iteration 1 Domain Models System Sequence Diagrams.
© 2005 Prentice Hall14-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
UML - Development Process 1 Software Development Process Using UML (2)
Object-Oriented Analysis and Design Iterative Development and the Unified Process.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
RUP Fundamentals - Instructor Notes
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Iterative development and The Unified process Chapter 2 Applying UML and Patterns -Craig Larman.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Chapter 7 Applying UML and Patterns Craig Larman
Jan 7, A UP project organizes the work and iterations across four major phases: – Inception -- approximate vision, business case, scope, vague estimates.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Inception Chapter 4 Applying UML and Patterns -Craig Larman.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Chapter 4. Inception is NOT Requirements: Inception is a short, initial stage. Its purpose is a common vision and scope measurement. needed to do: –analyze.
Software Engineering 1 Object-oriented Analysis and Design Chap 24 Iteration 2 More Patterns.
Object-Oriented Analysis and Design Jan 26, 2009.
Week 2. Topics Inception phase Evolutionary requirements Use cases.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Inception is not Requirement phasee Chapter 3 and 4 Applying UML and Patterns -Craig Larman.
Rational Unified Process (RUP)
Chapter 8: Iteration 1 - Basics.  We review here the requirements for first iteration of our case studies. They are a subset of the requirements as described.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Chapter 8. Iteration 1, Elaboration: book view differs from reality for pedagogical reasons not doing “risk-driven” up front uses many OOA/D skills should.
Larman chapter 41 Inception Larman chapter 4 and 7.
The Unified Process and the Inception Phase James W. Benham CMPT 371 Fall 2004.
PART II INCEPTION Chapter 4 Inception is Not The Requirements Phase.
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XIV. From Requirements to Design in the UP.
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Elaboration popo.
Applying UML and Patterns
From Inception to Elaboration
UNIFIED PROCESS.
Unified Process (UP).
COMP 350: Object Oriented Analysis and Design Lecture 2
Software Development Process
Chapter 4 Inception CS John Cole.
Week 3 Iteration 1 Domain Models System Sequence Diagrams.
Week 3 Iteration 1 Domain Models System Sequence Diagrams.
Other System Requirements
CSCI 360: Software Architecture & Design
Presentation transcript:

From Inception to Elaboration Chapter 8 Applying UML and Patterns -Craig Larman

Objectives Elaboration is the initial series of iterations during which the team does the following Serious investigation Discover & stabilize major requirements Mitigate/retire risks ( business value ) Build core architecture elements Estimate overall schedule and resources Establish a supporting environment

Inception - Artifacts and Activities (1) Short Requirements workshop Naming most actors, goals, use cases Keep use cases brief (10-20% are in fully dressed) Identify most risky & influential quality requirements First version of Supplementary Specification and vision are written

Inception - Artifacts and Activities ( 2 ) Risk list (including deadlines on demo) Technical feasibility investigation (does the requirements supported by our used technology? ) UI oriented prototypes to clarify vision Buy/build/reuse components (ex: recommendations to buy a tax calculator) High-level candidate architecture (a rough estimate of various accessories; a java front end? ) Plan for the first iteration Candidate tools list

Elaboration - Key Ideas Not a waterfall model ! Two to six weeks for each iteration Timeboxed iterations (deadlines should be strictly maintained) Each iteration products ends in a stable and tested release

Architecture Prototype/Baseline Not a partial system Evolutionary prototype of final product Don’t create throw-away prototypes Production subset of final system Also called Executable Architecture

Best Practices Start programming early Adapt based on feedback from tests, users, developers Design, implement and test adaptively Test early and realistically Requirements and use case details through series of workshops (once per iteration)

Requirements and Iterations ranking depends on…. Risk -includes technical complexity and other factors. Coverage -whether all major parts are covered or not. Criticality -functions of high business value.

Ranking Rank work across iterations High ranking scenarios in early iterations (ex: process sales, logging, etc.) Rank adaptively

UP Artifacts planning Iteration Plan:- only the next iteration is planned Change Request:- plan written in greater detailed whenever necessary Software Development Plan:- overall requirement ranking is recorded.

Artifacts starting in Elaboration (this will not be completed rather refined over iterations) Domain Model (conceptual class diagram) Design Model (logical design: class diagram, object oriented diagram, etc.) Software Architecture Document (summary of ideas and motivations) Data Model (database schemas..) Test Model Implementation Model (source code, databases and so on. ) Use-Case Storyboards and UI Prototypes (description of user interfaces, navigations etc.

Inception and Elaboration Main output is a stable software architecture, that enables quality planning of Construction and Deployment 15 to 25 percent of total project cost

You didn’t Understand Elaboration When … No Timeboxed schedule Single Iteration Most requirements already defined No Risk mitigation/resolution No Executable Architecture Requirements Phase Attempt full and careful design

You didn’t Understand Elaboration When (2)... Minimal feedback and adaptation No early and realistic testing Frozen Architecture No Proof-of-concept programming No multiple requirements workshops