Use Case Modeling. Announcement. Agenda. Lecture 3. Please read chapter 4, 6, 8, 9 & 40! Inception overview Evolutionary requirements Use cases

Size: px
Start display at page:

Download "Use Case Modeling. Announcement. Agenda. Lecture 3. Please read chapter 4, 6, 8, 9 & 40! Inception overview Evolutionary requirements Use cases"

Transcription

1 Use Case Modeling Lecture 3 1 Announcement Please read chapter 4, 6, 8, 9 & 40! 2 Agenda Inception overview Evolutionary requirements Use cases 3 1

2 Inception Stage The initial stage of a project Questions to be asked: What is the vision and the business case for this project? Feasible? Buy and/or build? Rough estimate of cost: $10K, $100K, $1M, Should we proceed or stop? 4 Goals of Inception to do just enough investigation to form a rational, justifiable opinion of the overall purpose and feasibility of the potential new system. Envision the product scope, vision and business case Do the stakeholders have basic agreement on the vision of the project? Is it worth investigating seriously? 5 Artifacts in Inception Artifact Vision and Business Case Use-Case Model Comment Describe the high-level goals and constraints, the business case, and provides an executive summary Describes the functional requirements. During inception, the names of most use cases will be identified, and perhaps 10% of the use cases will be analyzed in detail Supplementary specification Glossary Risk List & Risk Management plan Prototypes and proof-ofconcepts Iteration Plan Other requirements Key domain terminology, and data dictionary Describes the risks (business, technical, resource, schedule) and ideas for their mitigation or response. To clarify the vision, and validate technical ideas Describes what to do in the first elaboration iteration Phase Plan & Software Development plan Development Case Low-precision guess for elaboration phase duration and effort. Tools, people, education, and other resources A description of the customized UP steps and artifacts for this project. In the UP, one always customizes it for the project. 6 2

3 7 Understanding Requirements Capabilities and conditions to which the system and project must conform [Jacobson et al., 1999] Challenges: {find, communicate, record, manage} }the requirements 8 Categorizing Requirements Functional vs. Non-Functional Behavioral features, capabilities vs. everything else Non-Functional requirements may be further divided into quality attributes and constraints Quality Attributes, or -ilities Usability, reliability, supportability, performance (nonfunctional) The quality attributes have a strong influence on the architecture of a system Constraints Hardware, interface, language, legal, 9 3

4 Document Requirements Primarily, in the use case model functional requirements and some other requirements Also, supplementary specifications other requirements Glossary noteworthy terms Vision high-level requirements Business rules requirements or policies that transcend one software project many applications in the same domain may need to conform to them 10 The Use Case Model Writing Requirements in Context Identify user goals, corresponding system functions / business processes Brief, casual, and fully-dressed format Actor System Goal 11 Stories Using a system to meet goals E.g. brief format Process Sale: A customer arrives at a checkout with items to purchase. The cashier uses the POS system to record each purchased item. The system presents a running total and dline-item it details. The customer enters payment information, which the system validates and records. The system updates inventory. The customer receives a Receipt from the system and then leaves with the items. Usually, writing the stories is more important than diagramming a use case model in UML 12 4

5 Definitions Actor: something with a behavior; person, system, organization Scenario: specific sequence of actions and interactions between actor(s) and system (= one story; success or failure) Use Case: collection of related success and failure scenarios describing the actors attempts to support a specific goal 13 Examples Handle Returns Main Success Scenario: A customer arrives at a checkout with items to return. The cashier uses the POS system to record each returned item Alternate Scenarios: If they paid by credit, and the reimbursement transaction to their credit account is rejected, inform the customer and pay them with cash. If the item identifier is not found in the system, notify the cashier and suggest manual entry of the identifier code If the system detects failure to communicate with the external accounting system (etc.) 14 Why use cases? A key attitude in use case work is to focus on the question how can using the system provide observable value to the user, or fulfill their goals? rather than merely thinking of requirements in terms of a list of features or functions Focus on business process, not technology features 15 5

6 Common use case formats Brief: one-paragraph summary, main success scenario When? During early requirements analysis Casual: multiple, informal paragraphs covering many scenarios When? Also early requirements analysis Fully-Dressed: all steps and variations written in detail with supporting sections See When? Before each elaboration starts, do it for a portion of use cases selected for the following elaboration 16 NextGen POS example Start from page 68 of textbook A fully dressed example Use case name Scope & level Primary Actor Stakeholders and Interests Preconditions Success Guarantee Main Success scenario Extensions Special Requirements Technology and Data Variations List Miscellaneous 17 Details Use case name Start with a verb Process Sale Scope The system under design NextGen POS application Level User-goal or subfunction User-goal Primary actor Calls on the system to delivery the service Cashier Stakeholders and interests Who care about this use case and what do they want? Government Tax Agencies: Want to collect tax from every sale 18 6

