Updatable View Based Feature Model Refinement
We have developed a tool (FMView) to support our idea of refining feature model with updatable view. FMView is a prototypical implementation and we are developing it within Eclipse as a Plug-In. You can download the tool here.
Here we provide a Demo to illustrate the tool and the basic idea of our approach.
First you can construct your feature mdoel in FMView. In this demo, a feature model with 18 features are built using our tool, as shown in the figure.

In this demo, 3 initial features are selected to indicate the interest of the domain enginner. These initial features are filled with green.

Based on the initial features,
the original feature model is sliced into a comprehensible view, as shown in
the right part of the figure. Annotations, artificial
features and artificial refinements are added to help domain engineer
understand the view.

FMView mantain the traceability links between the model elements in the
view and the model elements in the original feature model.
In this demo, features K, L, Q, R and the
relationships between them are selected in the view, the corresponding features
and relationships are automatically
highlighted with red, as shown in the left part of the figure.

In FMView, modifications on the view can be reflected to the original feature model automatically.
In this demo, feature O,
P and the require constraint between features K and L
are deleted in the view. The corresponding features and constraints in the
original feature model are deleted (colored with orange) automatically.
Two new features, S and T ,are added as the children of
feature K in the view, these modifications are reflected to the
origianl feature model (colored with
purple) automatically.
In the view, feature R is renamed with R'. In the original
feature model, the corresponding feature is also renamed (colored with blue)
automatically.

To make the refined original
feature model more clear, FMView can hide the deleted features
in th refined original feature model. In this demo, the deleted
feature S and T are hidden in FMView, as
shown in the left part of the figure.

We use GRoundTram, which has been developed to support
systematic development of bidirectional model transformation, to build FMView.
GRoundTram
adapts an existing well established graph querying language UnQL for
model transformation. In GRoundTram, graphs are edged-labeled in the sense that
all
information is stored as labels on edges rather than on nodes. The GRoundTram
system gives a support to construct an updatable view, maintain the
traceability between the feature model and the updatable view.
We represent, in GRoundTram, feature models and views by graph models. Please refer to here for the representations of feature models in the GRoundTram.
GRoundTram
(The Big Project)
A Grand Challenge Project on Bidirectional Graph (Model) Transformation at NII
in Japan
FMView is developed mainly at NII, Japan. For more information about the project, please contact the development team members:
Qiang Sun (Shanghai Jiangtong University, China; intern at NII) sun-qiang at sjtu dot edu dot cn
Bo Wang (Peking University, China; intern at NII) wangbo07 at sei dot pku dot edu dot cn
Other Members in this work:
Zhenjiang Hu (GRACE Center, National Institute of Informatics, Japan) hu at nii dot ac dot jp
Haiyan Zhao (Key Lab. of High Confidence Software Technologies, Peking University, China) zhhy at sei dot pku dot edu dot cn
Yingfei Xiong (Generative Software Development Lab, The University of Waterloo) yingfei at swen dot uwaterloo dot ca
Hong Mei (Key Lab. of High Confidence Software Technologies, Peking University, China) meih at pku dot edu dot cn
Last Update: 2010-02-25