introduction to uclipse platform

Post on 10-May-2015

1.266 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

The only one Open Source Cloud IDE and Business PaaS Platform

Introducing uClipse Project

• No Client Footprint• Shortened Time-2-Market

• Easy Access to the Knowledge Base

Cloud IDE

PaaS + Cloud IDE Approach

• Heavy and Expensive Dev. Client• Long Time-2-Market

• Hardly Access to the knowledge Base

SCM BPM/BRE

Database

ALM

Client-sideIDE

SNS

Database

ALM

SCM

PaaS and Cloud IDE Integration

Strategy Map of Nice B-PaaS

A Nice B-PaaS Platform

Open SourceOpen Architecture

Security & Quality

Model-DrivenTooling

Motivation

Portability Governance

Cloud ALMAPM

UX

Social Coding

GamificationRIABuilders

N-ScreenSupport

BPM/BRE/BI

Cloud IDE

uClipse Cloud IDE

Cloud IDE

Social IDE

Smart IDE

• Lower the learning-curves

• Shortens Time-2-Market

•Social Marketing Strategy

• Developer Moti-vation / Stimula-

tion

Boost knowledge Sharing

[for developers] More Focus on

Idea Implementa-tion

[for PaaS providers]Platform

Maketing Tool

[for Private Cloud]• Efficiently share

developers’ Know-how

• Easy Gover-nance

Cloud IDE is a key enabler to successful PaaS platform

Why uClipse? Wanna be an

eclipse sub-project

Multi-Tenancy SupportAuto-ScalingMetering / Logging / Authentication

Process Codi PaaS Platform

SaaS Security Framework

Application Platform

Integration Platform

User Interface

Framework

Model Platform

Common Component

PaaSIDE

PaaSPortal

Your App

Social CodingN-Screen Web

Framework

BPM, Business Rules, Web Service Integration

Databases and fastcat search engine

BPM-based ALM

uEngine Open Source Asset

Your App Your App

uClipse is a Business PaaS Platform Inte-grated

Scenario – for PaaS Platform Providers

Social Cloud IDE works for a Marketing Tool of your platform

Developers Sales / InvestorArchitectDesigners

Bridges from

Social Network to your Platform

Cloud APIs

Social Cloud IDE

SNS (e.g. Facebook, Google+)

Your Platform

• MongoDB Online Shell (No-SQL DB)

Mongo DB provides the shell online to easy the newbies to understand their platform with no installation.

• Play My Code

Play My Code enables game de-velopers to access online IDE, re-source designer to build, share, and service games online

Examples

Scenario – Smart IDE

Team’s knowledge easily shared by referencing the error messages

Bug Occurs!

Search Team Knowledge

Real-timeCoaching

1

2

3

Screenshots

Coding and Run-ning

- Java Classes - HTML - JavaScript - Entity/DAO - Business Processes and Rules

Security/Metering - Detecting Infinite-loop - System Resource - Metering API Call-count

Code AssistStatic-Code Analy-

sis

Import from Cloud - Component Market - Web Service Import - Database

Cloud IDE

Page 9

▼ Manageable Object Types

▼ Database Objects

Accessing Component Store by

code assist.

Web-app-basedSimulator

PhoneGap API wrapper

(Accerlometer , Location , Ser-vice, Camera, Vibra-tion)

Mobile Simulation

Page 10

Figure. Phonegap-based Mobile App Development

Screenshots

Web-based Business Process De-signer and Rule Designer

Integrated with

uEngine BPMS/BRMS

Screenshots

Model-Platform BPM/BRE

Page 11

Figure. Integration with Business Process Management Platform

Collective-Intelli-gence

Shipped with Facebook App to lower the partici-pation cost

Guided Tour for Easy Understand-ing to use the online IDE

Screenshots

Social IDE

Page 12

Criteria uClipse exo IDE Cloud9 IDE Orion

License EPL/LGPLCommericial

/Saas (Free)

Commericial

/Saas (Free)EPL

Online Coding O O O O

Compilation O O O(node.js) X

Running O ?(need Paas) O(node.js) X

Debugging O(LGPL) X O(node.js) X

SCM SVN/Git Git Git Git

Process Modeling O(LGPL) X X O

Entity Modeling O(LGPL) X X X

Rule Modeling O(LGPL) X X X

Layout Editor O(LGPL) X X X

Security O ?(need Paas) O X

Social Coding Chatting/FB ? Chatting X

ALMCode Review/CI/

Scrum

Code Review/CI

(need Paas)Code Review X

Some Comparison

Architecture – Java!

• 1. Isolation:Easy to restarting and handling the VM-level and also easy to class loader isolation to share same Machine for multiple Users.

• 2. Multi-Language Support:Java is it-self a platform that provides multiple-languages to access the platform services. Such as the BSF (Bean Shell Scripting Framwork )enables Ruby, Javascript, Python, VBScript…

• 3. Dynamic Code Insertion or Metering is easyUsing BCI, AOP

Architecture – Security Framework

Security Framework

CodiClassLoader (extends Janino + javax.ClassCompler)(Dynamic Class Loading)

CodiDwrServlet (Http-Request Gateway)

Compiled User App(class files In-memory or file: op-tional)

Cloud IDE

User App Source (*.java)

PMD Static-Code-Analysis

(Code integrity check)

<< Build-Time >> << Run-time >>

Memory or File Compilation

Uploaded Libraries(jar)

SecurityManager (Package and System Level Security Check)

System Level Security and Metering via BCI (Byte-Code Instrumentation; Javassist was used)

Architecture – Supporting Social Coding

Considerations on social coding Level of openness•Followers (team) on the spec. •Friends of the followers on the spec.•All Users in the internet

Security Consideration•Access level managementon Crowd Sourcing (e.g. coding is allowed but the access to the database model is not for the crowd)

How to test and pick from the large sub-mission form the Crowd•Test Automation (using JUnit)

Compensation• Evaluation/Compensation Process Automation

Values Summary• Lower the development tools,

hardware and governance cost

• Social Coding Innovation – R&D Cost Sharing

• Single Architecture Instance– Reuse and easily propagate SOA Ma-turity Level

top related