15
The Open Virtual Unified Office OpenVUO Daniele Favretto [email protected] Authors: Fulvio Bille', Daniele Favretto, Roberto Pugliese, Michele Turcinovich

Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified OfficeOpenVUO

Daniele Favretto

[email protected]

Authors: Fulvio Bille', Daniele Favretto, Roberto Pugliese, Michele Turcinovich

Page 2: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 2

Agenda

• The OpenVUO– Goal– Technology– Status

• The submission workflow– The remote submission

Page 3: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 3

OpenVUO goals

• Move to open source technology• Implement functionality of

export/import of beamtime application

• Implement webservices to interchange data between the other similar applications

• The migration must be smoothly

Page 4: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 4

The OpenVUO platform

• Portlet container: gridsphere

• Behind: apache/tomcat• Database:

Oracle/PostgreSQL• Language: java• Rendering: XML/XSLT

Page 5: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 5

OpenVUO Architecture

PostgresOracleMySQL

WebBrowser WebServicesClient

JDBCTOMCAT

GridSPHERE AXISV R E (xml, xsl, xslt)

OpenVUOWorkflow Engine

Oracle 9i

Apache +mod_plsql +

Pl/sql +Java +

Python + …

WebBrowser

IA-SFS/JRA1-WP1

Page 6: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 6

The iuulib

• First version was in Pl/sql

• Now we have the java version– The information can

be stored in a table (compatible with pl/sql version)

– The information can be stored in a XML file

Page 7: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 7

OpenUserOffice a testbed for IA-SFS/JRA1-WP1

• The OpenUserOffice will become a proof of concept and a testbed for WP1

• Using webservices technology, facilities with an already working application need only to implement a set of webservices for compatibility

Page 8: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 8

Interchanging data

• Define a set of common minimal information need to submit a proposals.

• Define a XML to store this information• What can I do with this XML?

– The user can save the data and then submit the proposal later to Elettra but also to another facility

– The OpenVUO can send or receive data via webservices to a similar system of another facility.

Page 9: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 9

Webservice definition

• Authentication• List of beamline/experimental

stations• Remote submission

– Upload proposal XML

Page 10: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 10

User OpenVUO 1(e.g. Elettra)

OpenVUO 2(e.g. MaxLab)

webservices

Remote submission using webservice (timetable)

select experimentgetBeamlineList()

view list

remote submissionsubmitProposal()

local submit

remote editing (specifics on OpenVUO 2)

Page 11: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 11

Smoothly porting• Some VUO figures:

– 75k rows of code pl/sql– 6k rows of code python/java/C– 184 tables– 8105 users– 6060 proposals/2096 publications/3320 access

requests• Is not possible to port all the software at the

same time• The users are using the VUO and it is not

acceptable a downtime

Page 12: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 12

VUO-tunnel

• Not all the applications are ported into the OpenVUO

• VUO tunnel– Allow to access in the OpenVUO all the functionality

of the VUO that are written in pl/sql and that are not already ported to java.

– Using this technique it is not necessary to migrate in one shot all the software, but the migration can be done gradually.

Page 13: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 13

Beamtime applications proposals

• This is the main section of the OpenVUO• Already ported in java• Other application (Projects and visits)

Page 14: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 14

Future technologies

• Workflow engine – The usage of the VUO also for internal

application need to go over the simple state machine model and move to a “workflow engine” to handle complex activities

Page 15: Virtual User Office · – 6k rows of code python/java/C – 184 tables – 8105 users – 6060 proposals/2096 publications/3320 access requests • Is not possible to port all the

The Open Virtual Unified Office

9/10/2008 [email protected] 15

Conclusion• The OpenVUO is the open source version of the VUO

financed by the IA-SFS FP6 project.• The IA-SFS/JRA1-WP1 define also a XML format for

download/upload beamtime application requests.• A set of webservices will allow the integration between

the VUO and other similar systems• This platform it is used also for other intranet application

– Projects– …