Leveraging the Eclipse Ecosystem for the Scientific ... - icalepcs 2005

saucecopywriterInternet και Εφαρμογές Web

2 Φεβ 2013 (πριν από 4 χρόνια και 6 μήνες)

150 εμφανίσεις

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

Eclipse

Eclipse

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 Evolution


Version 1.0:
Open Source Java IDE


Version 2.0:
Universal Tooling Platform


Version 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

Java

Development

Tools

(JDT)

Their

Tool

Your

Tool

Another

Tool

Plug
-
in

Development

Environment

(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 users


Official 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 collaboration


Good framework contributes up to 80% of code


Better spend more effort on business logic


Code sharing with your community


Leverage existing Eclipse plug
-
in to your application!!


Simple RCP

Extreme Eclipse


BitTorrent


Azureus (top sourceforge project)


SchoolEclipse


School 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 Office


GumTree community


Existing Eclipse based CS applications


Eclipse 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