SEN2022 · Week 5 · Problem Discovery, Requirements Discovery, Requirements Analysis

Requirements determination: types, techniques, quality

The difference between functional and nonfunctional requirements, interviews, JAD, questionnaires, observation and document analysis, and the properties of a good requirement. The exam asks 'classify this requirement' and 'which technique' questions.

requirementfunctional requirementnonfunctional requirementoperational requirementperformance requirementsecurity requirementcultural and political requirementrequirements definitionbusiness process automation (BPA)business process improvement (BPI)business process reengineering (BPR)interviewopen-ended questionclosed-ended questionprobing questionjoint application development (JAD)facilitatorquestionnaireobservationdocument analysisHawthorne effecttraceability

A requirement is a feature the system must perform or must have. Projects are lost here more than anywhere: a system built with wrong or missing requirements is the wrong system, however well it is coded. This first step of the analysis phase consists of three jobs: discover the requirements (elicitation), classify and analyze them, and write them (requirements definition). On the exam they give a requirement sentence and ask for its type, or give a scenario and ask “which gathering technique”.

Golden rules:

  1. Functional = what it does. Nonfunctional = how well and under what conditions it does it.
  2. There are four nonfunctional types: operational, performance, security, cultural and political.
  3. A requirement that cannot be measured cannot be tested. “Within 2 seconds” instead of “fast”.
  4. Choose the technique according to the question: deep information, broad information, joint decision, or real behavior?

Requirement types

Functional requirements

They define an operation the system must perform or information it must provide.

  • Process-oriented: “When a member passes through the door, the system must check whether the membership is valid.”
  • Information-oriented: “The system must keep the visit history of each member for the last 12 months.”

Nonfunctional requirements

These are not the function of the system but its behavioral properties and constraints.

TypeWhat it coversExample (food ordering app)
OperationalPhysical/technical environment, platform, integration, portabilityMust run on Android 10+ and iOS 15+; must connect to the payment provider’s API
PerformanceSpeed, capacity, reliability, availability2,000 concurrent users between 19:00-21:00; 99.5% availability
SecurityWho can access what, encryption, viruses, audit trailCard data must not be stored in the app; a courier must see only their own orders
Cultural and politicalLanguage, currency, law, organizational policyPrices in TL, an explicit consent text compliant with the Turkish data protection law (KVKK)

PITFALL · a business rule is functional. “Orders must be at least 100 TL” looks like a constraint, but it defines how the system works: functional. “The page must open in 2 seconds” is nonfunctional. The question to ask: “Is this a job the system does, or the quality of doing the job?”

Requirements definition

The requirements are collected in a numbered list, with functional and nonfunctional under separate headings, together with their priority:

1. Functional
 1.1 The system must let a customer place an order.
 1.2 The customer must be able to see the order status.
2. Nonfunctional
 2.1 Operational
   2.1.1 Android 10+ and iOS 15+.
 2.2 Performance
   2.2.1 The menu must load within 2 s.

These numbers are for traceability: each requirement is later linked to a use case, a class and a test case.

Properties of a good requirement

PropertyMeaningBad example → good example
UnambiguousSingle meaning“Produce the report quickly” → “Produce the report within 5 s”
TestableYou can say pass/fail“Easy to use” → “A new user completes a reservation in 3 min”
CompleteNo missing conditions“Calculate a fine” → “2 TL for each day late, at most the price of the book”
ConsistentNo contradictionIt should not say “30 days” in one place and “4 weeks” in another
FeasibleDoable with the budget and technologyNot “zero defects” but a measurable goal
TraceableSource and target are knownWho asked for it, which test will verify it

Analysis strategies

When gathering requirements, the analyst decides how much to change the current process:

StrategyWhat it doesValueRisk / costTechniques
BPA (automation)Moves the current process to the computer as it isLow-mediumLowProblem analysis, root cause analysis
BPI (improvement)Improves the process at a moderate scaleMediumMediumDuration analysis, activity-based costing, informal benchmarking
BPR (reengineering)Redesigns the process from scratchHighHighOutcome analysis, technology analysis, activity elimination

Short definitions: duration analysis compares the total duration of the process with the sum of the durations of its steps (if the difference is large, there is waiting). Activity-based costing computes the cost of each step. Informal benchmarking looks at how other organizations do the same job. Outcome analysis asks what outcome the customer really wants. Activity elimination asks for each step “what happens if we remove this entirely?”.

Requirements gathering techniques

Interview

The most common technique. Five steps: choose who to interview, prepare the questions, prepare for the interview, conduct the interview, and write a report afterwards (usually within 48 hours).

Question typeWhat it is forExample
Closed-endedExact information“How many returns do you receive per day?”
Open-endedRich, unexpected information“What makes things hardest for you in the process?”
ProbingDeepens the previous answer“Why is that? Can you give an example?”

