RE-Eli

Embed Size (px)

Citation preview

  • 8/11/2019 RE-Eli

    1/59

    Requirements Elicitation

    Requirements Elicitation

    Requirement techniques

    Presentation based on courses given at SEI Carnegie Mellon (USA) and Kingston Univ (GB)

  • 8/11/2019 RE-Eli

    2/59

    Requirements Elicitation

    Presentation based on courses given at SEI Carnegie Mellon (USA) and Kingston Univ (GB)

    Case Studies

    Standards

    Projects

    Req. Validation

    Exchanging Req.

    Req. Expression &

    Modelling

    System engineering

    Req. Management

    Req. Elicitation

    Basic introduction

    RE Techniques

    Requirement Engineering

    Req. Traceability

    Software systems

    Reactive systems

  • 8/11/2019 RE-Eli

    3/59

    Contents

    Requirements elicitation

    Guidelines

    Methodology

    Basic techniques for eliciting requirements

    Interviews

    Meetings

    Planning...

  • 8/11/2019 RE-Eli

    4/59

    Some basic points

    Elicitation is not Acquisition

    Requirements are not available like sensor data

    Notjust read them systematical ly ! !

    Elicitation is not specification and modelling

    Too much importance has been given toexpression and modelling

    RE Determines the successof the mission

    Elicitation detrmines the successof the REprocess

  • 8/11/2019 RE-Eli

    5/59

    What Is Elicitation ?

    Process of identifying needs

    Front End to systems development

    Involves social, communicative issues and

    Technical issues

    Requirement expression is the step to model

    the requirements.

  • 8/11/2019 RE-Eli

    6/59

    A common Problem !!

    What is your need ?

    I need a system that

    works OK

    Robust and respond tomy wishes

  • 8/11/2019 RE-Eli

    7/59

    As problems in social life

    AVOID M ISUNDERSTANDI NG !!

    http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=112http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/Holidays/Valentines%20Day&image=valentinsday6121.gif&img=24&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=160http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=168http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=112http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=168http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=160http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/People&img=168
  • 8/11/2019 RE-Eli

    8/59

    A simple scenario

    I need a book

    What for ? Or What discipline ?

    To .....; in fact anything to level up my terminal

    So you any item but Not necessarily a book

    http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/Business/Computers&img=
  • 8/11/2019 RE-Eli

    9/59

    Elicitation : a subset of goals

    Identify the relavant parties . The stackholders

    Gather the Wish Listfor each stachholder

    Document and refine the Wish list

    Expected properties

    Unambiguous Complete

    Verifiable

    Consistent Modifiable

    Traceable

  • 8/11/2019 RE-Eli

    10/59

    Common generic problems

    Scope : too much or too littleUnderstandings : Users and developpers

    Users have an incomplete understanding of their

    needs

    Analysts and SE have a poor knowledge of

    problem domain

    Ease of omitting obvious information Volatility :changing requirements

  • 8/11/2019 RE-Eli

    11/59

    The Scope problem

    Establish a bounday conditions for the target system

    Organisation and context analysis

    http://www2.freeze.com/cgi-bin/imageFolio.cgi?direct=Clip_Art/Animals/Birds&img=56
  • 8/11/2019 RE-Eli

    12/59

    The Misunderstanding pb

    http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=pilot2.gif&img=120&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=pilot2.gif&img=120&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=captain.gif&img=24&tt=http://www2.freeze.com/cgi-bin/imageFolio.cgi?action=view&link=Clip_Art/People/Occupations&image=captain.gif&img=24&tt=
  • 8/11/2019 RE-Eli

    13/59

    Some data on the Pb

    56 % of errors were due to poor communication

    between user and analyste

    Such errors cost 82% of the available staff time

    Three main issuespeople involved comes from different backgrounds

    Language used may be too informal or too formal

    A large amount of information to be commnicated

    and not really structured

  • 8/11/2019 RE-Eli

    14/59

    The misun ...

    Stakholders may be located at different levels

    May correspond to levels to abstraction

    From informal knowledge to ...formal

    expression

    Notion of maturity levels

    Dont mix up with abstraction levels

    Many people are involved : Questions When in the eliciaition process ?

    At what level ?

  • 8/11/2019 RE-Eli

    15/59

    The Volatility problem

    REQUIREMENTS EVOLVE : A basis

    Some requiremenrs are more emphasized than needed

    during elecitation process

    The boss is always rightsHis needs are more considered even not mature and

    ambigous

    Change may occur due to

    Misunderstanding

    Scope

  • 8/11/2019 RE-Eli

    16/59

    An Elicitation methodology Framework (DOD-SEI)

    basic remark : Most requirements problems are due to

    requirements elicitation

    General remark . No technique is comprehensive

    enough to adequatly cover all mentionned issues

    Objective : Synthesize all methods and techniques

    into a methodology which can be instantiated upon a

    target systems atributes

    bl i d

  • 8/11/2019 RE-Eli

    17/59

    See table 4.1 in SEI document

    Information gathering

    Requirements Expression and analysis (see

    later course on this topic)

    Validation

    h li i i h d l

  • 8/11/2019 RE-Eli

    18/59

    The Elicitation methodology

    Fact findings

    Req Gathering

    Evaluation

    Prioritisation

    Integration

    and Validation

    F fi di

  • 8/11/2019 RE-Eli

    19/59

    Fact findingsUser Developper

    Identify Stackholders

    Determine operational and

    problem contexte

    Identify other systemsPerform context analysis

    Identify domain experts

    Id. Domain

    Conduct technological

    surveyAsses cost/implementation

    R i h i

  • 8/11/2019 RE-Eli

    20/59

    Requirements gatheringUser Developper

    Get Wish List Classify wish list

    * Functional

    * NFR

    * Env.

    * ...

    See www.incose.org/rwg

    paper on requirementscategrorisation

    E l i d i li i

    http://www.incose.org/rwghttp://www.incose.org/rwg
  • 8/11/2019 RE-Eli

    21/59

    Evaluation and rationalisationUser Developper

    Perform abstraction to

    answer question

    see interview

    techniques

    Perform risk assessment

    Cost benefit ...

    P i i i i

  • 8/11/2019 RE-Eli

    22/59

    PrioritisationUser Developper

    * Dtermine criticality Prioritisation of requirements

    basis : cost, criticality, ...

    I i d lid i

  • 8/11/2019 RE-Eli

    23/59

    Integration and validationUser Developper

    Adress completeness :TBD type

    validate req with respect

    concept of operation

    Decide to go on next step

    * Demo

    * prototype

    * ...

    Consistency checking

    C l i th th d l

  • 8/11/2019 RE-Eli

    24/59

    Conclusion on the methodology

    Abstract methodology

    Still be considered as guide

    An evaluation crireria to be developped :

    No information on evaluation

    Th t kh ld ti

  • 8/11/2019 RE-Eli

    25/59

    The stackholder connection

    Sometimes called requirements analysis or

    requirements discovery Involves technical staff working with

    customers to find out about the applicationdomain, the services that the system shouldprovide and the systems operationalconstraints

    May involve end-users, managers, engineers

    involved in maintenance, domain experts,trade unions, etc. These are calledstakeholders

    S ifi li it ti t h i

  • 8/11/2019 RE-Eli

    26/59

    Specific elicitation techniques

    Documentation

    Interviews

    Questionnaires

    Scenarios

    Ethnography

    G h i I f i Ab

  • 8/11/2019 RE-Eli

    27/59

    Gathering Information About...

    The organisation

    goals, structure, functional units, policies The people

    authority, duties, relationships, information,

    needs The work

    tasks, work flows, procedures, schedules,

    volumes, performance criteria The work environment

    work areas, resources

    G th i I f ti F

  • 8/11/2019 RE-Eli

    28/59

    Gathering Information From...

    Documentation charts, manuals, job descriptions, forms,

    reports

    System users and managers External sources

    other companies, vendors, publications,

    seminars, workshops, on-line data services

    I t i

  • 8/11/2019 RE-Eli

    29/59

    Interviews

    The requirements engineer or analyst

    discusses the system with differentstakeholders and builds up an

    understanding of their requirements.

    Identify work flows

    factors that influence the operations of systems

    the elements (documents, procedures, policies etc.)that make up systems

    T f I t i

  • 8/11/2019 RE-Eli

    30/59

    Types of Interviews

    Closed interviews. The requirements

    engineer looks for answers to a pre-definedset of questions

    goal-directed and systematic

    Open interviews There is no predefinedagenda and the requirements engineer

    discusses, in an open-ended way, what

    stakeholders want from the system. Appropriate when we want to explore an issue

    establish rapport and obtain a broad view

    I t i i ti l

  • 8/11/2019 RE-Eli

    31/59

    Interviewing essentials

    Interviewers must be open-minded and

    should not approach the interview with pre-conceived notions about what is required

    Stakeholders must be given a starting point

    for discussion. This can be a question, arequirements proposal or an existing system

    Interviewers must be aware of

    organisational politics - many realrequirements may not be discussed because

    of their political implications

    I t i St

  • 8/11/2019 RE-Eli

    32/59

    Interview Steps

    Preparing

    Planning

    Opening and Closing

    Conducting

    Following up

    Preparing for the interview

  • 8/11/2019 RE-Eli

    33/59

    Preparing for the interview

    Review

    organisation reports

    annual reports

    statements of departments goals

    long-range planning goals

    existing procedure manuals

    systems documentation

    understand their language

    Planning of Interviews

  • 8/11/2019 RE-Eli

    34/59

    Planning of Interviews

    Identify sources

    prepare

    * purpose, outline of points to cover

    venue

    appointments

    prepare the interviewee

    * points to cover, useful documents

    Questioning

  • 8/11/2019 RE-Eli

    35/59

    Questioning

    Open questions

    tell me what happens when a customer calls

    leading questions

    be wary of negative responses

    exceptions?

    Subjects who try to please

    Listening

  • 8/11/2019 RE-Eli

    36/59

    Listening

    Judge content and not delivery

    withhold evaluation and response

    be flexible

    work at listening

    resist distractions

    keep your mind open

    listen for ideas

    Opening and closing and Following Up the interview

  • 8/11/2019 RE-Eli

    37/59

    Opening and closing and Following Up the interview

    Introduce yourself

    state the purpose of the interview

    briefly summarise the areas that have been

    discussed, highlight important points and

    your understanding of them

    thank the interviewee for the time

    Ask closed questions

    Document the results

    Questionnaires

  • 8/11/2019 RE-Eli

    38/59

    Questionnaires

    Validity

    - sample size, audience

    Reliability

    Questions

    - open ended

    - fill in the blank

    - multiple choice- rating scales

    Scenarios

  • 8/11/2019 RE-Eli

    39/59

    Scenarios

    Scenarios are stories which explain how a

    system might be used. They should include

    - a description of the system state before

    entering the scenario

    - the normal flow of events in the scenario

    - exceptions to the normal flow of events

    - information about concurrent activities

    - a description of the system state at the end of

    the scenario

    Scenarios

  • 8/11/2019 RE-Eli

    40/59

    Scenarios

    Scenarios are examples of interactionsessions which describe how a user interacts

    with a system

    Discovering scenarios exposes possiblesystem interactions and reveals system

    facilities which may be required

    Operational semantics

    Observation and social analysis

  • 8/11/2019 RE-Eli

    41/59

    Observation and social analysis

    People often find it hard to describe what

    they do because it is so natural to them.

    Sometimes, the best way to understand it is to

    observe them at work

    Ethnography is a technique from the social

    sciences which has proved to be valuable in

    understanding actual work processes

    Actual work processes often differfromformal, prescribed processes

    Meetings

  • 8/11/2019 RE-Eli

    42/59

    Meetings

    Meetings consume resources

    must improve quality of meetings

    Meetings have different objectives

    solve problems, clarify issues

    brainstorm solutions to problems resolve conflicts

    conduct reviews

    collect and merge facts and data report progress

    assign actions

    Meetings: Planning

  • 8/11/2019 RE-Eli

    43/59

    Meetings: Planning

    Define clearly the expected results or

    outcomes of the meeting

    Find if possible a way to eliminate the needfor the meeting

    do we really need the outcome of this meeting atthis moment?

    Is there another more efficient and more effectiveway to accomplish what is to be accomplished by

    holding this meeting? If yes and no are the answers to the two questions

    then proceed

    Meetings: Planning

  • 8/11/2019 RE-Eli

    44/59

    Meetings: Planning

    Prepare agenda for the meeting

    reasonable time allocation for each topic circulate at least two days before the meeting

    to allow time for the attendees to prepare, comment and makeschedule arrangements

    identify and notify required meeting attendees. Must have theright people

    the appropriate information and knowledge to support meetinggoals and objectives

    the authority )direct or delegated) to make decisions and

    commitments if required by the meetings goals and objectives

    the need to understand what is going on and the rationale behindany decisions or commitments made during the meeting

    Meetings: Planning

  • 8/11/2019 RE-Eli

    45/59

    Meetings: Planning

    Meeting location considerations

    room size, lighting, noise, temperature, humidity candistract

    need for audio/visual aids in working order

    Start and Finish on time

    Record and publish minutes

    Have handouts ready for distribution

    review the agenda, meeting goals and objectivesfirst

    discourage interruptions and deflections from thetopic at hand

    follow the agenda schedule as closely as possible

    Active Listener Guidelines

  • 8/11/2019 RE-Eli

    46/59

    Active Listener Guidelines

    Clear your mind of everything except the speaker,

    the topic and what the speaker is actually saying.Prevent trying to read more into what the speakeris saying than the speaker is actually saying

    Capture as accurately as possible the information

    that the speaker is conveying Let the speaker know by actions that s/he is

    interested in what is being said

    Ask questions as they arise to clarify points,indicate understanding and provide feedback tothe speaker

    Active Listener Guidelines

  • 8/11/2019 RE-Eli

    47/59

    Active Listener Guidelines

    Ask that the central ideas, themes and summaries

    be repeated to assure complete understanding

    Do not attempt to formulate replies, rebuttals or

    counterexamples while the speaker is talking

    Do not draw conclusions until you have heard thewhole story

    Accept that understanding is not agreeing

    Do not be afraid to ask if there is something that

    you have not been told.

    Methodologies

  • 8/11/2019 RE-Eli

    48/59

    Methodologies

    A number of techniques are available todescribe the workings of a system

    Many people have taken a number of these

    techniques and produced a method for usingthem to arrive at a specification

    Methodologies Division

  • 8/11/2019 RE-Eli

    49/59

    Methodologies Division

    Main Division

    Data driven

    SSADM

    Process driven

    Yourdon JSD

    Is there a universally best methodology?

    No

    Can I combine methodologies?

    Maybe

    Comparison of Methodologies

  • 8/11/2019 RE-Eli

    50/59

    Comparison of Methodologies

    Can one compare the available methodologies?

    against an ideal methodology

    not feasible because no suitable specification of an ideal

    methodology exists

    assess the features and facilities of each methodology within

    a formalised framework

    invent questions about each methodology

    ask the questions for each methodology

    merge and describe the results

    decide?

    Typical Comparison Questions

  • 8/11/2019 RE-Eli

    51/59

    Typical Comparison Questions

    For the comparison one may ask

    Does the methodology cover all phases? Which ones? How

    thoroughly.

    Are the steps fairly proceduralised or does the methodology

    only give broad directions? Are analysis, design and

    implementation given equal weight?

    Is it data or process analysis oriented?

    Does it cover prototyping and incremental development?

    How are the results of analysis and design expressed?

    Is the methodology supported by software?

    What types of applications is it suited to? History?

    Decomposition Diagrams

  • 8/11/2019 RE-Eli

    52/59

    Decomposition Diagrams

    A high-level organisation (or function or activity)

    is decomposed into lower organisations (orfunctions or activities). The lower we go in the

    hierarchy the greater the detail revealed

    Used to show organisation, system, program, fileand report structures

    organisation

    functions

    processes procedures

    program structures

    Viewpoints for requirements elicitation

  • 8/11/2019 RE-Eli

    53/59

    Viewpoints for requirements elicitation

    The Preview approach adresses the cases

    where

    Sources from radical sources

    Identify key business drivers

    Incremental process for requirement elicitation

    PREVIEW Components

  • 8/11/2019 RE-Eli

    54/59

    PREVIEW Components

    Viewpoint name : an identifier

    Viewpoint focus : interaction, domain, stakeholder

    Viewpoint concerns : all concerns applicable

    Viewpoint sources : individuals, documents

    Viewpoint requirements : Req. from source

    Viewpoint history : changes record

    Limited only to requirement elicitationand NOT Validation

    Example (Sommerville paper ICRE-98)

  • 8/11/2019 RE-Eli

    55/59

    Example (Sommerville paper ICRE 98)

    Emergency braking system

    Viewpoint name : emergency braking system

    Viewpoint focus : The protection system of the train which mustdetect dangerous condistions and apply emergency braking to bring train to a

    safe state

    Viewpoint concerns : Safe compatibility

    Viewpoint sources : systems design; function spec of existingprotection software

    Example

  • 8/11/2019 RE-Eli

    56/59

    Example

    Viewpoint requirements : 1. Detection of excess speed , ifthe speed of the train exceeds the safe speedfor the current track segment bymore than 6 kmh emergency braking must be applied

    2. Detection of overshooting, if the signal sensor indicates a danger setting

    and the front of the train has entered the signalled track segment,

    emergency braking shall be applied3. Frequency of invocation , detection of excess speed, detection of

    overshooting, and determining the necessity of emergency brake application

    shall be performed once every iteration of the on board software

    application cycle

    Viewpoint history : case of evolving requirement(following anaccident or a failure)

    Conclusions

  • 8/11/2019 RE-Eli

    57/59

    Conclusions

    Elicitation Process is The FIRST PHASE

    Needs to be successfulJust DO IT

    Be convinced it needs to be done

    Any technique will do (see resources and

    papers)

    Next lecture

  • 8/11/2019 RE-Eli

    58/59

    Next lecture

    RequirementsManagement

    Requirements elicitation

    Reading and assignment

  • 8/11/2019 RE-Eli

    59/59

    Reading and assignment

    Papers

    Christel & Kang : Issues in requirement elicitation Read sections 1 through 6 of the paperIssues in Requirements Elicitationand answer the following questions:

    1. Describe an example requirements elicitation for each of the three major categories of elicitation problems and suggest

    a technique for solution.

    2. What are the chief differences between the user-oriented and developer-oriented tasks of requirements elicitation?

    Contact XX for requirement elicitation for thefollowing concept of operation

    HPI Scheduler

    Web site for RE course

    A students utilities to be done at HPI (web site for students).

    http://www.cs.cmu.edu/~SW_Managemnt/ps/tr12.92/TR-12-94.001.htmlhttp://www.cs.cmu.edu/~SW_Managemnt/ps/tr12.92/TR-12-94.001.html