Your SlideShare is downloading. ×
Modeling Environment for Product Configuration in an ERP System
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Modeling Environment for Product Configuration in an ERP System

1,090
views

Published on

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,090
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
52
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Welcome and thank you all for coming. My name is Joao Magalhães and I’m here to present my traineeship project titled: Modeling Environment for Product Configuration in an ERP System. This project itself has been developed at the Microsoft Development Center Copenhagen (optional) under supervision of Per Vikkelsøe and António Coelho from FEUP
  • Transcript

    • 1. Modeling Environment for Product Configuration in an ERP System LEIC traineeship at Microsoft Development Center Copenhagen Author: João Filipe Gama de Magalhães Supervisor at FEUP: António Coelho Supervisor at Microsoft: Per Vikkelsøe September 2007
    • 2. Overview
      • Introduction
      • Problem Description
      • Developed Solution
      • Demo
      • Conclusions
      • Future Work
      • Questions
      Modeling Environment for Product Configuration in an ERP System September 2007
    • 3. Introduction
      • Founded in 1975 by Bill Gates and Paul Allen with the BASIC programming language for MITS Altair
      • Biggest software company worldwide
      • Employs more than 75 thousand persons
      • Flagship products include Windows OS and Office suite
      • Has a complete set of different products, ranging from ERP to Games, Books, Hardware, etc.
      Modeling Environment for Product Configuration in an ERP System September 2007 Microsoft Corporation
    • 4. Introduction
      • Located in Vedbæk (Outskirts of Copenhagen)
      • Member of Microsoft Business Division
      • Supply chain excellence center
        • Microsoft Dynamics AX
        • ERP system targeted at mid-large sized companies
        • Originally developed by Damgaard Data A/S
        • Current version is 4.0 the next version is planed for 2008
        • The business logic development uses the proprietary X++ language
      Modeling Environment for Product Configuration in an ERP System September 2007 Microsoft Development Center Copenhagen
    • 5. Introduction
      • Way to personalize products for customers
      • Base for the production order
      • The outputs are the BOM and the Routes
      • Divided into modeling and configuration parts
      Modeling Environment for Product Configuration in an ERP System September 2007 Product Configuration I
    • 6. Introduction Modeling Environment for Product Configuration in an ERP System September 2007 Product Configuration II base model configured model
    • 7. Introduction Modeling Environment for Product Configuration in an ERP System September 2007 Product Configuration III Product Modeler Product Configurator
    • 8. Introduction Modeling Environment for Product Configuration in an ERP System September 2007 Microsoft Dynamics AX Product Builder
      • Current solution for product configuration in the Microsoft Dynamics AX ERP system
      • Integrates to other AX’s functional areas: Enterprise Portal, Master Planning, Production and Sales and Purchasing
      • Rule based system
    • 9. Problem Description Modeling Environment for Product Configuration in an ERP System September 2007 Objectives I
      • Product Modeling language (Pml)
      • Language with declarative syntax
      • Objective oriented (OO) compliant language
      • Syntax Highlighting and Code Completion services
    • 10. Problem Description Modeling Environment for Product Configuration in an ERP System September 2007 Objectives II
      • Product configurator compatible with Pml models
      • Simple API for external configuration usage
      • Configurator capable of use the Object Orientation (OO) capabilities provided by the Pml language
    • 11. Problem Description
      • Pml Compiler – provides support for model compilation
      • Pml Compiler Tools – gives support for syntax highlighting and code completion, based on the same idea behind Microsoft’s “Intellisense” technology
      • Interpretation tools – represents the set of tools for interpretation of the compiled models
      • Adapter Abstraction Layer – loads the adapters using reflection, allowing the usage of multiple constraint solvers
      • Configuration Engine – coordinates the configuration process and provides the API for configuration
      Modeling Environment for Product Configuration in an ERP System September 2007 The Pml Framework
    • 12. Developed Solution
      • Defines the product block as the base block, equivalent to class, extension support
      • Supports the definition of the BOM and Route structures
      • The inheritance on the product variables, BOM structure, Route structure and constraints
      • Contains namespaces for context division
      Modeling Environment for Product Configuration in an ERP System September 2007 The Pml Language
    • 13. Developed Solution Modeling Environment for Product Configuration in an ERP System September 2007 The Modeling Environment Compiler Tools Pml Compiler Client Code Generator Lexical Analyzer Semantic Analyzer Syntactical Analyzer Pml Code Tools Syntax Highlighter Code Completer AST
    • 14. Developed Solution
      • Semantic analyzer based in a recursive descent of the Pml AST using C# code
      • Multiple code output (XPML, XCML), but it possible to add others
      Modeling Environment for Product Configuration in an ERP System September 2007 The Compiler
      • The lexical and the syntactical analyzers are based respectively in the GPLEX and GPPG solutions
    • 15. Developed Solution
      • Provide simple way to produce and compile Pml code
      • Use the current location of the caret to send information to the client
      • Rely on the context information to provide accurate completion data
      • Based in dictionaries to provide a fast and responsive system
      Modeling Environment for Product Configuration in an ERP System September 2007 The Compiler Tools
    • 16. Developed Solution Modeling Environment for Product Configuration in an ERP System September 2007 The Configuration Environment Configuration Engine Adapter Abstraction Layer Microsoft Constraint Solver Adapter Microsoft Parallel Constraint Solver Adapter Interpretation Tools Client API Microsoft Parallel Constraint Solver Microsoft Constraint Solver AST Adapters
    • 17. Developed Solution Modeling Environment for Product Configuration in an ERP System September 2007 The Interpretation Tools
      • Supports both XCML and XPML model formats
      • Uses the .NET XML parsing library (DOM based)
      • Outputs a simple AST used by the various visitors
      • Faster than interpreting Pml code directly
    • 18. Developed Solution
      • Provides the necessary support to load multiple constraint solvers
      • .NET Reflection based
      • “ Uses” the Adapter pattern to load the adapters
      • Requires the Visitor pattern to adapt the AST contents to the selected solver
      • Reference implementation contains support for two Microsoft based constraint solvers
      Modeling Environment for Product Configuration in an ERP System September 2007 The Adapter Abstraction Layer
    • 19. Developed Solution Modeling Environment for Product Configuration in an ERP System September 2007 The Configuration Engine
      • Main entry point for the configuration process
      • Controls the interpretation of the compiled models
      • Calls the AAL for loading and running of the various constraint solvers
      • Controls the external API calls
    • 20.
      • Bicycle factory based problem
      • Configuring a bike to fulfill the customer requirements for a customized bicycle
      • Configuration of the bicycle according to:
        • Model type – Mountain, City, BMX
        • Frame Type – Steel, Titanium, Aluminium, Carbon
        • Crank Type – Silver, Steel, Titanium, Aluminium, Carbon, CarbonAluminium
        • Grip Type – Ergonomic, City, Mountain
        • Pedal Type – Steel, Titanium, Aluminium, Carbon
        • Seat Type – Gel, Leather, Sheep, Silver
        • Wheels and Tyres
      Demo Modeling Environment for Product Configuration in an ERP System September 2007
    • 21. Demo Modeling Environment for Product Configuration in an ERP System September 2007 Demo
    • 22.
      • The proposed project has been successfully implemented
      • All the main requirements have been fulfilled
      • Integration with André’s project has been completely achieved
      • Cooperation with the members of the Microsoft campus has been critical to the success of the project
      Conclusions Modeling Environment for Product Configuration in an ERP System September 2007
    • 23.
      • Debugger
      • Documentation generation
      • Increased support for complex BOM and Routes
      • Better use of Metadata
      • Unit Test support
      • Model obfuscation / encryption
      Future Work Modeling Environment for Product Configuration in an ERP System September 2007
    • 24.
      • Questions
      Questions Modeling Environment for Product Configuration in an ERP System September 2007