dsr

advertisement
Determining system requirements
Introduction
We have traditional requirements determination methods, like: interviewing, using
questionnaires, observing users in their work environment, and collecting procedures and
other written documents. And we have modern methods for collecting system requirements
(computer aided ones), like: joint requirements planning (JRP), group support systems, CASE
tools, discovery prototyping.
Performing requirements determination
Information on what the new system should do is gathered from as many sources as possible:
users of current system, from observing users, from the reports, forms and procedures. All this
is documented and made ready for structuring.
Main characteristics of a good systems analyst:
-
impertinence (ask questions about everything that exists and also about what may exist in
the future),
-
impartiality (find the best solution to a business problem or opportunity – consider issues
raised by all parties),
-
relax constraints (eliminate unfeasibility, assume that anything is possible, traditions may
not always be reasonable),
-
attention to details (everything must fit together so that the system works properly),
-
reframing (every system is different and needs a new creative approach).
The primary deliverables from requirements determination are various forms of information
gathered during the determination process: transcripts of interviews, notes from observations
and analysis of documents, analyzed responses from questionnaires, sets of forms, reports, job
descriptions, or computer-generated output such as system prototypes. We could group all this
information in three groups:
-
info collected from conversations with or observations of users (interview transcripts,
notes form observations etc.)
1
Information Systems Analysis
Karolina Muszyńska
-
existing written information (business mission or strategy, forms, reports, training
manuals, flow charts and documentation of existing system etc.)
-
computer-based information (results from JRP sessions, CASE repository contents)
Traditional methods for determining requirements
List of traditional methods:
1. individual interviews (listening) – open-ended and closed-ended questions (pros and
cons), interview guidelines (no good or bad answers, listen carefully and take notes or
record, organize notes within 48 h, don’t promise anything about the system if it is not
sure, make variety of perspectives from the interviews). Pros of interviews: effective way
of communicating and obtaining info. Cons: expensive and time-consuming, limited
number of questions and people can be covered.
2. questionnaires – choosing respondents (convenient, random, purposeful, stratified
sample); designing questionnaires. Pros of questionnaires: not expensive, gathering info
from many people in relatively short time and less biased in interpretation of the results.
Cons: passive and have lower depth of understanding, no follow-up questions are
possible, no additional opportunity to judge the responses (body language, eye contact,
etc.).
3. group interviews – advantages: more effective use of time than individual interviews,
possibility of confrontation and discussion between interviewees (makes it easy to find
agreement and diversity areas). Disadvantages: difficult to schedule (video conferences
solve much). Group interviews are the core of JRP process.
4. workers’ observation – pros: more accurate reflection of reality, objective measures of
employee interaction with information system; cons: observation may cause people act
differently, limited time and number of people.
5. studying of business documents – in order to discover more details about current system
and the organization (existing problems, opportunities, organizational direction, titles and
names of key individuals, values of certain individuals or organization, special
information processing circumstances, reason why the current system is designed as it is,
data, rules for processing data). Written work procedure for an individual or work group
is very useful document. Problems with procedures (duplicate, missing, out of date or
contradicting reality) should be solved by the management not the analysts. Both formal
2
Information Systems Analysis
Karolina Muszyńska
and informal systems (procedures) should be considered. Business forms are also very
useful (what data flow in and out of the system, what kind of data and which are
necessary). Report generated by current system may also be useful. If the current system
is computer-based than we may use: flow charts, data dictionaries, CASE tool reports,
user manuals.
Modern methods for determining system requirements
Main idea behind JRP is to bring together the key users, managers and systems analysts
involved in the analysis of the current system (similar to group interview). But JRP follows a
particular structure of roles and agenda, which enables to collect systems requirements from
all the key people simultaneously. Typical participants:
-
JRP session leader – sets and supervises agenda and is neutral
-
users – key users of the system, who know the most about it
-
managers – they provide insight into new organizational directions, motivations for the
system
-
sponsor – someone at a relatively high level of the company who pays
-
system analysts – they are there to learn from users and managers, and not to dominate the
process
-
scribe – a person who takes notes
-
IS staff – other staff like programmers, or database analysts (they know some technical
limitations or ideas)
JRP sessions are usually held in special rooms with special equipment. Upper CASE tools can
be used during JRP (diagramming tools, display and report generation tools) in order to give
graphic form to system requirements, show it to users and make changes based on their
reactions. Also prototyping tools are good for presenting users with graphic illustrations of
what the alternative systems will look like.
Also group support systems may be used to support JRP sessions (because there are some
typical group meeting problems). Instead of giving everyone a few minutes to talk all
members of the group type their comments into computers and may see what everyone else
has been typing, but the comments are anonymous so bosses can also be criticized. Pros:
everyone has a chance to “say” something, important ideas are less likely to be missed, and
3
Information Systems Analysis
Karolina Muszyńska
poor ideas more likely to be criticized. Cons: leader has lower ability to resolve conflicts and
the session may become less structured.
Discovery prototyping allows to quickly convert basic requirements (obtained during i.e.
interviews) into a working, though limited version of the desired information system. The
prototype will then be viewed and tested by the user and changes will be introduced. And this
will be repeated until all concrete specifications for the ultimate system are developed.
Prototyping is mostly useful when:
-
user requirements are not clear or well understood,
-
one or a few users are involved,
-
possible designs are complex and must be concrete,
-
there are communication problems,
-
tools for prototyping are available.
Disadvantages of discovery prototyping: tendency to avoid creating documentation of system
requirements, prototypes may be too specific (based on a certain user’s taste), prototypes
ignore issues of sharing data with other systems (stand-alone systems), some important
requirements may be missed.
Questions:
1. Name four traditional techniques for collecting information during analysis. Give the
advantages and disadvantages of each method.
2. What is JRP and who takes part in a JRP session?
3. How has computing been used to support JRP?
4. What benefits do GSS provide?
5. Which type of CASE tools are appropriate for use during requirements determination?
6. What are the advantages and disadvantages of discovery prototyping?
4
Information Systems Analysis
Karolina Muszyńska
Download