requirements gathering and analysis

26
Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems Requirements Gathering and Analysis 70-451 Management Information Systems Robert Monroe September 29, 2009

Upload: odessa

Post on 07-Jan-2016

76 views

Category:

Documents


7 download

DESCRIPTION

Requirements Gathering and Analysis. 70-451 Management Information Systems Robert Monroe September 29, 2009. Goals For Today. By the end of today's class you should be able to: Identify where requirements gathering fits in the SDLC - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Requirements Gathering and Analysis

70-451 Management Information Systems

Robert Monroe

September 29, 2009

Page 2: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Goals For Today

By the end of today's class you should be able to:

• Identify where requirements gathering fits in the SDLC

• Explain the difference between business requirements and technical requirements

• Understand the concept of a stakeholder and be able to identify common categories of stakeholders

• Explain the difference between a functional requirement and a quality attribute requirement

• Identify common categories of quality attribute requirements

• Tell the difference between ambiguous and unambiguous system requirement statements

• Write clear, effective, and unambiguous system requirements

Page 3: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Implem-entation

Testing

The Requirements Analysis Process

• Requirements analysis is an early phases of the SDLC • The primary output of the requirements analysis phase

is the requirements definition document• Key objectives of requirements analysis:

– Identify specific requirements (what to build)

– Scope the project (define boundaries on what will be done)

Dev. Design AnalysisPlanning

Page 4: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

A Thought…

Effective requirements analysis will not guarantee the success of an IS project, but poor requirements analysis all but guarantees its failure.

Page 5: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Stakeholders

• Stakeholders are people, groups or organizations (internal or external) that can affect or will be affected by the project

• Clarifying and managing the expectations of the project stakeholders is essential to project success

Page 6: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Conducting A Stakeholder Analysis

• A Stakeholder Analysis identifies and reconciles the expectations and needs of the project’s stakeholders

• Step 1: Identify the major stakeholders for the project– Consider both internal and external to the company

• Step 2: Identify the critical assumptions and expectations of the major stakeholders for the project

• Examples of types of project stakeholders:– Stockholders, creditors, customers/clients, production employees,

marketing staff, corporate management and staff, labor unions, local community, capital markets/investment bankers, government agencies, competitors, suppliers, contractors

Page 7: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Example: Netflix Online Movie Project

• Netflix online movie viewing project description:• Develop a web-based application to allow subscribers to immediately watch

“rented” movies and TV series “on demand” on their personal computing devices

• Background: • Netflix is the world’s largest online movie rental service, providing more than

5 million subscribers access to over 70,000 DVD titles

• Basic service involves a monthly subscription fee that entitles subscribers to choose a number of DVDs. Selected DVDs are mailed to subscribers with a return envelope. Subscribers return the rented DVDs by mail when done viewing them. There are no due dates, no late fees and no shipping fees. Netflix reaches more than 90% of its subscribers with one business day delivery.

Page 8: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Netflix Example: Background (Continued)

– Strategic opportunity to leverage the Internet for viewing of rented DVDs and related video content, extend market reach

– Strategic threats from competitors (Redbox, YouTube, Apple, Yahoo, Amazon.com, PirateBay)

– Many content and technology hurdles to online movie watching• Real-time playback video viewing technology is new and only works on

certain hardware (e.g., PCs) and in certain web browsers (e.g., Microsoft windows browsers)

• Fast Internet connectivity is essential

• Only limited movies are in a format that is suitable for immediate online viewing

Page 9: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Stakeholder Analysis: Netflix Online Movie Project

• For the Netflix online movie viewing Project, who are the major stakeholders? What does each want from the system? Any major concerns they are likely to have?

Stakeholder Needs and wants Concerns

Page 10: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Requirements: Key Concepts

What should our system

do?

Page 11: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Some Questions:

• What is a requirement?– ‘… a statement of what the system must do or what

characteristic it must have.’

• What is the purpose of requirements analysis for a proposed information system?– To turn the very high level explanation of the business

objectives and system concept into a more precise list of requirements that can be used as input to the rest of the analysis and design process.

Source: [DWT05], page 124

Page 12: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Functional vs. Nonfunctional Requirements

• Functional Requirements relate directly to a process the system has to perform or information it needs to contain.

