To launch the tool use this command :
./Pacogen_Launcher.perl InputModel TimeMinization Size
- InputModel: File describing the feature model, it reads xmi files or text file which contains a textual description of the feature model.
- Size: the internal size of the matrix to be used to generate pairwise
covering test sets
- TimeMinimization: the maximum time allocated to the generation
(in ms). '_' will return the first solution without minimization.
The textual description of the model is composed of two list, separated by a ";". First list contain the list of all the feature, separated by a ",", in upper cases. The second list describe the relationships between all those features.
Relationships are described like this : and(ROOT,[Children list]).
Actually there are 6 operators :
and(ROOT,[Children list]).
or(FATHER,[FT1 ,FT2])
xor(FATHER,[FT1 ,FT2])
optionnal(FATHER,[FT1 ,FT2])
require(FT1 ,FT2)
mutex([FT1 ,FT2])
For the solving process the value of the root node as to be set at 0.
Traduction example :
A,B,C,D,E,F;and(0,[A,B]),xor(A,[C,D]),or(B,[E,F]),require(D,E)
Resolving Process

Experimental Results, 0 means feature selected, -1 means feature not selected
| Size of different feature models according to different time of
minimization |
| |
2000 ms |
10000 ms |
20000 ms |
180000 ms |
300000 ms |
900000 ms |
| cims_pl |
1 |
1 |
1 |
1 |
1 |
1 |
| gmf_eclipse_reuso_ufrj |
1 |
1 |
1 |
1 |
1 |
1 |
| monitor_engine |
4 |
4 |
4 |
4 |
4 |
4 |
| test_fm |
4 |
4 |
4 |
4 |
4 |
4 |
| e_portal |
5 |
5 |
5 |
5 |
5 |
5 |
| sal |
5 |
5 |
5 |
5 |
5 |
5 |
| moviesapp_pl |
6 |
6 |
6 |
6 |
6 |
6 |
| avionfeatures |
6 |
6 |
6 |
6 |
6 |
6 |
| doorlopende_reisverzekering |
6 |
6 |
6 |
6 |
6 |
6 |
| virtual_office_of_the_future |
6 |
6 |
6 |
6 |
6 |
6 |
| asghar |
6 |
6 |
6 |
6 |
6 |
6 |
| intelligenttutoringsystem |
7 |
6 |
6 |
6 |
6 |
6 |
| eshop_ufrj |
7 |
7 |
6 |
6 |
6 |
6 |
| monitor_engine_system |
6 |
6 |
6 |
6 |
6 |
6 |
| vms |
6 |
6 |
6 |
6 |
6 |
6 |
| phone_sple |
6 |
6 |
6 |
6 |
6 |
6 |
| elec5619___end_user_model |
6 |
6 |
6 |
6 |
6 |
6 |
| ide4ocl_1335626098 |
7 |
6 |
6 |
6 |
6 |
6 |
| ide4ocl |
6 |
6 |
6 |
6 |
6 |
6 |
| car_pl |
6 |
6 |
6 |
6 |
6 |
6 |
| ide4ocl_1587576681 |
7 |
6 |
6 |
6 |
6 |
6 |
| vodplayer |
6 |
6 |
6 |
6 |
6 |
6 |
| mobile_phone |
7 |
7 |
7 |
7 |
7 |
7 |
| tata_cars |
7 |
7 |
7 |
7 |
7 |
7 |
| project_portal_suite |
15 |
7 |
7 |
7 |
7 |
7 |
| card_product |
9 |
8 |
7 |
7 |
7 |
7 |
| mobile_game |
7 |
7 |
7 |
7 |
7 |
7 |
| car_software_system |
7 |
7 |
7 |
7 |
7 |
7 |
| coff_feature_model |
8 |
8 |
8 |
8 |
8 |
8 |
| cfdp_library1832208360 |
8 |
8 |
8 |
8 |
8 |
8 |
| mobile_games |
8 |
8 |
8 |
8 |
8 |
8 |
| fame_dbms |
8 |
8 |
8 |
8 |
8 |
8 |
| smart_home |
|
21 |
20 |
8 |
8 |
8 |
| cfdp_library460954790 |
8 |
8 |
8 |
8 |
8 |
8 |
| wb2 |
8 |
8 |
8 |
8 |
8 |
8 |
| cfdp_library |
8 |
8 |
8 |
8 |
8 |
8 |
| gophone_inc |
9 |
9 |
9 |
9 |
9 |
9 |
| digital_video_system |
|
9 |
9 |
9 |
9 |
9 |
| composicao_lo |
|
|
25 |
12 |
9 |
9 |
| small_graph_product_line |
9 |
9 |
9 |
9 |
9 |
9 |
| text_editor |
9 |
9 |
9 |
9 |
9 |
9 |
| dummy_car |
9 |
9 |
9 |
9 |
9 |
9 |
| softwareclassification |
10 |
10 |
10 |
10 |
10 |
10 |
| stack_pl |
12 |
10 |
10 |
10 |
10 |
10 |
| storefrontsystem |
|
10 |
10 |
10 |
10 |
10 |
| stacja_pogodowa |
11 |
10 |
10 |
10 |
10 |
10 |
| eclipse_platform |
|
12 |
11 |
11 |
11 |
11 |
| his |
|
|
|
11 |
11 |
11 |
| spl_doctor_chat |
|
12 |
12 |
12 |
12 |
12 |
| reference_management_softwares_feature_model_148124576 |
|
12 |
12 |
12 |
12 |
12 |
| reference_management_softwares_feature_model_1826570939 |
|
12 |
12 |
12 |
12 |
12 |
| key_word_in_context_index_systems |
|
12 |
12 |
12 |
12 |
12 |
| smart_home_v2 |
|
13 |
13 |
13 |
13 |
13 |
| feature_model_do_dominio_de_agendamento |
|
13 |
13 |
13 |
13 |
13 |
| reference_management_softwares_feature_model |
|
13 |
13 |
13 |
13 |
13 |
| fire_alarm |
|
13 |
13 |
13 |
13 |
13 |
| inventory |
|
15 |
15 |
15 |
15 |
15 |
| atm_software |
|
17 |
17 |
16 |
16 |
15 |
| ec2 |
|
16 |
16 |
16 |
16 |
16 |
| smart_home_v21 |
|
|
|
16 |
16 |
16 |
| jcalc_lps |
|
19 |
18 |
18 |
18 |
18 |
| reuso___ufrj___eclipse1 |
|
|
|
19 |
18 |
18 |
| bicycle_feature_model |
|
23 |
22 |
22 |
22 |
22 |
| thread |
|
|
|
25 |
25 |
25 |
| plone_meeting |
|
|
|
25 |
25 |
25 |
| xtext |
|
|
|
|
|
37 |
| smart_home |
|
|
21 |
8 |
8 |
8 |
| inventory |
|
|
15 |
15 |
15 |
15 |
| sienna |
|
|
|
20 |
20 |
20 |
| web_portal |
|
|
16 |
16 |
16 |
16 |
| model_transformation |
|
|
|
26 |
25 |
25 |
| arcade_game_pl_feature_model |
|
|
|
|
13 |
13 |
| doc_gen |
|
|
|
17 |
17 |
17 |
|
|
|
|
|
|
|
References
A. Hervieu "
Using constraint
model to generate automatically pairwise
test set for feature diagrams" INSA's Internship report --
June
2010