Successfully reported this slideshow.

Mdsd slides


Published on

Published in: Technology
  • Be the first to comment

Mdsd slides

  1. 1. EvilStoreBudapest University of Technology and EconomicsDepartment of Measurement and Information Systems
  2. 2. Team Tamás Csurgó  Attila Rá Oszkár Semeráth  János Tó 2
  3. 3. Project A service oriented online application store developed in model driven paradigm Project homework o Model Driven Software Development o System Integration Lead by: Fault Tolerant Systems Research Group Budapest University of Technology and Economics 3
  4. 4. Overview Administrators Validate Register Browse Register Buy Upload Download EvilStore Cost Profit ShareUsers Developers 4
  5. 5. Model Driven Development Metamodel to describe the system model o Software components of the system o Services of the components o Entities Technology: Eclipse Modeling Framework Generated editor 5
  6. 6. Model validation Models are validated with EMF-IncQuery o High-performance query engine for EMF models o Incremental queries o Developed by the Fault Tolerant Systems Research Group Validation constrains: o acyclic inheritance o unique attributes o Non-keyword names 6
  7. 7. Automatic Code Generation Generate the projects and source files by one click o Most of the code is automatically derived o Only the function bodies are to implement Java and C# Template based code generators Used technology: Xtext/Xtend 7
  8. 8. Webservice A style of software architecture for distributed systems Communication: RESTful Webservice Every business function available online by HTTP/REST interfaces 8
  9. 9. Serialisation Business entities in messages Serialisation format: JSON Done by generated code o Strongly typed method parameters Technology: o Jackson-JSON for Java o Newton-JSON for .Net 9
  10. 10. Webservice implementation Generated the components Implemented the services o method bodies: only the business logic needed Host servers: o Jersey server for OSGi o IIS server for .Net 10
  11. 11. Persistency The business entities are need to be persistent Entity classes are automatically linked to database Functions of the services are transactions. Generating database queries Database: Apache Derby Database binding: Java Persistency Api 11
  12. 12. Rule based business logic Show highlighted products Frequently changing rules define the highlighting Technology: Drools If-then rules o Popular Applications Popular applications  increase the score o Similar Users Similar users  increase the score o Age restriction Underaged user  remove from the highlight candidates 12
  13. 13. Business Logic High maintainability Frequently changing business logic Technology: BPMN2.0 o Graphic models o Easy to understand o Easy to modify 13
  14. 14. Business Logic Integrate services to workflows Automatic tasks (like a verifications) o Implemented as webservices Human interactions (like registration) Integrate business workflows to Java applications Workflows executed by JBoss jBPM5 14
  15. 15. Epilogue All the technologies are successfully integrated, the project works. Project on GitHub Fault Tolerant Systems Research Group: EMF-IncQuery: Assignment: 15