visualization in software product lines

54

Upload: thiagofernandes

Post on 28-Jun-2015

1.480 views

Category:

Education


2 download

DESCRIPTION

Presentation about how visualization has been applied in software product lines

TRANSCRIPT

Page 1: Visualization in Software Product Lines
Page 2: Visualization in Software Product Lines

Visualization in Software Product Lines

Thiago Fernandes Lins de Medeiros

[email protected]

Page 3: Visualization in Software Product Lines

Summary

Context

Problem Area

Motivation

Researches

Conclusions

Future Work

References

3

Page 4: Visualization in Software Product Lines

Context

4

Page 5: Visualization in Software Product Lines

A software product line is a set of software-

intensive systems sharing a common, managed

set of features that satisfy the specific needs of a

particular market segment or mission and that

are developed from a common set of core

assets in a prescribed way

”[Paul Clements & Linda Northrop, 2001]

5

Page 6: Visualization in Software Product Lines

Improve productivity

Increase quality

6

Page 7: Visualization in Software Product Lines

7

Reduce costs

Decrease time-to-market

Page 8: Visualization in Software Product Lines

Problems

8

Page 9: Visualization in Software Product Lines

Variability Management

9

Page 10: Visualization in Software Product Lines

Feature Interaction

10

Page 11: Visualization in Software Product Lines

Product Derivation

11

Page 12: Visualization in Software Product Lines

Motivation

12

Page 13: Visualization in Software Product Lines

Information visualization is the use of computer-supported, interactive, visual representations ofabstract data to amplify cognition.

“”[Stuart Card et. al., 1999]

13

Page 14: Visualization in Software Product Lines

Memory

Processing14

[Stuart Card et. al., 1999]

Page 15: Visualization in Software Product Lines

SPL DataData

TablesVisual

StructuresViews

Reference Model

15

[Daren Nestor et al, 07]

DataTransformations

VisualMapping

ViewTransformations

Human Interaction

Page 16: Visualization in Software Product Lines

Overview

16

Page 17: Visualization in Software Product Lines

Zoom & Pan

17

Page 18: Visualization in Software Product Lines

Details-on-demand

18

Page 19: Visualization in Software Product Lines

Relate

19

Page 20: Visualization in Software Product Lines

History

20

Page 21: Visualization in Software Product Lines

Researches

21

Page 22: Visualization in Software Product Lines

Feature Modeling

affected by size of SPL

2D graph layouts are unable to fit large hierarchies on the screen

22

Page 23: Visualization in Software Product Lines

Feature Cone Tree

23

[Pablo Trinidad et al., 08]

Page 24: Visualization in Software Product Lines

Feature Cone Tree

24

[Pablo Trinidad et al., 08]

Page 25: Visualization in Software Product Lines

effective use of screen space

prioritizes the understanding of the topology

2D layouts

can be best

low effectiveness for balanced hierarchies

just a prototype25

Page 26: Visualization in Software Product Lines

Product Derivation

application engineering processes should be performed efficiently

the tool should support stakeholders in the process of product configuration

26

Page 27: Visualization in Software Product Lines

VISIT-FC

27

[Goetz Botterweck et al., 08]

Page 28: Visualization in Software Product Lines

VISIT-FC

28

[Goetz Botterweck et al., 08]

Page 29: Visualization in Software Product Lines

VISIT-FC

29

[Goetz Botterweck et al., 08]

Page 30: Visualization in Software Product Lines

support an industrial SPL

integration between decisions, features and components

implements various techniques of human interaction

it is not integrated with IDE’s

30

Page 31: Visualization in Software Product Lines

ConfigurationWizard

31

[Rick Rabiser, 08]

Page 32: Visualization in Software Product Lines

ConfigurationWizard

32

[Rick Rabiser, 08]

Page 33: Visualization in Software Product Lines

integrated with Eclipse. Extensible

working with Siemens VAI

focus on stakeholders

it works for thousands of “decisions”?

