Presentation is loading. Please wait.

Presentation is loading. Please wait.

Formalizing Material Flow Diagrams Robert-Jan Bijl.

Similar presentations


Presentation on theme: "Formalizing Material Flow Diagrams Robert-Jan Bijl."— Presentation transcript:

1 Formalizing Material Flow Diagrams Robert-Jan Bijl

2 Introduction The Falcon Project Vanderlande Industries Embedded Systems Institute Material Flow Diagrams ‘building plans’ for distribution centers give an idea of the material flow through setup purely pictures, mostly in Visio PAGE 223-5-2015

3 Project Goals Formalize MFD’s to give them a central role in development process create a meta-model create tooling derive artifacts from the created models Get insight in the involved processes design of meta-models evolution of meta-models (when already in use) creation/availability of tooling PAGE 323-5-2015

4 First attempts PAGE 423-5-2015

5 First Attempts (cnt’d)

6 PAGE 623-5-2015

7 The Final Idea General Hierarchy Pattern Abstract from unit type Abstract from positional information Introduce connections as part of the MFD Allow different libraries for different domains PAGE 723-5-2015

8 The Final Idea (cnt’d) / Department of Mathematics and Computer Science PAGE 823-5-2015

9 Libraries Contain information about the building blocks of an MFD unit types connector types constraints Merging a library with the abstract meta-model results in an instantiated meta-model, aimed at a (more) specific domain PAGE 923-5-2015

10 Libraries (cnt’d) / Department of Mathematics and Computer Science PAGE 1023-5-2015

11 ‘Instantiated’ Meta-Model / Department of Mathematics and Computer Science PAGE 1123-5-2015

12 Validation Formal models can be checked for correctness, consistency and other properties Using ‘Check’, a language to specify constraints that the model has to fulfill in order to be correct context MFD ERROR "The MFD must have valid MId and MName": this.MName != null && this.MName != '' && this.MId != null && this.MId != ''; context MFD ERROR "Every component must have a unique CId (no distinction in caps)": let s = getAllComponents(this): s.forAll(s1 | !s.exists(s2|(s1 != s2) && (s1.CId.toLowerCase() == s2.CId.toLowerCase()))); PAGE 1223-5-2015

13 Transformations Transforming a model conforming to meta-model A to a model conforming the meta-model B Atlas Transformation Language, ATL rule createRoot{ from a : MM!MFD to p : MM1!Planner( PName <- 'Planner' + a.MName, PId <- 'P' + a.MId ) } PAGE 1323-5-2015

14 Code Generation From a formal model we can generate all sorts of artifacts, e.g. source code Using ‘Xpand’, a statically-typed template language, part of the Eclipse M2T-project «DEFINE main FOR Planner» «LET removeSpace(PName) AS name» «FILE name + “.dot”» digraph «name» { «EXPAND createNode FOR firstNode()» «EXPAND createNodeLinks FOR firstNode()» } «ENDFILE» «ENDLET» «ENDDEFINE» PAGE 1423-5-2015

15 Further Steps Generate a graphical editor (using GMF), look into automating this Research into (co-)evolution of models en meta- models Generation of High Level Controller Software with techniques as described earlier Typing, typing, typing PAGE 1523-5-2015


Download ppt "Formalizing Material Flow Diagrams Robert-Jan Bijl."

Similar presentations


Ads by Google