7 Details Preconditions What must be true on start, and worth telling the reader Cashier is identified and authenticated Success Guarantee What must be true on successful completions, and worth telling the reader Sales is saved. Tax is correctly calculated 19 Details Main Success Scenario (or Basic flow) A typical, unconditional happy path scenario of success Record steps: An interaction between actors A validation (usually by the system) A state change by the system E.g. 1. Customer arrives at a POS checkout 2. Cashiers starts a new sale 3. Cashier enters item identifier 4. System record sales line item Cashier repeats steps 3-4 until indicates done. 5. System presents total with taxes calculated Details Extensions ( or Alternate Flows ) Alternate scenarios of success or failure Scenario branches (success/failure) Longer/more complex than basic flow Branches indicated by letter following basic flow step number, e.g. 3a Two parts: condition, handling E.g. Extensions: 3a. Invalid identifier 1. System signals error and reject entry When possible write the condition as something that can be detected 5a: System can not communication with external tax calculation system 5a: External tax calculation system not working If condition can arise within a range of steps 3-6a: customer asks Cashier to remove an item from the purchase 1. Cashier enters the item identifier for removal from the sale 2. System displays updated running total. At the end of extension handling, by default the scenario merges back with the main success scenario, unless the extension indicates otherwise 21 7

8 Details Special Requirements Related non-functional requirements Touch screen UI on a large flat panel monitor Language internationalization on the text displayed Technology and Data Variation List Varying I/O methods and data formats (non-functional constraints expressed by the stakeholder) Item identifier entered by laser scanner or keyboard Credit account information entered by card reader or keyboard 22 Guidelines 1 Write in an essential UI-Free Style The narrative is expressed at the level of the user s intentions and system s responsibilities Essential Style 1. Administrator identified self. 2. System authenticates identity. 3. Concrete Style 1. Administrator enters ID and passwd in dialog box (see picture 3) 2. System authenticates Administrator. 3. System displays the edit users window (see picture 4) Guideline 2 Write Black-Box use cases Focus on what, not how Good: The system records the sale Bad: The system writes the sale to a database Worse: The system generates a SQL INSERT statement 24 8

9 Guideline 3 Take an actor and actor-goal perspective a set of use-case instances, where each instance is a sequence of actions a system performs that yields an observable result of value to a particular actor Write requirements focusing on the users or actors of a system Focus on understanding what the actor considers a valuable result. 25 How to find use cases (Guideline 4) Choose the system boundary Software, hardware, person, organization Identify the primary actors Goals fulfilled by using the system Identify goals for each actor Define use cases that satisfy goals User-goal level use cases will be one-to-one with user goals Exception: CRUD (Create, Retrieve, Update, Delete) E.g., edit user, delete user, Collapse into a single use case (e.g., Manage Users) 26 Choose the system boundary In the case study, the POS system itself is the system under design; Everything outside of it is outside the system boundary Identify what is outside would help to identify the boundary 27 9

10 Find primary actor and goals Questions to help find actors and goals Is time an actor because the system does something in response to a time event? In addition to human primary actors, are there any external software or robotic systems that call upon services of the system? Actor Cashier Goal Process sales Process rentals Handle returns Manager Start t up Shut down System Admin Sales activity System Add user Modify user Analyze sales and performance data 28 Valid or useful use cases Which of these is a valid use case? Negotiate a Supplier Contract Handle Returns Log In Insert a card in an ATM machine All are valid, but at different level; better question is what is a useful level to express use cases 29 Guideline 5: Tests for Use Cases Boss test Log in does not sounds like something that will make your boss happy The EBP test Elementary Business Process A task performed by one person in one place at one time, in response to a business event, which adds measurable business value and leaves the data in a consistent states, e.g. Approved Credit or Price Order. The size test A use case is very seldom a single action or step

11 Guideline 5 : Tests (cont ed) Applying the tests Negotiate a Supplier Contract Much broader and longer than an EBP Handle returns Ok with the boss. Seems like an EBP. Size is good Log In Not OK with the boss, no measurable business value Insert a card in an ATM machine Single step fail the size test Reasonable violations of the tests It is sometimes useful to write separate subfunction-level use cases representing subtasks or steps within a regular EBPlevel use case. 31 Applying UML: Use Case Diagram system boundary NextGen communication Cashier Process Sale Handle Returns alternate notation for a computer Payment system acto Authorization Service actor Process Rental «actor» Tax Calculator «actor» Sales Activity System System Administrator Cash In Analyze Activity Manage Security Manage Users... «actor» Accounting System «actor» HR System use case Use case diagram is an Excellent picture of the system context. It serves as a communication tool that summarizes the behavior of a system and its actors 32 Diagram notation For a use case context diagram, limit the use cases to user-goal level use cases. Show computer system acto with an alternate notation to human actors. NextGen Cashier Process Sale... «actor» Payment Authorization Service primary actors on the left supporting actors on the right 33 11