33

Page 34: Visualization in Software Product Lines

Design

how a particular feature is realized?

which artifacts may be effectively used in

a variant?

34

Page 35: Visualization in Software Product Lines

MappingViews

35

[Florian Heidenreich et al., 08]

Page 36: Visualization in Software Product Lines

MappingViews

36

[Florian Heidenreich et al., 08]

Page 37: Visualization in Software Product Lines

37

views controlled by developer

support feature expressions

just a prototype

do not map realcomponents

Page 38: Visualization in Software Product Lines

Implementation

tracing features from the domain level to their implementation

the code that realizes a feature can be scattered across multiple units

38

Page 39: Visualization in Software Product Lines

CIDE tool

39

[Christian Kästner et al., 08]

Page 40: Visualization in Software Product Lines

CIDE tool

40

[Christian Kästner et al., 08]

Page 41: Visualization in Software Product Lines

series of case studies

(industrial SPL too)

colors are intuitive we are not able to recognize many colors

blend colors

41

Page 42: Visualization in Software Product Lines

Evolution

new variable features are introduced, no one is removed

how to ensure the minimum number of variable features?

42

Page 43: Visualization in Software Product Lines

Optimization of Variability

43

[Felix Loesch & Erhard Ploedereder, 07]

Page 44: Visualization in Software Product Lines

Optimization of Variability

44

[Felix Loesch & Erhard Ploedereder, 07]

Page 45: Visualization in Software Product Lines

the method is easy

case study in large industrial SPL visualization

generated for large SPL is complex

variability analysis is time consuming

45

Page 46: Visualization in Software Product Lines

Conclusion

46

Page 47: Visualization in Software Product Lines

Visualization has proven useful in SPL

Many researches on:

Product derivation

Variability management

47

1

2

Page 48: Visualization in Software Product Lines

Tools should be integrated

Gap on reactive approach

48

3

4

Page 49: Visualization in Software Product Lines

Future Work

49

Page 50: Visualization in Software Product Lines

Visual framework for SPL projects

Visualization of components in

legacy code50

1

2

Page 51: Visualization in Software Product Lines

References

51

Page 52: Visualization in Software Product Lines

• Rabiser R. Flexible and User-Centered Visualization Support for Product Derivation. In: ViSPLE 2008.; 2008:323-328.

• Botterweck G, Thiel S, Nestor D, Abid SB, Cawley C. Visual Tool Support for Configuring and Understanding Software Product Lines.2008 12th International Software Product Line Conference. 2008:77-86.

• Nestor D, O’Malley L, Quigley A, Sikora E, Thiel S. Visualisation of variability in software product line engineering. Proceedings of the 1st International Workshop on Variability Modelling of Software-intensive Systems (Va-MoS 2007). 2007:1-8.

• Loesch F, Ploedereder E. Optimization of Variability in Software Product Lines. 11th International Software Product Line Conference (SPLC 2007). 2007:151-162.

• 1. Trinidad P, Ruiz A, Benavides D, Segura S. Three-Dimensional Feature Diagrams Visualization. In: ViSPLE 2008.; 2008.

52

Page 53: Visualization in Software Product Lines

• Kastner C, Trujillo S, Apel S. Visualizing software product line variabilities in source code. Proceedings of the 2nd International Workshop on Visualisation in Software Product Line Engineering (ViSPLE 2008), collocated with the 12th International Software Product Line Conference (SPLC 2008). 2008.

• S. K. Card, J. D. Mackinlay, and B. Shneiderman. Readings in Information Visualization: Using Vision to Think. Morgan Kaufmann Publishers, 1999.

• Heidenreich F, Savga I, Wende C. On controlled visualisations in software product line engineering. ViSPLE 2008. 2008.

• P. Clements and L. Northrop. Software Product Lines: Practices and Patterns: SEI Series in Software Engineering, Addison-Wesley, 2001.

53

Page 54: Visualization in Software Product Lines

54