Lecture2010-4
Lecture2010-4
LECTURE 4:
Investigating System Requirements
1
Lecture Outline
2
The Analysis Phase in More Detail
Prioritize requirements
Prototype for feasibility and discovery
Generate and evaluate alternatives
Review recommendations with management 3
The Activities of the Analysis Phase
4
The Analysis Phase
Gather Information
System analyst needs to become an expert in the
business area the system will support or should
even actually do some or part of the task to get a
feel for what is done (e.g., in order to automate
order-entry, may need to know how orders are
processed)
Gathered information involves:
• Understanding the existing system
• Identifying all current and future users, locations,
system interfaces (inside and outside the organization)
• Identifying possible software package solutions that
might be used
5
The Analysis Phase
Prioritize Requirements
• Establish which functional and technical requirements are most
critical
• Why? Since resources are always limited and you want to address
the most important things
• Unless evaluation priorities, system requirements tend to expand as
users make more suggestions (called “scope creep”)
8
System Requirements
9
Functional requirements
Functional requirements
Activities system must perform (use cases)
Based on procedures and business
functions
Documented in analysis models
E.g.: “reduce fuel costs by calculating
where is it best to fuel up”
10
Nonfunctional requirements
Nonfunctional requirements
Technical requirement – hardware and software
Performance requirement – workload measures
Usability requirement – user interface, workflow
Reliability requirement – outages, error
detection
Security requirement – access & protection
13
Types of Models
14
Some Descriptive Models
15
Overview of Models Used
in Analysis and Design
17
Stakeholders—The Source of
System Requirements
19
Users as Stakeholders
Technical Stakeholders
• The technical staff includes people who establish
and maintain the computing environment of the
organization
• They are source of many technical requirements
– provide guidance in such areas as programming
language, computer platform, equipment, etc.
21
RMO
Stakeholders
22
Techniques for Information
Gathering
Analysis phase done to understand business
functions and develop system requirements
Original structured approach
Create physical and logical models of existing
system
Derive requirements from existing system model
Create physical and logical models of new system
Current approach
Identify logical requirements for new system
Balance the review of current business functions
with new system requirements
23
Traditional Approach to Identifying
System Requirements
24
Current Approach to Identifying
System Requirements
25
The transition from information
gathering to model building
26
Methods of Information Gathering
27
Just For Fun
28
Question Topics
29
Themes for information-gathering
questions
30
Review Existing Reports, Forms,
and Procedure Descriptions
32
Conduct Interviews and
Discussions with Users
One of the most effective ways to understand business
functions and rules
Can be time consuming and resource expensive
Team members meet with individuals or groups of users
May require multiple sessions to
Meet all users
Understand all processing requirements
List of detailed questions prepared
Can involve new approaches (critical incident method and
cognitive task analysis – not mentioned in text)
To be effective should be organized in three areas:
(1) preparing for the interview
(2) conducting the interview
(3) following up the interview
33
Sample Checklist to Prepare for
User Interviews
34
Preparing for the Interview
Must establish objective – what do you want to get out of it?
Determine users
Could interview users with different levels of experience,
computer expertise, bank expertise…
Good to have at least two project team members at the
interview
Can compare notes in order to ensure accuracy
Prepare detailed questions
Good to structure the questions
Can include both open-ended (e.g. “how do you do this
function?”) and closed-ended questions (“how many
times a day do you do this?”)
Last step in preparing: make the interview arrangements
(where to meet and when – good to pick a quiet room). Each
participant should know the objective of the meeting, have a
chance to preview the questions or materials to be reviewed
35
Conducting the Interview (1 of 2)
See text for variety of tips: like dress well, be polite and arrive
on time!
Limit the time of the interview (plan for about an our and a
half)
If it is required more time to cover all questions, schedule
another session.
It is better to have several shorter interviews than one long
“marathon”
Look for errors or exception conditions – e.g. get them to
describe when things go wrong (“What if it doesn’t arrive?”,
“What if the balance is incorrect?”)
In critical incident method can ask to describe an easy
case, as well as a “scenario from hell”
“What ifs” can be explored as well as probing about real
incidents
The ability to think of the exceptions is very important; it
couldn’t be learned from a textbook, but only from
experience 36
Conducting the Interview (2 of 2)
37
Sample
Agenda for
Interview
38
Following Up the Interview
40
Observe and document business
processes (1 of 2)
Varies from office walkthroughs to performing
actual tasks
44
Activity
Diagram
that
Models a
Workflow
45
Activity Diagram with Concurrent
Paths
46
Building Prototypes
Characteristics of Prototypes:
Operative: a prototype should be a working
model, with some real functionality (if not
working, but just shows what it looks like, its
called a mock-up)
Focused: a prototype should be focused on a
single objective (to test a specific concept or
verify an approach)
Quick: the prototype should be built and
modified quickly (so can validate an approach,
and if it is wrong, fix it fast in an iterative
process)
Built and modified rapidly with CASE tools48
Distribute and Collect
Questionnaires
Have a limited and specific use
Allow to collect information from a large number
of stakeholders
Can be used to get a preliminary insight on the
information needs of the various stakeholders
Not well suited for gathering detailed information
Three groups of questions:
Quantitative (e.g., “How many customers a day?”)
Closed-ended (express opinion on a predetermined
scale: ““On a scale of 1 to 10 rate system
performance” ) - direct respondent, simple and short
answer is assumed; easy to tabulate and process
Open-ended - encourage discussion and
elaboration, no predetermined answer
49
quantitative
Sample RMO
Questionnair
e
Closed-ended
open-ended
50
Conduct Joint Application Design
Sessions
Expedites investigation of system requirements
JAD is a technique to define system requirements
in a single session by having all the necessary
people participating together
Compare: Normal interview and discussion approach takes
a lots of time and effort (meet with users, document the
discussion, build models, review and revise them, place
unresolved issues on an open-items list – all of those on
iterative basis!)- May require many meetings (months)
JAD idea is to compress all these activities into a
shorter series of meetings with users and team
members (An individual JAD session may last from
a day to a week)
Critical factor is to have all important
stakeholders present
51
Joint Application Design
Participants
JAD session leader
Trained in group dynamics and facilitating group discussion
Must ensure agenda and objectives are met
Often system analyst appointed as leader but better if someone actually
trained to lead group decision making
May not be the expert in the business area though
Users
Managers are good to have at the meeting since important decisions have
to be made
If executives cannot be at the meeting, they at least should be
contactable (or visit once a day)
Technical staff
A representative from the technical support group should be present (e.g.
for info. regarding networks, operating environments etc.)
Project team members
System analysts
User experts
Assist in discussion, clarify points, build models and document the results
Members of the project team are the experts on ensuring the objectives
are met 52
Joint Application Design Facilities
54
Group Support Systems (GSSs)
System that enables multiple people to participate
with comments at the same time, each on his or
her computer
• Allows for sharing of information and collaborative work
• Runs on networked computers
• Can include “chat” features to allow posting to participants
• Allows inclusion of “shy” participants
• Can store results of discussion and decisions made
• Also allows for connection with participants at distant
locations – a “virtual” meeting (could include video hookup)
Other forms of electronic support
• Electronic white boards
• Computer support for collaborative work (CSCW)
CSCW software
• Would allow for participation at remote sites who could work
on documents at same time (shared files, etc.)
55
Limitations of JAD
Can be risky
Since done very fast may end up with sub-
optimal decisions
Details may be inappropriately defined or missed
However, can be effective if it is done carefully
with the result of shortening the schedule
56
Research Vendor Solutions
Many problems have been solved by
other companies
Positive contributions of vendor solutions
Frequently provide new ideas
May be state of the art
Cheaper and less risky
Danger
May purchase solution before understanding
problem
57
Useful Techniques in Vendor
Research
Technical specifications from vendor
Demo or trial system
References of existing clients
On-site visits
Printout of screens and reports
58
Validating the Requirements
61
Structured walkthrough
Who
Two main parties involved in walkthroughs:
– Person (or persons) who need their work to be reviewed
– Group who reviews it
It is best to have experienced analysts involved in the walkthrough
who reviews the documentation especially for verification since they
have seen lots of problems before!
For validation good to have stakeholders involved
Could also include technical staff, or even external users –
whoever is best for validating the work
How
Requires the same steps as an interview (i.e., preparation, execution
and follow-up)
Preparation: The analyst whose work is to be reviewed should:
– Get materials ready for review
– Identify appropriate participants and provide them copies of the
material
– Schedule a time and place and notify all participants 62
Structured walkthrough
Execution
– During the walkthrough analyst presents material point by point
– Walks through each diagram or section of a document explaining
each component (one effective technique is to define a sample
test case and process it through the defined flow)
– The reviewers look for inconsistencies or problems and point them
out
– A librarian (helper for presenter) documents the comments, errors
and suggestions
– Corrections and solutions are not made during the walkthrough
– If there is a complex error may reschedule for another meeting
– Reviewer should only provide focused feedback
– Presenter can integrate feedback later on when gets entire set of
comments
Follow-up
– Making required corrections
– Additional walkthrough may be needed 63
Structured
Walkthrough
Evaluation
Form
64
Readings
65