Supporting co-evolution of design and source codescg.unibe.ch/files/e7... · Supporting...
Transcript of Supporting co-evolution of design and source codescg.unibe.ch/files/e7... · Supporting...
-
Supporting co-evolution of design and source code
Andy [email protected]
Monday 11 May 2009
-
SATToSE 2009
Various things
• IntensiVE• Program querying• Regularity mining• Smart annotations• Analyzing Cobol with Cognac
2Monday 11 May 2009
-
SATToSE 2009
Various things
• IntensiVE• Program querying• Regularity mining• Smart annotations• Analyzing Cobol with Cognac
3Monday 11 May 2009
-
SATToSE 2009
Smart Annotations
4Monday 11 May 2009
-
SATToSE 2009
Java annotations
5
public class AccessorExample { public Integer my_field; public Integer my_field2; @Getter public Integer getMy_field() { return my_field; } public Integer getMy_field2() { return my_field2; } @Getter public Integer returnField2() { return my_field2; } @Getter public Integer getNothing() { return null; }}
Monday 11 May 2009
-
SATToSE 2009
Java annotations
5
OK
Missing!!!
OK
Incorrect!!!
public class AccessorExample { public Integer my_field; public Integer my_field2; @Getter public Integer getMy_field() { return my_field; } public Integer getMy_field2() { return my_field2; } @Getter public Integer returnField2() { return my_field2; } @Getter public Integer getNothing() { return null; }}
Monday 11 May 2009
-
SATToSE 2009
Rules
• RULE1: Accessors should start with the prefix ‘get’
• RULE2: Accessors should return the value of a field
6Monday 11 May 2009
-
SATToSE 2009
Smart annotation
7
@Target(ElementType.METHOD)public @interface Getter { @Necessary public static final String RULE = "?item methodDeclarationHasName: ?name, " + "['get*' match: ?name asString]"; @Sufficient public static final String RULE2 = "?item isMethodDeclaration, ?class definesMethod: ?item, " + "?class definesVariable: ?variable, " + "?item returns: ?variable";}
Monday 11 May 2009
-
SATToSE 2009
Smart annotation
7
@Target(ElementType.METHOD)public @interface Getter { @Necessary public static final String RULE = "?item methodDeclarationHasName: ?name, " + "['get*' match: ?name asString]"; @Sufficient public static final String RULE2 = "?item isMethodDeclaration, ?class definesMethod: ?item, " + "?class definesVariable: ?variable, " + "?item returns: ?variable";}
Annotation => Rule
Annotation Rule
Monday 11 May 2009
-
SATToSE 2009
Eclipse integration
8
Inside
Monday 11 May 2009
-
SATToSE 2009
Exceptions
9
public class AccessorExample { public Integer my_field; public Integer my_field2; @Getter public Integer getMy_field() { return my_field; } @DoesNotApply(Getter.class) public Integer getMy_field2() { return my_field2; } @Getter public Integer returnField2() { return my_field2; } @Getter @DoesApply(Getter.class) public Integer getNothing() { return null; }}
Monday 11 May 2009
-
SATToSE 2009
Exceptions
9
public class AccessorExample { public Integer my_field; public Integer my_field2; @Getter public Integer getMy_field() { return my_field; } @DoesNotApply(Getter.class) public Integer getMy_field2() { return my_field2; } @Getter public Integer returnField2() { return my_field2; } @Getter @DoesApply(Getter.class) public Integer getNothing() { return null; }}
Explicit exceptions
Monday 11 May 2009
-
SATToSE 2009
Cognac
10Monday 11 May 2009
-
SATToSE 2009
Context• Industrial case study with inno.com• Average-sized Cobol system (500 KLoc)• Verify design
11Monday 11 May 2009
-
SATToSE 2009
Context• Industrial case study with inno.com• Average-sized Cobol system (500 KLoc)• Verify design
11
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
1. outsourcing???
Monday 11 May 2009
-
SATToSE 2009
Context• Industrial case study with inno.com• Average-sized Cobol system (500 KLoc)• Verify design
11
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
1. outsourcing???fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
2. iterations???
Monday 11 May 2009
-
SATToSE 2009
Context• Industrial case study with inno.com• Average-sized Cobol system (500 KLoc)• Verify design
11
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
1. outsourcing???fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
2. iterations???
...
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
???
2005 2008 2010 2015 2030
3. lifespan
Monday 11 May 2009
-
SATToSE 2009
Challenges
• Analyzing Cobol code• Parsing• More than structural information
• Performance• Extensibility• Various kinds of design rules
12Monday 11 May 2009
-
SATToSE 2009
Cognac
• Declarative meta programming to verify design wrt. Cobol code
• Built on top of IntensiVE• Technically:• Island-based parser• Library of logic predicates• Basic static analyses
13Monday 11 May 2009
-
SATToSE 2009
Example: Copybook- linkage
14
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM5fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM10
CALL ‘Program10’ using PARAM
Monday 11 May 2009
-
SATToSE 2009
Example: Copybook- linkage
14
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM5fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM10
CALL ‘Program10’ using PARAM
???Same data definition???
Monday 11 May 2009
-
SATToSE 2009
Example: Copybook- linkage
14
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM5fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM10
CALL ‘Program10’ using PARAM
???Same data definition???
COPY ‘COPYBOOK1’COPYBOOK1
01 PARAM.....
COPY ‘COPYBOOK1’
Monday 11 May 2009
-
SATToSE 2009
Example: Copybook- linkage
14
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM5fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew
efewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
fefewfewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew fewfewefewfewfew efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew ewfew
fewfewfew efewfewfewfewfew fewfewefwefewfe efewfewfewfewfew efewfewfewfewfew efewfewfewfewfew wfewfew
PROGRAM10
CALL ‘Program10’ using PARAM
???Same data definition???
COPY ‘COPYBOOK1’COPYBOOK1
01 PARAM.....
COPY ‘COPYBOOK1’
Design rule: A caller should include the copybook used in the linkage section of
the callee
Monday 11 May 2009
-
SATToSE 2009
Copybook -linkage
15
Called programs
?program programCallsProgram: ?calledProgram
?program programWithCopyStatement: ?copy, ?copy copyStatementInLinkageSection, ?copy copyStatementIncludesCopybook: ?copybook
Program with copybook
Monday 11 May 2009
-
SATToSE 2009
Copybook -linkage
15
Called programs
?program programCallsProgram: ?calledProgram
?program programWithCopyStatement: ?copy, ?copy copyStatementInLinkageSection, ?copy copyStatementIncludesCopybook: ?copybook
Program with copybook
∀ ?caller ∈ Called programs : ∃ ?corresponding ∈ Program with copybook : ?caller.calledProgram equals: ?corresponding.program, ?caller.program programIncludesCopybook: ?corresponding.copybook
∀
∃
Monday 11 May 2009
-
SATToSE 2009
Copybook -linkage
15
Called programs
?program programCallsProgram: ?calledProgram
?program programWithCopyStatement: ?copy, ?copy copyStatementInLinkageSection, ?copy copyStatementIncludesCopybook: ?copybook
Program with copybook
∀ ?caller ∈ Called programs : ∃ ?corresponding ∈ Program with copybook : ?caller.calledProgram equals: ?corresponding.program, ?caller.program programIncludesCopybook: ?corresponding.copybook
∀
∃
Monday 11 May 2009
-
SATToSE 2009
Rational Rose doc.
16Monday 11 May 2009
-
SATToSE 2009
Verifying the doc.
17Monday 11 May 2009