Req Elicitation, Documenting Reqs, NatLang Reqs Lecture 3, DAT230, - - PowerPoint PPT Presentation

req elicitation documenting reqs natlang reqs
SMART_READER_LITE
LIVE PREVIEW

Req Elicitation, Documenting Reqs, NatLang Reqs Lecture 3, DAT230, - - PowerPoint PPT Presentation

Req Elicitation, Documenting Reqs, NatLang Reqs Lecture 3, DAT230, Requirements Engineering Robert Feldt, 2012-09-11 tisdag 11 september 12 Recap SWEBOK gives overview of SE field Good for newcomers and if you want to refresh At


slide-1
SLIDE 1

Req Elicitation, Documenting Reqs, NatLang Reqs

Lecture 3, DAT230, Requirements Engineering Robert Feldt, 2012-09-11

tisdag 11 september 12

slide-2
SLIDE 2
  • SWEBOK gives overview of SE field
  • Good for newcomers and if you want to refresh
  • At master level: Good idea to directly to original

sources; less need for “textbook” interpretations

  • Basic RE terminology in SWEBOK KA number 1
  • Stakeholder Identification
  • Stakeholder analysis: influence & affected, expectations

& interests

Recap

tisdag 11 september 12

slide-3
SLIDE 3

What is Req Elicitation?

tisdag 11 september 12

slide-4
SLIDE 4

“The art of determining the needs of stakeholders”

What is Req Elicitation?

tisdag 11 september 12

slide-5
SLIDE 5

“The art of determining the needs of stakeholders” “The process of discovering the requirements for a system by communication with stakeholders and through the observation of them in their domain”

What is Req Elicitation?

tisdag 11 september 12

slide-6
SLIDE 6

General rules for elicitation

  • Genuinely care about your stakeholders’ problems
  • Focus on stakeholder not on you “looking good”
  • Be human - admit weaknesses, become vulnerable,

show humor

  • Listen - eye contact, don’t glaze over
  • Expect changes
  • Maintain a glossary - many req problems from simple

misunderstandings/miscommunication

tisdag 11 september 12

slide-7
SLIDE 7

Information to elicit

  • Domain description (operating environment)
  • Business goals ... Technical goals
  • System boundary (“fit into operational environment?”)
  • Constraints
  • Vocabulary
  • Reqs
  • Title, description
  • Rationale, Source, Importance, Benefit, etc...

tisdag 11 september 12

slide-8
SLIDE 8

Different types of elicited reqs

  • Discovered: Stakeholder knows req - ReqEng notes it
  • Created: ReqEng creates based on own knowledge or
  • nly little stakeholder info
  • Extracted: ReqEng uses method to find it
  • Captured: When verbalized or acknowledged by

stakeholder

tisdag 11 september 12

slide-9
SLIDE 9

Differing abstraction levels

tisdag 11 september 12

slide-10
SLIDE 10

Differing abstraction levels

tisdag 11 september 12

slide-11
SLIDE 11

Requirements Abstract Model (RAM)

tisdag 11 september 12

slide-12
SLIDE 12

Triangulation

Use multiple things so that they partly say (and thus supports) the same conclusions (or finds the same problems/conflicts) “things” = methods, info, people, processes, documents, ...

tisdag 11 september 12

slide-13
SLIDE 13

Triangulation

Elicitation Methods People / Stakeholders Artifacts / Docs

Interviews Observation ...

tisdag 11 september 12

slide-14
SLIDE 14

Triangulation

Elicitation Methods People / Stakeholders Artifacts / Docs

Interviews Observation ...

tisdag 11 september 12

slide-15
SLIDE 15

Triangulation

Elicitation Methods People / Stakeholders Artifacts / Docs

Interviews Observation ...

tisdag 11 september 12

slide-16
SLIDE 16

Elicitation methods

tisdag 11 september 12

slide-17
SLIDE 17

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey

Archaeology

tisdag 11 september 12

slide-18
SLIDE 18

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops Archaeology

tisdag 11 september 12

slide-19
SLIDE 19

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids Archaeology

tisdag 11 september 12

slide-20
SLIDE 20

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis Archaeology Apprenticing

tisdag 11 september 12

slide-21
SLIDE 21

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Prototyping

Working prototypes Mashups Drawings Diagramming Archaeology Apprenticing

tisdag 11 september 12

slide-22
SLIDE 22

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases Archaeology Apprenticing

tisdag 11 september 12

slide-23
SLIDE 23

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

tisdag 11 september 12

slide-24
SLIDE 24

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit

tisdag 11 september 12

slide-25
SLIDE 25

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit Reflective

tisdag 11 september 12

slide-26
SLIDE 26

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit Reflective Creativity

tisdag 11 september 12

slide-27
SLIDE 27

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit Reflective Creativity Consensus