12 Alternate actor notation NextGen Process Sale... «system» Payment Payment Authorization Authorization Service Service «actor» Payment Authorization Service Some UML alternatives to illustrate external actors tha other computer systems. The class box style can be u for any actor, computer or human. Using it for compute actors provides visual distinction. 34 The include relationship Partial behavior that is common across several use cases E.g., PayByCredit occurs in several use cases: Process Sale, Process Rental, and so on Solution: represent as a separate use case Refactoring and linking text to avoid duplication (Larman) Use include when you are repeating yourself in two or more separate use cases and you want to avoid repetition (Fowler) 35 Example of include relationship UC1: Process Sale Main Success Scenario: 1. Customer arrives at a POS checkout with goods and/or services to purchase. 7. Customer pays and System handles payment Extensions: 7b. Paying by credit: Include Handle Credit Payment. 7c. Paying by check: Include Handle Check Payment UC7: Process Rental Extensions: 6b. Paying by credit: Handle Credit Payment

13 Included use case UC12: Handle Credit Payment Level: subfunction Main Success Scenario 1. Customer enters their credit account information 2. System sends payment authorization request to an external payment authorization ti service system and request payment approval Extensions: 2a. System detects failure to collaborate with external system: 1. system signals error to cashier 2. Cashier asks customer for alternate payment 37 The include relationship To decompose an overwhelmingly long use case into subunits to improve comprehension Using include with asynchronous event handling Eg. UC8: Process self-help check out Main Success Scenario 1 Extensions: a* At any time, customer selects printing help: Present Printing Help 38 Model include relationship in use case diagram NextGen POS Process Sale Some case tool (Visio) use <<uses>> instead Cashier «include» «include» «include» «actor» Accounting System Customer UML notation: the base use case points to the included use case Handle Check Payment «include» Handle Cash Handle Credit Payment Payment «include» «include» Process Rental «actor» Credit Authorization Service Handle Returns Manage Users

14 The extend relationship How to add an extension to a use case that is frozen or too complicated? Solution: use extend to relate to an addition use case Describe where and under what condition the additional use case extends the behavior of the base use case (use extension point) 40 Example of extend relationship UC1: Process Sale (the base use case) Extension Points: VIP Customer, step1. Payment, step 7. Main Success Scenario: 1. Customer arrives at a POS checkout with goods and/or services to purchase 7. Customer pays and system handles payment UC15: Handle Gift Certificate Payment (the extending use case)... Trigger: Customer wants to pay with gift certificate Extension Points: Payment in Process Sale Level: subfunction Main Success Scenario: 1. Customer gives gift certificate to Cashier 2. Cashier enters gift certificate ID 41 Extend relationship in use case diagram Process Sale Extension Points: Payment VIP Customer «extend» Payment, if Customer presents a gift certificate Handle Gift Certificate Payment UML notation: 1. The extending use case points to the base use case. 2. The condition and extension point can be shown on the line. Handle Gift Certificate payment use case could be expressed in include relationship as well Handle Gift Certificate could simply have been recorded by adding it as an extension in the Extensions section of Process Sale 42 14

15 Extend vs. include relationships Direction of the relationship For include relationship, the event triggering the target use case is described in the flow of event of the source use case (user-goal level) For extend relationships, the event triggering the source (the extending) use case is described in the source use case( sub-function level). The base use case have no knowledge of the extending use case The purpose of adding include and extend relationships is to reduce or remove redundancies from the use case model 43 Heuristics for extend and include relationship Use extend relationships for exceptional, optional or seldom-occurring behavior Use include relationship for behavior that is shared across two or more use cases Do not over structure t the use case model. A few longer use case (two pages long) are easier to understand and review than many short ones (eg. 10 lines long) Always use the include relationship between use cases, rather than a mixture of include and extend. 44 Requirements in context Traditional detailed, low-level function lists ID FEAT1.9 FEAT2.4 Feature The system shall accept entry of item identifiers The system shall log credit payments to the accounts receivable system Use case organize a set of requirements in the context of typical scenarios of using a system. Improves cohesion and comprehension to group requirement by user-oriented scenarios 45 15

16 Requirements in context High-level system feature lists are acceptable Summary of System features Sales capture Payment authorization Manage users When are detailed feature lists appropriate rather than use case Application server, database products, other middleware or back-end systems need to be primarily considered and evolved in terms of features 46 How to work with use cases in iterative methods Use case driven development Functional requirements are primarily recorded in use cases Use cases are important to iterative planning Use case realizations drive the design Use cases influence the organization of user manuals Test cases correspond to use cases Create UI shortcut for more common scenarios of important use cases 47 Thanks 48 16

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using

More information

Requirement engineering Exercise the POS System solution

Requirement engineering Exercise the POS System solution Requirement engineering Exercise the POS System solution Problem Description A POS (Point-Of-Sale) system is a computer system typically used to manage the sales in retail stores. It includes hardware

More information

6 USE CASES. Introduction. Chapter 6. Objectives. The indispensable first step to getting the things you want out of life: decide what you want.

6 USE CASES. Introduction. Chapter 6. Objectives. The indispensable first step to getting the things you want out of life: decide what you want. UML and Patterns.book Page 61 Thursday, September 16, 2004 9:48 PM Chapter 6 6 USE CASES The indispensable first step to getting the things you want out of life: decide what you want. Ben Stein Objectives

