[ieee 2013 ieee international symposium on software reliability engineering workshops (issrew) -...

20
ISSRE 2013Pasadena, CA, USA Arbi Ghazarian Department of Engineering & Computing Systems Arizona State University Email: [email protected] Detection of Missing Requirements Using Base Requirements Pairs 978-1-4799-2552-0/13/$31.00 ©2013 IEEE 61

Upload: arbi

Post on 16-Mar-2017

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

ISSRE 2013– Pasadena, CA, USA

Arbi Ghazarian Department of Engineering & Computing Systems

Arizona State University Email: [email protected]

Detection of Missing Requirements Using Base Requirements Pairs

37978-1-4799-2552-0/13/$31.00 ©2013 IEEE 61

Page 2: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

2

Incomplete Specifications & Software Defects

A. Ghazarian, A Case Study of Defect Introduction Mechanisms, Proc. of CAiSE’09, Springer LNCS, pp. 156-170, 2009

42.5% of all software defects in enterprise systems are faults of omission (i.e., missing code statements). In 82% of faults of omission, the requirements engineers had not explicitly included the corresponding statements of requirements in the specifications.

3862

Page 3: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

3

Current Solution

Requirements Inspection Ad-hoc Check-List Based Scenario-Based

Reliance on Inspector’s experience and domain knowledge Domain-Agnostic (i.e., generic) Non-Systematic

3963

Page 4: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

4

Criteria for a New Solution

Domain-Specific

Less reliance on inspector’s experience and domain knowledge More systematic that existing approaches Lightweight approach with high ROI Can be automated

4064

Page 5: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

5

Observations and Insights

Often, the existence of one type of functional requirement makes the existence of another relevant type of functional requirement highly probable.

In specifications of systems, certain classes of requirements often appear together, forming patterns of base requirement pairs. A software requirement whose class participates in a known base pair pattern, but whose complementary base-forming requirement is not specified is indicative of a missing requirement.

4165

Page 6: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

6

The Rule Derivation Process

1. Classification of atomic statements of FRs obtained from past projects • Grounded-theory-based comparative data analysis

2. Distinguish between the core and non-core requirements classes • Compute the statistical frequency distributions of FRs over the identified classes

3. Analyze and compile a list of relationships among the identified core classes 4. Rule pruning – eliminate the infrequent rules

4266

Page 7: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

7

FR Classes and Their Frequency Distributions

Type %

Data Output 26.37

Data Input 19.88

Event Trigger 16.18

Business Logic 11.66

Data Persistence 10.84

User Interface Navigation

4.84

External Call 2.62

Communication 2.30

User Interface 1.97

User Interface Logic 1.64

Data Validation 0.98

External Behavior 0.65

Ghazarian, A., Characterization of Functional Requirements Space: The Law of Requirements Taxonomic Growth, Proceedings of 20th IEEE International Requirements Engineering Conference (RE’12), pp. 241-250, Chicago, IL, USA, September 2012. 4367

Page 8: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

8

FR Classes and Their Frequency Distributions

Type %

Data Output 26.37

Data Input 19.88

Event Trigger 16.18

Business Logic 11.66

Data Persistence 10.84

User Interface Navigation

4.84

External Call 2.62

Communication 2.30

User Interface 1.97

User Interface Logic 1.64

Data Validation 0.98

External Behavior 0.65

} High-Frequency FRs

85%

4468

Page 9: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

9

FR Classes and Their Frequency Distributions

Type %

Data Output 26.37

Data Input 19.88

Event Trigger 16.18

Business Logic 11.66

Data Persistence 10.84

User Interface Navigation

4.84

External Call 2.62

Communication 2.30

User Interface 1.97

User Interface Logic 1.64

Data Validation 0.98

External Behavior 0.65

} High-Frequency FRs

85%

} Low-Frequency FRs

15% 4569

Page 10: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

10

System Make-Up (High- vs Low-Frequency FRs)

System % of High-Frequency FRs

% of Low-Frequency FRs

1 91.13 8.87

2 70.97 29.03

3 71.43 28.57

4 81.13 18.87

5 84.37 15.63

6 100 0

7 90.91 9.09

8 78.43 21.57

9 82.14 17.86

10 87.18 12.82

11 69.52 30.48

12 82.67 17.33

13 83.33 16.67

14 72.81 27.19

15 93.05 6.95

4670

Page 11: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

11

Sample Rules

• For every Data Input (DI), there exists one or more corresponding

requirements of type Data Validation (DV) : {DIDV}

• For every DV, there exists one or more corresponding requirements of type Data Output (DO): {DVDO}

• For every DI, there exists one or more corresponding requirement of type Data Persistence (DP): {DIDP}

• For every Use Case (UC), there exists one or more requirement of type DV: {UCDV} • For every UC, there exists one or more requirement of type Business Logic (BL): {UCBL}

4771

Page 12: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

12

Evaluation of the Rules

Applied the rules to specifications for 5 industrial software systems (302 requirements)

Defect Detection Rate (DDR): ratio of detected defects to the number of rule applications

• A measure of inspection effort in terms of rule executions Defect Detection Precision (DDP) : ration of detected defects to the number of warnings generated

• Percentage of real warnings vs. false positives

4872

Page 13: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

13

Overall Results

DDR: 35% Roughly, the execution of every 3 rules resulted in the detection of a missing requirement.

DDP: 68% Detected 196 missing requirements

4973

Page 14: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

14

More Results

DDR: 35% Roughly, the execution of every 3 rules resulted in the detection of a missing requirement.

DDP: 68%

Detected 196 missing requirements (n) UCDV: n = 48, DDR = 94%, DDP = 100% DIDV: n =23, DDR = 32%, DDP = 35% UCDP: n = 23, DDR = 45%, DDP = 92% DI DP: n = 18, DDR = 25%, DDP = 34%

5074

Page 15: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

15

More Results

Over 45% of the base pair rules achieved a DDP of 100%

Over 81% of the base pair rules achieved a DDP of 84% and over.

5175

Page 16: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

16

The Domino Effect

Chained execution of the rules: The execution of a rule can trigger the execution of another rule, increasing the effectiveness of the approach.

DIDV (n=23)DO (n=23)

The rule-based approach can be used in an iterative fashion.

5276

Page 17: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

17

Quality Measurement Using Base-Pair Rules

The base-pair rules approach can be used for in-process measurement of the quality of the requirements.

As missing requirements are detected and added to the specification, the DDR and DDP measures gradually drop in performance. The poor performance of the approach on a specification is indicative of the high quality of the specification (in terms of specification completeness).

5377

Page 18: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

18

The Cost of the Approach

The cost of deriving the rules (dominant cost) manual corpus-mining process (grounded-theory-based analysis) The reuse of the rules in subsequent projects will not only offset this cost, but also yield a high ROI.

The cost of applying the rules

5478

Page 19: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

19

Contributions

A light-weight rule-based approach to requirements inspection for enterprise systems

A reusable process for generating inspection rules for other software domains

5579

Page 20: [IEEE 2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) - Pasadena, CA, USA (2013.11.4-2013.11.7)] 2013 IEEE International Symposium on Software

20

Future Work

Deriving and evaluating base-pair requirements rules for other software domains

Scientific Software Smart-house Systems

Automation of the approach

5680