57
July 2009 Research Report on Current Trends in Requirements Engineering

Research Report on Current Trends in Requirements Engineering

  • Upload
    darren

  • View
    78

  • Download
    1

Embed Size (px)

DESCRIPTION

Research Report on Current Trends in Requirements Engineering. July 2009. Taking Related Courses & Reading their references . Research Method. Collecting required Knowledge. Finding Related Books. Finding Related Papers. Finding Related Journals. Finding Related Projects. - PowerPoint PPT Presentation

Citation preview

Page 1: Research Report on Current Trends in  Requirements Engineering

July 2009

Research Report on

Current Trends in

Requirements Engineering

Page 2: Research Report on Current Trends in  Requirements Engineering

2

Research Method

Finding Related Researchers

Finding Related Journals

Finding Related Courses

Taking Related Courses &

Reading their references

Finding Related Books

Finding Related Research Groups

Finding Related Conferences

Finding Related Projects

Finding Related Papers

Collecting required

Knowledge

Page 3: Research Report on Current Trends in  Requirements Engineering

3

Research Method

Finding Related Researchers

Finding Related Journals

Finding Related Courses

Taking Related Courses &

Reading their references

Finding Related Books

Finding Related Research Groups

Finding Related Conferences

Finding Related Projects

Finding Related Papers

Collecting required

Knowledge

Page 4: Research Report on Current Trends in  Requirements Engineering

4

Results

Collected Knowledge Understanding Requirements Engineering Drawing Research Tree Defining Interested Research Area

Page 5: Research Report on Current Trends in  Requirements Engineering

5

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Outline

Introduction to Requirements Engineering Research Tree Interested Research Area Research Plan

Page 6: Research Report on Current Trends in  Requirements Engineering

6

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

User

RE RE

TechniquesTools

...

system Environment

Feasible? Cost-effective?Wish Requirement

TechniquesTools

...

Need

Introduction to RE

Page 7: Research Report on Current Trends in  Requirements Engineering

7

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Introduction to RE (Cont.)

RUP Definition: A systematic approach to • eliciting, • organizing, • documenting the requirements of the system, • establishing and maintaining agreement

between the customer and the project team on the changing requirements of the system.

Page 8: Research Report on Current Trends in  Requirements Engineering

8

Abbas [email protected]

Oral Comprehensive Exam 8Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Introduction to RE (Cont.)

Page 9: Research Report on Current Trends in  Requirements Engineering

9

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Introduction to RE (Cont.)

Ian Sommerville Definition: Appropriate mechanism for

Understanding what the customer wants, Analyzing needs, Negotiating a reasonable solution, Validating the Specification and Managing Changes in requirements.

Page 10: Research Report on Current Trends in  Requirements Engineering

10

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Introduction to RE (Cont.)

We Consider RE as: A systematic and disciplined approach to

Eliciting, Organizing, Documenting (Specifying), Analyzing, Validating and Managing changes in the requirements of the

system.

Page 11: Research Report on Current Trends in  Requirements Engineering

11

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Why Requirement Engineering?

If we don’t engineer the requirements: In most systems, It’s highly likely that you’ll build a

very elegant software solution that solves a wrong problem.

The result is: Wasted time and money Personal frustration Unhappy Users

Page 12: Research Report on Current Trends in  Requirements Engineering

12

Abbas [email protected]

Oral Comprehensive Exam12Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

RE Process Schema

Page 13: Research Report on Current Trends in  Requirements Engineering

13

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Engineering Process

Generic activities common to all RE processes: Requirements Elicitation; Requirements Analysis; Requirements Validation; Requirement Specification Requirements Change Management.

Page 14: Research Report on Current Trends in  Requirements Engineering

14

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Results of Incorrect Requirements

Phase in Which Requirement is Found Cost Ratio

Requirements 1

Design 3-6

Coding 10

Development Testing 15-40

Acceptance Testing 30-70

Operation 40- 1000

Page 15: Research Report on Current Trends in  Requirements Engineering

15

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Challenged software projects

Page 16: Research Report on Current Trends in  Requirements Engineering

16

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Outline

Introduction to Requirements Engineering Research Tree Interested Research Area Research Plan

Page 17: Research Report on Current Trends in  Requirements Engineering

17

Research Method

Finding Related Researchers

Finding Related Journals

Finding Related Courses