More information

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes

More information

Using Use Cases on Agile Projects

Using Use Cases on Agile Projects Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use

More information

Software Requirement Specification

Software Requirement Specification Software Requirement Specification Software Engineering 1 Requirements Analysis 1 As Marketing requested it. Software Engineering 2 Requirements Analysis 2 As Sales ordered it. Software Engineering 3 Requirements

More information

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group

More information

Requirements engineering

Requirements engineering Learning Unit 2 Requirements engineering Contents Introduction............................................... 21 2.1 Important concepts........................................ 21 2.1.1 Stakeholders and

More information

Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011

Use Cases. Massimo Felici. Massimo Felici Use Cases c 2004 2011 Use Cases Massimo Felici Use Cases 1 Support requirements engineering activities and the requirement process Capture what a system is supposed to do, i.e., systems functional requirements Describe sequences

More information

Scenario-based Requirements Engineering and User-Interface Design

Scenario-based Requirements Engineering and User-Interface Design Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria kaindl@ict.tuwien.ac.at

More information

Tips for writing good use cases.

Tips for writing good use cases. Transforming software and systems delivery White paper May 2008 Tips for writing good use cases. James Heumann, Requirements Evangelist, IBM Rational Software Page 2 Contents 2 Introduction 2 Understanding

More information

Use-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML

Use-Case Analysis. ! What is it? ! From where did it come? ! Now part of UML Use-Case Analysis Use-Case Analysis! What is it?! An informal, user-friendly, technique useful for functional requirements analysis and specification! From where did it come?! Ivar Jacobson, a Swedish

More information

Case Study: Inception Phase. L. ch. 3-5

Case Study: Inception Phase. L. ch. 3-5 Case Study: Inception Phase L. ch. 3-5 An Example System Let s consider a familiar example: a POS system A learning strategy: Learn ideas and concepts on the POS system UML itself is among those ideas/concepts

More information

Requirements / Use Case Specification

Requirements / Use Case Specification Object - Oriented Programming & Design Part IX - UML Use Case Diagrams CSCI 4448 - Spring 2002 Requirements / Use Case Specification Your way of echoing to the customer what you heard him/her say he/she

More information

User experience storyboards: Building better UIs with RUP, UML, and use cases

User experience storyboards: Building better UIs with RUP, UML, and use cases Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements

More information

Writing Use Case Scenarios for Model Driven Development

Writing Use Case Scenarios for Model Driven Development Writing Use Case Scenarios for Model Driven Development This guide outlines how to use Enterprise Architect to rapidly build Use Cases and increase your productivity through Model Driven Development. Use

More information

Use Case Modeling. Software Development Life Cycle Training. Use Case Modeling. Set A: Requirements Analysis Part 3: Use Case Modeling

Use Case Modeling. Software Development Life Cycle Training. Use Case Modeling. Set A: Requirements Analysis Part 3: Use Case Modeling Software Development Life Cycle Training Set A: Requirements Analysis Part 3: Use Case Modeling Use Case Modeling There are several ways to capture and organize software system requirements. The first

More information

Communication Diagrams

Communication Diagrams Communication Diagrams Massimo Felici Realizing Use cases in the Design Model 1 Slide 1: Realizing Use cases in the Design Model Use-case driven design is a key theme in a variety of software processes

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

Use Cases and Scenarios

Use Cases and Scenarios Use Cases and Scenarios We Will Cover What is a use-case Use-case versus user interaction Use-Case diagrams The constructs in the use-case diagrams Capturing the use-case High-level use-case Extended use-case

More information

Use Case Diagrams. Tutorial

Use Case Diagrams. Tutorial Use Case Diagrams Tutorial What is a use case? A requirements analysis concept A case of a use of the system/product Describes the system's actions from a the point of view of a user Tells a story A sequence

More information

Software Engineering Reference Framework

Software Engineering Reference Framework Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of

More information

An Approach to Software Architecture Description Using UML

An Approach to Software Architecture Description Using UML An Approach to Software Architecture Description Using UML Henrik Bærbak Christensen, Aino Corry, and Klaus Marius Hansen Department of Computer Science, University of Aarhus Aabogade 34, 8200 Århus N,