tisdag 11 september 12

slide-28
SLIDE 28

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit Reflective Creativity Consensus Reactive

tisdag 11 september 12

slide-29
SLIDE 29

Elicitation methods

Interviews Questionnaires Doc analysis

“Traditional”/ Survey Group-based

Brainstorming JAD/RAD Focus groups Req Workshops

“Cognitive”/ Introspective

Think-aloud / Protocol Analysis Laddering Card sorting Repertory grids

Contextual/ Observation

Ethnography Observation Conversation analysis

Model- or Spec-driven

KAOS I* CREWS

Prototyping

Working prototypes Mashups Drawings Diagramming Use Cases

Explicit

Archaeology Apprenticing

Implicit Reflective Creativity Consensus Reactive Refining

tisdag 11 september 12

slide-30
SLIDE 30

Hierarchy of (non-group) Elicitation methods

tisdag 11 september 12

slide-31
SLIDE 31

Elicitation techniques - early

Technique Pro Con

Interviews Know the present & future ideas, Uncover conflicts/politics Goals & critical issues, Subjective Group interviews/ sessions Stimulate/complete each other, Many/ Diverse stakeholders Censorship & domination, Groupthink Observation Actual current behavior, processes Time consuming, misses exceptional/ usability problems

tisdag 11 september 12

slide-32
SLIDE 32

Elicitation techniques - early

Technique Pro Con

Interviews Know the present & future ideas, Uncover conflicts/politics Goals & critical issues, Subjective Group interviews/ sessions Stimulate/complete each other, Many/ Diverse stakeholders Censorship & domination, Groupthink Observation Actual current behavior, processes Time consuming, misses exceptional/ usability problems

tisdag 11 september 12

slide-33
SLIDE 33

Elicitation techniques - early

Technique Pro Con

Interviews Know the present & future ideas, Uncover conflicts/politics Goals & critical issues, Subjective Group interviews/ sessions Stimulate/complete each other, Many/ Diverse stakeholders Censorship & domination, Groupthink Observation Actual current behavior, processes Time consuming, misses exceptional/ usability problems

tisdag 11 september 12

slide-34
SLIDE 34

Elicitation techniques - mid

Technique Pro Con

Task demo Clarify how work done Presence & Qs influence, Critical issues seldom captured Questionnaires Info from many (statistics, views,

  • pinions)

Hard to construct, Interpretation Brainstorming Many ideas (none rejected) Many ideas (prioritization needed), Involvement

tisdag 11 september 12

slide-35
SLIDE 35

Elicitation techniques - late

Technique Pro Con

Use cases / Scenarios Concentration on specifics => accuracy Solution-oriented, Premature design

Modeling, Data-flow Diagrams, ... Communication, Organize info, Uncover missing/ inconsistencies Require tools, Time consuming, “Cults”

Prototyping Visualization, Stimulate ideas, Usability centered Solution-oriented, Premature design, “Already done?”

tisdag 11 september 12

slide-36
SLIDE 36

Brainstorming

tisdag 11 september 12

slide-37
SLIDE 37

tisdag 11 september 12

slide-38
SLIDE 38

Research on how to elicit?

[Davis2006]

tisdag 11 september 12

slide-39
SLIDE 39

Elicitation Guidelines

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-40
SLIDE 40

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-41
SLIDE 41

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting Interviews MORE COMPLETE than Introspective techniques & Sorting

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-42
SLIDE 42

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting Interviews MORE COMPLETE than Introspective techniques & Sorting Interviews LESS EFFICIENT than Sorting & Laddering

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-43
SLIDE 43

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting Interviews MORE COMPLETE than Introspective techniques & Sorting Interviews LESS EFFICIENT than Sorting & Laddering Interviews has SAME EFFICIENCY as Introspective techniques

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-44
SLIDE 44

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting Interviews MORE COMPLETE than Introspective techniques & Sorting Interviews LESS EFFICIENT than Sorting & Laddering Interviews has SAME EFFICIENCY as Introspective techniques Introspective techniques WORSE than all others

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-45
SLIDE 45

Elicitation Guidelines

Interviews MORE EFFECTIVE than Introspective techniques & Sorting Interviews MORE COMPLETE than Introspective techniques & Sorting Interviews LESS EFFICIENT than Sorting & Laddering Interviews has SAME EFFICIENCY as Introspective techniques Introspective techniques WORSE than all others Laddering PREFERABLE to Sorting

[Dieste2009]

Study excluded group techniques!

tisdag 11 september 12

slide-46
SLIDE 46

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

tisdag 11 september 12

slide-47
SLIDE 47

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

“Describe the most unusual customer you ever had. How did you respond in that situation?”

tisdag 11 september 12

slide-48
SLIDE 48

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

“If the project is finished as planned, then what does that mean for the customer?”

