Business Context Essential business requirements Projects are - - PowerPoint PPT Presentation

business context
SMART_READER_LITE
LIVE PREVIEW

Business Context Essential business requirements Projects are - - PowerPoint PPT Presentation

Business Context Essential business requirements Projects are launched when the value of solving recognized problems exceeds the cost of doing so R. Kuehl/J. Scott Hawker p. 1 R I T Software Engineering Understand Business Context Learn


slide-1
SLIDE 1
  • R. Kuehl/J. Scott Hawker
  • p. 1

R I T

Software Engineering

Business Context

Essential business requirements Projects are launched when the value of solving recognized problems exceeds the cost of doing so

slide-2
SLIDE 2
  • R. Kuehl/J. Scott Hawker
  • p. 2

R I T

Software Engineering

Understand Business Context

 Learn something about the application domain  Identify stakeholders  Project priorities

 Drivers: significant success objectives; e.g., profit margin  Constraints: limiting factors – e.g., competition, time to market  Degree of freedom: factors that can balance constraints and drivers; e.g. technology acquisition

 Operating environment

 User environment  Deployment environment

slide-3
SLIDE 3
  • R. Kuehl/J. Scott Hawker
  • p. 3

R I T

Software Engineering

Business Drivers

 Market share, competition  Product lines  Global markets  Revenue  Cost to develop, deploy, operate, and maintain  Personnel objectives  Liability, safety, reputation  Standards and regulations  Intellectual property  Environmental and sustainability concerns

slide-4
SLIDE 4
  • R. Kuehl/J. Scott Hawker
  • p. 4

R I T

Software Engineering

Stakeholders

Deployment Development Business Problem Technical Solution

Customers Users Managers Investors Analysts Technical Writers Service Providers Maintainers Developers Testers

A stakeholder is any individual or organization which is actively involved in, materially affected by, or influences the outcome of the system

360 degrees of perspective

A customer is a stakeholder that derives either direct or indirect benefit from the system

slide-5
SLIDE 5
  • R. Kuehl/J. Scott Hawker
  • p. 5

R I T

Software Engineering

Formulate a Vision, Understand Scope

 Gain understanding and agreement with the stakeholders on …

 Problem – the fundamental business opportunity or problem to be addressed  Purpose – what the system is intended to do to address the problem  Vision – the long term strategic purpose and intent of the system  Scope – what portion of the long term vision the current system will address  System Boundary (scope) – the boundaries of the problem and solution

May be documented in a Vision and Scope document

slide-6
SLIDE 6
  • R. Kuehl/J. Scott Hawker
  • p. 6

R I T

Software Engineering

Problem Statement

 Characterize the business opportunity  With the stakeholders (to achieve consensus), formulate a problem statement using the following template:

 The problem of <describe the problem>  Affects <the stakeholders affected by the problem>  The impact of which is <what is the impact of the problem>  A successful solution would <list some key benefits of a successful solution>

slide-7
SLIDE 7
  • R. Kuehl/J. Scott Hawker
  • p. 7

R I T

Software Engineering

Example Problem Statement

The problem of: untimely and improper resolution

  • f customer service issues

Affects: our customers, customer support reps and service technicians. The impact of which is: customer dissatisfaction, perceived lack of quality, unhappy employees and loss of revenue. A successful solution would: provide real-time access to a trouble-shooting database by support reps and facilitate dispatch of service technicians, in a timely manner, only to those locations which genuinely need their assistance.

slide-8
SLIDE 8
  • R. Kuehl/J. Scott Hawker
  • p. 8

R I T

Software Engineering

System Purpose

 What the system is intended to do to solve the problem  Essence: the fundamental purpose the system exists or will need to exist  All requirements must contribute to this purpose  Example: an automated teller machine:

 Essence: withdraw money from my bank account  Implementation: cards, PINs, buttons, etc.  Lots of technological solutions, but only one essence

 What features are suggested by the proposed solution?

slide-9
SLIDE 9
  • R. Kuehl/J. Scott Hawker
  • p. 9

R I T

Software Engineering

Purpose, Advantage, Measurement

 Purpose: a statement of what the system is supposed to do  Advantage: what business advantage does it provide?  Measurement: how do you measure the advantage?  Then analyze the cost-benefit tradeoff

 Reasonable? Is the system construction effort (cost) less than the advantage (value)?  Feasible? Can the system achieve the measure?  Achievable? Does the organization have (or can it acquire) the skills to build the system, and operate it

  • nce built?

[Robertson and Robertson]

slide-10
SLIDE 10
  • R. Kuehl/J. Scott Hawker
  • p. 10

R I T

Software Engineering

Purpose, Advantage, Measurement (PAM) Example

 Winter Road Maintenance system

 Purpose: To accurately forecast road freezing times and dispatch de-icing trucks  Advantage: To reduce road accidents by forecasting icy road conditions  Measurement: Accidents attributed to ice shall be no more than 15% of the total number of accidents during winter

 Additional purpose

 Purpose: To save money on winter road maintenance costs  Advantage: Reduced de-icing and road maintenance costs  Measurement: The cost of de-icing shall be reduced by 25% of the current cost of road treatment, and damage to roads from ice shall be reduced by 50%