Structure: Structured (questions written in advance, in order) or unstructured (a general framework, the flow of conversation). Order: Top-down (general to specific) or bottom-up (specific to general).

JAD (joint application development)

Users, managers and analysts come together and work out the requirements jointly. 10-20 people, a facilitator, a scribe. The sessions are structured, and decisions are made in the session. Advantage: different views clash at the same time and are reconciled, and time is shortened. Difficulty: expensive (gathering everyone at once), and dominant people or people who stay silent in the group. e-JAD reduces this problem with anonymous electronic participation.

Questionnaire

The same questions to many people. Cheap and broad, but without depth, and the response rate may be low. Tips: try it first with a small group (pilot), keep questions short and neutral, put the most important questions first, and tell participants how the results will be used.

Observation

The analyst watches the process on site. What people say and what they do can differ; observation shows the truth. Its weakness is the Hawthorne effect: a person who knows they are being watched behaves differently. Also, you see only what happens at that moment, and rare events like the month-end close are missed.

Document analysis

Forms, reports, manuals and the screens of the old system are examined. It shows the formal system. The real clue is how the document is actually used: fields left blank, columns added by hand, notes written in the margin reveal the informal system.

Choosing a technique

CriterionInterviewJADQuestionnaireObservationDocument analysis
Type of informationAs-is, improvement, to-beAs-is, improvement, to-beAs-is, improvementAs-isAs-is
DepthHighHighMediumLowLow
BreadthLowMediumHighLowHigh
Integration of informationLowHighLowLowLow
User involvementMediumHighLowLowLow
CostMediumLow-mediumLowLow-mediumLow

In a real project the techniques are combined: first learn the formal process with document analysis, then interview key people, survey the wide audience with a questionnaire, verify doubtful points by observation, and make the final decisions in JAD.

Worked example: the campus library

Situation: The library wants a new reservation system. 25,000 students, 12 staff, 3 branches.

Step 1: Strategy. The director says “the same process, just online”, but students complain about the waiting time. Duration analysis: the steps of the lending process total 4 minutes, but the student waits 18 minutes on average. The difference is in the queue. This points to BPI: improve the process with online pre-reservation.

Step 2: Techniques.

From whomTechniqueWhy
The director, 2 branch headsInterviewDeep information, policies
25,000 studentsQuestionnaireWide audience, cheap
The lending deskObservationThe real waiting time
Existing forms, the fine regulationDocument analysisFormal rules
Staff + student representativesJADResolve contradictions together

Step 3: Write the requirements.

  • F1. A student must be able to reserve an available book for at most 48 hours. (functional)
  • F2. When the reservation period expires, the book must be released automatically. (functional)
  • N1. The reservation confirmation must be shown within 3 seconds. (performance)
  • N2. Only staff must be able to delete a fine record. (security)
  • N3. The system must connect to the university’s single sign-on (SSO) system. (operational)

Common mistakes

Wrong ideaThe truth
Every constraint is nonfunctionalBusiness rules (minimum order amount) are functional
“It must be fast” is a good requirementNot measurable; give a threshold
A questionnaire gives deep informationBroad but shallow; use interviews for depth
Observation always shows the truthThe Hawthorne effect, and missing rare events
In JAD the facilitator decidesThe facilitator is neutral; the decision belongs to the group
Documents show the real processThey show the formal process; the real process may differ
BPR is always the bestThe highest value but the highest risk and cost
A platform requirement is securityIt is operational

Test yourself

Exam-style questions. Solve them on paper first, then reveal the answer.

Question 1easy

Classify: 'The system shall let a member freeze a gym membership for up to 30 days.'

  1. Functional
  2. Nonfunctional: performance
  3. Nonfunctional: security
  4. Nonfunctional: operational
Show answer
A) Functional

It defines a function the system must perform (freezing a membership): functional. The 30-day limit is a business rule, which is still part of the function.

Question 2easy

Classify: 'The order screen shall load in under 2 seconds for 95% of requests.'

  1. Functional
  2. Nonfunctional: performance
  3. Nonfunctional: cultural and political
  4. Nonfunctional: operational
Show answer
B) Nonfunctional: performance

It says not what it does but how well it does it: speed. A performance requirement; and since it is measurable, it is well written.

Question 3medium

Classify each into the four nonfunctional types: (a) runs on Android and iOS, (b) only librarians can delete records, (c) prices shown in TL with Turkish date format, (d) supports 500 simultaneous users.

Show answer
(a) operational, (b) security, (c) cultural and political, (d) performance

Operational: the physical and technical environment (platform, integration). Security: who can access what. Cultural and political: language, currency, legal rules (such as the Turkish data protection law, KVKK), organizational policy. Performance: speed, capacity, availability.