Taking Related Courses &

Reading their references

Finding Related Books

Finding Related Research Groups

Finding Related Conferences

Finding Related Projects

Finding Related Papers

Collecting required

Knowledge

Page 18: Research Report on Current Trends in  Requirements Engineering

18

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Resources (Value)

Page 19: Research Report on Current Trends in  Requirements Engineering

19

Abbas [email protected]

Oral Comprehensive Exam19Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Resources (Value)

Page 20: Research Report on Current Trends in  Requirements Engineering

20

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Papers (Share by Important Activities)

Page 21: Research Report on Current Trends in  Requirements Engineering

21

Abbas [email protected]

Oral Comprehensive Exam21Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Papers (Share by Important Activities)

Page 22: Research Report on Current Trends in  Requirements Engineering

22

Abbas [email protected]

Oral Comprehensive Exam22Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Page 23: Research Report on Current Trends in  Requirements Engineering

23

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Tools, Research Groups, Projects (Share by Important Topics)

Page 24: Research Report on Current Trends in  Requirements Engineering

24

Abbas [email protected]

Oral Comprehensive Exam24Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Tools, Research Groups, Projects (Share by Important Topics)

Page 25: Research Report on Current Trends in  Requirements Engineering

25

Abbas [email protected]

Oral Comprehensive Exam25Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Tools, Research Groups, Projects (Share by Important Topics)

Page 26: Research Report on Current Trends in  Requirements Engineering

26

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Surveys

A Quantitative Assessment of Requirements Engineering Publications--1963-2008 (2009)

Requirements Engineering: In Search of the Dependent Variables (2008)

Ten years of Australian Workshop on Requirements Engineering (2007)

Survey on the Use of Formal Languages/Models for the Specification, Verification and Enforcement of Network Access-lists (2006)

Requirements Elicitation: A Survey of Techniques, Approaches, and Tools (2005)

Role of Requirements Engineering in Software development Process (2003)

Page 27: Research Report on Current Trends in  Requirements Engineering

27

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Surveys (Cont.)

Critical Success factors for the improvement of Requirements Engineering Process (2003)

Research in Software Engineering: an Analysis of the literature (2002)

A Survey of Practices and Problems Associated with Incomplete User Requirements Document (2001)

Requirements Engineering: A Roadmap (2000) A Survey of Software Requirements Specification

Practices in the New Zealand Software Industry (1999) A Tool Survey on Z Specification and Refinement (1999)

Page 28: Research Report on Current Trends in  Requirements Engineering

28

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Books

Dines Bjørner, From Domains to Requirements; The Triptych Approach to Software Engineering, Draft Version, Springer, June 7, 2009.

Dines Bjørner, Software Engineering 2: Specification of Systems and Languages, 2006.

Gerard O’Regan, Mathematical Approaches to Software Quality, Springer –Verlag London Limited, 2006, ISBN -13: 978-1-84628-242-3.

Elizabeth Hull, Ken Jackson, Jeremy Dick, Requirements Engineering, Springer Verlag, Second Edition, 2005, ISBN:1-852-33577-7.

Jim Davies and Jim Woodcock, Using Z: Specification, Refinement and Proof, Prentice Hall International Series in Computer Science, 1996, ISBN 0-13-948472-8.

Page 29: Research Report on Current Trends in  Requirements Engineering

29

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Resource Journals

Requirements Engineering Journal, Springer, ISI. Formal Aspects of Computing, Springer, ISI. IEEE Transactions on Software Engineering, ISI. ACM Computing Surveys, an ACM Journal. ACM Transactions on Software Engineering and Methodology (TOSEM). ACM SIGSOFT Software Engineering Notes IBM Journals IEEE Transactions on Software Engineering Information and Software Technology (Elsevier Inc.) International Journal of Software Engineering and Knowledge

Engineering (IJSEKE) Journal of Systems and Software (Elsevier Inc.) Software Process: Improvement and Practice

Page 30: Research Report on Current Trends in  Requirements Engineering

30

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Resource Conferences

IEEE International Requirements Engineering Conference

IEEE International Workshop on Requirements Engineering

International Working Conference on Requirements Engineering: Foundation for Software Quality

Fundamental Approaches to Software Engineering IEEE International Conference on Software Engineering

and Formal Methods Australian Workshop on Requirements Engineering

Page 31: Research Report on Current Trends in  Requirements Engineering

