Download presentation
Presentation is loading. Please wait.
Published bySincere Derrick Modified over 9 years ago
1
Assessment of metrics for the Product Lines context Márcio Ribeiro (CIn-UFPE) Camila Nunes (LES-PUC-Rio) Fernanda d’Amorim (CIn-UFPE) Rodrigo Bonifácio (CIn-UFPE) Paulo Borba (CIn-UFPE)
2
2 Applying actual metrics… 120x160 Concern: Screen Size 176x208 128x128 CDC(Screen Size) = 3
3
3 Seems to be bad if we consider one product! But for Product Lines seems to be good!
4
4 This way… Do we need different metrics for Product Lines? Do we need different metrics for Product Lines?
5
5 Agenda Applying metrics in subfeatures New metrics Case study representativity Framework and future work
6
6 Applying metrics in subfeatures CDC(Screen Size) = 3 CDC(120x160) = 1 CDC(176x208) = 1 CDC(128x128) = 1 Variants CVDC(120x160) = 1 CVDC(176x208) = 1 CVDC(128x128) = 1 Concern Variant Diffusion over Components
7
7 So… CVDC = CDC applied to subfeatures?
8
8 A second example //#ifdef device_screen_176x205 //# //# public static final int LOADING_MESSAGE_AREA = 154; //# //#elif device_screen_128x160 //# //# public static final int LOADING_MESSAGE_AREA = 118; //# //#elif device_screen_132x176 //# //# public static final int LOADING_MESSAGE_AREA = 118; CDLOC(Screen size) = 2 CVDLOC(176x205) = 2; CVDLOC(128x160) = 2; CVDLOC(132x176) = 2; Tangling!
9
9 Again… CVDLOC = CDLOC applied to subfeatures?
10
10 Calculating metrics for subfeatures It is important! Not so scattered (CDC, CVDC example) Mora tangled (CDLOC, CVDLOC example) Complexity CVLOC(UML) = 2000 CVLOC(Java) = 1000 CLOC(Notation) = 3000
11
11 New metrics? CVDC NCVC CVLOC CVDLOC Or are they the same but applied under a different perspective?
12
12 Case study representativity Feature types (mandatory, optional, XOR, OR) Granularity (coarsed and fine) Crosscutting, not crosscutting Functional, non-functional Homogeneous, Heterogeneous Feature interaction Binding times (static and dynamic) Different sizes
13
13 Possible case studies Mobile Media Mandatory, Optional, OR Freemind Optional Fine-grained Crosscutting Heterogeneous Different binding times ArgoUML Alternative Not crosscutting Coarsed-grained
14
14 Concluding Remarks Future work Analyze more metrics If needed, define new ones Apply them in case studies Define a framework
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.