mdsd slides

15
Budapest University of Technology and Economics Department of Measurement and Information EvilStore

Upload: tamas-csurgo

Post on 21-Jan-2015

457 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Mdsd slides

Budapest University of Technology and EconomicsDepartment of Measurement and Information Systems

EvilStore

Page 3: Mdsd slides

Project A service oriented online application store

developed in model driven paradigm Project homeworkoModel Driven Software DevelopmentoSystem Integration

Lead by:Fault Tolerant Systems Research Grouphttp://www.inf.mit.bme.hu/en Budapest University of Technology and Economics

3

Page 4: Mdsd slides

Overview

4

Users

Administrators

Developers

EvilStore

RegisterUpload

Validate

RegisterBrowseBuyDownload

Profit ShareCost

Page 5: Mdsd slides

Model Driven Development Metamodel to describe the system model

o Software components of the systemo Services of the componentso Entities

Technology:Eclipse Modeling Framework

Generatededitor

5

Page 6: Mdsd slides

Model validation Models are validated with EMF-IncQuery

http://viatra.inf.mit.bme.hu/incqueryo High-performance query engine for EMF modelso Incremental querieso Developed by the

Fault Tolerant Systems Research Group Validation constrains:

o acyclic inheritanceo unique attributeso Non-keyword names

6

Page 7: Mdsd slides

Automatic Code Generation Generate the projects and source files

by one clickoMost of the code is automatically derivedo Only the function bodies are to implement

Java and C# Template based

code generators Used technology:

Xtext/Xtend

7

Page 8: Mdsd slides

Webservice A style of software architecture for distributed

systems Communication: RESTful Webservice Every business function available online by

HTTP/REST interfaces

8

Page 9: Mdsd slides

Serialisation Business entities in messages Serialisation format: JSON Done by generated code

o Strongly typed method parameters Technology:

o Jackson-JSON for Javao Newton-JSON for .Net

9

Page 10: Mdsd slides

Webservice implementation Generated the components Implemented the services

omethod bodies: only the business logic needed Host servers:

o Jersey server for OSGio IIS server for .Net

10

Page 11: Mdsd slides

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

Page 12: Mdsd slides

Rule based business logic Show highlighted products Frequently changing rules define the highlighting Technology: Drools If-then rules

o Popular ApplicationsPopular applications increase the score

o Similar UsersSimilar users increase the score

o Age restrictionUnderaged user remove from the highlight candidates

12

Page 13: Mdsd slides

Business Logic High maintainability Frequently changing business logic Technology: BPMN2.0

o Graphic modelso Easy to understando Easy to modify

13

Page 14: Mdsd slides

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

Page 15: Mdsd slides

Epilogue All the technologies are successfully integrated,

the project works.

Project on GitHubhttps://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