Presentation is loading. Please wait.

Presentation is loading. Please wait.

Shiva Vafadar 1 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Effectiveness of.

Similar presentations


Presentation on theme: "Shiva Vafadar 1 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Effectiveness of."— Presentation transcript:

1 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 1 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Effectiveness of Elicitation Techniques in Distributed RE Wesley James Lloyd Mary Beth Rosson James D. Arthur 2002

2 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 2 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Introduction  The primary measure of success of a software system is the degree to which it satisfies its customers  This is difficult Often, their goals and technical needs may not be explicit may be difficult to articulate. may be constrained by a variety of factors outside their control

3 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 3 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Core RE Activities  Core Activities are: Eliciting Requirements Modeling and Analyzing Requirements Communicating requirements Agreeing Requirements Evolving Requirements  practical reality dictates that these activities are actually interleaved, iterative, and may span the entire software systems development life cycle.

4 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 4 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE Definition  Zave defines RE as: Requirements engineering is the branch of software engineering concerned with the real world goals for, functions of, and constraints on software systems. It is also concerned with the relationship f theses factors to precise specifications of software behavior, and to their evolution over time and across software families.

5 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 5 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Requirements need Engineering  Definitions of engineering refer to the creation of cost effective solutions to practical problems by applying scientific knowledge  The use of the term engineering in RE serves as a reminder that RE is an important part of Engineering process

6 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 6 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE is a multi- disciplinary process  system engineering to deliver some systems behavior to its stakeholders.  Computer science provides the framework to assess the feasibility of requirements  logic improve the rigour of the analysis performed and to make the reasoning steps explicit.  systems theory and practice This includes work on characterizing systems identifying their boundaries and managing their development life cycle.

7 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 7 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE is a multi- disciplinary process (2)  Cognitive psychology  Anthropology  Sociology RE needs to e sensitive to how people perceive and understand the world around them. how they interact and how the sociology of the workplace affects their actions.  Linguistics  Interpreting and understanding stakeholder terminology, concepts, viewpoints and goals

8 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 8 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Core RE Activities Eliciting Requirements Modeling and Analyzing Requirements Communicating requirements Agreeing Requirements Evolving Requirements

9 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 9 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Eliciting Reuirements

10 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 10 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE Elicitation  “first” step in the RE process.  The term “elicitation” is preferred to “capture”,  Information gathered during requirements elicitation often has to be interpreted, analysed, modelled and validated

11 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 11 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Requirements to Elicit  a system’s boundaries.  Identifying stakeholders  Goals which denote the objectives a system must meet  tasks users currently perform and those that they might want to perform

12 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 12 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Elicitation Techniques  Common techniques are: Existing documentation Interviews Questionnaires and surveys Meetings Ethnography Prototypes Techniques for knowledge acquisition for knowledge based systems  Laddering  Card Sorting  RAD/JAD  Depends on Time Resources Kind of information that needs to be elicited

13 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 13 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Elicitation Process  There are lot of methods which some guidance on their use is needed.  Methods provide one way of delivering such guidance.  Methods provide a systematic approach to combine different techniques and notations.  Each method itself has its strengths and weaknesses, and is normally best suited for use in particular application domains.  Some methods are: Use cases and scenarios Inquiry Cycle CREWS  Requirements Engineer needs to select the appropriate technique or techniques most suitable for the elicitation process in hand

14 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 14 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Modeling and Analyzing Requirements

15 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 15 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Modeling  the construction of abstract descriptions that are amenable to interpretation  is a fundamental activity in RE So much so that a number of RE textbooks focus almost entirely on modeling methods and their associated analysis techniques.  many modeling approaches are used as elicitation tools where the modeling notation and partial models produced are used as drivers to prompt further information gathering.

16 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 16 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Enterprise Modeling  Enterprise modelling is often used to capture the “purpose” of a system, by describing the behaviour of the organisation in which that system will operate  Enterprise modelling and analysis deals with understanding an organisation’s structure, the business rules that affect its operation, the goals, tasks and responsibilities of its constituent members, and the data that it needs, generates and manipulates.

17 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 17 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Behavioral Modeling  modelling the dynamic or functional behaviour of stakeholders and systems (existing and required).  modelling methods structured methods object-oriented methods formal methods.  These methods provide different levels of precision and are amenable to different kinds of analysis. Formal methods (for example, based on Z) can be difficult to construct, but are also amenable to automated analysis Soft methods provide “rich” representations that non-technical stakeholders find appealing, but are often difficult to check automatically.

18 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 18 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Domain Modeling  A significant proportion of the RE process is about developing “domain descriptions”  A model of the domain provides an abstract description of the world in which an envisioned system will operate.  Benefits : to understand the context of requirements to identify opportunities for requirements reuse. Domain-specific models have also been shown to be essential for building automated tools,  provide the ability to restrict analysis and reasoning, thereby making it tractable

19 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 19 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Modeling Non- functional Req.  Quality, or non-functional, requirements are global attributes of a required system  NFRs, such as safety, security, reliability and usability  more difficult requirements to express in a measurable way, making them more difficult to analyse  However, it has emphasised the need to model NFRs and express them in a form that is measurable or testable.

