Chapter 4 – Beginning the Analysis: Investigating System
Requirements
Solutions to End-of-Chapter Material
Review Questions
1. What is the difference between functional requirements and nonfunctional requirements?
Functional requirements define the functions or user services that will be supported by the system. Such things as support of business processes and reports are included in functional requirements.
Nonfunctional requirements are other technical specifications and include such things as technical, performance, usability, reliability, and security requirements.
2. Explain the use of a discovery prototype and an evolutionary prototype.
A discovery prototype is used to help understand user requirements. Often the users are not sure what capabilities are needed in a system, or how certain functions should work. A discovery prototype can be built to help define and refine the business activity as a combined manual/computer process. Usually discovery prototypes are considered throwaway prototypes.
An evolutionary prototype, on the other hand, is one that is expected to grow and evolve until it eventually becomes the final working system. It may be used for discovery, but its main objective is to become the final system.
3. List and describe the three fact-finding themes.
What are the business operations and processes?
The purpose of the first theme is to identify the various business processes that must be supported in the new system. The standard question to users is, “What do you do?” or “What are your job responsibilities?”
How should those operations be performed?
The purpose of the second theme is to understand the details of the business process in the context of a new system. The focus is not necessarily on how the operation is done now, but how should it be done.
What information is needed to perform the operation?
The purpose of the third theme is directly tied to the development of the new system, and what information it must maintain and provide.
4. What is the objective of a structured walkthrough?
The objective of a structured walkthrough is to find errors in a piece of work. In other words, it is a quality control activity to improve the quality of a piece of work, such as a data flow diagram or data model.
The objective is not to be a performance review or an evaluation of an employee.
5. Explain the steps in preparing for an interview session.
See Figure 4-9.
Establish an objective for the interview session.
Determine the persons who should be involved in the interview, both users and team members.
Develop a list of questions and issues to be discussed.
Review any related documentation. Existing reports or procedure manuals are a good source of questions and issues to discuss.
Set time and location.
Inform all participants of objective, time, and location. It is especially important that the users be informed of the objectives so that they can come to the meeting prepared.
6. What are the benefits of doing vendor research during information-gathering activities?
Doing vendor research, both for vendors of packaged solutions and consulting firms that develop solutions, allows the project team the opportunity to see what other companies have done. It is less expensive to buy a solution than to build one, if a viable solution is available. Vendor research helps the project team see other solutions that may be state-of-the-art and able to provide a competitive advantage to the enterprise.
7. What categories of stakeholders should you include in fact finding?
The type and scope of the system will dictate which stakeholders are required. However, user stakeholders are always required. Client stakeholders are sometimes needed. Technical stakeholders sometimes also need to be involved.
8. What is meant by vertical and horizontal dimensions when determining which users to involve?
Horizontal dimension means that various departments in a company may be affected by a system. For example, a marketing system may have information that might be useful to the production plant. Therefore, not only marketing users need to be interviewed, but also production users.
Vertical dimension means that within each department there are clerical users and middle management users. Both should be included. The vertical dimension also goes higher, up to top management and executives who may have an interest in the information provided by the system.
9. What is JAD? When is it used?
JAD stands for joint application design. It is a technique used to speed up the fact-finding or design process. It can be used when the requirements for a system are fairly standard and can be defined in detail during only a few working sessions with the right
stakeholders. The approach is to have meeting sessions with all the necessary stakeholders so that requirements and final decisions can be made quickly.
10. What is BPR? What does it have to do with systems analysis?
BPR stands for business process reengineering. Business systems are always a
combination of manual and automated processes. A change in the level or approach of automation will have an important impact on the total business process. Increasing levels of automation have also provided opportunities to shift many manual processes to
automated processes. Additional information and services are also possible with increased automation. Thus, information technology has provided opportunities for companies to reengineer their business processes.
11. What technique is used to validate user requirements?
Because user requirements cannot be tested in the programming sense of the word, another method must be used to validate the requirements. A widely used method is a structured walkthrough. When a piece of work is completed that describes some user requirements, either in the form of a diagram or textual description, a walkthrough is conducted. In the walkthrough the work is reviewed with the objective of finding missing pieces, checking for accuracy, and verifying that the diagram is internally consistent.
12. Describe the open-items list, and explain why it is important.
The open-items list is a list of issues that have not been resolved. It is needed to ensure that requirements are complete and that undefined specifications are not forgotten.
13. What do correct, complete, and comprehensive mean with regard to systems analysis?
Sets of requirements that are developed during systems analysis need to be correct, complete, and comprehensive. Correct means that there are no errors in the requirements specifications. Complete means that each requirement is completely specified with adequate detail. Comprehensive means that the requirements cover all possible processing needs.
14. List and describe the seven information-gathering techniques. Review existing reports, forms, and procedure descriptions.
Conduct interviews and discussion with users.
Observe and document business processes.
Build prototypes.
Distribute and collect questionnaires from stakeholders.
Conduct joint application design (JAD) sessions.
Research vendor solutions.
15. What is the purpose of an activity diagram?
An activity diagram is used to document the detailed steps of a business process or workflow.
16. Draw and explain the symbols used on an activity diagram.
Thinking Critically
1. One of the toughest problems in investigating system requirements is to make sure they are complete and comprehensive. What kinds of things would you do to ensure that you get all of the right information during an interview session?
Answers should include the following points:
Ensure that all stakeholders are identified and included in the requirements definition activities.
Review every existing form and report to make sure that all information needs are understood.
Identify and understand every business activity. Be sure that all business procedures have been discussed.
Ensure that all exception conditions have been identified and associated processing has been defined.
Maintain an open-items list and ensure that all items are resolved.
2. What can you do to ensure that you have included all of the right stakeholders on your list of people to interview? How can you double-check your list?
One method is to obtain, or build if necessary, an organization chart of the company. This will ensure that all the potential stakeholders are identified. A subset of the organization chart that includes the required stakeholders can be created based on the scope of the system.
Several ways to check your list are to (1) review it with the primary client (authorizing and funding group), (2) review it with the project steering committee, or (3) review it with the chief information officer or some other knowledgeable systems person.
3. One of the problems you will encounter during your investigation is “scope creep”— that is, user requests for additional features and functions. Scope creep happens because sometimes users have many unsolved problems and the systems
investigation may be the first time that anybody has listened to their needs. How do you keep the system from growing and including new functions that should not be part of the system?
This problem is really a project management issue. The project manager should establish guidelines to control this problem.
One preventative method is to be sure that the initial scope definition is adequate and comprehensive. A partial definition during the scoping activities will exacerbate the problem of scope creep.
Assuming that the system scope was defined adequately, then one way to control scope creep is to establish a committee that consists of both project team members and user (or
client) members. All new additions to the scope of the system need to be approved by the committee. Prior to approval, an estimate should be done to determine the criticality of the request and the impact on the project schedule. Have the users participate in the decision so that it is a combined decision and not dictated by the project manager. An additional technique is to begin a list of enhancements for the next version of the system. Some requests can easily be deferred to a later version.
4. It is always difficult to observe users in their jobs. It frequently makes both you and them uncomfortable. What things could you do to ensure that user behavior is not changing because of your visit? How could you make observation more natural?
Because this is an idea-generating question, answers will vary considerably. Some ideas may include:
Participate in the business process by doing some of the tasks.
Ask them to pretend you are a new employee that needs to be trained.
First, try to establish a rapport with them, maybe by going on a coffee break together.
Do not use a video camera or tape recorder.
5. What would you do if you got conflicting answers for the same procedure from two different people you interviewed? What would you do if one was a clerical person and the other was the department manager?
The first thought would be to take the opinion of the department manager as the correct answer. However, it is not uncommon for the department manager to be behind on some of the latest details of business procedures. The best solution in this case is to get the two people together and let them discuss the differences until they both agree on the correct procedure. The systems analyst should not make the decision as to which answer is correct, nor should he or she try to resolve the difference. It is the users’ responsibility to do so.
6. You are a team leader of four systems analysts. You have one analyst who has never done a structured walkthrough of his or her work. How would you help the analyst get started? How would you ensure that the walkthrough was effective?
First, determine if the analyst is reluctant to conduct walkthroughs. Often the fear of being criticized or evaluated is the source of the reluctance. As a team leader, it would be your responsibility to “groom” the analyst and help him or her get started. You might start with a simple piece of work that will most likely have few errors.
7. You have been assigned to resolve several issues on the open-items list, and you are having a hard time getting policy decisions from the user contact. How can you encourage the user to finalize these policies?
Delayed policy decisions impact the project schedule. Sometimes the user does not understand the impact of delayed decisions. Thus, the first approach should be to explain the negative impact that a given decision is having on the project. If that doesn’t work, then stronger measures can be taken, such suggesting that the project steering committee review the outstanding-items list. Also, if the outstanding-items list indicates the length of time that items have been open, the analyst can assign or adjust the priority of those items that have become critical.
8. You are going on your first consulting assignment to do systems analysis. Your client does not like to pay to train new, inexperienced analysts. What should you do to appear competent and well prepared? How should you approach the client?
Obviously, it is not a good idea to try to appear to be something that you are not. The best solution is to become as prepared as possible in the allowed time as the project begins. The analyst can learn about both the general industry and the specifics of the company. Industry information is available in books and magazines. Company information can be obtained from reviewing existing system documentation, including reports, forms, and procedure manuals.
The way in which questions are asked will also help to alleviate user or client concerns. Questions that ask for specific details demonstrate that the analyst has done some
research in the area. For example, “Will you explain how this process works and how you use these forms?” Questions that are too vague emphasize a lack of knowledge in the area. For example, “What does this mean?”
9. In the running case of Rocky Mountain Outfitters, you have set up an interview with Jason Nadold in the shipping department. Your objective is to determine how shipping works and what the information requirements for the new system will be. Make a list of questions, open-ended and closed-ended, that you would use. Include any questions or techniques you would use to ensure you find out about the
exceptions.
Three areas should be addressed in this answer: (1) closed-ended questions, (2) open- ended questions, and (3) questions related to exception conditions.
Sample closed-ended questions:
What is the volume of shipments on an average day?
How does the volume vary across time?
How many employees are there in shipping? Sample open-ended questions:
What forms are used?
How is the system updated when a shipment is sent?
How are back-orders handled?
How are returns handled?
What information is updated when a shipment is sent?
What reports does the system produce?
How are employee responsibilities divided among the various procedures? Sample exception condition questions:
What happens when items are not in stock for an order?
How do you handle errors in the inventory system and physical counts?
What happens when shipments are returned due to a bad address?
What do you do about lost shipments? How are you notified?
9. Develop an activity diagram based on the following narrative. Note any ambiguities or questions that you have as you develop the model. If you need to make
assumptions, also note them.
The purpose of the Open Access Insurance System is to provide automotive insurance to car owners. Initially, prospective customers fill out an insurance
application, which provides information about the customer and his or her vehicles. This information is sent to an agent, who sends it to various insurance companies to get quotes for insurance. When the responses return, the agent then determines the best policy for the type and level of coverage desired and gives the customer a copy of the insurance policy proposal and quote.
Note: The first activity diagram below is a complete, detailed solution. The second diagram below is a simplified solution. In this diagram, the activities related to
distributing the documents have been deleted. In other words, we let the arrows represent not only the sequence of activities, but also the movement of the documents.
Prospective Customer Insurance Agent Insurance Company H Fill out application Receive application Send in application Send to insurance company Develop quote Receive quotes Decide best policy Send to prospect Receive proposal and quote H Activity diagram 1.
Prospective Customer Insurance Agent Insurance Company H Fill out application Receive application Develop quote Decide best policy Receive proposal and quote H Activity diagram 2.
10. Develop an activity diagram based on the following narrative. Note any ambiguities or questions that you have as you develop the model. If you need to make
assumptions, also note them.
The purchasing department handles purchase requests from other departments in the company. People in the company who initiate the original purchase request are the “customers” of the purchasing department. A case worker within the purchasing department receives that request and monitors it until it is ordered and received. Case workers process requests for the purchase of products under $1,500, write a purchase order, and then send it to the approved vendor. Purchase requests over $1,500 must first be sent out for bid from the vendor that supplies the product. When the bids return, the case worker selects one bid. Then, he or she writes a purchase order and sends it to the vendor.
In-house Customer Purchasing Department Vendor
H Make purchase request Receive requests <1500? Write purchase order Request bid Develop bid Select bid
Send out bid
H
Yes
No
11. Develop an activity diagram based on the following narrative. Note any ambiguities or questions that you have as you develop the model. If you need to make
The shipping department receives all shipments on outstanding purchase orders. When the clerk in the shipping department receives a shipment, he or she finds the outstanding purchase order for those items. The clerk then sends multiple copies of the shipment packing slip. One copy goes to purchasing, and the department updates its records to indicate that the purchase order has been fulfilled. Another copy goes to accounting so that a payment can be made. A third copy goes to the requesting in-house customer so that he or she can receive the shipment.
After payment is made, the accounting department sends a notification to purchasing. After the customer receives and accepts the goods, he or she sends notification to purchasing. When purchasing receives these other verifications, it closes the purchase order as fulfilled and paid.
Shipping Purchasing Accounting In-house Customer
H Receive shipment Find purchse order/copy Update purchse
records Make payment
Receive shipment
Send
notification notificationSend
Close purchase order
Experiential Exercises
1. Conduct a fact-finding interview with someone involved in a procedure that is used in a business or organization. This person could be someone at the university, a small business in your neighborhood, in the student volunteer office at the university, a doctor’s or dentist’s office, a volunteer organization, or your local church. Identify a process that is done, such as keeping student records, customer records, or member records. Make a list of questions, and conduct the interview. Remember, your objective is to thoroughly understand that procedure—that is, to become an expert on that single procedure.
Responses will vary. Answers should include both closed-ended questions and open-ended questions. Answers to the questions can be written in text form or presented in an activity diagram.
2. Follow the same instructions as for exercise 1, except make this exercise an
observation experience. Either observe the other person do the work, or ask to carry out the procedure yourself. Write down the details of the process you observe.
Responses will vary. Requiring an activity diagram is a good approach to help students learn about observation as well as the benefits of developing a model.
3. Get a group of your fellow students together, and conduct a structured walkthrough of your results from exercise 1 or 2. Using the results of your interview or
observation, document the procedure. Then, conduct a walkthrough with several colleagues. Or take another assignment, such as Thinking Critically question 9, and walk through your preparation for that assignment. Follow the steps outlined in the text.
Answers will vary, but should include the structured walkthrough evaluation form provided in Figure 4-17 on page 144.
Research and write a one- to two-page research paper using at least three separate library sources on one of the following topics:
(a) Joint application design
(b) Prototyping as a discovery mechanism (c) Business process reengineering
(d) Computer support for collaborative work (CSCW) (e) Workflow systems
(f) Structured walkthrough
Answers will vary depending on the topic and the point of view.
4. Using Rocky Mountain Outfitters and the customer support subsystem as your guide, develop a list of all the procedures that may need to be researched. You may want to think about the exercise in the context of your experience with retailers such
as L.L. Bean, Lands’ End, or Amazon.com. Get some catalogs, check out the Internet marketing done on their Web sites, and then think about the underlying business procedures that are required to support those sales activities. List the procedures and describe your understanding of each.
Answers will vary but should include a list of activities/use cases that covers all of the events listed in Figure 5-16, Customer Support System Event Table.
Case Studies
Case Study: Jacob and Jacob, Inc. On-Line Trading System
1. What is the best method for Edward to involve the brokers (users) in development of the new online trading system? Should he use a questionnaire? Should he interview the brokers in each of the company’s 30 offices, or would one or two brokers representing the entire group be better? How can Edward ensure that the information about requirements is complete, yet not lose too much time doing so?
This situation is a viable candidate for a questionnaire. The users are dispersed and probably diverse. The questionnaire should focus on needs and preferences and can also help to establish which topics need further refinement.
It will probably cost too much to interview the brokers in all of the offices. One way to select offices is to develop a set of characteristics that distinguish the various offices, and then to select a representative office from each set of similar offices. If the answers to questions are very similar as interviews progress, it may be possible to abbreviate or shorten later visits to offices. If there is a wide variation between needs and procedures, then additional interviews can be scheduled.
2. Concerning customer input for the new system, how can Edward involve customers in the process? How can he interest them in participating? What are some ways that Edward can be sure that the customers he does involve are representative of Jacob and Jacob’s entire customer group?
This may also be a viable candidate for a questionnaire. Statistically, sampling can guarantee that a large enough group can be studied, at least for the questionnaire. The questionnaire should focus on the types of services and reports (statements) that the customer receives from the system. If interviews are needed, some distinguishing
characteristics should first be identified. Then, representative samples of customers could be interviewed. The cost of interviewing can also be controlled through the use of
telephone interviews.
3. As Edward considers what other stakeholders he should include, what are some criteria he should use? Develop some guidelines to help him build a list of people to include.
Guidelines include:
Look at all the existing reports and destinations. All of the destination persons will have an interest in the information provided by the system.
Look at all the different departments in the company to see if they currently receive or need to receive information from the new system.
Consider senior management to see if strategic information needs to be maintained and reported.
Case Study: Rethinking Rocky Mountain Outfitters
1. Identify the major points you would include in a communications plan at this point in the project.
Answers will vary, but should be based on information from the project management information in Appendix A. The project team is just beginning the fact-finding activities. Answers should include the following:
A method to document and maintain user requirements.
A method to document outstanding (open) issues from the users.
A method to report/review requirements with the users.
A method to collect project status and progress from the team.
A method to report project status and progress to the oversight committee.
A basic philosophy, and possibly some techniques, about keeping internal team members up to date on progress and problems.
2. What advice would you give your project team to help them manage the user expectations?
Answers will vary, but ideas should include the following:
During fact finding, the objective is to discover the needs, not promote solutions.
Indicate that the list of system capabilities will be well documented, reviewed, and approved by the stakeholders.
3. What early planning can you do now to ensure that the scope is realistic—to meet the need but within the time and budget allotted?
Answers will vary, but generally should include the following ideas:
Ensure that the system capabilities are well documented.
Base the project schedule on detailed estimates of the work breakdown structure, which includes all the capabilities identified from the user requirements.
Establish a review committee to review additional requests for new system capabilities. Decisions should be made on specific estimates of time and cost.
Case Study: Focusing on Reliable Pharmaceutical Service
1. What information-gathering methods are most appropriate to learn about
requirements from Reliable’s own management staff and other employees? From client health-care organizations? From suppliers?
We’ll organize this answer according to the methods listed on page 127.
Distribute questionnaires. Questionnaires are most useful for gathering preliminary
information from a large or widely dispersed user community. Client health-care organizations fit that description, though it may be difficult to determine to whom questionnaires should be sent. Also, the importance of obtaining accurate and detailed information from clients precludes relying only on questionnaires. A questionnaire might be valuable to solicit initial reactions to the planned Web-based approach to order entry, including concerns and opinions about security, availability of software and hardware, and existing user skill levels.
Interview users. Interviewing will be a key means of gathering detailed requirements
from all user communities. The importance of the system and its radical departure from the existing system will require detailed information from all users. Face-to-face methods are the most reliable and effective means of gathering information when requirements are uncertain and when analysts are trying to discover or define hidden or fuzzy requirements. Naturally, interview scope and topic will vary with each user community.
Review existing documentation. Given the significant changes that the new system
will bring, very little time should be spent reviewing existing documentation. One possible exception to this might be looking for specific information concerning legal requirements (for example, the state or federal rules and regulations that govern
prescriptions for controlled substances). Another exception might be a review of vendor information (possibly obtained from Web sites) concerning existing or proposed e-business interaction procedures and standards. This information is detailed and highly technical and is most likely documented somewhere in written form, though special permission from the vendor may be required to access it.
Observe business procedures. Given the significant changes that the new system will
bring, very little time should be spent observing existing procedures. But observation shouldn’t be completely eliminated because it is a good way of validating requirements obtained via other means. The analysts will need to be careful not to infer requirements based on procedural aspects of the old system that aren’t necessary in the new system. They should also avoid building models of the old system
Research vendor solutions. This is a significant priority given the importance of the
system, management’s desire to have it up and running as quickly as possible, and Reliable’s relative lack of expertise in e-business and depth of personnel and skills in IT in general. Significant portions of the system, or possibly the entire system, can
probably be purchased off-the-shelf. The possible alternatives and their technical and other requirements need to be researched and documented so that they can be
JAD. Again, the changes envisioned in the new system are significant, affecting every
manager and employee and every operational business aspect. Because the organization is relatively small and tight-knit, JAD seems like a natural fit for brainstorming system requirements. The only caveat is that Reliable’s relative lack of experience with
information systems and e-business is something that will need to be addressed before or during the JAD session. Perhaps the JAD session could be preceded by some training or presentations on e-business and modern information system architecture and
practices. In addition, JAD session outcomes will be greatly improved if users from client health-care organizations are included.
2. Should patients in client health-care facilities participate in the information-gathering process? If so, why, and in what ways should they participate?
Patients should probably not participate because they aren’t the decision-making
customers to whom Reliable markets its services. The only exception might be related to billing if there are situations in which patients are directly involved in making payments for their own prescriptions. Determining whether or not patients have a decision-making role should be an early priority. If they do have a decision-making role, they should participate in the information-gathering process in a manner similar to other users from client health-care organizations.
3. With respect to gathering information from suppliers and clients, how deeply within those organizations should systems analysts look when defining requirements? How might Reliable deal with supplier and client reluctance to provide detailed
information on their internal operations?
At a minimum, analysts should examine the client and supplier functions that will integrate directly with the new system, including order entry, billing, and purchasing. Whether or not analysts should explore beyond those functions depends on whether it seems likely that further depth will yield additional efficiencies that can result in reduced costs or greater revenues for both organizations. Possibilities might arise in early
information-gathering activities or during a JAD session.
Ultimately, supplier and client willingness to participate will depend on their perceptions (or lack thereof) of benefits to their organizations. It will probably be easier to convince clients that benefits might accrue since order entry and billing procedures are
cumbersome at present and, thus, likely sources of benefits to both parties. But purchasing procedures are probably also cumbersome at present, so there should be potential cost savings for suppliers.
Early user involvement with both suppliers and clients will be key. But their natural reluctance to let outsiders peer inside their organizations will require more than just a friendly attitude on Reliable’s part. Financial incentives might help, such as minimum or exclusive purchase guarantees for suppliers and discounts for clients. Highly placed system champions in supplier and client organizations would help considerably. Perhaps Reliable managers have contacts within client and supplier organizations that could be
persuaded to act as key participants in (and authorizers of) information gathering activities.
4. For which user community or communities (internal, supplier, or client) are prototypes likely to be most beneficial? Why?
Because the new system will be radically different from the old one, prototypes will be useful for all three user communities. Suppliers will need prototypes to test interactions with their own order-entry, order-fulfillment, and billing systems. Internal users (and probably clients) will need prototypes to help them solidify requirements because they aren’t completely sure of their needs. Clients will also need prototypes to test the effectiveness and operational feasibility of the new system.
5. Should Reliable consider adopting business process reengineering (BPR) as a primary approach to defining system requirements? What characteristics of the proposed system and of the development argue for and against BPR?
The new system is a strong candidate for a BPR approach because it is such a radical departure from current operations. There are no aspects of the proposed system that argue against BPR.