More information

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.) The Software Process Xiaojun Qi 1 The Unified Process Until recently, three of the most successful object-oriented methodologies were Booch smethod Jacobson s Objectory Rumbaugh s OMT (Object Modeling

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

VALLIAMMAI ENGINEERING COLLEGE S.R.M. Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VALLIAMMAI ENGINEERING COLLEGE S.R.M. Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VALLIAMMAI ENGINEERING COLLEGE S.R.M. Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Sub Code : CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year : ME CSE / I Year

More information

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53 Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software

More information

The Unified Software Development Process

The Unified Software Development Process The Unified Software Development Process Technieche Universal Darmstadt FACHBEREICH IN-FORMAHK BLIOTHEK Ivar Jacobson Grady Booch James Rumbaugh Rational Software Corporation tnventar-nsr.: Sachgebiete:

More information

Click DVDs. Just click to pick. CS4125 Systems Analysis and Design Chantelle Geoghegan - 0544981 Danielle Frawley- 0545511

Click DVDs. Just click to pick. CS4125 Systems Analysis and Design Chantelle Geoghegan - 0544981 Danielle Frawley- 0545511 Click DVDs Just click to pick CS4125 Systems Analysis and Design Chantelle Geoghegan - 0544981 Danielle Frawley- 0545511 BLANK MARKING SCHEME CS4125: Systems Analysis Assignment 1: Semester II, 2008-2009

More information

Use Cases and Scenarios! We Will Cover!

Use Cases and Scenarios! We Will Cover! Use Cases and Scenarios! : UML-- Use Cases 1 We Will Cover! What is a use-case! Use-case versus user interaction! Use-Case diagrams! The constructs in the use-case diagrams! Capturing the use-case! High-level

More information

Sofware Requirements Engineeing

Sofware Requirements Engineeing Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable

More information

OO Analysis and Design with UML and USDP. Solutions. Created by Dr. Jim Arlow. Version 2.0

OO Analysis and Design with UML and USDP. Solutions. Created by Dr. Jim Arlow. Version 2.0 OO Analysis and Design with UML and USDP Solutions Created by Dr. Jim Arlow Version 2.0 Table of Contents 1 OOAD with UML and USDP - Sample Solutions....................... 1 1.1 Introduction............................................1

More information

Announcements. HW due today, 2 to grade this week Welcome back from Spring Break!

Announcements. HW due today, 2 to grade this week Welcome back from Spring Break! Announcements HW due today, 2 to grade this week Welcome back from Spring Break! Analysis (Domain) Modeling: Introduction Reading: Arlow and Neustadt chaps. 8, 9 (& 7) Also see Larman Chapter 10 (2 nd

More information

Living Requirements Document: Sniffit

Living Requirements Document: Sniffit Living Requirements Document: Sniffit RFID locator system Andrew Pang Braulio Fonseca Enrique Gutierrez Nader Khalil Sohan Shah Victor Porter Introduction Sniffit is a handy tracking application that helps

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

Requirements engineering and quality attributes

Requirements engineering and quality attributes Open Learning Universiteit Unit 2 Learning Unit 2 Requirements engineering and quality attributes Contents Introduction............................................... 21 2.1 Important concepts........................................

More information

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice In this Lecture you will Learn: Development Chapter 5C About the Unified Software Development How phases relate to workflows in an iterative life cycle An approach to system development Major activities

More information

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)

More information

Supply Chain Management Use Case Model

Supply Chain Management Use Case Model Supply Chain Management Use Case Model Date: 2002/11/10 This version: http://www.ws-i.org/sampleapplications/supplychainmanagement/2002-11/scmusecases-0.18- WGD.htm Latest version: http://www.ws-i.org/sampleapplications/supplychainmanagement/2002-11/scmusecases-0.18-

More information

How To Adopt Rup In Your Project

How To Adopt Rup In Your Project 08Bergstrom.C08 Page 127 Thursday, December 4, 2003 12:06 PM 8 How to Adopt RUP in Your Project Support Projects with Mentoring Make a High-Level Adoption Plan and Develop a Communication Plan Project

More information

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT Team Project Due Dates: See syllabus for due dates for each milestone This project spans much of the semester, to be completed as a series of milestones, each

More information

Course Registration Case Study

Course Registration Case Study Course Registration Case Study Table of Contents Case Study...1 Case Study Background... 2 Course Registration System Problem Statement... 2 The Role of Tools... 2 Project Summary... 2 The Inception Phase...

More information

Process Modeling. Chapter 6. (with additions by Yale Braunstein) Slide 1

Process Modeling. Chapter 6. (with additions by Yale Braunstein) Slide 1 Process Modeling Chapter 6 (with additions by Yale Braunstein) Slide 1 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 John Wiley & Sons, Inc. All rights reserved.

More information

Sub Code: CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year: ME CSE / I Year Staff in charge: Dr.M.Senthil Kumar

Sub Code: CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year: ME CSE / I Year Staff in charge: Dr.M.Senthil Kumar VALLIAMMAI ENGINEERING COLLEGE S.R.M. Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Sub Code: CP7007 Sub Name: SOFTWARE REQUIREMENTS ENGINEERING Branch / Year: ME CSE / I Year Staff

More information

Spiel. Connect to people by sharing stories through your favorite discoveries

Spiel. Connect to people by sharing stories through your favorite discoveries Spiel Connect to people by sharing stories through your favorite discoveries Addison Leong Joanne Jang Katherine Liu SunMi Lee Development & user Development & user Design & product Development & testing

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,

More information

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor Applying Use Cases to Microcontroller Code Development Chris Gilbert Cypress Semiconductor Agenda Why Use Cases Microcontroller Project Development Use Cases Defined Use Cases Composition General Example

More information

Software Requirements Specification of A University Class Scheduler

Software Requirements Specification of A University Class Scheduler Software Requirements Specification of A University Class Scheduler Deanna M. Needell Jeff A. Stuart Tamara C. Thiel Sergiu M. Dascalu Frederick C. Harris, Jr. Department of Computer Science University

More information

Modeling Guidelines Manual

Modeling Guidelines Manual Modeling Guidelines Manual [Insert company name here] July 2014 Author: John Doe john.doe@johnydoe.com Page 1 of 22 Table of Contents 1. Introduction... 3 2. Business Process Management (BPM)... 4 2.1.

More information

11 Tips to make the requirements definition process more effective and results more usable

11 Tips to make the requirements definition process more effective and results more usable 1 11 Tips to make the s definition process more effective and results more usable This article discusses what I believe are the key techniques for making s definition process repeatable from project to

More information

Plan-Driven Methodologies

Plan-Driven Methodologies Plan-Driven Methodologies The traditional way to develop software Based on system engineering and quality disciplines (process improvement) Standards developed from DoD & industry to make process fit a

More information

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology. 4. Multiagent Systems Design Part 2: Multiagent Syste ems (SMA-UPC) https://kemlg.upc.edu The PROMETHEUS methodology. Javier Vázquez-Salceda SMA-UPC Methodological Extensions to Object-Oriented Approaches

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

BUSINESS RULES AND GAP ANALYSIS

BUSINESS RULES AND GAP ANALYSIS Leading the Evolution WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Discovery and management of business rules avoids business disruptions WHITE PAPER BUSINESS RULES AND GAP ANALYSIS Business Situation More

More information

A Process is Not Just a Flowchart (or a BPMN model)

A Process is Not Just a Flowchart (or a BPMN model) A Process is Not Just a Flowchart (or a BPMN model) The two methods of representing process designs that I see most frequently are process drawings (typically in Microsoft Visio) and BPMN models (and often

More information

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring 2008. For the 1 st Quiz

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring 2008. For the 1 st Quiz COSC 3351 Software Design Recap for the first quiz Spring 2008 For the 1 st Quiz Three large topic areas: UML syntax and diagrams Software architectural styles Object oriented design principles A couple

More information

Requirements Engineering Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 7 Slide 1

Requirements Engineering Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 7 Slide 1 Requirements Engineering Processes Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 7 Slide 1 Objectives To describe the principal requirements engineering activities and their relationships

More information

WRITING AND REVIEWING USE-CASE DESCRIPTIONS

WRITING AND REVIEWING USE-CASE DESCRIPTIONS PART II WRITING AND REVIEWING USE-CASE DESCRIPTIONS Part I, Getting Started with Use-Case Modeling, introduced the basic concepts of usecase modeling, including defining the basic concepts and understanding

More information

How To Develop Software

How To Develop Software Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which

More information

Sequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c 2004 2011

Sequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c 2004 2011 Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions

More information

Business Systems Analysis Certificate Program. Millennium Communications & Training Inc. 2013, All rights reserved www.mcomtraining.

Business Systems Analysis Certificate Program. Millennium Communications & Training Inc. 2013, All rights reserved www.mcomtraining. Business Systems Analysis Certificate Program Millennium Communications & Training Inc. 2013, All rights reserved www.mcomtraining.com www.pebblehills.edu Program Delivery Partner Certification Endorsement

More information

Requirements Engineering for Web Applications

Requirements Engineering for Web Applications Web Engineering Requirements Engineering for Web Applications Copyright 2013 Ioan Toma & Srdjan Komazec 1 What is the course structure? # Date Title 1 5 th March Web Engineering Introduction and Overview

More information

Expense Tracker. CSC 230: Software Engineering. Department of Computer Science, Sacramento State University Spring 2015. Professor :Dr.

Expense Tracker. CSC 230: Software Engineering. Department of Computer Science, Sacramento State University Spring 2015. Professor :Dr. CSC 230: Software Engineering Department of Computer Science, Sacramento State University Spring 2015 Expense Tracker Professor :Dr. Doan Nguyen Team # 12: Savleen Kaur Arundhati Wahane 1 Table of Contents

More information

Using UML Part Two Behavioral Modeling Diagrams

Using UML Part Two Behavioral Modeling Diagrams UML Tutorials Using UML Part Two Behavioral Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,

More information

Classical Software Life Cycle Models

Classical Software Life Cycle Models Classical Software Life Cycle Models SWEN 301 Trimester 1, 2015 Lecturer: Dr Hui Ma Engineering and Computer Science Lecture slides make use of material provided on the textbook's companion website Motivation

More information

Object-Oriented Design Guidelines

Object-Oriented Design Guidelines Adaptive Software Engineering G22.3033-007 Session 8 Sub-Topic 3 Presentation Object-Oriented Design Guidelines Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute

More information

Software Requirements Specification for POS_Connect Page 1. Software Requirements Specification. for. POS_Connect. Version 1.0

Software Requirements Specification for POS_Connect Page 1. Software Requirements Specification. for. POS_Connect. Version 1.0 Page 1 Software Requirements Specification for POS_Connect Version 1.0 1/9/2013 Page 2 Table of Contents Table of Contents Revision History 1. Introduction 1.1 Purpose 1.2 Document Conventions 1.3 Intended

More information

3C05: Unified Software Development Process

3C05: Unified Software Development Process 3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2

More information

Team Quicken Loans: Mobile RFID Inventory Tracking System. Project Plan. Spring 2014

Team Quicken Loans: Mobile RFID Inventory Tracking System. Project Plan. Spring 2014 Team Quicken Loans: Mobile RFID Inventory Tracking System Project Plan Spring Michigan State University Student Team Josh Rasor Jacob Riesser Keyur Patel Quicken Loans Professional Team Jim Brzuch Patrick

More information

Software Design Specification

Software Design Specification GROUP 7 SEVEN SOFTWARE PROJECT: ONLINE SCHEDULING SYSTEM COMPANY: VIA MAGNA GOTHENBURG SWEDEN GROUP MEMBERS: IBRAHIM KRVAVAC ALI BAHALOO HORE SEYED SAMAD GHASEMI KUHAN LOH DANIEL ASOVIC Software Design

More information

Object-Oriented Systems Analysis and Design

Object-Oriented Systems Analysis and Design Object-Oriented Systems Analysis and Design Noushin Ashrafi Professor of Information System University of Massachusetts-Boston Hessam Ashrafi Software Architect Pearson Education International CONTENTS

More information

Interaction Diagrams. Use Cases and Actors INTERACTION MODELING

Interaction Diagrams. Use Cases and Actors INTERACTION MODELING Karlstad University Department of Information Systems Adapted for a textbook by Blaha M. and Rumbaugh J. Object Oriented Modeling and Design Pearson Prentice Hall, 2005 INTERACTION MODELING Remigijus GUSTAS

More information

Software Project Management using an Iterative Lifecycle Model

Software Project Management using an Iterative Lifecycle Model Software Corporation Software Project Management using an Iterative Lifecycle Model 1 Objectives of this Presentation To understand what the Unified Process is To understand the iterative lifecycle approach

More information

Quantification and Traceability of Requirements

Quantification and Traceability of Requirements Quantification and Traceability of Requirements Gyrd Norvoll Master of Science in Computer Science Submission date: May 2007 Supervisor: Tor Stålhane, IDI Norwegian University of Science and Technology

More information

Object-oriented design methodologies

Object-oriented design methodologies Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard

More information

Modellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003

Modellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 18-19 The Unified Process Static dimension Glossary UP (Unified

More information

How to Make a Domain Model. Tutorial

How to Make a Domain Model. Tutorial How to Make a Domain Model Tutorial What is a Domain Model? Illustrates meaningful conceptual classes in problem domain Represents real-world concepts, not software components Software-oriented class diagrams

More information

Pcounter Web Administrator User Guide - v2014-09-08. Pcounter Web Administrator User Guide Version 1.0

Pcounter Web Administrator User Guide - v2014-09-08. Pcounter Web Administrator User Guide Version 1.0 Pcounter Web Administrator User Guide - v2014-09-08 Pcounter Web Administrator User Guide Version 1.0 Table of Contents Table of Contents... 2 Overview... 3 Installation Prerequisites and Requirements...

More information

Requirements Management

Requirements Management REQUIREMENTS By Harold Halbleib Requirements Management Identify, Specify, Track and Control Requirements Using a Standard Process About the author... Harold Halbleib has a degree in Electrical Engineering

More information

Please comply with the Lean Construction Institute s Usage Policies and Attribution Guidelines at http://www.leanconstruction.org/usage.

Please comply with the Lean Construction Institute s Usage Policies and Attribution Guidelines at http://www.leanconstruction.org/usage. Please comply with the Lean Construction Institute s Usage Policies and Attribution Guidelines at http://www.leanconstruction.org/usage.pdf when using this file. Thank you. Target Value Design, in the

More information

Large Scale Systems Design G52LSS

Large Scale Systems Design G52LSS G52LSS Refine Requirements Lecture 13 Use Case Analysis Use Case Diagrams and Use Cases Steps of Use Case Analysis Example: University Registration System Learning outcomes: understand the importance of

More information

TOGAF 9 Level 1 + 2 Exam Study Guide

TOGAF 9 Level 1 + 2 Exam Study Guide TOGAF 9 Level 1 + 2 Exam Study Guide Created by Nik Ansell http://ae.linkedin.com/in/nikansell Introduction This document was created to help focus the study areas of TOGAF 9 students, studying for the

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:

More information

Do you know? "7 Practices" for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd.

Do you know? 7 Practices for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. Do you know? "7 Practices" for a Reliable Requirements Management by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. In this white paper, we focus on the "Requirements Management,"

More information

Budget Planner SOFTWARE REQUIREMENT SPECIFICATION. Professor: Dr. Doan Nguyen. Team Members: Bindu Madhavi K Khambam Suganya Srinivasan

Budget Planner SOFTWARE REQUIREMENT SPECIFICATION. Professor: Dr. Doan Nguyen. Team Members: Bindu Madhavi K Khambam Suganya Srinivasan SOFTWARE REQUIREMENT SPECIFICATION Department of Computer Science, Sacramento State University Spring 2015 Budget Planner Professor: Dr. Doan Nguyen Team Members: Bindu Madhavi K Khambam Suganya Srinivasan

More information

Data Modeling Basics

Data Modeling Basics Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy

More information

The Rap on RUP : An Introduction to the Rational Unified Process

The Rap on RUP : An Introduction to the Rational Unified Process The Rap on RUP : An Introduction to the Rational Unified Process Jeff Jacobs Jeffrey Jacobs & Associates phone: 650.571.7092 email: jeff@jeffreyjacobs.com http://www.jeffreyjacobs.com Survey Does your

More information

Software Development Processes. Software Life-Cycle Models. Process Models in Other Fields. CIS 422/522 Spring 1998 1

Software Development Processes. Software Life-Cycle Models. Process Models in Other Fields. CIS 422/522 Spring 1998 1 1 Software Development Processes Sequential, Prototype-based RAD, Phased, Risk-based Spiral (c) 1998 M Young CIS 422/522 1/10/99 1 Software Life-Cycle Models Breaking projects down into pieces for... Planning

More information

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements 4.4 What is a Requirement? It is a statement describing either 1) an aspect of what the proposed system must do, or 2) a constraint on the system s development. In either case it must contribute in some

More information

Intranet Website Solution Based on Microsoft SharePoint Server Foundation 2010

Intranet Website Solution Based on Microsoft SharePoint Server Foundation 2010 December 14, 2012 Authors: Wilmer Entena 128809 Supervisor: Henrik Kronborg Pedersen VIA University College, Horsens Denmark ICT Engineering Department Table of Contents List of Figures and Tables... 3

More information

Example Use Case Specification:

Example Use Case Specification: Example Use Case Specification: Level 1 Identified Use Case Name: Actor(s): Other Stakeholders: Summary Description: Priority: Risk Level: Status: Withdraw Cash Any Bank Customer (primary) Banking System

More information

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping

More information

Threat Modeling: The Art of Identifying, Assessing, and Mitigating security threats

Threat Modeling: The Art of Identifying, Assessing, and Mitigating security threats Threat Modeling: The Art of Identifying, Assessing, and Mitigating security threats Mohamed Ali Saleh Abomhara University of Agder mohamed.abomhara@uia.no Winter School in Information Security, Finse May

More information

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment 1 2010. Marque Browne 0814547. Manuel Honegger - 0837997 1 Swirl Multiplayer Gaming Simplified CS4512 Systems Analysis and Design Assignment 1 2010 Marque Browne 0814547 Manuel Honegger - 0837997 Kieran O' Brien 0866946 2 BLANK MARKING SCHEME 3 TABLE OF CONTENTS

More information

CDC UNIFIED PROCESS PRACTICES GUIDE

CDC UNIFIED PROCESS PRACTICES GUIDE Purpose The purpose of this document is to provide guidance on the practice of Modeling and to describe the practice overview, requirements, best practices, activities, and key terms related to these requirements.

More information

Architecture Design & Sequence Diagram. Week 7

Architecture Design & Sequence Diagram. Week 7 Architecture Design & Sequence Diagram Week 7 Announcement Reminder Midterm I: 1:00 1:50 pm Wednesday 23 rd March Ch. 1, 2, 3 and 26.5 Hour 1, 6, 7 and 19 (pp.331 335) Multiple choice Agenda (Lecture)

More information

DOCUMENTING USE CASES

DOCUMENTING USE CASES Chapter 7 DOCUMENTING USE CASES There is a lot of documentation associated with Use Cases that needs to be organized somehow. You want the documentation to be understandable, but you need other things

More information

Bookstore Inventory System Software Design Document. Version 1.0

Bookstore Inventory System Software Design Document. Version 1.0 Bookstore Inventory System Software Design Document Version 1.0 Revision History Date Version Description Author 17 November, 2010 0.1 Initial Draft Gerson Recinos Ho Nam Ho Jimar Miller Adam Wurtzel David

More information

Business Process Modeling with BPMN. Dr. Darius Šilingas Head of Solutions Department darius.silingas@nomagic.com

Business Process Modeling with BPMN. Dr. Darius Šilingas Head of Solutions Department darius.silingas@nomagic.com Business Process Modeling with BPMN Dr. Darius Šilingas Head of Solutions Department darius.silingas@nomagic.com No Magic Europe, 2012 About Instructor Dr. Darius Šilingas q Principal Consultant and Head

More information

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan 1 W E B B A S E D M E E T I N G S C H E D U L E R S Y S T E M Project Plan Version 4.0 CS 6361 ADVANCED REQUIREMENTS ENGINEERING, SPRING 2010 UNIVERSITY OF TEXAS AT DALLAS R E Q U I R E M E N T S E N G

More information