Upload
uenginesolutions
View
1.265
Download
1
Tags:
Embed Size (px)
Citation preview
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