Requirements Elaboration Ali Afzal Malik, Barry Boehm, USC-CSSE Annual Research Review

advertisement
University of Southern California
Center for Systems and Software Engineering
Requirements Elaboration
Ali Afzal Malik, Barry Boehm, USC-CSSE
Annual Research Review
March 18, 2008
3/18/2008
©USC-CSSE
1
University of Southern California
Center for Systems and Software Engineering
Outline
•
•
•
•
•
•
•
Motivation
Empirical study
Methodology
Results
Findings
Future work
References
3/18/2008
©USC-CSSE
2
University of Southern California
Center for Systems and Software Engineering
Motivation
• Cost estimation - GIGO
Cost Model
3/18/2008
©USC-CSSE
3
University of Southern California
Center for Systems and Software Engineering
Research Objectives
• Early estimation
– Use goals
• Phenomenon of Requirements Elaboration
– High-level Goals  Low-level Requirements
• Characterize cause of variation in
elaboration ratios
3/18/2008
©USC-CSSE
4
University of Southern California
Center for Systems and Software Engineering
Requirements Elaboration Levels
Use Case Level of Detail Scale
(Cockburn, 2001)
3/18/2008
©USC-CSSE
5
University of Southern California
Center for Systems and Software Engineering
Research Approach
• Related previous work
– Agent-based approach (Letier and van
Lamsweerde, 2002)
– GBRAM (Antón, 1996)
• How is our work different?
– Focus on the process itself
• Obtain detailed project data
• Analyze causes of variation
3/18/2008
©USC-CSSE
6
University of Southern California
Center for Systems and Software Engineering
Empirical Study*
•
•
•
•
•
SE I (Fall) and SE II (Spring)
2004 – 2006
20 real-client, MS-student, team projects
Process: MBASE/RUP
Project selection
– Custom development
– Complete documentation
*A. Malik, B. Boehm, “An Empirical Study of Requirements Elaboration”, Submitted in 16th
IEEE International Requirements Engineering Conference.
3/18/2008
©USC-CSSE
7
University of Southern California
Center for Systems and Software Engineering
Empirical Study (2)
S#
Year
Project
Type
1
2004
Online Bibliographies on Chinese Religions in Western Languages
Web-based database
2
2004
Data Mining of Digital Library Usage Data
Data mining
3
2004
Data Mining from Report Files
Data mining
4
2005
Data Mining PubMed Results
Data mining
5
2005
USC Football Recruiting Database
Web-based database
6
2005
Code Generator – Template based
Stand-alone application
7
2005
Develop a Web Based XML Editing Tool
Web-based application
8
2005
EBay Notification System
Stand-alone application
9
2005
Rule-based Editor
GUI
10
2005
CodeCount™ Product Line with XML and C++
Code Counter Tool
11
2006
California Science Center Newsletter System
Web-based database
12
2006
California Science Center Event RSVP System
Web-based database
13
2006
USC Diploma Order/ Tracking Database System
Web-based database
14
2006
USC Civic and Community Relations (CCR) web application
Web-based database
15
2006
Student's academic progress web application
Web-based database
16
2006
New Economics for Woman (NEW)
Web-based database
17
2006
Web Portal for USC Electronic Resources
Web-based GUI
18
2006
Early Medieval East Asian Tombs
Web-based database
19
2006
USC CONIPMO
Cost model
20
2006
An Eclipse Plug-in for Use Case Authoring
Stand-alone application
3/18/2008
©USC-CSSE
8
University of Southern California
Center for Systems and Software Engineering
3/18/2008
©USC-CSSE
Project Process
9
University of Southern California
Center for Systems and Software Engineering
Methodology
• Relationship between capability goals and
capability requirements
• Documents and milestones considered
– LCO-OCD*: Capability goals at the end of the
Inception phase
– IOC-SSRD#: Capability requirements at the end
of the Construction phase
• 7 metrics
– 4 direct
– 3 derived
* Life Cycle Objectives – Operational Concept Description
# Initial Operational Capability – System and Software Requirements Definition
3/18/2008
©USC-CSSE
10
University of Southern California
Center for Systems and Software Engineering
Metrics
3/18/2008
S#
Metric
Description
1
NCGI
Number of initial capability goals
2
NCGR
Number of capability goals removed
3
NCRD
Number of delivered capability requirements
4
NCRN
Number of new capability requirements
5
NCGA
Number of adjusted capability goals
6
NCRA
Number of adjusted capability requirements
7
EF
Elaboration Factor
©USC-CSSE
11
University of Southern California
Center for Systems and Software Engineering
Derived Metrics
• NCGA = NCGI – NCGR
• NCRA = NCRD – NCRN
• EF = NCRA / NCGA
3/18/2008
©USC-CSSE
12
University of Southern California
Center for Systems and Software Engineering
Results
S#
NCGI
NCGR
NCRD
NCRN
NCGA
NCRA
EF
Group
10
14
2
10
1
12
9
0.75
19
8
1
8
2
7
6
0.86
3
3
1
7
5
2
2
1
16
5
2
3
0
3
3
1
7
10
5
6
1
5
5
1
1
12
3
12
2
9
10
1.11
8
10
2
12
2
8
10
1.25
9
7
4
8
4
3
4
1.33
2
3
0
9
4
3
5
1.67
20
5
2
7
2
3
5
1.67
17
7
1
21
10
6
11
1.83
6
4
1
7
1
3
6
2
4
5
1
14
6
4
8
2
15
5
1
11
3
4
8
2
14
3
0
10
3
3
7
2.33
18
6
0
20
5
6
15
2.5
5
4
1
12
3
3
9
3
13
2
0
11
3
2
8
4
12
6
2
19
2
4
17
4.25
11
8
5
16
3
3
13
4.33
Outliers
WUA
ICA
VUA
3/18/2008
©USC-CSSE
13
University of Southern California
Center for Systems and Software Engineering
Results (2)
18
16
14
12
NCR
A
10
(2)
8
6
(2)
4
(2): 2 data points
2
0
0
1
2
3
4
5
6
7
8
9
10
NCGA
3/18/2008
©USC-CSSE
14
University of Southern California
Center for Systems and Software Engineering
Findings
y = 3.1446x
20
R2 = 0.3262
WUA
ICA
18
VUA
16
14
y = 1.8737x
R2 = 0.9447
12
y = 1.1458x
NCR
A
R2 = 0.9688
10
(2)
8
6
(2)
4
-WUA: Well-understood applications
-ICA: Intermediate clarity applications
2
-VUA: Vaguely understood applications
0
0
1
2
3
4
5
6
7
8
9
10
NCGA
3/18/2008
©USC-CSSE
15
University of Southern California
Center for Systems and Software Engineering
Findings (2)
• Project groups based on EF ranges
– WUA: Well-understood applications
– ICA: Intermediate clarity applications
– VUA: Vaguely-understood applications
Outliers
0
WUA
1
ICA
1.5
VUA
2
EF
EF ranges defining groups
3/18/2008
©USC-CSSE
16
University of Southern California
Center for Systems and Software Engineering
Findings (3)
• No one-size-fits-all formula for
requirements elaboration
• Knowledge of a project’s type gives a hint
about its EF value e.g. all projects in the
VUA group are of type “Web-based
Database”
• Benefits of early determination of a
project’s group
– better estimates
– save time and effort
3/18/2008
©USC-CSSE
17
University of Southern California
Center for Systems and Software Engineering
Future Work
• Relationship between LOS goals and LOS
requirements
• Relationship between current metrics and
those provided by architectural documents
• Relationship between current metrics and
software size metrics
• Analysis of industrial data
3/18/2008
©USC-CSSE
18
University of Southern California
Center for Systems and Software Engineering
• Books
References
– Cockburn, A., Writing Effective Use Cases, Addison-Wesley, 2001.
– Kruchten, P., The Rational Unified Process: An Introduction, AddisonWesley, 2003.
• Conference papers
– A. I. Antón, “Goal-based requirements analysis”, Proc. of the IEEE Int.
Req. Eng. Conf. (RE), 1996, pp. 136–144.
– B. Boehm, “Anchoring the Software Process”, IEEE Software 13(4),
1996, pp. 73-82.
– E. Letier and A. van Lamsweerde. “Agent-based tactics for goal-oriented
requirements elaboration”, Proc. of the IEEE Int. Conf. on Soft. Eng.
(ICSE), 2002, pp. 83–93.
• Miscellaneous
– Boehm, B., Klappholz, D., Colbert, E., et al., “Guidelines for Lean ModelBased (System) Architecting and Software Engineering (LeanMBASE)”,
Center for Software Engineering, University of Southern California, 2005.
– http://sunset.usc.edu/csse/courseroot/course_list.html#577a
– http://sunset.usc.edu/csse/courseroot/course_list.html#577b
3/18/2008
©USC-CSSE
19
Download