Practical Software Engineering

Data Gathering

(ref: Anderson Chs 7 & 8)

Data Gathering Methods

Common methods are: Interviewing is the most widely used technique in requirements engineering.

Analysts interview future users of the system individually to find out

The information gathered during the interviews enables the analysts to design a new system that will eliminate the shortcomings of the current one.

An alternative to interviewing individuals is the group interview conducted by an impartial leader.

A representative method is Joint Application Design (JAD), developed and taught by IBM.

The advantages of JAD are that

Requirements analysis should not start until there is a clear statement of scope and objectives of the project.

The next phase is to build a logical model of the system (one which does not depend on details of implementation), usually by one of the following methods:

The logical model of the new system becomes the requirements specification.

Typically, it contains:

The final test of the system, the user acceptance test, should be conducted as a benchmark against this document. Therefore, all those factors that will determine whether the users are satisfied with the system should be documented and agreed upon.

There may be a final step in the requirements analysis--to have the users and top management sign off on the specification document. (In most cases, if sufficient contact is maintained with the users during the work, this step is not necessary.)

We need to review the present system before designing a new one, because:

Interviewing

An interview is a systematic attempt to collect information from a person.

Interviewing is an important skill for systems analysts because success depends on an ability to identify:

Without accurate and complete information: The interview process has five steps:

Preparing for the Interview

Before undertaking an interview: This involves reviewing: Analysts must understand common industry terms and be somewhat familiar with the business problems of the industry.

Planning and Scheduling the Interview

Prepare a list of topics and questions to be covered to help ensure that important points are not overlooked and that the interview follows a logical progression.

Scheduling interview should proceed from the top down.

Heads of departments or sections are usually interviewed before employees who report to them.

Team members should explain the purpose of the interview, the general areas to be covered, and the approximate amount of time required to cover all areas.

Opening and Closing the Interview

In opening an interview, introduce yourself, state the purpose of the interview, address any concerns raised by the interviewee, and explain that brief notes will be taken and shared with the interviewee after they have been organized.

Often interviewees are concerned that an analyst is trying to find fault with the way they work. One way to set them at ease is to get them to talk about processes with which they are familiar.

The best interviews are those where the interviewees do most of the talking. Therefore, analysts look for ways to get interviewees to open up to them.

Avoid closed questions as the result of this approach is usually that the interviewees give a brief answer to the question and then wait for the next one, almost as if they were being interrogated by a detective.

Closed questions: (who, where, when, which)

Note taking can become a distraction if not restricted to brief notations for later elaboration. Your notepad is best kept out of the interviewee's line of vision.

The purpose of an analyst's notes should be to help recall pertinent points and hypotheses formed during an interview. Many analysts will use broad headings for note taking rather than specific categories.

Taping an interview is not always recommended. It can intimidate the interviewee; and, listening to the tape and extracting pertinent information is very time consuming. However, video- or audio-taping each have advantages and disadvantages.

When all areas on the interview outline have been explored, ask

"Is there anything we've overlooked?" or

"What other areas should I have asked you about?"

This encourages the interviewee to discuss issues that should have been covered.

"What one change would make your job easier or more effective?"

This question elicits suggestions for improvement.

Closing the interview involves briefly summarizing the areas that have been discussed, highlighting the important facts and your understanding of them.

This lets the interviewee know that you have been listening carefully during the interview and provides an opportunity for clarifying any misunderstandings.

During the summary, as well as during the entire interview, the analyst should adopt a posture of objectivity and avoid personal comments, observations, or conclusions.

Finally, in closing, you must thank the interviewee for the time and ask if a shorter follow- up interview can be scheduled at a later date if necessary.

Conducting the Interview

Active listening helps to maintain the information flow and facilitates adequate feedback from analyst to interviewee.

The active listening technique has five key tools:

Asking Open-Ended Questions

Open-ended questions cannot be answered with a simple yes or no response and thus encourage the interviewee to provide more information.

Open-ended questions begin with such words as what, how or tell me rather than such words as can, does, or when.

For example, "Tell me what happens when a customer calls"

Open questions: (what, why, how)

Using Appropriate Words and Phrases

Avoid using words or phrases that are emotionally charged, distracting, or difficult to understand.

For example, emotional expressions such as problem area, cumbersome process, or poorly controlled imply a foregone conclusion.

Distracting statements contain excessive abbreviations or acronyms, name dropping, or controversial words and phrases, colloquialisms, slang, and jargon.

Giving Acceptance Cues

People also send messages by tone of voice, posture, eye contact, facial expressions, and body movements.

When used properly, they encourage an interviewee to provide information. When used poorly, they can have the opposite effect.

For example, failure to make eye contact in an interview can be interpreted as a lack of interest or concern for the other person. Good eye contact can communicate interest, attention, openness, and a regard for the other person's worth.

Too much eye contact can be misinterpreted as staring. In our culture eye contact between strangers for more than a brief moment is considered a challenge. In some cultures, eye contact is considered an invasion of privacy.

Nodding the head to indicate understanding is an acceptance cue, as is a posture of attentiveness: sitting straight and leaning slightly forward.

Contrast this posture with a person slouching in a chair with one arm flung over the back of the chair or leaning back with both hands folded behind the head.

