Presentation is loading. Please wait.

Presentation is loading. Please wait.

The NeXus Reloaded Tony Lam Bragg Institute Data Acquisition Team NOBUGS 06.

Similar presentations


Presentation on theme: "The NeXus Reloaded Tony Lam Bragg Institute Data Acquisition Team NOBUGS 06."— Presentation transcript:

1 The NeXus Reloaded Tony Lam Bragg Institute Data Acquisition Team NOBUGS 06

2 Face the Technical Challenges My users have never satisfied!  Gap between user domain and technology domain My system is too hard to maintain!  Technology is changing too fast!  Bad software design  Integration issue of legacy systems  The drive to reduce complexity is at the heart of software development [McConnell 2004] 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

3 Service Oriented Architecture Model Driven Development I hate buzz!!! Agile Rocks! Aspect Oriented Programming

4 Unifying Foundation Ivar Jacobson (co-founder of UML and RUP) has summarised into five “best technical practices”  Component Based  Model Based  Iterative and Incremental  Use Case Driven  Architecture Centric 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

5 Model Based Approach Understand the problem domain  Analysis and Simulation Communicate with stakeholders  Talk in their language! Inject expert knowledge into the design  Domain knowledge is the key assert of your system! 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

6 NeXus as Domain Model NeXus data: snapshot of instrument state A skeleton of the scientific domain model (cf engineering domain) Unifies data acquisition and data analysis 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

7 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Grand Unified Model (GUM)

8 NeXus based GUM 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Component based Well defined interfaces Model driven (NeXus)

9 GUM Server Infrastructure Instrument Control  Model Server  Wraps devices in control system to “models” Experiment Control  Batch Manager  Batched operation on the model server  Support command line control via network Archive & Retrieval  Data Access Manager  Retrieves data set from server in NeXus object! 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

10 Model Server EJB3 + Hibernate for persistence Multi-client event notification 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Common architectural design pattern in OO analysis and design: BCE(D) NeXus component / instrument model Model ServerClient *cf Model-View-Controller pattern

11 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Client-Server System

12 GumTree Reloaded 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration NOBUGS 04NOBUGS 06

13 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Plug-in Loader (OSGi) Plug-in Based Architecture Application Plug-in = Extensions Plug-ins Extensible ApplicationGumTree

14 Instrument specific logic GumTree Rich Client 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Cross domain application framework ( Eclipse RCP ) Scientific specific application framework ( GumTree Platform ) Nexus domain specific application framework ( GumNIX ) Cross OS framework ( Java VM )

15 Integrated Scientific Experiment Environment (ISEE) A generic scientific workbench  Based on Eclipse Rich Client Platform (RCP)  A reusable platform for different type of scientific applications (eg DANSE, Pipestrain) Additional scientific support:  SDO Data conversion  Visualisation Toolkit  Scripting within application  Collaboratory (Collaborative Laboratory Environment) 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

16 Service Data Object Service Data Object (SDO) is all about the Data Transfer Object (DTO) pattern for SOA It’s proposed by IBM and BEA, and now it has become JSR-235 It is widely used to propagate data across different tiers in its J2EE architecture (runs on SOAP) An intermediated format to convert internal application data from one domain to another (via EMF implementation) 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

17 Data Visualisation GumTree is capable of displaying 1D, 2D and 3D data with various rendering engine:  SWT, OpenGL, Swing / AWT based plot (ISAW), ActiveX,.NET 1D 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

18

19

20 GumTree NeXus Instrument Extension (GumNIX) 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration Instrument Control Data AnalysisData Access Experiment Workflow

21 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

22 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration

23 Dawn of A New Era http://gumtree.sf.net gumtree@googlegroups.com 1. Practices for Building Quality Software2. NeXus as Domain Model 3. Grand Unified Model Returns4. GUM Server Infrastructure 5. GumTree ISEE Workbench6. Collaboration


Download ppt "The NeXus Reloaded Tony Lam Bragg Institute Data Acquisition Team NOBUGS 06."

Similar presentations


Ads by Google