20 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 20 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Communicating Requirements

21 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 21 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Communicating Req.  RE is also a process of facilitating effective communication of these requirements among different stakeholders.  The way in which requirements are documented plays an important role in ensuring that they can be read, analyzed, (re-) written, and validated.  with a variety of formal, semi-formal and informal languages, From Logic to Natural Language

22 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 22 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Managing Documents  requirements management – write requirements in a form that is readable and traceable by many.  achieve readability by documentation standards that provide guidelines for structuring requirements documents  Requirements traceability determines how easy requirements documentation is to read, navigate, query and change.

23 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 23 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Managing Documents (2)  RT defines as “the ability to describe and follow the life of a requirement in both forwards and backwards direction (i.e., from its origins, through its development and specification, to its subsequent deployment and use, and through all periods of on- going refinement and iteration in any of these phases)”.  Providing RT in requirements documentation is a means of achieving integrity and completeness of that documentation, and has an important role to play in managing change

24 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 24 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Agreeing Requirement

25 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 25 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Agree on Requirements  validation is the process of establishing that the requirements (model) elicited provides an accurate account of stakeholder requirements.  Describing the requirements is an important step towards getting agreement and precondition for resolving conflicts between stakeholders

26 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 26 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Techniques  Techniques such as inspection and formal analysis tend to concentrate on the coherence of the requirements Descriptions are they consistent, and are they structurally complete. The formal method SCR illustrates this approach – the SCR tool provides automated checking that the formal model is syntactically consistent and complete.  Techniques such as prototyping, specification animation, and the use of scenarios are geared towards testing a correspondence with the real world problem have we covered all the aspects of the problem that the stakeholders regard as important.

27 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 27 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE Validation is difficult  The first is philosophical and concerns the question of truth and what is knowable. logical positivist approach: requirements describe some objective problem that exists in the world and that validation is the task of making sufficient empirical observations to check that this problem has been captured correctly. Popper’s view was that scientific theories can never be proved correct through observation, but can only be refuted that observation is not value-free, rather it is theory-driven. Requirements engineers, methods and tools they use dominate the way that they see and describe problems. Shifts requirements statements to a problem of convincing stakeholders that the chosen representation for requirements models is appropriate.

28 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 28 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE Validation is difficult (2)  second reason is social, and concerns the difficulty of reaching agreement among different stakeholders with conflicting goals. Goal Hierarchy diagram models this In the KAOS approach In the KAOS approach for example, these are modeled as obstacles: the modeling process includes an explicit analysis of potential obstacles to each goal Negotiation is the solution Model each stakeholder contribution separately not all in one model Boehm introduces Win-Win solution, which each win condition for each stakeholder is defined.

29 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 29 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Evolving Requirements

30 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 30 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Change sources and effects  Source of Changes Environments Stakeholder Requirements  Effects Documents should manage Techniques and tools are need  Therefore: recognizing change through continued requirements elicitation, re-evaluation of risk, and evaluation of the systems in their operational environment.

31 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 31 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Software Changes  change in software descriptions problem that needs to be fixed (typically an inconsistency of some kind), or new requirements need to be added (as part of evolutionary development or to cope with changing stakeholder needs)

32 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 32 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Integrated Requirements Engineering

33 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 33 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Methods and Tools  method engineering plays an important role in designing the RE process to be deployed for a particular problem or domain. Jacskon, for example, uses problem frames to structure Another popular approach to RE is to support explicitly multiple perspectives or views of requirements  Tools provide capabilities for documenting requirements, managing their change, and integrating them in different ways depending on project needs DOORS Requisite Pro Craddle

34 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 34 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Conclusion  determining how the RE process should be conducted. The novelty of many software applications, the speed by which they need to be developed, and the degree to which they are expected to change,

35 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 35 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap RE Ideas in 1990 decay  Modelling and analysis cannot be performed adequately in isolation from the organisational and social context in which any new system will have to operate. emphasised the use of contextualised enquiry techniques, including ethnomethodology and participant observation  RE should not focus on specifying the functionality of a new system, but on modelling indicative and optative properties of the environment shift in emphasis away from modelling information flow and system state, and towards modelling stakeholders’ goals and scenarios  attempt to build consistent and complete requirements models is futile, RE has to take seriously the need to analyse and resolve conflicting requirements support stakeholder negotiation, reason with models that contain inconsistencies

36 Shiva Vafadar E-mail: Vafadar@aut.ac.ir 36 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Major Challenges for RE  Development of new techniques for formally modelling and analysing properties of the environment  Bridging the gap between requirements elicitation approaches based on contextual enquiry and more formal specification and analysis techniques.  Richer models for capturing and analysing non-functional requirements.  Better understanding of the impact of software architectural choices on the prioritisation and evolution of requirements.  Reuse of requirements models.  Multidisciplinary training for requirements practitioners.


Download ppt "Shiva Vafadar 1 آزمايشکاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Requirements Engineering : A Roadmap Effectiveness of."

Similar presentations


Ads by Google