The following are errors commonly made by inexperienced analysts:

Acceptance cues are used to convey understanding, not agreement.

Restating the Interviewee's Responses

Restatement involves repeating something the interviewee has said in the analyst's own words as an indication that effective communication has occurred and that the analyst understands what the interviewee has said.

Restatement is normally used under the following circumstances:

Restatement can also overcome emotional barriers set up by interviewees who, for some reason, are uncooperative.

The analyst must remain neutral.

For example, if the interviewee is critical of management, the analyst should neither agree with the criticism nor attempt to defend management. Instead, the analyst should simply convey that the interviewee's feelings are understood.

Common errors using restatement:

Examples of Effective vs. Ineffective Restatements of an Interviewee Response

Interviewee Response: We continue to sell products to customers who have not paid their bills.

Effective Restatement: The system processes orders to customers who are bad credit risks. (Encourages interviewee to expand.)

Ineffective Restatement: Why don't you check the customer's credit status before processing the order? (Distorts interviewee's meaning.)

Use silence effectively:

Following Up for Clarification

After the interview has been documented any clarification can usually be done by using closed questions.

Documenting the Results of an Interview

PERSONNEL--SUBURBAN PUMPS--CD--20

TIME REPORTING--IWRUP

INTERVIEW WRITE-UP

PREPARED BY: RON TURNER--DATE: 130CT90--VERSION:PAGE 1/2

APPROVED BY: JOE DAVIS--DATE: 150CT90--STATUS :

Interviewee: Hector Diaz; Manager--Employee Time Reports

Functions Reporting to Interviewee: Supervisors of Employee Time Reporting and Payroll

Notes

1. Scope of Operations, Characteristics of Environment

Hector is responsible for all employee time reporting. Presently, time reports are collected by each of the three area supervisors.

Although Hector sets company-wide time reporting policies, several factors complicate the consistent implementation of these policies. The lack of a uniform centralized time reporting system that identifies variances by locality contributes to the less than efficient employee utilization.

Hector feels that the proposed centralization of all time reporting at headquarters would provide significant improvements. This would include the timely identification of project variances among other benefits.

2. Business Objectives

a. Timely reporting of project variances

b. Establish effective control over intra- location transfers

3.Information Needs

a Project variances

(i) Standard Employee Time Report

b. Intra-location Transfers

(i) Projected Personnel Requirements

(ii) Standard Employee Time Report

4. System Features

a. Monthly Budget/Actual Variance Reports

b. Variance reports are restricted to supervisors and above

c. Time reports must be processed within two hours of their submission

Summary

Unstructured Interview

Advantages:

Disadvantages: Structured Interview

Advantages:

Disadvantages:

The Repertory Grid

The technique of the repertory grid is used to represent the repertoire of constructions that the individual has acquired from his personal observations of the world.

A repertory grid or "construction matrix" is a two-way classification of data in which elements and constructs are interlaced.

The personal constructs are bipolar dimensions which group the elements into varying clusters according to their similarities and differences within the person's frames of reference.

This technique has been used in many settings to probe the construct systems of psychiatric patients, student teachers, effective managers, knitwear inspectors, and rivet selectors in the aircraft building industry.

The elements may be people, things, events, or experiences, which are related to the particular problem or purpose for using the grid.

As an example, thinking of three factors affecting factory layout: location of services, aisle space and area of department

In what way are two alike and thereby different from the other one?

We might first of all say that location of services, and aisle space are alike since they affect flow, whereas area of department does not.

This is, then, the first construct with its two poles or opposite descriptions.

Now all the elements in the set must be rated on this dimension as either being affects flow, or being doesn't affect flow.
This also shows the significance of the term personal in personal construct since not everyone would agree that safety doesn't affect flow.

Construction of Questionnaires Using Repertory Grids

Six managers A, B, C, D, E, and F each had a group of subordinates working with him or her on a particular project.

Each manager chose a set of subordinates as elements for a grid, and as many constructs as possible were elicited from the manager using triads.

After eliciting a grid from each manager, we chose a set of subordinates who were well known to all of them as elements in a second grid. This set of elements spanned a wide variety of employees in the section, giving full scope to all the likely ways of grouping them in any situation.

When each manager completed a second grid, we had six grids, all using the same set of employees as elements, but each one having constructs personal to the individual.

We can identify constructswhich are being used in the same way by more the two managers:

e.g.

have the patterns: We want to use the information we have gathered to develop a questionnaire that the whole company can use to evaluate effectiveness as it applies to particular employees and their situation. The constructs used by the managers can be put in this form. For example, see 7: PERFORMANCE QUESTIONNAIRE

Check the most appropriate description of the subordinate's work over the last year.

Joint Application Design

The advantages of JAD are that It was developed to:

Participants

Preparing for the Workshop

Conducting the Session

The analysis covers the following points of a proposed system:

Documenting the Results

After the meeting, the scribes organize the materials and deliver them to the IS analyst who attended the workshop. The analyst's responsibility is to prepare a specification document, which may include the following items: This list of items may be tailored to fit the organization's existing documentation standards.
Practical Software Engineering, Department of Computer Science
mildred@cpsc.ucalgary.ca 10-Jan-96