31

Abbas [email protected]

Oral Comprehensive Exam31Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

RE

Elicitation

Analysis

V & V

Specification

Management

Techniques

Tools

Techniques

Tools

Techniques

Tools

Languages

Formal

Changes Management

Goal Oriented

Scenario Based

Others

Tools

Formal Tools

Tools

Modeling

Tools

Formal

ToolsTracing

Tools

Page 32: Research Report on Current Trends in  Requirements Engineering

32

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Outline

Introduction to Requirements Engineering Research Tree Interested Research Area Research Plan

Page 33: Research Report on Current Trends in  Requirements Engineering

33

Abbas [email protected]

Oral Comprehensive Exam33Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Papers (Share by Main Activities)

Page 34: Research Report on Current Trends in  Requirements Engineering

34

Abbas [email protected]

Oral Comprehensive Exam34Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Tools, Research Groups, Projects (Share by Main Topics)

Page 35: Research Report on Current Trends in  Requirements Engineering

35

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Result

V & V Specification

Techniques

Tools

Languages

Formal

Tools

Formal Z

Tracing

Tools

Case Study

Page 36: Research Report on Current Trends in  Requirements Engineering

36

Introduction to Requirements Engineering Research Tree Interested Research Area Research Plan

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Outline

Page 37: Research Report on Current Trends in  Requirements Engineering

37

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Research Plan Activities:

Completing the Requirement Specification & Verification Survey. Completing the role identification of Formalism in it. Identifying related open problems. Preparing proposal document

Outputs: Submit a paper entitled “How Z helps to specify the requirements of

engineering software” to 18th IEEE International Requirements Engineering Conference (RE10), September 27th – October 1st , 2010, Sydney, Australia.

Submit a paper entitled “Requirements Engineering: Trends and Issues” to Requirements Engineering Journal, Springer, ISSN: 0947-3602.

Formal Requirement Specification (FRS) Technical Report

Page 38: Research Report on Current Trends in  Requirements Engineering

38

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Elicitation

Elicitation / capture / discovery / acquisition The first stage in considering the problem the software

system should be able to solve. After system engineering process which defines the context

and goal of the software. The task:

establishing of boundaries and requirements for the software system. Carried out by:

interaction with stakeholders and detailed studying of corresponding knowledge domains.

A human activity.

Page 39: Research Report on Current Trends in  Requirements Engineering

39

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Elicitation (Cont.)

The most widespread techniques are: interviews, scenarios, prototypes, facilitated meetings, observation, etc.

Page 40: Research Report on Current Trends in  Requirements Engineering

40

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Analysis

After requirements were discovered they must be analyzed to: Necessity (need for the requirement);

Detect and resolve drawbacks in them (for example, consistency,

conflicts, ambiguity situations, completeness, etc);

Improve their quality;

They must be structured and refined;

Discover the bounds and properties of the system;

Discover how system will interact with the environment;

Another necessary analysis.

Page 41: Research Report on Current Trends in  Requirements Engineering

41

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Analysis (Cont.)

The most widespread techniques are: Negotiation classification, conceptual modeling,

Object Oriented Modeling UML

prioritization, etc.

Page 42: Research Report on Current Trends in  Requirements Engineering

42

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Specification

Software Requirements Specifications (SRS): a complete description of the behavior of the system to

be developed will assist the potential users

to determine if the software specified meets their needs or how the software must be modified to meet their needs

Includes a set of use cases describe all of the interactions that users will

have with the software, numerical values, limits and measurable attributes which may

be checked on the working system.

Page 43: Research Report on Current Trends in  Requirements Engineering

43

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Specification (Cont.)

The basic issues that the SRS writer (s) shall address: Functionality. What is the software supposed to do? External interfaces. How does the software interact with people,

the system‘s hardware, other hardware, and other software? Performance. What is the speed, availability, response time,

recovery time of various software functions, etc.? Attributes. What are the portability, correctness, maintainability,

security, etc. considerations? Design constraints imposed on an implementation. Are there

any required standards in effect, implementation language, policies for database integrity, resource limits, operating environment(s) etc.?

Page 44: Research Report on Current Trends in  Requirements Engineering

44

An SRS should be: Correct Unambiguous Complete Consistent Ranked for importance and/or stability Verifiable

there exists some finite cost-effective process with which a person or machine can check that the software product meets the requirement