[Robertson and Robertson]

slide-11
SLIDE 11
  • R. Kuehl/J. Scott Hawker
  • p. 11

R I T

Software Engineering

Vision Statement of the Solution

 Strategic vision for how the system will achieve business objectives

 Decision making context during the system’s life cycle

 Template approach with stakeholders to formulate a consensus system vision statement

 For <customer>  Who <problem statement(s)>  The <system name >  Is <system category>  That <key benefits>  Unlike <existing or alternative solutions>  Our system <is an x that provides y>

slide-12
SLIDE 12
  • R. Kuehl/J. Scott Hawker
  • p. 12

R I T

Software Engineering

Example System Vision Statement

(Voting Machine)

For voters who need to vote electronically to comply with current election laws the RIT Voting Kiosk is an electronic voting machine that will comply with all election laws, provide an easy to use interface, and be fully secure. It will be highly reliable and easy to configure for new elections. Unlike previous voting machines in the market our system will redundantly record every vote on paper to enable recounts and prevent fraud.

slide-13
SLIDE 13
  • R. Kuehl/J. Scott Hawker
  • p. 13

R I T

Software Engineering

System Scope Analysis

 Scope – what portion of the long term vision will the current system version address?  Provide development perspective in discussion with stakeholders to produce …  Project release plan - initial and subsequent release features

 What drivers and constraints?  System product line strategy?  System platform opportunities?

  • Short versus long term investment
slide-14
SLIDE 14
  • R. Kuehl/J. Scott Hawker
  • p. 14

R I T

Software Engineering

Determine System Boundaries

slide-15
SLIDE 15
  • R. Kuehl/J. Scott Hawker
  • p. 15

R I T

Software Engineering

System Thinking

 What is the system?

 All of the inputs  All of the outputs  All of the processing flow and data management that translates inputs into outputs

 What is system thinking?

 Thinking strategically to visualize the holistic system solution  Seeing the big picture

 System analyst/architect role/responsibiity

slide-16
SLIDE 16
  • R. Kuehl/J. Scott Hawker
  • p. 16

R I T

Software Engineering

System Thinking (cont)

Why is system thinking important?

 Avoid missing requirements - understand the entire system problem  Stimulates innovative solutions thinking  Leads to extensible system architecture design  Scales and structures project scope planning  System solutions add value to the user and businesses

 The whole is greater than the sum of the parts, AND the whole adds value to each part

slide-17
SLIDE 17
  • R. Kuehl/J. Scott Hawker
  • p. 17

R I T

Software Engineering

Establish the System Boundaries

 Scope and scale

 What the system is  What the system is not  Draw a circle around the problem

 Constraints

 Environment  Budget  Schedule  Technology  Politics  Legacy systems to integrate or replace

slide-18
SLIDE 18
  • R. Kuehl/J. Scott Hawker
  • p. 18

R I T

Software Engineering

Establish the System Boundaries

Is voice mail an actor or part

  • f the system?

Caller (actor)

System boundary?

Simple Phone System Voice Mail Callee (actor)

slide-19
SLIDE 19
  • R. Kuehl/J. Scott Hawker
  • p. 19

R I T

Software Engineering

iDevice

iTunes

System Boundary?

 Actors interact with the system  An actor is NOT part of the system  An actor could be:

 a human  a device  another system

 Software and hardware infrastructure are NOT actors (they are part of the delivered system)

slide-20
SLIDE 20
  • R. Kuehl/J. Scott Hawker
  • p. 20

R I T

Software Engineering

The Context Diagram

 A useful graphical representation of the system to be developed

 A visual tool for stakeholder communications that is easy to understand

 Establishes the system boundaries and connections  Simple graphical conventions:

 A central circle is the abstraction of the entire system – the boundary  Surrounding rectangles represent terminators outside of the system that interface to it; people, other systems,

  • rganizations, devices

 Arrows between the system and terminators represent input and output flows of data, control, material

slide-21
SLIDE 21
  • R. Kuehl/J. Scott Hawker
  • p. 21

R I T

Software Engineering

System Scope Representation

Point of Sale System Salesperson Inventory System Consumer Management System Scanner Card Reader Printer Financial System

Inventory Record Scanned Card Record Marketing Collateral Consumer Purchases Operator Actions Operator Responses

Context Diagram Example

slide-22
SLIDE 22
  • R. Kuehl/J. Scott Hawker
  • p. 22

R I T

Software Engineering

References

 Karl Wiegers, Software Requirements, 3rd Edition, Microsoft Press, 2003 (Chapter 5)  Suzanne Robertson and James Robertson, Mastering the Requirements Process, Addison- Wesley, 1999  Rational Unified Process, IBM