Lecture 4
Lecture 4
Lecture 4
1
The Activities of the Analysis Phase
Figure 4-3 2
Systems Analysis and Design in a Changing World, 5th Edition 2
Analysis Phase Activities
• Gather Information
– Involves gathering lots of information
– Can get information from people who will be using the
system
• By interviewing them
• By observing them
– Can get other information by reviewing documents and
policy statements (e.g. At a bank)
– Can involve the analyst actually doing some or part of
the task to get a feel for what is done
• In order to automate order-entry you may need to become an
“expert” on the task (knowing how orders are processed)
– Need to understand current and future users, locations, 3
system interfaces, possible solutions, etc.
• Define System Requirements
– Involves modelling
• Logical Model
– Any model that shows what the system is required to do
without committing to any one technology – requirements
model is logical
• Physical Model
– Any model that shows how the system will actually be
implemented
• Models are often graphical in nature
– Data flow diagrams (DFDs)
– Entity-relationship diagrams (ERDs)
• Natural Language is ambiguous
4
5
• Prioritize Requirements
– Important to establish which functional and technical
requirements are most critical
– Why? Because resources are always limited and you
want to address the most important things
– If not addressed can lead to “scope creep”, where the
scope of the project just seems to expand over time
6
• Generate and Evaluate Alternatives
– Could include considering more than one method to
develop system
– Could involve in-house development or outsourcing to
a consulting firm
– Might be able to use “off the shelf” software package
– Each alternative has costs and benefits to be considered
– Also must consider technical feasibility
7
• Review Recommendations with Management
– Usually done when all the above are completed
– Must decide if project should continue at all
– Must decide on which alternative is best (if you are
going ahead with the project)
– NOTE – at this point should include
CANCELLATION of project as an option
• May have found costs were too high
• May have found benefits were lower than thought
• Maybe the business environment suddenly changed making
the project obsolete
– Detailed documentation has been collected
• System requirements
• Proposed solution
8
9
Requirements Specification
10
Functional and Technical Requirements
• Functional Requirements
– A system requirement that describes a function or process
that the system must support
– E.g. “system will calculate tax amounts, report year end tax
deductions”
• Non-Functional Requirements / Technical
Requirements
– A system requirement that describes an operating
environment or performance objective. Describe constraints
on functional requirements
– E.g. Tax amounts should be accurate, Calculate Tax amount
should be easy to use
– Security
– Safety
– Privacy
11
Summary of Types of Requirements
QUALITY
ASSURANCE
Requirements FUNCTIONALITY
SECURITY
12
Types of Requirements/Questions Asked
• Physical Environment
– Where is the equipment to function?
– Is there one location or several?
– Are there any environmental restrictions such as
temperature, humidity or magnetic interference?
• Interfaces
– Is the input coming from one or more systems?
– Is the output going to one or more systems?
– Is there a prescribed way in which the data must be
formatted?
– Is there a prescribed medium that the data must use?
13
• Users and Human Factors
– Who will use the system?
– Will there be several types of users?
– What is the skill level of each type of user?
– What kind of training will be required for each type of
user?
– How easy will it be for a user to understand the system?
– How difficult will it be for a user to misuse the system?
14
• Functionality
– What will the system do?
– When will the system do it?
– How and when can the system be changed or
enhanced?
– Are there constraints on execution speed, response
time, or throughput? (Non-Functional Req. frequently
associated with FR)
• Documentation
– How much documentation is required?
– To what audience is the documentation addressed?
15
• Data
– For both input and output, what should be the format of
the data?
– How often will it be received or sent?
– How accurate must it be?
– To what degree of precision must the calculations be
made?
– How much data flows through the system?
– Must the data be retained for any period of time?
• Resources
– What materials, personnel or other resources are
required to build, use and maintain the system?
– What hardware is required?
– What software is required? (e.g.. Databases?)
16
• Resources (continued)
– What skills must the developers have?
– How much physical space will be taken up by the
system?
– Is there a prescribed timetable for development?
– Is there a limit on the amount of money to be spent on
development or on hardware and software?
17
• Security
– Must access to the system or to information be
controlled?
– How will one user’s data be isolated from other’s?
– How will user programs be isolated from other
programs and from the operating system?
– How often will the system be backed up?
– Must the backup copies be stored at a different
location?
– Should precautions be taken against fire or theft?
18
• Quality Assurance
– What are the requirements for reliability?
– How the characteristics of the system must be
demonstrated to others?
– Must the system detect and isolate faults?
– What is the prescribed mean time between failures?
– Is there a maximum time allowed for restarting the
system after a failure?
– How can the system incorporate changes to the design?
– Will maintenance merely correct errors, or will it also
include improving the system?
– What efficiency measures will apply to resource usage
and response time?
– How easy should it be to move the system from one
location to another or from one type of computer to
another? 19
Stakeholders – The source of system
requirements
• Stakeholders: People who have an interest in the
success of the new system
– The users: who actually use the system
– The clients: who pay for and own the system
– The technical staff: who ensure the system runs
20
User Stakeholders
• Can identify users horizontally – i.e. Across
departments
• Can also identify users vertically – i.e. Hierarchy
within a department (e.g. lower, middle and upper
managers)
• Type of users
– Business operations users – use the system daily to
perform operations (transactions – a piece of work)
– Query users – could be business people or customers –
request info
– Management users – want reports, performance stats,
want to know volumes of transactions etc.
– Executive users – want information to help with strategic
issues, e.g. compare improvements in resource utilization
21
22
23
Stakeholders at Rocky Mountain Outfitters
24
Identifying System Requirements
26
Questions asked (overall)
27
Skills Needed and Methods Used
• Understanding of user needs
• Ability to analyze and solve business problems
– Being able to identify and capture business rules
• Methods
– Distribute questionnaires to stakeholders
– Review existing reports, forms and procedure
descriptions
– Conduct interviews and discussion with users
– Observe business processes and workflows in real life
(can video or audio record activities, do usability
testing etc.)
– Build prototypes
– Conduct joint application design (JAD) sessions 28
Review Existing Reports, Forms and
Procedure Descriptions
Carry out
Follow up
32
Preparing for the Interview
• Must establish objective – what do you want to get
out of it?
• Determining 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, but not more than three
– Can compare notes
• 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?”)
33
• Last step in preparing: make the interview arrangements
(where to meet and when – good to pick a quiet room)
34
• Probe for details
– In addition to looking for exception conditions, the
analyst must probe to get a complete understanding of
procedures and rules
• Take careful notes
• Recording?
• Try to follow some logical agenda during the
interview
• Semi-structured interviews often useful
(unstructured interviews can often get out of
control)
35
36
Following Up the Interview
37
Observing Business Procedures and
Workflows
• Early (but not too early) in the investigation
should observe the activities in the organization as
they really occur
• Excellent way to learn
– how people do their jobs
– what problems they may have
– how to improve any systems they are using
• Can consist of
– Quick walkthrough of the office or plant
– Scheduling several hours to observe a user doing a real
task (“day in the life”)
– More involved methods – e.g. Videotaping the
workplace and using methods from social science to
analyze 38
• When observing
– Should attempt to be unobtrusive, so you don’t change
the users’ behaviour because you are watching them!
– May require consent to do this (e.g. videotaping
intensive care unit in a hospital)
– May require repeated or extended observation periods
to really understand what is going on
– If you are observing (and not recording) then best to
have more than one observer go along
– As text mentions, common sense and sensitivity to
needs and feelings of the users is VERY important!
39
Observing Activities: some notes
• Decide what is to be observed
• Decide what level of detail should be looked at (how
concrete the observation should be)
• Create categories that capture key activities
• Prepare materials for observation (forms to fill in for note
taking)
• Decide when to observe and what tools you’ll take (e.g.
camera, tape recorder, or just recording on paper)
• Decide on approach to sampling – e.g. observe three one
hour periods, or by event (e.g. board meetings)
• Should be used in conjunction with other methods (e.g.
interviews)
• Could use forms to structure observations (see next slide)
40
Organization: Company: Solid Steel Shelving
Analyst: Joe Smith
Scenario: Quality assurance
Date: 9/3/1999
Decision Maker (Actor) Observation of Information-Related
Activity
Quality Assurance Manager - Asks shop floor supervisor for the day’s
production report.
• Technical staff
– A representative from the technical support group
should be present (e.g. for info. regarding things like
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
50
Setting for JAD sessions
51
52
Advances to Support JAD sessions
• Electronic support
– Participants may have laptops connected in network
– That way models and descriptions can be shown to
everyone (could be done using a CASE tool)
– Group Support Systems (GSSs)
• System that enables multiple people to participate with
comments at the same time, each on his or her computer
• Allow 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 – end up with a “virtual” meeting (could include
video hookup) 53
• Other forms of electronic support
– Electronic white boards
– Computer support for collaborative work (CSCW)
software
– Would allow for participation at remote sites who could
work on documents at same time (shared files etc.)
54
55
Limitations of JAD
• Can be risky
• Since done very fast may end up with suboptimal
decisions
• Details may be inappropriately defined or missed
• However, JAD can be effective if done carefully
with the result of shortening the schedule
56
Business Process Reengineering (BPR)
58