Eclipse Summit Europe 2008



Similar documents
Gyrex 0.10 Release Review

Operations and Monitoring with Spring

Best Practices for Programming Eclipse and OSGi

Building a Modular Server Platform with OSGi. Dileepa Jayakody Software Engineer SSWSO2 Inc.

Aspect Weaving for OSGi. Martin Lippert (akquinet it-agile GmbH)

Equinox above the Cloud ( - Some call it Heaven!!)

Eclipse Open Healthcare Framework

Developing modular Java applications

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

Eclipse 4 RCP application Development COURSE OUTLINE

Digital Asset Management Beyond CMIS

Providing Load Balancing and Fault Tolerance in the OSGi Service Platform

Server-side OSGi with Apache Sling. Felix Meschberger Day Management AG 124

Challenges and Pains in Mobile Apps Testing

Equinox Framework: A Happier OSGi R6 Implementation

InfoSphere Master Data Management operational server v11.x OSGi best practices and troubleshooting guide

Meister Going Beyond Maven

Apache Karaf in real life ApacheCon NA 2014

OSGi Remote Management

Module 11 Setting up Customization Environment

PARCC TECHNOLOGY ARCHITECTURE ARCHITECTURAL PRINCIPLES AND CONSTRAINTS SUMMARY

Developing Eclipse Plug-ins* Learning Objectives. Any Eclipse product is composed of plug-ins

Developing Service-Oriented Architecture Applications with OSGi

BIRT Application and BIRT Report Deployment Functional Specification

ebay : How is it a hit

Oracle im Open Source Kontext Abgrenzung GlassFish vs. JBoss und wozu noch WebLogic?

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc.

WELCOME TO Open Source Enterprise Architecture

QL Integration into Scala and Excel. Martin Dietrich

Seamless adaptive multi- cloud management of service- based applications. European Open Cloud Collaboration Workshop, May 15, 2014, Brussels

Java EE 6 development with Eclipse, Netbeans, IntelliJ and GlassFish. Ludovic Champenois Oracle Corporation

White Paper. Software Development Best Practices: Enterprise Code Portal

Converting Java EE Applications into OSGi Applications

Quattra s Cloud Vision & Framework Value

Beyond the SOA/BPM frontiers Towards a complete open cooperative environment

Java and the Internet of Things

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Service Oriented Architectures

Nuxeo, an open source platform for content-centric business applications. Stéfane Fermigier, Nuxeo Laurent Doguin, Nuxeo

Join the Lean Wave. Asanka Abeysinghe Director, Solutions Architecture. WSO2, Inc. Friday, July 22, 11

IBM InfoSphere MDM Server v9.0. Version: Demo. Page <<1/11>>

Graphical Environment Tool for Development versus Non Graphical Development Tool

Java Software Quality Tools and techniques

Exam Name: IBM InfoSphere MDM Server v9.0

Service Oriented Architecture

How to Prepare for the Upgrade to Microsoft Dynamics CRM 2013 (On-premises)

One Click deployment on the Cloud

Tecknodreams Software Consulting Pvt. Ltd. Managing IT Services in an Insurance Company

Agile Development with Jazz and Rational Team Concert

What s Cool in the SAP JVM (CON3243)

SmarteLoad Competitive Comparison

SOA Success is Not a Matter of Luck

SOA REFERENCE ARCHITECTURE: WEB TIER

Profiling and Testing with Test and Performance Tools Platform (TPTP)

CLOUD TECH SOLUTION AT INTEL INFORMATION TECHNOLOGY ICApp Platform as a Service

Leveraging the Eclipse TPTP* Agent Infrastructure

Eclipse-based Applications: Java on the Desktop Revisited

SGE & Amazon EC2. Chris Dagdigian 2008 OSGC Conference

Industry. Head of Research Service Desk Institute

SOA and API Management

Migration Eclipse 3 to Eclipse 4

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

Web Application. Presented by Stephen W. Meeley

Software infrastructure for Java development projects

SOA-14: Continuous Integration in SOA Projects Andreas Gies

Document Management. Document Management for the Agile Enterprise. AuraTech Pte Ltd

The Truth About Enterprise Mobile Security Products

Town Hall: Business Implications of Open Source OSGi Implementations Moderator: BJ Hargrave OSGi Alliance Fellow & CTO IBM Senior Technical Staff

What means extensibility?

SOACertifiedProfessional.Braindumps.S90-03A.v by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture

Coverity Services. World-class professional services, technical support and training from the Coverity development testing experts

Inside the Digital Commerce Engine. The architecture and deployment of the Elastic Path Digital Commerce Engine

Protecting Data-at-Rest with SecureZIP for DLP