Modifiable Traceable

the origin of each of its requirements is clear and It facilitates the referencing of each requirement in future

development or enhancement documentation.

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Specification (Cont.)

Page 45: Research Report on Current Trends in  Requirements Engineering

45

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Specification (Cont.)

The corresponding techniques may be divided into two separate major classes:

Natural Language (NL) based Drawback

difficult for automated processing based on special languages

universal approaches Unified Modeling Language

domain dependent Z Notation, B-Method)

drawback difficult for non-experts to understand Which limits their practical application.

Page 46: Research Report on Current Trends in  Requirements Engineering

46

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Validation & Verification

Verifying a system: Building the system right: Ensuring that the system complies with the system requirements

and conforms to its design. Validating a system:

Building the right system: making sure that the system does what it is supposed to do in its

intended environment. determines the correctness and completeness of the end product, ensures that the system will satisfy the actual needs of the

stakeholders.

Page 47: Research Report on Current Trends in  Requirements Engineering

47

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Page 48: Research Report on Current Trends in  Requirements Engineering

48

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Validation & Verification (Continue)

Verifying requirements: Proving that each requirement has been satisfied. can be done by

logical argument, inspection, modeling, simulation, analysis, expert review, test or demonstration.

Page 49: Research Report on Current Trends in  Requirements Engineering

49

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Validation & Verification (Continue)

Validating requirements: Ensuring that the set of requirements is correct, complete, and

consistent, a model can be created that satisfies the requirements a real-world solution can be built and tested to prove

that it satisfies the requirements. If RE discovers that the customer has requested a

perpetual-motion machine, the project should be stopped.

Page 50: Research Report on Current Trends in  Requirements Engineering

50

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Validation & Verification (Continue)

Validation to ensure that the software engineer has correctly

understood the customer‘s requirements and needs. for conformance with company standards To ensure that the requirements are

understandable, consistent, complete.

Formal notations offer the important advantage of permitting the above properties to be proven

Page 51: Research Report on Current Trends in  Requirements Engineering

51

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Requirements Change ManagementChange requests come from many sources throughout each iteration of the product lifecycle

Maint

Test

Code

Design

Req

Customer andEnd-User inputs

MarketingNew

Feature

NewRequirement

Bug

Help DeskEnd-User inputs

ApprovedDecisionProcess(CCB)

Single Channel for Approval

Coders inputsTesters inputs

ChangeRequest (CR)

Page 52: Research Report on Current Trends in  Requirements Engineering

52

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Others

Including: Process, Application, Necessity, Survey, Weakness, Benefits, Roadmap Agent Oriented RE Service Oriented RE Object Oriented RE …

Page 53: Research Report on Current Trends in  Requirements Engineering

53

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Trends and Issues

The results are based on analyzing more than 2,500 publications in the area of requirements engineering over a period of 16 years (1989-2005)

Eustace Asanghanwa, Alan M. Davis, Oscar Dieste, Ann M. Hickey, Natalia Juristo, Ana Moreno, “Requirements Engineering Research: A Microcosm of International Economic Trends”, International Working Conference on Requirements Engineering: Foundation for Software Quality (RefsQ’05), Porto, Portugal, July 2005.

Page 54: Research Report on Current Trends in  Requirements Engineering

54

Abbas [email protected]

Oral Comprehensive Exam54Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

RE publications per country

Page 55: Research Report on Current Trends in  Requirements Engineering

55

Abbas [email protected]

Oral Comprehensive Exam55Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

RE Publications per region

Page 56: Research Report on Current Trends in  Requirements Engineering

56

Abbas [email protected]

Oral Comprehensive Exam56Intelligent Systems

Labhttp://ceit.aut.ac.ir/islab

Regional growth patterns of RE publications

Page 57: Research Report on Current Trends in  Requirements Engineering

57

Abbas [email protected]

Oral Comprehensive Exam Intelligent Systems Labhttp://ceit.aut.ac.ir/islab

Trends and Issues (Cont.)

Davis, A., and A. Hickey, “A Quantitative Assessment of Requirements Engineering Publications--1963-2008”, International Working Conference on Requirements Engineering: Foundations for Software Quality (REFSQ’09), Amsterdam, The Netherlands, June 2009.

The results are based on analyzing more than 5,200 publications in the area of requirements engineering