With View Infinity developers can explore an SPL from its feature model down to its implementation. It offers visualization facilities on three layers of abstraction: feature model, file structure, and source code.
To get a better impression of the zooming process, we created a video
Zoom levelsTo scale the file view for large projects, different layouts are available:
![]() |
![]() |
![]() |
Currently, there are two example projects for View Infinity
Expression problem, a software product line for the evaluation of arithmetic expressions
MobileMedia, a software product line for the manipulation of multi media data on mobile devices [1]
In an experimental setting, we evaluated how experienced SPL developers work with View Infinity. To this end, we designed a small study in two phases: First, we let developers work with their preferred IDE. 2 developers work with Visual Studio, 5 with Eclipse. Second, we let developers work with View Infinity.
To test the usability of View Infnitiy, we designed 4 tasks that developers should work on, 2 for each phase. First, developers should locate all files containing a certain feature. Second, developers should locate a bug that occured under a certain configuration. We used both kinds of tasks in both phases. An overview of all tasks is available here.
At the end of the experiment, we gave developers a questionnaire, in which they should evaluate View Infinity. In the questionnaire, subjects should rate several statements about View Infinity on a five-point Likert scale [2]. The results indicate that View Infinity is intuitive to use and has great potential in supporting SPL developers. An overview questions and according answers is available here.
You can download View Infinity and all example projects in one file (zip): Download View Infinity & Examples. Then, you can start with step 3 of the instructions.
You can also download View Infinity without examples (zip): Download View Infinity. See below for instructions.
[1] E. Figueiredo, N. Cacho, M. Monteiro, U. Kulesza, R. Garcia, S. Soares, F. Ferrari, S. Khan, F. Filho, and F. Dantas. Evolving Software Product Lines with Aspects: An Empirical Study on Design Stability. In ICSE '08: Proceedings of the International Conference on Software Engineering, pages 261{270. ACM Press, 2008.
[2] Rensis Likert. A Technique for the Measurement of Attitudes. Archives of Psychology, 22(140):1-55, 1932.