Inception Chapter 4 Applying UML and Patterns -Craig Larman.

Slides:



Advertisements
Similar presentations
September 2008Mike Woodard Rational Unified Process Key Concepts Mike Woodard.
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Chapter 4: Inception is Not the Requirements Phase
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.
Slide 9.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.
SE 555 Software Requirements & Specification Beyond Requirements Based on Weigers Chapter17.
Dr. Kivanc DincerCS319 Week 1 - Sept.12,20051 Chapter 4 INCEPTION IS NOT THE REQUIREMENTS PHASE Objectives Define the inception step. Motivate the following.
NJIT Evolutionary Requirements Chapter 5 Applying UML and Patterns Craig Larman.
Iterative development and The Unified process
From Inception to Elaboration Chapter 8 Applying UML and Patterns -Craig Larman.
4. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the elements of project management and the responsibilities of a.
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.
Slide 1 Requirements Workflow. Slide 2 The Phases/Workflows of the Unified Process Figure 3.1 l Phase is Business context of a step Workflow is Technical.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
© 2005 Prentice Hall14-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
IS0514 Lecture - Week 2 Best Practice Development Methodology.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
RUP Fundamentals - Instructor Notes
A Development Process Lecture Oo13 Objectory based method.
Chapter 1 , 2 , 3 and 4 Applying UML and Patterns -Craig Larman
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Engineering Management Lecture 1 The Software Process.
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.
 Development is organized in a series of short, fixed-length mini-projects called iterations  Iterations are also incremental  Successive enlargement.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
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.
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.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Software Development.
Software Engineering Management
Applying UML and Patterns
UNIFIED PROCESS.
Unified Process (UP).
Requirements and the Software Lifecycle
COMP 350: Object Oriented Analysis and Design Lecture 2
Week 2.
Incremental Waterfall
Chapter 4 Inception CS John Cole.
Other System Requirements
CSCI 360: Software Architecture & Design
Presentation transcript:

Inception Chapter 4 Applying UML and Patterns -Craig Larman

Inception is NOT requirements Purpose is to decide whether to proceed with development, not to define requirements. Only key requirements are investigated.

Questions during inception What is the vision for this project? What is the business case? Is the project feasible? Should we buy or build? Rough estimate of cost? At end of inception: Go or No Go?

Inception in one sentence Determine the product scope, vision, and business case.

Problem statement Do the stakeholders have basic agreement on the vision of the project, and is it worth investing in serious investigation?

Inception Artifacts Not all documents are needed for every project.

Vision and Business Case Describes the high level goals and constraints, the business case, and provides an executive summary. Usually has an estimate of costs (+/- 100%) and expected benefits stated in financial terms.

Use Case Model Describes the functional requirements and related non-functional requirements. Preliminary only, usually the names of most of the expected use cases and actors, but usually only about 10% of the use cases are detailed. Do not confuse a use case diagram with a use case. It is mostly text.

Supplementary Specification Describes non-functional requirements that do not appear elsewhere. Functional requirements describe the functionality of the product. All other requirements that must be met are considered non-functional requirements.

Glossary Describes the key terms in the business domain.

Risk Plan Contains a list of known and expected risks. Includes business, technical, resource, and schedule risks identified by probability and severity. All significant risks should have a response or mitigation plan.

Prototypes / Proof of concepts These may be developed to clarify the vision, or to validate technical ideas. Inception phase prototypes are throw away prototypes, not evolutionary prototype that may be evolved into a product. They are often done with a prototyping tool.

Iteration Plan Describes what to do in the first iteration of the product. Usually implements the core functionality of the product. Eliminate biggest risk first. The worst risk is usually that the final product will not meet the most important requirement.

Phase / Software Development Plan A low precision guess for the duration and effort of the elaboration. Includes tools, people, training and other resources required. May also be called a Resource Plan.

Development Case A description of the Unified Process steps and artifacts for the project. Note that the UP is always customized for each project. All of these artifacts are partially completed in this phase and wait for iterative refinement.

You know you don’t understand Inception when… (signs of trouble)

Schedule Inception should last a few weeks at most.

Requirements defined Only key requirements should be described during inception. Save the rest for later phases and later iterations.

Accuracy of estimates There is a funnel of cost estimates. The earlier the estimate, the less accurate it is. Inception, Analysis, Design, Construction, next phase, etc… +/- 100% +/-50% +/- 25%+/-10% Some inception estimates are +400/-75%

Do not design architecture Architecture should be done iteratively during elaboration. Defer decisions as late as possible. The more you know, the less chance that you will make a bad decision.

Path to disaster The Waterfall method is too risky: Define the requirements Design the architecture Implement the product Use iterations instead.

Always needed The most essential inception document is the Business Case or Vision artifact. The main purpose is to decide whether or not to proceed with the project. Note that there are usually further Quality Gates that also must revisit the Go/No Go decision. (Just because you wasted $1 million is no reason to waste $10 million.)

Use Cases and Actors You should have identified most of the use cases and actors during inception. Do not detail all of the use cases. Only document the most important ones. About 10 or 20% of the use cases should be detailed enough to estimate the scope of the total project.