Waterfall Development Process

Slides:



Advertisements
Similar presentations
1 Lecture 2: Processes, Requirements, and Use Cases.
Advertisements

HCI in the software process Chapter 6
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Information System Engineering
SYSC System Analysis and Design
CS3773 Software Engineering Lecture 03 UML Use Cases.
Design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before the next begins in practice, must.
September Ron McFadyen1 design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before.
Design analysis implementation testing maintenance Waterfall Development Process Linear one phase is completed before the next begins in practice, must.
COMP 350: Object Oriented Analysis and Design Lecture 3 Case Studies, Inception & Use Cases References: Craig Larman Chapters 3-6.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” - may be of.
03/12/2001 © Bennett, McRobb and Farmer Avoiding the Problems Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Understanding Requirements
Copyright ©2004 Cezary Z Janikow 1 Use Cases n Within Requirements discipline/workflow n Verbal descriptions of important functional (behavioral, transactional,
Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” - may be of use to you in the future “blackbox”
Jan 8, Ron McFadyen1 Waterfall Spiral UP Case study UML Use Cases.
Iterative development and The Unified process
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Unified Modeling Language 7/12/2015B.Ramamurthy1 The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson, and Jim Rumbaugh.
The first step in getting what you want is to decide what you want.
TK2023 Object-Oriented Software Engineering CHAPTER 6 SYSTEM SEQUENCE DIAGRAMS.
Chapter 7: The Object-Oriented Approach to Requirements
CIS 321—IS Analysis & Design
RUP Requirements RUP Artifacts and Deliverables
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
Faculty of Computer & Information Software Engineering Third year
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
 Development is organized in a series of short, fixed-length mini-projects called iterations  Iterations are also incremental  Successive enlargement.
UML-1 3. Capturing Requirements and Use Case Model.
© Bennett, McRobb and Farmer Avoiding the Problems Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
Rational Unified Process Mr Hisham AlKhawar. Iterative versus Waterfall  We need to use a life cycle model in order to approach developing a system easily,
Sept Ron McFadyen1 Today Sept 16: Chapters 1, 2, 3 Introductory material Next Tuesday Sept 21: Rational Rose and Use Cases Chapter 6 - Use.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
COMP-350 Object-Oriented Analysis and Design Drawing System Sequence Diagrams Reference: Larman, Chapter 9.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
© Bennett, McRobb and Farmer 2005
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Copyright © Craig Larman All Rights Reserved Use Cases.
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
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.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
TK2023 Object-Oriented Software Engineering
Software Development.
Elaboration popo.
System Development Process
Unified Modeling Language
Software Design Lecture : 15.
Unified Modeling Language
Other System Requirements
Use cases Dr. X.
Presentation transcript:

Waterfall Development Process analysis design implementation testing maintenance Linear one phase is completed before the next begins in practice, must revise earlier decisions based on experience in project - I.e. there is feedback

Waterfall Development Process analysis design implementation testing maintenance Not iterative errors in earlier phases are really expensive to fix doesn’t allow for prototyping which is a strong aid for confirming requirements

A Generic Spiral Process for Development evaluate Engineer (design, implement, test) Analyze requirements for this iteration Analyze risks / plan Studies show more successes with an iterative approach 4 phases comprise one iteration arbitrary number of iterations user involvement early feedback

Unified Process (UP) Defined by Rational Corporation Booch, Rumbaugh, Jacobson An iterative development process an iteration yields a working system iterations last anywhere from 2 weeks to 6 months many iterations make a project risk-driven early iterations prove out the major risks or show-stoppers

Unified Process (UP) several activities deliverables are referred to as artifacts - works produced (use cases, code, database designs, …) 4 phases inception, elaboration, construction, transition Inception Use case model is started

Figure 2.4 Illustrates the activities in UP used to develop a system Iterative development is central to the UP

Figure 2.3 illustrates the 4 phases comprising the UP More requirements gathering More programming

Unified Modeling Language (UML) Booch, Rumbaugh, Jacobson (the 3 Amigos) joined forces (all work for Rational) to create a unified development method/process, from which came the Unified Modeling Language (UML) Not a methodology Methodologies can use UML examples: Rational’s Unified Process; Catalysis value of UML is in the common language IT professionals have for expressing the nature of a system

Use Cases Use Cases help with: requirements capture scope definition iteration management test planning

Use Cases a Use Case is initiated by an Actor Describes functional requirements from the user’s perspective illustrate actors & tasks forms: pictorial (defined in UML) textual not defined in UML recommended to leave UI details out and focus on the purpose of the use case focus on what the system does, not how it does it (black box)

Use Cases Use cases can be used to identify/specify iterations what is done first second, third, etc. What do you choose to do when? Use Case with highest risk greatest complexity no risks nor complexity

Use Cases Risks/dangers when using use cases: too much focus on functionality may lead to non-OO system need time to allow time to refactor

Use Cases numerous forms brief, casual, fully dressed single- vs two-column form common format at www.usecases.org

Suppose our system interacts with a billing system: Actors An actor is anyone or thing that interacts with the system. These people or things are at the boundaries of the system. Suppose our system interacts with a billing system: Chair Assign duties Billing Browse enrollments Instructor Assign grades Its common to place non-human roles on the RHS Register for courses Student

Use Case Diagram

System Responsibilities Summary Use Case simplifies steps and details, an incomplete first draft. Useful during early requirements and scope analysis Actor Intentions 1. Customer presents items to rent. 2. Clerk records items. 5. Customer pays. System Responsibilities 3. Remember rented items. 4. Calculate and present price. 6. Authorize and record payment.

Detailed Use Case

An Order-Processing System Place order Get Order status Customer Rep Send catalog Customer Cancel order Shipping company Return product Deliver product Supplier Send us product Calculate postage Clerk

casual Cancel Order Use Case When the customer rep receives a request to cancel an order, the customer rep finds the order in the system and marks it canceled. Then a request is sent to the accounting system to credit the customer’s account

More formally Cancel Order Use Case 1. The use case begins when the customer rep receives a request to cancel an order 2. The customer rep enters an order ID 3. The customer rep presses Find 4. The system will display that order 5. The system marks the order canceled 6. The accounting system is notified to credit the customer’s account and the use case ends

Jacobson: estimates a 10-person-year project has 20 use cases How many Use Cases? Jacobson: estimates a 10-person-year project has 20 use cases Fowler: based on a recent project … about 100 use cases Use cases vary in granularity - Fowler prefers smaller-grained use cases Why was this important? It clarified our vocabulary and It included all the parts we needed to function Discuss other ways to write use cases narrative formal scripts

Scenarios A scenario refers to a single path through a use case, one that shows a particular combination of conditions within that use case. Consider a Use Case for ordering goods: Several associated scenarios: one in which all goes well one in which there are not enough goods one in which our credit is refused etc Why was this important? It clarified our vocabulary and It included all the parts we needed to function Discuss other ways to write use cases narrative formal scripts

Scenarios A Scenario is an instance of a Use Case. Hence, each Use Case usually has many possible Scenarios For example, two scenarios for Assign grades: Instructor Jim Jones assigns the grade of A+ to student Eddy Match in the course Intro to Warehousing. Instructor Jim Jones tries to assign the grade of B to student Edward Watson in the course Intro to Warehousing, but cannot because there is no record of Edward’s registration in the course.