• Nonfunctional Requirements (or Quality Attributes) refer to behavioral properties that the system must have, such as performance, security, availability, etc.

Source: [DWT05], page 125

Page 13: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Functional Requirements Example

Source: [DWT05], figure 5-2, page 127

Page 14: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Nonfunctional Requirements Example

Source: [DWT05], figure 5-2, page 127

Page 15: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Business vs. System Requirements

• Business requirements are written from the perspective of the business person (or end-user). They focus on what the system should do, not how it should do so.

• System requirements refer to the specific details of how the system must be implemented to meet the business requirements.

• Business and systems requirements may be either functional or non-functional

Source: [DWT05], page 125

Page 16: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Business Needs Should Drive IT Requirements

• Both IT and business sponsor perspectives are important when conducting requirements analysis

• Question: when the IT team and the business sponsor team disagree on requirements, who’s position should prevail? Why?

Page 17: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Well Written Requirements Are:

• Precise• Unambiguous• Limited and focused (just one requirement)• Actionable• Measurable• Testable• Related to identified business need• Defined at a level of detail sufficient for system design

Source: Wikipedia entry on Requirements Analysis, 9/28/09

Page 18: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Exercise: Are These Requirements…

• One requirement?• Precise?• Unambiguous?• Actionable?• Measurable?

Source: Wikipedia entry on Requirements Analysis, 9/28/09

• Testable?

• Functional or Non-func?

• Business or system?

• Related to identified business need?

Application: CMU HUB

Requirement: Students should be able to view their QPA for any semester they choose to.

Requirement: The HUB system should not allow students to register or add classes after the deadline.

Stakeholders: CMU students, CMU faculty, IT department, some of CMU staff, network engineers.

Page 19: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Exercise: Are These Requirements…

• One requirement?• Precise?• Unambiguous?• Actionable?• Measurable?

Source: Wikipedia entry on Requirements Analysis, 9/28/09

• Testable?

• Functional or Non-func?

• Business or system?

• Related to identified business need?

Application: EazyInternet (Qatar National Bank eBanking)

Requirement: The ability to view/edit your accounts details and transfer money from account to another.

Requirement: You should control on your accounts and transfer money from your account to another person's account without viewing/editing the details of his account.

Stakeholders: Customers, QNB employees.

Page 20: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Exercise: Are These Requirements…

• One requirement?• Precise?• Unambiguous?• Actionable?• Measurable?

Source: Wikipedia entry on Requirements Analysis, 9/28/09

• Testable?

• Functional or Non-func?

• Business or system?

• Related to identified business need?

Application: Twitter

Requirement: they should be able to follow users as they micro-blog and vice versa, and also post new posts when ever the user wants

Requirement: they should not be able to edit other peoples twitter blogs

Stakeholders: twitter administrators, the general public

Page 21: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

In-Class Exercise: Netflix Requirements

• Write two important functional business requirements of the proposed Netflix system

• Write two important non-functional business requirements of the proposed Netflix system

• Write two important non-functional system requirements for the proposed Netflix system

• Are any of the identified requirements in conflict with other requirements?

Page 22: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Common Quality Attribute Categories

• Availability• Performance• Security• Modifiability• Testability• Usability• Fault tolerance• Disaster recoverability

Page 23: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Requirements Discussion Questions

How critical is requirements analysis to the success of the project? … what activities should the company undertake in order to assure that requirements analysis is sufficient for the project to succeed? and what types of requirements do you believe are the most popular?

- student question posted to wiki

Page 24: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Requirements Discussion Questions

What is more important (needs more focus from architects) to the system, the functional requirements or the quality attributes requirements?

What can the system architects do to decrease as much ambiguity in the system requirement statements as they can?

-- student questions posted to wiki

Page 25: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

Requirements Discussion Questions

How can you build a system which the consumer really wants, especially when the consumer doesn't really know what he wants?

- student question posted to wiki

Page 26: Requirements Gathering and Analysis

Carnegie Mellon University ©2006 - 2009 Robert T. Monroe 70-451 Management Information Systems

References

[DWT05] Alan Dennis, Barbara Haley Wixom, and David Tegarden, Systems Analysis and Design with UML Version 2.0, 2nd edition, John Wiley and Sons, 2005 ISBN: 0-471-34806