31
Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Embed Size (px)

Citation preview

Page 1: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Formalizing Material Flow DiagramsHow can an MDE approach be used to improve the design process of material handling systems?

Robert-Jan Bijl

Page 2: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Contents

• The FALCON Project• Problem Statement• Model Driven Engineering• Incorporating MFDs in MDE• Stepwise metamodel design• Tools and Transformations for Formal MFDs• Conclusion

PAGE 219-04-23

Page 3: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

The FALCON project

• FALCON: Flexible Automated Logistics CONcepts

• ‘Warehouse of the future’

PAGE 319-04-23

Page 4: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Problem Statement

• How can an MDE approach be used to formalize Material Flow Diagrams, such that their role in the design process of material handling systems can be expanded?

PAGE 419-04-23

Page 5: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Model Driven Engineering

• Software Engineering discipline in which models play a central role throughout the entire development process.

• Domain Specific Languages• Used to describe the structure of the models

• Transformation Engines• Used for synthesizing the models

PAGE 519-04-23

Page 6: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Object

Meta-metamodel

Metamodel

Model

conforms to

conforms to

modeled by

conforms to

M3

M2

M0

M1

ControllerController BrewerBrewer

SelectBlend

SelectQuantity

MakeCoffee(Recipe, int)

Lifeline

Name

Lifeline

Name

ActorActor ObjectObject

Message

NameArguments

Message

NameArguments

source

target

*1

*1

Class

Name

Class

Name

Association

NameMultiplicity

Association

NameMultiplicity

isparentof

Attribute

NameType

Attribute

NameType

1 *

1

*

1

*

Model Driven Engineering

PAGE 619-04-23

Page 7: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Material Flow Diagram

PAGE 719-04-23

Page 8: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Problem Statement / Project Goals

• How can an MDE approach be used to formalize Material Flow Diagrams, such that their role in the design process of material handling systems can be expanded?

• Get insight in the involved processes• design of metamodels

• evolution of metamodels (when already in use)

• creation/availability of tooling

PAGE 819-04-23

Page 9: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

General Approach

• Domain analysis

• Construction of a metamodel

• Construction of a graphical editor

• Construction of transformations/code generators

PAGE 919-04-23

Page 10: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Domain Analysis

• Entities• Processing Units

• Transport Units

• Operators

• Floors

• Blocks

PAGE 1019-04-23

Page 11: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Material Flow Diagram

PAGE 1119-04-23

Page 12: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Domain Analysis

• Entities• Processing Units

• Transport Units

• Operators

• Floors

• Blocks

PAGE 1219-04-23

Page 13: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

First metamodel attempt

PAGE 1319-04-23

Page 14: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Domain Analysis

• Level of abstraction• Hierarchy• Connections and connectors

• Create model element per connection

• Can be used for e.g. computing metrics

PAGE 1419-04-23

Page 15: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Metamodel fragments

• Hierarchy• Connectors• Connections

PAGE 1519-04-23

Page 16: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Libraries

• Addressing an even more specific domain• One library per sub-domain

• Keeps libraries small and clear

• New concepts• Abstract Metamodel

• Libraries

• Concrete Metamodel

PAGE 1619-04-23

Page 17: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Create Metamodel

PAGE 1719-04-23

Page 18: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Implement Metamodel

• We use the Eclipse Modeling Framework• Eclipse based framework for Model Driven Engineering

• Consists of several plug-ins, to• create (meta)models

• perform Model-to-Model transformations (ATL)

• do code generation (Xpand)

• create graphical editor (GMF)

PAGE 1819-04-23

Page 19: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Implement Metamodel (cnt’d)

PAGE 1919-04-23

Page 20: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Create Graphical Editor

• Compared a few available tools

• Based on five metrics

• Results:

• Decided to go with GMF, best compatibility with what we already have

PAGE 2019-04-23

Page 21: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Graphical Editor (cnt’d)

• Created a (basic) graphical editor for the metamodel we saw a few slides back

PAGE 2119-04-23

Page 22: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Transformations and generators

• Used to actually do something with the created models

PAGE 2219-04-23

Meta-metamodel

Metamodel

Model

Object

conforms to

conforms to

modeled by

conforms to

M3

M2

M0

M1

Page 23: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Transformations

• Transforming a model conforming to metamodel A to a model conforming the metamodel B

• Atlas Transformation Language, ATL

rule createRoot{

from

a : MFDMeta!MFD

to

p : PlannerMeta!Planner(

PId <- 'P' + a.Mid,

PName <- 'Planner' + a.MName

)

}

PAGE 2319-04-23

Page 24: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

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 2419-04-23

Page 25: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Practical Application (1)

• Generation of a framework for High-Level Controller software• Using the hierarchy structure of the MFD

• Unfortunately, no implementation available• Have to settle for description of the structure

• Overview images

• Framework for source code

PAGE 2519-04-23

Page 26: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Practical Application (1)

Transformation +Generator

Formalization

PAGE 2619-04-23

Page 27: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Practical Application (2)

• Warehouse Simulator• Created by Jacques Verriet of ESI

• Simulates throughput, latency

• Generate input, based on an MFD-model• Not a 100% mapping

• Nice example of what might be possible

• Combination of Java and Xpand• Read editor files to create an layout model

• Traverse model to generate simulator input

PAGE 2719-04-23

Page 28: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Practical Application (2)

PAGE 2819-04-23

Page 29: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Conclusions

• Managed to formalize MFDs though an MDE approach

• Introduced a Library structure to distinguish between subdomains

• Have working tools to create and edit MFDs• Connected to running projects within VI

PAGE 2919-04-23

Page 30: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Future Work

• Automatic generation of the graphical editor• Automatic generation of a test suite• Combining the topology provided by an MFD with

(known) behavior of the individual parts, to create one big behavioral model for a transport system

PAGE 3019-04-23

Page 31: Formalizing Material Flow Diagrams How can an MDE approach be used to improve the design process of material handling systems? Robert-Jan Bijl

Final Presentation

• Tuesday, April 13th, 10.00h• HG 6.29

PAGE 3119-04-23