Question 4medium

Rewrite 'The system should be fast and user-friendly' as a testable requirement.

Show answer
e.g., 'Search results shall appear within 1 second; a new user shall complete a reservation in under 3 minutes without help.'

"Fast" and "user-friendly" cannot be measured or tested. A good requirement gives a measurable threshold: seconds, minutes, percentages, number of users. That way the tester can say pass/fail.

Question 5easy

Which question type is 'How many times a week do you renew a book online?'

  1. Open-ended
  2. Closed-ended
  3. Probing
  4. Leading
Show answer
B) Closed-ended

A question that asks for exact information (a number) is closed-ended. Open-ended: "What tires you the most in the lending process?" Probing: a question that deepens the previous answer, like "Can you elaborate a bit, why is that?".

Question 6easy

In JAD, who is the person who leads the session, keeps it on track and is neutral about the outcome?

  1. Scribe
  2. Project sponsor
  3. Facilitator
  4. End user
Show answer
C) Facilitator

The facilitator is the person who runs the session, is neutral, and controls the group dynamics. The scribe takes the notes. Users and managers are participants. JAD consists of structured sessions of 10-20 people, usually at a U-shaped table, lasting several days.

Question 7medium

What is the Hawthorne effect and which technique does it threaten?

Show answer
People change their behavior when they know they are being watched; it threatens observation.

During observation, employees know they are being watched and may work more carefully or more by the rules than normal. The analyst sees a "show" process instead of the real process. Solution: observe for a long time, several times, unobtrusively, and compare with other techniques.

Question 8medium

A company has 4,000 delivery couriers spread across 30 cities. The analyst needs a broad picture of their problems quickly and cheaply. Which technique fits best?

  1. One-on-one interviews
  2. JAD
  3. Questionnaire
  4. Observation
Show answer
C) Questionnaire

The cheapest and broadest (breadth) way to collect information from many scattered people is a questionnaire. Interviews and observation give deep information but cannot be applied to 4,000 people. Bringing people together for JAD is expensive.

Question 9medium

Which analysis strategy makes radical changes, possibly eliminating whole processes, and gives the highest potential value with the highest risk?

  1. Business process automation
  2. Business process improvement
  3. Business process reengineering
  4. Document analysis
Show answer
C) Business process reengineering

BPA automates the current process as it is (low value, low risk). BPI improves the process at a moderate scale. BPR rethinks the process from scratch: "Why does this step exist?" (high value, high risk, high cost).

Question 10hard

Document analysis reveals that the official form has a 'supervisor signature' field, but staff say nobody signs it. What does this difference show?

Show answer
The difference between the formal system (documented) and the informal system (what actually happens).

Documents show the formal system. What users actually do is the informal system. Fields left blank on forms, notes added by hand, old forms photocopied over and over are clues for the analyst: the real process differs from the document.

Question 11medium

List four characteristics of a good requirement.

Show answer
Unambiguous, testable (verifiable), complete, consistent (also feasible, necessary, traceable).

Unambiguous: has a single meaning. Testable: you can say pass/fail. Complete: no missing conditions. Consistent: does not contradict other requirements. Feasible: can be done. Necessary: really needed. Traceable: can be traced to its source and to the design/test.

Question 12easy

Which interview structure starts with broad, general questions and moves to specific ones?

  1. Bottom-up
  2. Top-down
  3. Closed
  4. Probing
Show answer
B) Top-down

Top-down: from general to specific ("How does the lending process work?" → "How is the late fee calculated?"). The interviewee first builds the general picture and then goes into detail. Bottom-up starts with specific questions; it is used if the interviewee has a command of the details or no warm-up is needed.

Verification: Conceptual questions; the classifications and technique choices were checked one by one against the standard definitions (the Dennis, Wixom and Tegarden framework) of requirement types, BPA/BPI/BPR and requirements gathering techniques. There are no numeric answers.

Review card

Functional: WHAT the system does (processes, information) Nonfunctional: HOW / HOW WELL it does it operational: platform, environment, integration performance: speed, capacity, availability security: access, authorization, encryption cultural & political: language, currency, law, policy Good requirement: unambiguous, testable, complete, consistent, feasible, traceable Write with "shall", give a measurable threshold ("within 2 s") Strategy: BPA (automate) < BPI (improve) < BPR (rebuild) → value + risk increase Interview: open / closed / probing; top-down / bottom-up; structured / unstructured JAD: facilitator (neutral leader) + scribe + users; fast, joint decisions Questionnaire: wide audience, cheap, shallow; Observation: real behavior, Hawthorne effect Document analysis: formal system vs informal system Depth: interview, JAD, observation; Breadth: questionnaire, document analysis