PIM4Cloud

Preview:

DESCRIPTION

The PIM4Cloud modeling language has been developed by SOFTEAM and its partners during the REMICS FP7 project. In this presentation we motivate this language; describe its current state; detail an case study; and discuss about its future developments.

Citation preview

A PIM for Cloud Application Engineering

Marcos ALMEIDA

SOFTEAM - France

PIM4Cloud

What is PIM4Cloud?

UML profile for

describing IT systems deployment to cloud platforms

from an application designer perspective

Inputs from different partners

SOFTEAM

Enterprise Architecture approach and TOGAF modeling initiative

Tecnalia

SINTEF

2

Why PIM4Cloud?

Need to describe a deployment to

cloud platforms at UML level of abstraction

Why not UML deployment diagrams?

3

Too generic!

Cloud specific concerns:

• Geographical distribution?

• Public, private hosting?

• Instantiation of new computation resources?

• Packaging of Virtual Machines to host an IT system?

• Automatic deployment of Virtual Machine images?

• Generation of deployment scripts?

• Help in migration from one provider to another?

Which cloud layer should PIM4Cloud

focus on?

Infrastructure as a Service (IaaS):

a platform virtualization

environment as a service.

Platform as a Service (PaaS):

a computing platform and

solution stack as a service.

Software as a Service (SaaS): software as a service over the

Internet.

Different Issues for each layer.

4

Infrastructure as a Service

Platform as a Service

Software as

a Service

Why isn’t PIM4Cloud at PaaS/SaaS

levels? Cloud platforms at these layers are all significantly

different.

They propose different libraries, language mechanisms,

scalable data storage means.

This all is on the design level, not on the deployment

level!

5

Again, why is PIM4Cloud at IaaS

level?

Great similarities between IaaS cloud platforms:

computation and storage resources,

virtual machine images,

APIs.

IaaS technical domain is currently stable.

It is time to develop systems!

6

PIM4CLOUD: THE LANGUAGE

7

Overview

Metamodel UML Profile

8

Image Type Description

CloudApplication

Application whose architecture is based on the use of a cloud computing platform.

CloudProvider Service provider of a platform for cloud computing.

PublicCloud Public cloud computing platform, provided by an external provider.

PrivateCloud Private cloud computing platform installed and managed directly by the end user.

CloudResource Set

Collection of resources provided by a cloud computing platform.

CloudResource Generic resource provided by a cloud computing platform.

The Big Picture

9

Main Concepts

Cloud Application

Physical Infrastructure

Network Node, Switch, Workstation...

Cloud Infrastructure Providers

Public / Private Cloud

Cloud Resources

Operating Systems

Application Frameworks,

Application Components

Storage...

Resources (anything else...)

10

INTERNAL CASE STUDY : THE

MODELIO SAAS SYSTEM

11

Modelio – A Unique Modeling

Solution

Vision and Scoping

Reports & Documentation

Multi-target platforms

• code generation and reverse engineering

• Frameworks : Hibernate

APIs, 3rd party tools integration

• IDE, RME, BPM, Workflow,…

12 www.modeliosoft.com

SysML

XSD

BPMN

C#

HTML

OpenXML

SysML

XSD

BPMN

C#

HTML

OpenXML

Business & Information System

• Enterprise Architecture (EA)

• Business Process (BPMN)

System, Logical Architecture & Software Modeling

Generation BPEL, WSDL, XSD

Modelio SVN Teamwork Server

Limitations:

Requires Physical

Infrastructure

Management

Scaling...

13

Modelio SaaS: enabling multi-user

modeling in the Cloud

Model repository in the cloud

Easy instantiation

Transparent replication

High speed accessibility

High availability

Load balancing

Scalability

Features

Rich-client

Model repository

Roles management

Publish/share model web-

docs

Modeling the High-level architecture

of the Application

15

Modeling the Physical Architecture

16

Image Type

NetworkNode

NetworkConnexion

Server

WorkStation

Network

Router

Switch

Bus

Modeling High-level Software

Deployment

17

Conclusion

The PIM4Cloud language

Support the Designer of a Cloud based Application

High-level design of the deployment architecture

Current state UML Profile / Meta-model + Modeling Tool

Perspectives

Proactively developing the specification and issue PIM4Cloud RFP

at OMG

Support for code generation aimed at cloud computing platforms

Fully automated deployment

Verification and Reasoning

Big Data support…

18

More on Big Data Support

What are Big Data Systems?

Dominated by the amount of data and

the speed in which it must be processed

This is an important subset of cloud applications!

Why is it complicated?

Current platforms do not

provide real-time guarantees

New platforms: NoSQL Databases

In terms of modeling…

19

LHC (Hadron Collider)

300 Gb/s filtered 300Mb/s

SQL

Databases

NoSQL

Databases

Present

Future

Thank you very much for your attention

Your questions, please?

20