aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/SocialNetwork_plugin
diff options
context:
space:
mode:
Diffstat (limited to 'Metrics/Metrics-Calculation/SocialNetwork_plugin')
-rw-r--r--Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/Main.java39
-rw-r--r--Metrics/Metrics-Calculation/SocialNetwork_plugin/yakinduum/info.csv150
2 files changed, 18 insertions, 171 deletions
diff --git a/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/Main.java b/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/Main.java
index e1698e5b..261f32cc 100644
--- a/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/Main.java
+++ b/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/Main.java
@@ -4,11 +4,8 @@ import java.io.File;
4import java.io.FileNotFoundException; 4import java.io.FileNotFoundException;
5import java.io.PrintStream; 5import java.io.PrintStream;
6import java.util.ArrayList; 6import java.util.ArrayList;
7import java.util.List;
8import java.util.Map; 7import java.util.Map;
9 8
10import org.eclipse.viatra.query.runtime.matchers.aggregators.count;
11
12import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.app.Domain; 9import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.app.Domain;
13import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.distance.KSDistance; 10import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.distance.KSDistance;
14import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.graph.EMFGraph; 11import ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator.graph.EMFGraph;
@@ -27,16 +24,16 @@ public class Main {
27 return message; 24 return message;
28 } 25 }
29 26
30 private static String configFolder = "yakinduum/"; 27 private static String configFolder = "yakinduum/config15/";
31 private static String configFileName = configFolder + "info.csv"; 28 private static String configFileName = configFolder + "info_new_metric.csv";
32 private static String aggregateViolationMeasureFileName = configFolder + "aggregateInfo2.csv"; 29 private static String aggregateViolationMeasureFileName = configFolder + "aggregateInfo.csv";
30 private static String fileReadFolder = "output/Viatra_100/";
33 31
34 public static void main(String args[]) { 32 public static void main(String args[]) {
35// try {
36 33
37 34
38 long begin = System.currentTimeMillis(); 35 long begin = System.currentTimeMillis();
39 String message = null;//runWithPath("yakinduGeneration.vsconfig"); 36 String message = runWithPath("yakinduGeneration.vsconfig");
40 long elapsed = System.currentTimeMillis() - begin; 37 long elapsed = System.currentTimeMillis() - begin;
41 38
42 if(message != null) { 39 if(message != null) {
@@ -48,17 +45,17 @@ public class Main {
48 infoOutput.add(time); 45 infoOutput.add(time);
49 output.add(infoOutput); 46 output.add(infoOutput);
50 System.out.println(time); 47 System.out.println(time);
51 //CsvFileWriter.write(output, configFileName); 48 CsvFileWriter.write(output, configFileName);
52 49
53 50
54 output = new ArrayList<ArrayList<String>>(); 51 output = new ArrayList<ArrayList<String>>();
55 output.add(prepareInfo()); 52 output.add(prepareInfo());
56 //CsvFileWriter.append(output, configFileName); 53 CsvFileWriter.append(output, configFileName);
57 54
58// for(int i = 0; i < 50; i++) { 55 for(int i = 0; i < 50; i++) {
59// singleModelViolationMeasure(i+1); 56 generateModel(i+1);
60// } 57 }
61 aggregateViolationMeasure(50); 58 //aggregateViolationMeasure(50);
62 System.out.println("Finished"); 59 System.out.println("Finished");
63 } 60 }
64 61
@@ -70,7 +67,7 @@ public class Main {
70 infoOutput.add(run+ ""); 67 infoOutput.add(run+ "");
71 infoOutput.addAll(calculateMetric(run)); 68 infoOutput.addAll(calculateMetric(run));
72 69
73 YakinduumModel model = new YakinduumModel("output/Viatra_100/run"+run+"/"+ filename); 70 YakinduumModel model = new YakinduumModel(fileReadFolder +"run" +run + "/" + filename);
74 int violationCount = ViolationCheck.calculateViolationCounts(model.yakinduum); 71 int violationCount = ViolationCheck.calculateViolationCounts(model.yakinduum);
75 infoOutput.add(violationCount + ""); 72 infoOutput.add(violationCount + "");
76 73
@@ -78,18 +75,18 @@ public class Main {
78 75
79 //save model to another directory 76 //save model to another directory
80 model.save(configFolder + run + ".xmi"); 77 model.save(configFolder + run + ".xmi");
81 78 output.add(infoOutput);
82 CsvFileWriter.append(output, configFileName); 79 CsvFileWriter.append(output, configFileName);
83 } 80 }
84 81
85 public static void singleModelViolationMeasure(int run) { 82 public static void singleModelViolationMeasure(int run) {
86 String filename = run+".xmi"; 83 String filename = run+"_1.xmi";
87 //prepare initial info 84 //prepare initial info
88 ArrayList<ArrayList<String>> output = new ArrayList<ArrayList<String>>(); 85 ArrayList<ArrayList<String>> output = new ArrayList<ArrayList<String>>();
89 ArrayList<String> infoOutput = new ArrayList<String>(); 86 ArrayList<String> infoOutput = new ArrayList<String>();
90 infoOutput.add(run+ ""); 87 infoOutput.add(run+ "");
91 88
92 YakinduumModel model = new YakinduumModel("yakinduum\\config8\\"+ filename); 89 YakinduumModel model = new YakinduumModel("output/Viatra_100/run"+run+"/"+ filename);
93 90
94 //parse map of violation counts to two list and add them to the result list 91 //parse map of violation counts to two list and add them to the result list
95 Map<String, Integer> map = ViolationCheck.violationMaps(model.yakinduum); 92 Map<String, Integer> map = ViolationCheck.violationMaps(model.yakinduum);
@@ -112,8 +109,8 @@ public class Main {
112 ArrayList<String> counts = new ArrayList<String>(); 109 ArrayList<String> counts = new ArrayList<String>();
113 ArrayList<String> violationNames = null; 110 ArrayList<String> violationNames = null;
114 for(int run = 1; run < size+1; run++) { 111 for(int run = 1; run < size+1; run++) {
115 String filename = run+".xmi"; 112 String filename = run+"_1.xmi";
116 YakinduumModel model = new YakinduumModel("yakinduum\\config8\\"+ filename); 113 YakinduumModel model = new YakinduumModel("output/Viatra_100/run"+run+"/"+ filename);
117 114
118 Map<String, Integer> map = ViolationCheck.violationMaps(model.yakinduum); 115 Map<String, Integer> map = ViolationCheck.violationMaps(model.yakinduum);
119 if(run == 1) { 116 if(run == 1) {
@@ -147,7 +144,7 @@ public class Main {
147 //read model and metric 144 //read model and metric
148 ArrayList<String> output = new ArrayList<String>(); 145 ArrayList<String> output = new ArrayList<String>();
149 GraphReader reader = new GraphReader(YakindummPackage.eINSTANCE); 146 GraphReader reader = new GraphReader(YakindummPackage.eINSTANCE);
150 EMFGraph graph = reader.readModels("output/Viatra_100/run"+run+"/").get(0); 147 EMFGraph graph = reader.readModel(fileReadFolder+"/run"+run, run + "_1.xmi");
151 148
152 //KS distance 149 //KS distance
153 KSDistance ks = new KSDistance(Domain.Yakinduum); 150 KSDistance ks = new KSDistance(Domain.Yakinduum);
diff --git a/Metrics/Metrics-Calculation/SocialNetwork_plugin/yakinduum/info.csv b/Metrics/Metrics-Calculation/SocialNetwork_plugin/yakinduum/info.csv
deleted file mode 100644
index c79bc07f..00000000
--- a/Metrics/Metrics-Calculation/SocialNetwork_plugin/yakinduum/info.csv
+++ /dev/null
@@ -1,150 +0,0 @@
11
2choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
30,0,4,0,12,6,0,0,0,8
42
5choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
60,0,5,0,12,13,4,0,0,2
73
8choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
90,0,3,1,4,9,3,0,0,0
104
11choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
120,0,1,0,7,12,3,0,0,2
135
14choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
150,0,1,0,8,7,6,0,0,2
166
17choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
180,0,5,0,11,6,4,0,1,6
197
20choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
210,0,4,2,9,10,4,1,0,2
228
23choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
240,0,3,0,9,7,5,0,0,0
259
26choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
270,0,6,0,13,8,4,0,0,10
2810
29choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
300,0,2,0,7,8,2,0,0,4
3111
32choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
330,0,2,0,8,7,3,0,0,2
3412
35choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
360,0,5,0,13,4,1,0,0,2
3713
38choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
390,0,3,1,12,20,2,0,0,2
4014
41choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
420,0,6,0,13,7,2,0,0,0
4315
44choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
450,0,2,0,15,12,3,0,2,2
4616
47choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
480,0,3,0,6,10,1,0,0,2
4917
50choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
510,0,4,1,9,7,2,0,0,4
5218
53choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
540,0,1,0,8,12,4,0,0,0
5519
56choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
570,0,4,0,10,10,1,0,0,0
5820
59choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
600,0,4,2,11,11,6,0,0,2
6121
62choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
630,0,3,1,15,12,4,1,0,2
6422
65choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
660,0,5,0,14,4,1,0,0,4
6723
68choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
690,0,3,1,8,11,4,0,0,2
7024
71choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
720,0,1,0,12,10,4,0,0,0
7325
74choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
750,0,1,1,9,1,4,0,0,2
7626
77choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
780,0,5,0,9,4,7,1,0,2
7927
80choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
810,0,3,0,11,31,0,0,0,2
8228
83choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
840,0,5,0,6,12,0,1,0,2
8529
86choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
870,0,3,1,10,10,3,0,0,0
8830
89choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
900,0,1,0,10,23,4,0,0,2
9131
92choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
930,0,4,0,4,8,3,0,0,2
9432
95choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
960,0,3,0,20,3,1,0,0,2
9733
98choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
990,0,1,1,9,11,7,0,0,2
10034
101choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1020,0,3,3,1,11,7,0,0,2
10335
104choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1050,0,2,0,7,14,6,0,0,0
10636
107choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1080,0,4,0,7,10,1,0,0,0
10937
110choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1110,0,1,0,13,8,3,0,1,2
11238
113choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1140,0,4,0,10,2,5,0,0,4
11539
116choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1170,0,3,1,11,8,5,0,0,2
11840
119choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1200,0,3,0,12,19,4,0,0,6
12141
122choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1230,0,7,0,2,14,1,2,0,2
12442
125choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1260,0,3,1,17,5,2,0,0,0
12743
128choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1290,0,4,0,10,6,2,0,0,0
13044
131choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1320,0,4,0,9,5,4,0,0,0
13345
134choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1350,0,1,0,7,13,4,0,0,2
13646
137choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1380,0,4,0,8,6,1,1,0,4
13947
140choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1410,0,5,0,8,11,6,0,0,0
14248
143choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1440,0,2,0,22,4,3,1,0,4
14549
146choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1470,0,4,0,10,5,2,0,0,2
14850
149choiceHasNoOutgoing,choiceHasNoIncoming,incomingToEntry,noStateInRegion,outgoingFromFinal,outgoingFromExit,noEntryInRegion,multipleEntryInRegion,noOutgoingTransitionFromEntry,multipleTransitionFromEntry
1500,0,3,0,13,11,2,0,0,6