GenomeSpace Architecture

System Management Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice

Escaping the Works-On-My-Machine badge Continuous Integration with PDE Build and Git

Application Compatibility Best Practices for Remote Desktop Services

SOFTWARE TESTING TRAINING COURSES CONTENTS

Systemd for Embedded Linux. Challenges and Opportunities

RhoMobile Suite. Develop applications for the next generation of business mobility

Braindumps.C questions

SAP HANA Cloud Platform

Java VM monitoring and the Health Center API. William Smith

ESB Features Comparison

Research on the Model of Enterprise Application Integration with Web Services

Adding scalability to legacy PHP web applications. Overview. Mario Valdez-Ramirez

A Study on Service Oriented Network Virtualization convergence of Cloud Computing

ON-PREMISE OR IN THE CLOUD, A SINGLE JAVA EE APPLICATION PLATFORM

Achieve Economic Synergies by Managing Your Human Capital In The Cloud

CA CPT CICS Programmers Toolkit for TCP/IP r6.1

Service-Oriented Architecture and Software Engineering

How To Write A Test Program For Eclipse (Eclipse)

The Hitchhiker's Guide to Mobile Apps Test Automation Galaxy

Easy configuration of NETCONF devices

API Architecture. for the Data Interoperability at OSU initiative

OSGi Technology for System and Network Architects DECEMBER 2013

How to Build a NOC & Help Desk Without Going Broke!

Continuous Integration The Full Monty Artifactory and Gradle. Yoav Landman & Frederic Simon

Chapter 2 SYSTEM MANAGEMENT. SYS-ED/ Computer Education Techniques, Inc.

THE OPEN SOURCE DEVELOPER REPORT

Transcription:

RT Symposium at Eclipse Summit Europe 2008 organized by Jeff McAffer (Code9) Heiko Seeberger (WeigleWilczek) Martin Lippert (it-agile) 2008 by Jeff McAffer, Heiko Seeberger, Martin Lippert; made available under the EPL v1.0 November 18th, 2008

Outline Walkthrough the answers Open-Space-kind of topic collection and selection Discuss each topic area for 30min each (3x) Fishbowl at the end Have a coffee break in between

Personal Introductions Keep it short!!! (~30sec) My name is I work for I am here because My goal for this symposium is

Maturity of runtime technologies Adoption of OSGi as base technology Programmability Robustness Completeness Cross platform / single sourcing (e.g. RAP, ercp, RCP)

Putting systems into production usage How to develop How to build Provisioning

Synergies Do not reinvent the wheel Uniformity of different runtime technologies?

The answers to our questions

What is missing? The biggest thing missing is a good set of realistic reference implementations. There is a bunch of cool technology out there, but folks are more or less left to hack their own path or beg for advice from the message board. There reference implementations need to be addressing a set of realistic scenarios, not just toy examples. It's hard to make these, and even harder to maintain them, but I think it's one of the biggest barriers to adoption.

What is missing? OSGi pretty much is feature complete from a Java perspective. Though it might be desirable to easy integration of non Java components. This would allow reuse in a world full of legacy applications and with gazillions lines of non Java code. They keyword here is probably "unified OSGi" first read on Peter Kriens' blog.

What is missing? Component model (OSGi R4.2) like Spring DM Distributed runtimes (OSGi R4.2) to solve part of OSGi Application Grouping needs True modular "per bundle" persistency support: every bundle should expose its own data model to other bundles. A persistency manager bundle using the extender model should match/resolve bundle data models constraints (PK, FK, etc) Strict mode from packages resolution: in the long run, package exported without versions boundaries specified hurts manageability JMX and OSGi (though solutions seems to be coming up)

What is missing? I, for one, do not consider the different Eclipse runtimes just one technology. From a technical point-ofview there are many commonalities, but from users point-of-view, the technologies are very different. Consequently, I don't think we have talk about "What is missing from the technology?"

What is missing? This is not really technology related but when Eclipse started some years ago, it provided a nice tooling that allows new developers to start developing new Eclipse plug-ins with minimal effort. Compared to this it is really hard to get something running from most of (not all!) the new RT projects. That being said: The RT projects deliver great technology, but in some cases the tooling could be improved and the bar could be lowered.

The three most important problems? 1. Lack of reference implementations 2. Difficulty of building and deploying an application 3. Biased toward building tooling, not runtimes. Biased toward the desktop, not headless embedded or servers.

The three most important problems? 1. Too few OSGified libraries so far (evangelism) 2. Lack of tooling for querying bundle imported/exported p services 3. Dependencies management: finding correctly OSGified bundles, managing transitive dependencies, managing the number of dependencies on large scale projects

