metrics for the structural assessment of product line architecture asim rahman [email protected]
Post on 20-Dec-2015
220 views
TRANSCRIPT
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Agenda Introduction
Research Area
Reseach Methodology
Component Based Design
Service Utilization Concept
Structural Soundness
Measuring Strcutural Soundness
Measuring Quality Attributes
Case Study: Library System
Conclusions
Future Work
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Introduction
Software Reuse
Software Product Lines (SPL) as a reuse approach
SA vs SPL Architecture
Variability is Software Systems
Architectural Assessments
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Research Area & Questions
Questions?
How do we judge the qulaity of the structure of the architecture?
How to we quanitfy the Property?
How can this measure be used to build a better Product Line Architecture?
Motivation
Almost no published reseach in the area
Large amount of published papers in component based software engineering
Many PL approaches (KobrA, Jan Bosch, Clements) follow a component based approach
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Research Methodology
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Component Based Design
ComponentComponent is a unit of composition with contractually specified interfacesinterfaces and explicit context context dependenciesdependencies...[Szyperski ’97]
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Service Ultization Concept
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Structural Soundness
components are divideddivided, plannedplanned and then connectedconnected together in most effective way possible to provide a solution to a well defined problem.
SS cannot be gerneralized for all architectures – property should only be compared when two or more architecture provide solution to a similar problem
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Structural Soundness
Four step model:Research Methodology
Identifying design/architecture properties (L1)
Identifying metrics to measure properties (L2)
Identifying measurable elements (L3)
Validating the metrics (L4)
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (i)
Observability
Ease with which a developer can peak into the component and learn about its fuctions
Behavior of the component is observed by read methods corresponding to the the read properties
Customizability
Ability or the extent to which a component can be configured, without changing its code
Writable properties are accessed by writable methods
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (ii)
Interface Complexity
Interface Signature
Properties,operations and events
Interface Constraints
Pre-conditions
Post-conditions
Range constraints on properties
Sequence of interface invocations
Interface Packaging and Configurations
Configurations a component can operate in
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (iii)
Self Completeness
SC measured by return value
SC measured by parameters
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (iv)
Provided Service Utilization
We use only the PSU value in order to determine the resuability of the components
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (v)
Maturity
Mature component tend to be more reusable
Less testing effort
Low probability of defects
More familiarity of developers with the component usage
Known behavior in multiple situations
Some characteristics also tend to decrease the probability of reuse
Increase in size
Non-conformance from component model
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (vi)
...Maturity
Measures to quantify maturity
# of faults in requirement and design
# of open faults
# of closed faults
Avg. # of days a fault remains
Avg. # of days to close a fault
Avg. age of a fault
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Measuring Quality Attributes (vii)
Modularity
Measured by TREE IMPURITY [Fenton ’97]
Considering Optionality
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (i)
Based on Case Study performed by Fraunhofer Institute of Experimental Studies
Product Line of Library Systems (German Libraries)
Limitations of the Case Study
Few details on operation/service (return val & param)
Scarce information on range constraints on properties
Sequence of method invocation was missing
No details of maturity measures
Variabilty was low
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (ii)
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (iii)
Correlation Analysis of Quality Attributes
Check for mullticollinearity
If strong correlation is found between two quality attributes, then one of the two metrics must be selected
Multicollinearity
Conservative: R ≤ 0.5
Liberal: If relation between variable remain constant, then multicollinearity is not a problem
Jenson: R ≤ 0.9
Reasons:Reasons:
1.1. Dont want to double countDont want to double count
2.2. Dont expect to have large data Dont expect to have large data pointspoints
3.3. Carefully categorized quality Carefully categorized quality attributes; hence slight indication of attributes; hence slight indication of correlation is alarmingcorrelation is alarming
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (iv)
Analysis Test Selection
Analysis of Component Level Metrics
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (v)
Analysis of the Architecture Level Metrics
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Case Study: Library System (vi)
Wilcoxon Signed Rank Test
SCp and SCr (W = 36, N = 8)
Level of Significance = 0.005 (Directional Test)
PSU and SCr (W = 0, N = 3)
For sample sizes smaller than N=5 there are no possible values of W that would be significant at or beyond the baseline 0.05 level
CICM and SCr (W = 10, N = 9)
Level of Significance > 0.05 (Directional Test)
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Conclusion
Structural Assessment of Product Lines can make use of Component Based Metrics
Adaptation requires consideration of PLA specific features, variability and optionality
Aggregated value as well as individual metrics are usefull for the architects
The metrics need to be validated further by studying industrial Product Lines
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Future Work
Infuence towards overall quality
Degree of Relation
Unavailability of Product Line Architecture
Blekinge Institute of Technology
SE-371 79 Karlskrona
+46 455 38 50 00
www.bth.se/eng
Questions?