Successfully reported this slideshow.

Mdsd slides

785 views

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ádicsurnyak@gmail.com radi.attila@gmail.com Oszkár Semeráth  János Tóthgraybonedancer@gmail.com totti001@gmail.com 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 http://www.inf.mit.bme.hu/en 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 http://viatra.inf.mit.bme.hu/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 https://github.com/csurgotamas/Evilstore/wiki/Evilstore Fault Tolerant Systems Research Group: http://www.inf.mit.bme.hu/en EMF-IncQuery: http://viatra.inf.mit.bme.hu/incquery Assignment: http://www.inf.mit.bme.hu/edu/courses/mdsd/homework 15

×