The three most important problems? 1. Focusing on the RCP run-time, the primary problem currently seems to be in the deployment. Everybody agrees that the old update functionality did not work properly, but to get the new p2 stuff to work is difficult...

The three most important problems? 1. Complexity 2. Manageability 3. convergence of different existing tools

The three most important problems? 1. Working with Target Platforms should be much easier: I would like to use one workspace and decide "these projects belong to Target Platform x and those to y".

Biggest implementation challenges Turning non OSGi Java applications into good citizens in the OSGi world. While this is certainly nearly impossible to automate, at least excellent tooling like PDE would lower the cost for reuse.

Biggest implementation challenges Design proper bundles granularity Ensure cohesive platform while maximizing loose coupling principlesp Proper balance between unit (mock) and integration testing

Biggest implementation challenges 10.000000 foot view: All RT projects seem to be projects of its own but the question is: How do they interact, how to get the best value from them, what's the best way of integrating them from the RT user point of view?

Biggest implementation challenges there should be an easy way to generate a server application directly from an OSGI Framework Launch Configuration

Vision for the future I would like to see better adoption of OSGi and services in particular inside the implementation of Eclipse. It would be wonderful to see an RCP-like platform based purely on OSGi services.

Vision for the future Projects listed under RT should required to not just work on Equinox, but also on other (all) OSGi runtimes. Do not use Equinonx specifics. Interoperability is a strong selling point and excels broader adoption. Why lock ourself out of possible use cases/markets? This certainly requires constantly efforts during development. E.g. a build and test suite that is runtime implementation independent is a must.

Vision for the future Closer integration with dependencies management tools like Ivy or Maven Merge of Project Models (PDE, Maven, Ivy) specs On-demand deployment of bundle sets to Cloud Computing services

Vision for the future I think many of the goals of the e4 project is correct and sound, but I fear they will come up with a revolutional approach rather than a evolutional approach! Whatever we do, the current RCP based applications are so many that we cannot leave them behind. On the shorter term, I hope to see scripting in the platform! But how to do this across the run-times, I don't know.

Vision for the future The Eclipse RT provides a reliable OSGi RT implementation which enables the seamless dynamic execution of components on a big variety of devices (from embedded via handheld via desktop via serve to cloud). The Eclipse RT contains the tools for dynamic management of distributed systems including the enforcement of SLA and QoS.

Vision for the future an eclipse server project like RCP for RichClient and RAP for Web

What should projects do? Common build environment (see Bug #XXXXX) Common testing (check if everybody behaves like a good citizen) See Bug about unified testing, monthly release train that doesn't get published.

What should projects do? Orbit project to move to a repository like SpringSource repository EclipseLink to work on modular persistency support

What should projects do? g-eclipse together with Cloud Computing technologies could be hosting exemplary applications of the RT projects and give an overview about how those technologies can be used together.

What should projects do? It should be easy to combine different eclipse server technologies, to have an eclipse.server.core and then to add what you need: Riena Remoting, ECF - XMPP etc.

What confuses people? The Eclipse programming model of extension points is different from OSGi's programming model of services. This must confuse people quite a bit.

What confuses people? All the redundancy between OSGi and the early Eclipse component model: Log, EP vs. Services... Missing examples in the OSGi compendium.

What confuses people? Too many ways of doing the same thing (old APIs, new APIs, etc.)

What confuses people? Currently there seems to be many approaches from the different "incubation" projects, which makes it hard to decide which one would last.

General topics App-server-models for OSGi Deliverables of RT projects for Galileo More than just a few zips?

Position Paper from Gunnar Wagenknecht Slides inlined

RT Symposium Position Paper November 3, 2008 Blog: Mail: http://wagenknecht.org/blog/ gunnar@wagenknecht.org November 3, 2008 2008 Gunnar Wagenknecht; made available under EPL

Dynamic Elements Today OSGi Services Very dynamic, coupled to bundle start and stop Equinox Extension Registry Somewhat dynamic, coupled to bundle resolve and uninstall Forces use of singleton Equinox Adapter Manager Somewhat dynamic, coupled to bundle start and stop and bundle resolve and uninstall 2

Contextual Runtime in CloudFree Runtime execution differs based on a specified context Possible today: a bundle contributed by A is not allowed to access service B Not possible: a bundle contributed by A is not allowed to see extensions contributed by B to extension point C Need to filter extensions Not possible: adapters should be different based on configured permissions (eg., myobject.getadapter(aclass.class, acontext)) Need to filter adapters 3

Discussion Topics Is this interesting for a broader community (SaaS in general)? What is the best way to implement it? How can we support Equinox in providing those enhancements? 4

And now: Something like Open Space