Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Team Skill 1 Analyzing the Problem … Part 1: 5 steps in Problem Analysis Based on “Software Requirements Management, A use case approach”, by Leffingwell.

Similar presentations


Presentation on theme: "1 Team Skill 1 Analyzing the Problem … Part 1: 5 steps in Problem Analysis Based on “Software Requirements Management, A use case approach”, by Leffingwell."— Presentation transcript:

1 1 Team Skill 1 Analyzing the Problem … Part 1: 5 steps in Problem Analysis Based on “Software Requirements Management, A use case approach”, by Leffingwell and Widrig Noureddine Abbadeni King Saud University College of Computer and Information Sciences

2 2 Problem understanding  Development teams spend too little time understanding: The real business problems, The needs of the users and other stakeholders, The nature of the environment of their application  Development teams tend to forge ahead, providing solutions based on an inadequate understanding of the problem to be solved.

3 3 The 5 Steps in Problem Analysis

4 4 Key Points  Problem analysis is the process of understanding real- world problems and user's needs and proposing solutions to meet those needs.  The goal of problem analysis is to gain a better understanding of the problem being solved, before development begins.  To identify the root cause, or the problem behind the problem, ask the people directly involved.  Identifying the actors on the system is a key step in problem analysis.

5 5 Problem & Problem Analysis  A problem can be defined as the difference between things as perceived and things as desired.  Problem Analysis is the process of understanding real-world problems and user needs and proposing solutions to meet those needs.

6 6 Problem & Problem Analysis  Sometimes, the simplest solution is a workaround, or revised business process, rather than a new system.  The goal of problem analysis is to gain a better understanding of the problem being solved before development begins.

7 7 5 Steps in Problem Analysis  Gain agreement on the problem definition.  Understand the root causes—the problem behind the problem.  Identify the stakeholders and the users.  Define the solution system boundary.  Identify the constraints to be imposed on the solution.

8 8 Step1: The Problem Statement

9 9 Example:

10 10 Step 2: Understand the Root Causes

11 11 Step 2: Understand the Root Causes  How we determine the root causes … Just ask people!  Many root causes are simply not worth fixing (cost exceeds benefit for example).

12 12 Step 2: Understand the Root Causes

13 13 Step 3: Identify the Stakeholders and the Users  Understanding the needs of the users and other stakeholders is a key factor in developing an effective solution.  A stakeholder is anyone who could be materially affected by the implementation of a new system or application. (users & non-users)  Non-user stakeholder needs must also be identified and addressed

14 14 Step 3: Identify the Stakeholders and the Users  The following questions can be helpful in this process. Who are the users of the system? Who is the customer (economic buyer) for the system? Who else will be affected by the outputs the system produces? Who will evaluate and approve the system when it is delivered and deployed? Are there any other internal or external users of the system whose needs must be addressed? Who will maintain the new system? Is there anyone else who cares?

15 15 Step 3: Identify the Stakeholders and the Users

16 16 Step 4: Define the Solution System Boundary The system boundary defines the border between the solution and the real world that surrounds the solution

17 17 Step 4: Define the Solution System Boundary  “Things that interact with our system" are "actors on our system.“

18 18 Step 4: Define the Solution System Boundary

19 19 Step 4: Define the Solution System Boundary  Some helpful questions to ask to identify actors:  Who will supply, use, or remove information from the system?  Who will operate the system?  Who will perform any system maintenance?  Where will the system be used?  Where does the system get its information?  What other external systems will interact with the system?

20 20 Step 4: Define the Solution System Boundary

21 21 Step 5: Identify the Constraints to Be Imposed on the Solution  Constraints are restrictions on the degrees of freedom we have in providing a solution.  Each constraint has the potential to severely restrict our ability to deliver a solution.  Therefore, each constraint must be carefully considered as part of the planning process  Many constraints may even cause us to reconsider the technological approach we initially imagined.

22 22 Step 5: Identify the Constraints to Be Imposed on the Solution  A variety of sources of constraints must be considered: Schedule, Return on investment, budget for labor and equipment, environmental issues, operating systems, databases, hosts and client systems, technical issues, political issues within the organization, purchased software, company policies and procedures, choices of tools and languages, personnel or other resource constraints, and a host of other considerations.  These constraints may be given to us before we even begin ("No new hardware"), or we may have to actively elicit them.

23 23 Step 5: Identify the Constraints to Be Imposed on the Solution

24 24 Step 5: Identify the Constraints to Be Imposed on the Solution

25 25 Step 5: Identify the Constraints to Be Imposed on the Solution

26 26 Step 5: Identify the Constraints to Be Imposed on the Solution Example:

27 27 Summary  Good understanding of the problem to be solved and the root causes of the problem  Proper identification of the stakeholders whose collective judgment will ultimately determine the success or failure of our system  An understanding of where the boundaries of the solution are likely to be found  An understanding of the constraints and the degrees of freedom we have to solve the problem


Download ppt "1 Team Skill 1 Analyzing the Problem … Part 1: 5 steps in Problem Analysis Based on “Software Requirements Management, A use case approach”, by Leffingwell."

Similar presentations


Ads by Google