Mdsd slides

Post on 21-Jan-2015

454 views 0 download

Tags:

description

 

Transcript of Mdsd slides

Budapest University of Technology and EconomicsDepartment of Measurement and Information Systems

EvilStore

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

Overview

4

Users

Administrators

Developers

EvilStore

RegisterUpload

Validate

RegisterBrowseBuyDownload

Profit ShareCost

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

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

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

Webservice A style of software architecture for distributed

systems Communication: RESTful Webservice Every business function available online by

HTTP/REST interfaces

8

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

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

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

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

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

o Graphic modelso Easy to understando Easy to modify

13

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

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