tisdag 11 september 12

slide-49
SLIDE 49

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

“Can you provide some examples of what you mean?”

tisdag 11 september 12

slide-50
SLIDE 50

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

“What would you do if this action would not give the desired result?”

tisdag 11 september 12

slide-51
SLIDE 51

Strategies for elicitation

Strategy Description Scenario Building Asking a user to imagine or construct a scenario in his domain, and respond as he would in that situation Conditionalizing Use “if-then” to limit or clarify applicability of an assertion Elaborating with examples Asking a user to illustrate a point by providing examples Hedging Asking a user to design contingency plans or fallback positions

tisdag 11 september 12

slide-52
SLIDE 52

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

tisdag 11 september 12

slide-53
SLIDE 53

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

“Why might the system not work as well as you say it will?”

tisdag 11 september 12

slide-54
SLIDE 54

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

“Can you think of an analogy that would help clarify what you are saying?”

tisdag 11 september 12

slide-55
SLIDE 55

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

“Let me recap what I have noted down from our conversation and you can see if you agree?”

tisdag 11 september 12

slide-56
SLIDE 56

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

“Can you summarize what you have said so far?”

tisdag 11 september 12

slide-57
SLIDE 57

Strategies for elicitation

Strategy Description Generating Counterargument Asking a stakeholder to argue against the conclusion she first reached Generating Arguments Asking for more or different arguments favoring a position Feedback Asking for or giving feedback, either verbally

  • r in writing / on notes

Summarization Asking for or giving a summary

tisdag 11 september 12

slide-58
SLIDE 58

Task Characteristics Prompting

tisdag 11 september 12

slide-59
SLIDE 59

Semantic Prompting

tisdag 11 september 12

slide-60
SLIDE 60

Modernist vs Post-Modernist Perspective

tisdag 11 september 12

slide-61
SLIDE 61

Modernist vs Post-Modernist Perspective

[Easterbrook2004]

tisdag 11 september 12

slide-62
SLIDE 62

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning”

[Easterbrook2004]

tisdag 11 september 12

slide-63
SLIDE 63

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it”

[Easterbrook2004]

tisdag 11 september 12

slide-64
SLIDE 64

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it” “Rationality always leads to progress and perfection”

[Easterbrook2004]

tisdag 11 september 12

slide-65
SLIDE 65

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it” “Rationality always leads to progress and perfection”

A Modernist Perspective

[Easterbrook2004]

tisdag 11 september 12

slide-66
SLIDE 66

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it” “Rationality always leads to progress and perfection”

A Modernist Perspective

“Identify and Question the Grand Narrative”

[Easterbrook2004]

tisdag 11 september 12

slide-67
SLIDE 67

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it” “Rationality always leads to progress and perfection”

A Modernist Perspective

“Identify and Question the Grand Narrative” “Find Mini-Narrative and DO NOT claim universality, truth or stability”

[Easterbrook2004]

tisdag 11 september 12

slide-68
SLIDE 68

Modernist vs Post-Modernist Perspective

“Rationality is the highest form of mental functioning” “There is a universal truth and science uncovers it” “Rationality always leads to progress and perfection”

A Modernist Perspective

“Identify and Question the Grand Narrative” “Find Mini-Narrative and DO NOT claim universality, truth or stability”

A Post-Modernist Perspective

[Easterbrook2004]

tisdag 11 september 12

slide-69
SLIDE 69

Modernist vs Post-Modernist ReqEng

“All observation is value-laden”

tisdag 11 september 12

slide-70
SLIDE 70

Modernist vs Post-Modernist ReqEng

[Easterbrook2004]

“All observation is value-laden”

tisdag 11 september 12

slide-71
SLIDE 71

Modernist vs Post-Modernist ReqEng

A Modernist Perspective

[Easterbrook2004]

“All observation is value-laden”

tisdag 11 september 12

slide-72
SLIDE 72

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct”

A Modernist Perspective

[Easterbrook2004]

“All observation is value-laden”

tisdag 11 september 12

slide-73
SLIDE 73

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective

[Easterbrook2004]

“All observation is value-laden”

tisdag 11 september 12

slide-74
SLIDE 74

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective

[Easterbrook2004]

Reviews to show model is valid ... “All observation is value-laden”

tisdag 11 september 12

slide-75
SLIDE 75

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective A Post-Modernist Perspective

[Easterbrook2004]

Reviews to show model is valid ... “All observation is value-laden”

tisdag 11 september 12

slide-76
SLIDE 76

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective

“No priviliged viewpoint”

A Post-Modernist Perspective

[Easterbrook2004]

Reviews to show model is valid ... “All observation is value-laden”

tisdag 11 september 12

slide-77
SLIDE 77

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective

“No priviliged viewpoint” Use stakeholder involvement so they “own” the models

A Post-Modernist Perspective

[Easterbrook2004]

Reviews to show model is valid ... “All observation is value-laden”

tisdag 11 september 12

slide-78
SLIDE 78

Modernist vs Post-Modernist ReqEng

“Build consistent model & validate it is correct” Tools that test completeness and consistency

A Modernist Perspective

“No priviliged viewpoint” Use stakeholder involvement so they “own” the models

A Post-Modernist Perspective

[Easterbrook2004]

Reviews to show model is valid ... “All observation is value-laden” Use ethnographic techniques to understand viewpoints

tisdag 11 september 12

slide-79
SLIDE 79

Documenting requirements

  • Many both Internal and External needs:
  • Communication between roles/parties
  • Handle complexity of large systems & many requirements
  • Document decisions
  • Communication over time - a memory of decisions
  • Help ensure good requirements are elicited - avoid risks
  • Legal or contract disputes
  • Stability over time (Accessibility) - if people quit or move

tisdag 11 september 12

slide-80
SLIDE 80

SRS Structures

Quite common in industry to have at least two levels of SRSes:

Refined

tisdag 11 september 12

slide-81
SLIDE 81

SRS Structures

Quite common in industry to have at least two levels of SRSes:

Refined

tisdag 11 september 12

slide-82
SLIDE 82

SRS Structures

Quite common in industry to have at least two levels of SRSes:

Refined

tisdag 11 september 12

slide-83
SLIDE 83

IEEE standard 830-1998

http://www.cse.chalmers.se/~feldt/courses/reqeng/ examples/srs_example_2010_group2.pdf

tisdag 11 september 12

slide-84
SLIDE 84

Natural Language Requirements

tisdag 11 september 12

slide-85
SLIDE 85

Natural Language Requirements

Pro Con

tisdag 11 september 12

slide-86
SLIDE 86

Natural Language Requirements

Pro Con Easiest to understand, requires “no” training Interpretation is often ambiguous

tisdag 11 september 12

slide-87
SLIDE 87

Natural Language Requirements

Pro Con Easiest to understand, requires “no” training Interpretation is often ambiguous Can be used directly with customers Harder to separate different concerns

tisdag 11 september 12

slide-88
SLIDE 88

Natural Language Requirements

Pro Con Easiest to understand, requires “no” training Interpretation is often ambiguous Can be used directly with customers Harder to separate different concerns Flexible & adaptable to the context No built-in support for completeness & Q criteria

tisdag 11 september 12

slide-89
SLIDE 89

Natural Language Requirements

Pro Con Easiest to understand, requires “no” training Interpretation is often ambiguous Can be used directly with customers Harder to separate different concerns Flexible & adaptable to the context No built-in support for completeness & Q criteria Most common => most people used to it Harder to use in later development stages

tisdag 11 september 12

slide-90
SLIDE 90

NatLang Ambiguities

  • 1. Nominalization:

Turns complex processes into single events Example: “In case of a system crash, a restart of the system shall be performed”

tisdag 11 september 12

slide-91
SLIDE 91

NatLang Ambiguities

  • 2. Nouns without reference:

Vague nouns that are insuffiently specified. Example: “The output should be presented to the user in a graph”

tisdag 11 september 12

slide-92
SLIDE 92

NatLang Ambiguities

  • 3. Universal quantifiers:

Applying too general statements to too many objects of some set. Missing quantities and frequencies. Example: “The system shall show all data sets in every graph view”

tisdag 11 september 12

slide-93
SLIDE 93

NatLang Ambiguities

  • 4. Incompletely specified conditions:

Reqs often only hold under certain conditions, which are often not identified clearly enough. Example: “The restaurant system shall show all beverages to a guest over the age of 20.”

tisdag 11 september 12

slide-94
SLIDE 94

NatLang Ambiguities

  • 5. Incompletely specified verbs:

Passive verb forms often allow for info to be missing. Try to use active voice! Example: “To log a user in, the login data is entered.” instead “The system must allow the user to enter user name and password using a keyboard.”

tisdag 11 september 12

slide-95
SLIDE 95

References

[Dieste2009] Dieste, O. and Juristo, N., “Systematic Review and Aggregation

  • f Empirical Studies on Elicitation Techniques”, IEEE Transactions on

Software Engineering, vol. 37, num. 2, pp. 283-304, 2011. [Davis2006], Davis, A. and Dieste, O. and Hickey, A. and Juristo, N. and Moreno, A.M., “Effectiveness of requirements elicitation techniques: Empirical results derived from a systematic review”, 14th IEEE International Conference on Requirements Engineering, pp. 179-188, 2006. [Easterbrook2004] Steve Easterbrook, “Requirements engineering lecture slides” University of Toronto, 2004.

tisdag 11 september 12