1 Team Skill 3 - Defining the System (Chapters 14-17 of the requirements text) CSSE 371 Software Requirements and Specification Don Bagert, Rose-Hulman.

Slides:



Advertisements
Similar presentations
Karolina Muszyńska Based on:
Advertisements

CS3773 Software Engineering Lecture 03 UML Use Cases.
1 Use Cases 2 CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute September 20, 2004.
1 Use Cases 1 CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute September 17, 2004.
1 Product Lines 1: Commonality Analysis CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute November 1, 2004.
Use-case Modeling.
Systems Analysis and Design in a Changing World, Fourth Edition
Team Skill 6 - Building The Right System Part 2: Traceability, Change and Quality (Chapters of the requirements text) CSSE 371 Software Requirements.
1 Team Skill 4 - Team Skill 5 - Scope Refining the Systems Definition (Chapters of the requirements text) CSSE 371 Software Requirements and Specification.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Slide 1 Requirements Wrap-up (Chapter 31 of requirements text) and Interaction Design: Introduction (Chapters 1 of Interaction Design text) CSSE 371 Software.
Documenting Requirements using Use Case Diagrams
1 CS 425 Software Engineering Project Preparation Use Case Modeling [Based on Chapters 3 & 4, Arlow and Neustadt, “UML and the Unified Process,” Addison-Wesley,
Use cases and requirement specification - 1 Use case diagrams 3 use cases System boundaries Remember: Use case diagramming is a tool, not the requirements.
Functional Requirements – Use Cases Sriram Mohan/Steve Chenoweth (Chapters 14, 21 – Requirements Text) 1.
CSCI928 Software Engineering Requirements & Specifications Modeling System Interactions Tri A. Kurniawan, M.Eng. Ph.D Candidate
Team Skill 6 - Building The Right System Part 1: Applying Use Cases (Chapters of the requirements text) CSSE 371 Software Requirements and Specification.
1 Team Skill 1 - Analyzing the Problem (Chapters 5-7 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman.
Rose-Hulman Institute of Technology Sriram Mohan 18.September.2008 CSSE 497 Requirements Review.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System A Use Case Primer Organizing.
Functional Requirements – Use Cases Steve Chenoweth & Chandan Rupakheti (Chapters 14, 21 – Requirements Text)  Quiz question 9 relates to this, when you’ve.
Organizing Requirements & Managing Scope (Chapters of the requirements text ) Steve Chenoweth & Chandan Rupakheti RHIT Which brings up Question 1,
RUP Requirements RUP Artifacts and Deliverables
Requirements Management with Use Cases Module 6: Define the System Requirements Management with Use Cases Module 6: Define the System.
Software Engineering CS B Prof. George Heineman.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
1 Text Layout Introduction (1-4) Team Skill 1 – Analyzing the problem (5-7) Team Skill 2 – Understanding User and Stakeholder Needs (8-13) Team Skill 3.
Interaction Modeling Interaction model describes how objects interact to produce useful results. Interactions can be modeled at different levels of abstraction:
Interaction Modeling. Introduction (1) Third leg of the modeling tripod. It describes interaction within a system. The class model describes the objects.
Requirement Engineering. Review of Last Lecture Problems with requirement Requirement Engineering –Inception (Set of Questions) –Elicitation (Collaborative.
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Requirements Specification for Lab3 COP4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of Computer Science University.
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
A Use Case Primer 1. The Benefits of Use Cases  Compared to traditional methods, use cases are easy to write and to read.  Use cases force the developers.
Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
1 Use Case Diagrams Use Case Actor Use case description Use case realization (Scenario) Use case relationships –Extends –Uses.
Use Case Modeling Chapter 7 Part of Requirements Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
1 Structuring Systems Requirements Use Case Description and Diagrams.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
Slide 12A.1 © The McGraw-Hill Companies, 2005 Object-Oriented and Classical Software Engineering Sixth Edition, WCB/McGraw-Hill, 2005 Stephen R. Schach.
Team Skill 3 – Organizing Requirements & Product Management (Chapters of the requirements text ) Sriram Mohan/Steve Chenoweth RHIT 1.
Functional Requirements – Use Cases (Chapters 14, 21) Sriram Mohan 1.
Sequence Models.
Use Cases Use Cases are employed to describe the functionality or behavior of a system. Each use case describes a different capability that the system.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Part IV: On Use Cases Using the use case technique for exploring user requirements Chapter 9: Use Cases and Scenarios and Stories, Oh My! Chapter 10: Actors.
The Vision Document & Product Management CSSE 371, Software Requirements and Specification Steve Chenoweth, Rose-Hulman Institute September 27, 2004 In.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Summary from previous lectures
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
Team Skill 3 - Defining the System (Chapters of the requirements text ) Sriram Mohan 1.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
George Wang, Ph.D. COMP 380/L Lesson 2. Use Case Use cases are a way to capture system functionalities (i.e., functional requirements) Based on use case.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
Systems Analysis and Design in a Changing World, 6th Edition
Recall The Team Skills Analyzing the Problem (with 5 steps)
Systems Analysis and Design in a Changing World, 6th Edition
Use Case Modeling Part of the unified modeling language (U M L)
Presentation transcript:

1 Team Skill 3 - Defining the System (Chapters of the requirements text) CSSE 371 Software Requirements and Specification Don Bagert, Rose-Hulman Institute of Technology September 20, 2005 Thanks to Mark Ardis and Steve Chenoweth for some of the slides included.

2 Outline  Use Cases  Organizing Requirements  Vision Document  Product Management

3 Use Cases

4 What is a Use Case?  Sequences of actions  Performed by system of interest  Observable result of value to a particular actor

5 Use Case Model - Development Steps 1. Identify the actors 2. Identify the use cases 3. Identify actor/use case relationships 4. Outline use cases 5. Refine use cases

6 1. Identify the Actors  Who uses the system?  Who gets/provides information from/to system?  Who supports the system?  What other systems interact with this system?

7 2. Identify the Use Cases  What are the intentions of each actor with respect to the system?  Give a descriptive name: Start with an action verb Describes goal or intent  Give a one-sentence description

8 3. Identify Actor/Use Case Relationships  Draw a diagram showing relationships between actors and use cases Eat foodBuy food Parent Child

9 4. Outline Use Cases  Describe sequence of events in basic flow (sunny day scenario)  Describe sequences of events in alternate flows (rainy day scenarios)

10 5. Refine Use Cases  Describe sequences of events for flows  Describe pre-conditions  Describe post-conditions  Fill in special requirements

11 Use Case Template A. Name B. Brief description C. Actors D. Basic flow E. Alternate flows F. Pre-conditions G. Post-conditions H. Special requirements

12 Microwave Example User Cook Food

13 Cook Food Use Case – Slide 1 of 4 A. Name: Cook Food B. Brief description: User places food in microwave and cooks it for desired period of time at desired power level. C. Actors: User

14 Cook Food Use Case – Slide 2 of 4 D. Basic flow: 1. User opens door and places food in unit 2. User enters time for cooking 3. User pushes start button 4. Unit cooks food 5. Unit beeps

15 Cook Food Use Case – Slide 3 of 4 E. Alternate flows 1. User cancels time before starting 2. User cancels cooking before finished 3. User selects reduced power level before pushing start button

16 Cook Food Use Case – Slide 4 of 4 F. Pre-conditions Unit is plugged in Unit is in ready state G. Post-conditions Food is cooked or user cancelled operation H. Special requirements Timer should display remaining time to finish while cooking Default power setting should be "high"

17 Organizing Requirements

18 Organization Techniques  Dividing requirements for complex systems into subsystems  Product Families A series of products with closely related requirements Product lines – a new way of viewing software products  Investing in infrastructure to build product families  Develop systematic approach to building flexible application generators  Commonality analysis – used to determine if use of a product line will be beneficial

19 Economics of Families Current Practice Number of Family Members Cumulative Cost Product Line Approach

20 Example Families  Toyota automobiles and trucks  IBM 360 computers  Software?

21 The Vision Document

22 Purpose  Every software project will benefit from having a Vision document.  The Vision document describes the application in general terms, including descriptions of the target market, the system users, and the application features.  The Vision document defines, at a high level of abstraction, both the problem and the solution.  It gives the development team “common goals and a common playbook.”

23 Vision Document Template 1. Introduction 2. User Description 3. Product Overview 4. Feature Attributes 5. Product Features 6. Exemplary Use Cases 7. Other Product Requirements 8. Documentation Requirements 9. Glossary

24 Product Management

25 Rationale  Every project needs an individual champion or a small champion team to advocate for the product.  In a software products company, the product manager plays the role of the champion.  The product manager drives the whole product solution: the application itself, support, user conveniences, documentation, and the relevant commercial factors.  The Product Manager does high-level tasks – Listens to all the stakeholders Negotiates amongst them Manages and funds project people Communicates features and releases to the outside world Advocates the product to everyone “Owns” the vision statement!

26 Product Manager in the Hierarchy Chart

27 Driving the Product Vision

28 A Product Manager’s Day  Plan scenarios in which products provide answers These pieces make the product manager’s vision!

29 Product Types from a Marketing POV  There are two major variations: A “custom” product for a particular customer or small group of customers – They often act directly as “external clients” A “general” product for a target market – An executive or the product manager is the “internal client” for these future customers