leveraging the eclipse ecosystem for the scientific community tony lam @ ansto andy götz @ esrf...

Post on 19-Dec-2015

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Leveraging the Eclipse Ecosystem for the Scientific Community

Tony Lam @ ANSTO

Andy Götz @ ESRF

ICALEPCS 2005

Australian Nuclear Science and Technology Organisation (ANSTO)

OPAL

Open Pool Australian Light-water Reactor

Neutron Scattering

Probing material structure with neutron beam

Eclipse

Eclipse

Eclipse

EclipseEclipse

Eclipse Invasion

• Eclipse Workshop

• EPICS Workshop

• TANGO Workshop

• MDA Workshop

• Oral Presentations MDA Control Systems and

Eclipse (TU1.4) Eclipse Ecosystem (TH3A.3) EPICS Office (FR2.6)

What is Eclipse?

• Official Definition:Eclipse is an open source community whose

projects are focused on providing an extensible development platform and application frameworks for building software.

• Eclipse EvolutionVersion 1.0: Open Source Java IDEVersion 2.0: Universal Tooling PlatformVersion 3.0: Platform for Rich Client Application

Eclipse as an IDE• Language supported:

Java, C/C++, C#, FORTRAN, Ruby, Python, Ada, AspectJ……you name it!!

• Agile Method Incremental build, Refactoring

• Test Driven Development JUnit Test, Automated Testing Framework

• Model Driven Software Development Open Architectureware

• Team Concurrent Development support CVS, Subversion

• Plus More ANT support, Interactive Debugger, Visual Editor…

Eclipse Overview

Platform Runtime

Workspace

Help

Team

Workbench

JFace

SWT

Eclipse Project

JavaDevelopment

Tools(JDT)

Their Tool

Your Tool

AnotherTool

Plug-inDevelopmen

tEnvironment

(PDE)

Eclipse Platform

Debug

Eclipse Ecosystem

• 30+ open source official Eclipse projects

• 1000+ commercial / open source plug-ins

• EclipsePlugins

http://eclipse-plugins.2y.net/eclipse/index.jsp

• Eclipse Plugin Central

http://www.eclipseplugincentral.com/

http://eclipse-plugins.2y.net/eclipse/index.jsp

8 Top Level Eclipse Project I

• The Eclipse Project Platform, Java, Plug-in development support

• The Eclipse Tools Project Modelling, C/C++, UML

• The Eclipse Technology Project Academic / Research, Embedded System, Communication,

Application Lifecycle management

• The Eclipse Web Tools Platform Project J2EE development

8 Top Level Eclipse Project II

• The Eclipse Test and Performance Tools Platform Project (TPTP)

• Business Intelligence and Reporting Tools Project (BIRT)

• Data Tools Platform Project (DTP)

• Device Software Development Platform (DSDP)

Eclipse Consortium

Eclipse Phenomena

• Wide range of mainstream IT industry usersOfficial use: 2% 8% in last 6 month (end of ’04)Unofficial use: 44% (end of ’04)

• Becoming a new teaching tool in universities

• Increasing popularity among the scientific community

• Eclipse’s open source model is changing the future of software industry

New Software Collaboration Model

• IDE Applications IBM Websphere Studio, JBuilder 2006, Eclipse, Palm

OS Developer Suite

• Software Testing Tools IBM Rational Application Tester, Scapa Test &

Performance Platform

Commercial Part

Open Source Platform Collaborate

Compete

Product A Product B

Eclipse RCP

• RCP = Rich Client Platform• RCP = Really Cool Product!?• Subset of Eclipse minium set of component to

build a standalone application

• A common platform for collaborationGood framework contributes up to 80% of codeBetter spend more effort on business logicCode sharing with your communityLeverage existing Eclipse plug-in to your application!!

Simple RCP

Extreme Eclipse

• BitTorrentAzureus (top sourceforge project)

• SchoolEclipseSchool management

• Gmail

• eBay

• French Wine Test

Parallel Tool Platform (PTP)

• Running and debugging application on parallel computing environment

• Collaborative effort between Los Alamos National Laboratory, Monash University, IBM, Intel, …

• Good example of cross domain open source collaboration

• Official Eclipse sponsored project

GumTree Platform• Open source application framework for building a

scientific workbench that supports data acquisition and data analysis

• Control System Neutral TANGO, EPICS, SICS…

• Visualisation Tool Neutral OpenGL, VTK, ISAW, Ptplot…

• Data Format Neutral HDF, XML, NeXus…

• Collaboration ANSTO, ESRF, ILL, PSI, and SAFARI-1 Reactor

GumTree Philosophy

• Leveraging many Java / Eclipse technologies

• Code reusability

• A common software platform in control system / experimental physics domain

• Platform for software collaboration

Breaking News!!

• Eclipse Community for the Control System Community has been Proposed!!EPICS OfficeGumTree communityExisting Eclipse based CS applicationsEclipse user group in ICALEPCS Plus the huge Eclipse community

• We should not only leverage the IDE technology, but also leverage their model for collaboration.

Where to start Eclipse

• http://www.eclipse.org

• http://www.eclipsecon.org (2005)

• http://gumtree.sourceforge.net

• Contact: tony.lam@ansto.gov.au

Eclipse History

• Started by IBM since 1998 A platform to unite IBM Visual Age products.

• IBM handed over the control to a NOT FOR PROFIT consortium, the Eclipse Foundation, at 2004 IBM also donated $40million to the Eclipse Foundation

• The Eclipse Foundation now as over 100 commercial members Each member must use Eclipse technology on at least one of

their project

Eclipse Architecture

•Software Development

•Medical Billing System

•Scientific Computing

top related