D21 Evaluation and Assessment of the SODIUM Platform ... - ATC
D21 Evaluation and Assessment of the SODIUM Platform ... - ATC
D21 Evaluation and Assessment of the SODIUM Platform ... - ATC
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
SIXTH FRAMEWORK PROGRAMME<br />
INFORMATION SOCIETY TECHNOLOGIES<br />
IST-FP6-004559 <strong>SODIUM</strong><br />
“Service Oriented Development In a Unified framework”<br />
<strong>D21</strong> <strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
<strong>Platform</strong>, Methodology <strong>and</strong> Tools<br />
Identifier<br />
Date: January 2007<br />
Author(s):<br />
Distribution: All partners<br />
A.M. Zaharia, M. Enache, G. Grecu (Medisystem); A. Kalligeris, R.M.<br />
Brown, S.Topouzidou (<strong>ATC</strong>); T. Hansen (LOCUS), A.Berre (SINTEF)<br />
Workpackage: WP4-<strong>SODIUM</strong> platform integration <strong>and</strong> evaluation<br />
Version: 4.0<br />
Status: Final<br />
Abstract:<br />
This document comprises <strong>the</strong> final version <strong>of</strong> <strong>the</strong> <strong>Evaluation</strong> <strong>and</strong><br />
<strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong>, Methodology <strong>and</strong> Tools<br />
FP6-004559 p.1 <strong>of</strong> 139
Revision History<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Version Identifier Revision Outline Revision Author<br />
0.1 Template <strong>and</strong> TOC provided. Initial<br />
version<br />
A. Kalligeris (<strong>ATC</strong>)<br />
0.2 First Revised Version A. Kalligeris (<strong>ATC</strong>), R.<br />
Brown (<strong>ATC</strong>), M.<br />
Melissinos, A. Birbilis (<strong>ATC</strong>),<br />
0.3 Second Revised Version: Added<br />
Quality <strong>Assessment</strong> Chapter 7<br />
0.4 Second Revised Version: Revised<br />
Quality <strong>Assessment</strong> Chapter 7 for<br />
suitability with <strong>SODIUM</strong><br />
0.5 Addition <strong>of</strong> End Users Sections;<br />
Update <strong>of</strong> Industrial User<br />
Requirement; Final Editing<br />
0.6 Updated Section 6 regarding<br />
Medisystem requirements<br />
A. Kalligeris (<strong>ATC</strong>)<br />
R. Brown (<strong>ATC</strong>), M.<br />
Melissinos, A. Birbilis (<strong>ATC</strong>)<br />
T. Hansen, A-M Zaharia, M.<br />
Enache, A. Kalligeris (<strong>ATC</strong>),<br />
R. Brown (<strong>ATC</strong>), M.<br />
Melissinos, A. Birbilis (<strong>ATC</strong>)<br />
A-M Zaharia, M. Enache, R.<br />
Brown (<strong>ATC</strong>)<br />
0.7 Updated edition S. Topouzidou, A. Kalligeris<br />
(<strong>ATC</strong>)<br />
0.8 Edition after MEDISYSTEM part <strong>of</strong><br />
D5.2 received<br />
0.9 Update with comments by ETH <strong>and</strong><br />
NKUA<br />
S. Topouzidou,<br />
M.Melissinos, A. Kalligeris<br />
(<strong>ATC</strong>)<br />
M. Melissinos (<strong>ATC</strong>)<br />
1.0 Updated edition A. Kalligeris, S. Topouzidou<br />
(<strong>ATC</strong>)<br />
1.1 New enhanced Edition after<br />
completion <strong>of</strong> D3 Part I<br />
1.2 Updated Version with comments<br />
received by NKUA<br />
1.3 Final Version after new ETHz,<br />
NKUA comments<br />
A. Kalligeris (<strong>ATC</strong>)<br />
S. Topouzidou, M.<br />
Melissinos, R. Brown, A.<br />
Kalligeris (<strong>ATC</strong>)<br />
S. Topouzidou, A. Kalligeris<br />
(<strong>ATC</strong>)<br />
FP6-004559 p.2 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Version Identifier Revision Outline Revision Author<br />
1.4 Version on progress up to M24 M. Enache, A.M. Zaharia<br />
(Medisystem), S.<br />
Topouzidou, R. Brown<br />
(<strong>ATC</strong>)<br />
1.5 Revisions M. Enache, A.M. Zaharia<br />
(Medisystem), S.<br />
Topouzidou (<strong>ATC</strong>)<br />
1.6 Revisions M. Enache, A.M. Zaharia<br />
(Medisystem), S.<br />
Topouzidou (<strong>ATC</strong>)<br />
1.7 Revisions S. Topouzidou, A. Kalligeris<br />
(<strong>ATC</strong>)<br />
1.8 Revisions T.Hansen (LOCUS)<br />
1.9 Revision to include feedback from<br />
NKUA <strong>and</strong> SINTEF<br />
G. Athanasopoulos (NKUA);<br />
R.Gronmo (SINTEF); M.<br />
Enache, A.M. Zaharia<br />
(Medisystem); S.<br />
Topouzidou (<strong>ATC</strong>)<br />
2.0 Revisions M. Enache, A.M. Zaharia<br />
(Medisystem); S.<br />
Topouzidou (<strong>ATC</strong>)<br />
2.1 Revisions as per comments by<br />
NKUA, <strong>ATC</strong><br />
M. Enache, A.M. Zaharia<br />
(Medisystem); S.<br />
Topouzidou (<strong>ATC</strong>)<br />
2.2 Section 4.4.1 completed by LOCUS T.Hansen (LOCUS)<br />
2.3 Updated Table 12, Section 5.4.1.9 M. Enache (Medisystem)<br />
3.1 Section 4 updated by LOCUS T.Hansen (LOCUS)<br />
3.2 Section 5 updated by Medisystem M. Enache (Medisystem)<br />
3.3 Section 1,3,7,8, 9 updated by <strong>ATC</strong> S.Topouzidou, A.Kalligeris<br />
(<strong>ATC</strong>)<br />
FP6-004559 p.3 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Version Identifier Revision Outline Revision Author<br />
3.4 Section 6, 7 updated by SINTEF Arne J. Berre (SINTEF)<br />
3.5 Section 5 updated by Medisystem M. Enache (Medisystem)<br />
3.6 Section 3,4 <strong>and</strong> 5 updated by<br />
NKUA<br />
A. Tsalgatidou, G.<br />
Athanasopoulos, M.<br />
Pantazoglou (NKUA)<br />
4.0 Final checking S.Topouzidou (<strong>ATC</strong>)<br />
FP6-004559 p.4 <strong>of</strong> 139
Executive Summary<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This document comprises <strong>the</strong> final version <strong>of</strong> <strong>the</strong> deliverable for <strong>the</strong> <strong>Evaluation</strong> <strong>and</strong><br />
<strong>Assessment</strong> <strong>of</strong> <strong>the</strong> Outcome <strong>of</strong> Project <strong>SODIUM</strong>, available at <strong>the</strong> end <strong>of</strong> <strong>the</strong> project.<br />
The document provides <strong>the</strong> assessment <strong>of</strong> project results with respect to:<br />
� <strong>the</strong> requirements set by <strong>the</strong> Industrial Partner (<strong>ATC</strong>)<br />
� feedback from <strong>the</strong> LOCUS pilot<br />
� feedback from <strong>the</strong> MEDISYSTEM pilot<br />
� feedback from User Groups<br />
� feedback received from <strong>the</strong> demonstration <strong>of</strong> <strong>SODIUM</strong> during <strong>the</strong> IST event 2006<br />
in Helsinki<br />
� Business Plan requirements<br />
This latest version has been mainly based on <strong>the</strong> feedback to be received from <strong>the</strong> two user<br />
pilots as well as feedback from external users (those comprising <strong>the</strong> <strong>SODIUM</strong> user forums in<br />
Greece, Norway <strong>and</strong> Switzerl<strong>and</strong>) as well as <strong>the</strong> <strong>SODIUM</strong> demonstration in <strong>the</strong> IST event<br />
2006.<br />
FP6-004559 p.5 <strong>of</strong> 139
Table <strong>of</strong> Contents<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
1. Introduction ..................................................................................................................12<br />
2. Methodology for <strong>Assessment</strong> .......................................................................................13<br />
3. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Methodology, <strong>Platform</strong> <strong>and</strong> Tools with respect to <strong>the</strong><br />
requirements set by <strong>the</strong> Industrial Partner <strong>of</strong> <strong>the</strong> Project (<strong>ATC</strong>).............................................15<br />
3.1 Summary <strong>of</strong> Requirements .......................................................................................15<br />
3.1.1 Top Level Business Requirements <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> Achievement upon<br />
Project end. .....................................................................................................................15<br />
3.1.2 Functional Requirements....................................................................................19<br />
3.1.3 Non - Functional Requirements..........................................................................22<br />
3.2 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach...........................................................26<br />
3.2.1 Qualitative <strong>Assessment</strong> <strong>of</strong> Benefits from using <strong>the</strong> approach.............................26<br />
3.2.2 Problems envisaged in Using <strong>the</strong> Approach.......................................................27<br />
4. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Results <strong>of</strong> <strong>the</strong> LOCUS pilot...............................................................28<br />
4.1 Scope <strong>of</strong> <strong>the</strong> Pilot......................................................................................................28<br />
4.1.1 Business Requirements......................................................................................28<br />
4.1.2 Technical Requirements.....................................................................................29<br />
4.1.2.1 Functional requirements ..............................................................................29<br />
4.1.2.2 Non functional requirements ........................................................................29<br />
4.1.3 Pilot Description .................................................................................................30<br />
4.2 <strong>SODIUM</strong> Features tested (LOCUS) ..........................................................................31<br />
4.3 <strong>Evaluation</strong> checklists used........................................................................................41<br />
4.4 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach...........................................................41<br />
4.4.1 Preliminary <strong>Assessment</strong> –Installation Phase......................................................41<br />
4.4.1.1 Description <strong>of</strong> LOCUS environment in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot .....................41<br />
4.4.1.2 <strong>SODIUM</strong> platform tools installation : problems <strong>and</strong> solutions ......................42<br />
4.4.1.3 <strong>Evaluation</strong> <strong>of</strong> platform-level requirements during <strong>the</strong> installation .................43<br />
FP6-004559 p.6 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
4.4.2 <strong>Assessment</strong> related to <strong>the</strong> use <strong>of</strong> tools <strong>and</strong> methodology till end <strong>of</strong> project .......45<br />
4.4.2.1 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Visual Editor .....................................................................45<br />
4.4.2.2 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USQL engine....................................................................47<br />
4.4.2.3 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> overall methodology .........................................................49<br />
4.4.2.4 Overall evaluation conclusions ....................................................................51<br />
4.4.3 Meeting Key Business Requirements for LOCUS ..............................................55<br />
4.4.4 Qualitative Benefits from using <strong>the</strong> <strong>SODIUM</strong> Approach .....................................56<br />
4.4.5 Cost <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach ................................................................57<br />
4.4.6 Cost Benefit Analysis .........................................................................................59<br />
4.5 Lessons Learned, Recommendations <strong>and</strong> Suggestions for improvement for<br />
commercialization ...............................................................................................................61<br />
4.5.1 Recommendations for future enhancement........................................................70<br />
5. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Results <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot ...................................................76<br />
5.1 Scope <strong>of</strong> <strong>the</strong> Pilot......................................................................................................76<br />
5.1.1 Business Requirements......................................................................................76<br />
5.1.2 Technical Requirements.....................................................................................77<br />
5.1.2.1 Functional requirements ..............................................................................77<br />
5.1.2.2 Non functional requirements ........................................................................77<br />
5.1.3 Pilot Description .................................................................................................78<br />
5.2 <strong>SODIUM</strong> Features tested (MEDISYSTEM)...............................................................80<br />
5.3 <strong>Evaluation</strong> checklists used........................................................................................85<br />
5.4 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach...........................................................85<br />
5.4.1 Preliminary <strong>Assessment</strong> –Installation Phase......................................................85<br />
5.4.1.1 Description <strong>of</strong> Medisystem environment in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot ..............85<br />
5.4.1.2 <strong>SODIUM</strong> platform tools installation : problems <strong>and</strong> solutions ......................87<br />
5.4.1.3 <strong>Evaluation</strong> <strong>of</strong> platform-level requirements during <strong>the</strong> installation .................88<br />
FP6-004559 p.7 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
5.4.2 <strong>Assessment</strong> related to <strong>the</strong> use <strong>of</strong> tools <strong>and</strong> methodology till end <strong>of</strong> project .......89<br />
5.4.2.1 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Visual Editor .....................................................................89<br />
5.4.2.2 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USQL Engine ...................................................................91<br />
5.4.2.3 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USCL Engine ...................................................................94<br />
5.4.2.4 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Composition repository.....................................................96<br />
5.4.2.5 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> overall methodology .........................................................97<br />
5.4.3 Meeting Key Business Requirements for MEDISYSTEM...................................99<br />
5.4.4 Qualitative benefits from using <strong>the</strong> <strong>SODIUM</strong> approach ....................................100<br />
5.4.5 Cost <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach ..............................................................103<br />
5.4.6 Cost Benefit Analysis .......................................................................................104<br />
5.5 Lessons Learned, Recommendations <strong>and</strong> Suggestions for improvement for<br />
commercialization .............................................................................................................106<br />
5.5.1 Recommendations for future enhancement:.....................................................108<br />
6. <strong>Evaluation</strong> as per <strong>the</strong> feedback from external user forums ........................................111<br />
6.1 Feedback from user forums ....................................................................................111<br />
6.1.1.1 Norwegian User Forum..............................................................................112<br />
6.1.1.2 Greek User Forum .....................................................................................114<br />
7. <strong>Evaluation</strong> at <strong>the</strong> IST Event 2006...............................................................................115<br />
8. <strong>Evaluation</strong> <strong>of</strong> Results with Respect to Business Plan Requirements .........................117<br />
8.1 Summary <strong>of</strong> <strong>SODIUM</strong> Assets .................................................................................117<br />
8.2 Summary <strong>of</strong> SWOT Analysis Findings ....................................................................118<br />
8.2.1 Effectiveness <strong>of</strong> <strong>SODIUM</strong> Methodology, platform <strong>and</strong> Tools in Exploiting<br />
Opportunities .................................................................................................................119<br />
8.2.2 Provisions <strong>and</strong> Measures taken to minimize weaknesses <strong>and</strong> <strong>the</strong>ir effects .....120<br />
8.3 Recommendations <strong>and</strong> Suggestions for Commercialization...................................121<br />
9. Conclusions <strong>and</strong> Suggestions for fur<strong>the</strong>r work / Guidelines for Productisation ..........122<br />
9.1 Recommendations from <strong>the</strong> Industrial User............................................................122<br />
FP6-004559 p.8 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
9.2 Recommendations from LOCUS.............................................................................123<br />
9.3 Recommendations from MEDISYSTEM .................................................................123<br />
9.4 Recommendations from <strong>the</strong> User Forums ..............................................................124<br />
10. References.................................................................................................................125<br />
11. Appendix I –Questionnaires used in <strong>the</strong> sessions held in A<strong>the</strong>ns & relevant results<br />
(Greek User forum) ..............................................................................................................126<br />
12. Appendix II - Norwegian User Forum Questionnaire <strong>and</strong> related results....................135<br />
13. Appendix III - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> tools.........................................136<br />
13.1 Visual Editor ........................................................................................................136<br />
13.2 USQL engine .......................................................................................................137<br />
14. Appendix IV - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> methodology............................139<br />
FP6-004559 p.9 <strong>of</strong> 139
LIST OF ABBREVIATIONS<br />
CIO Chief Information Officer<br />
DB Database<br />
ERP Enterprise Resource Planning<br />
GPRS General Packet Radio Service<br />
GSM Global System for Mobile Communications<br />
HTTP Hypertext Transfer Protocol<br />
IDE Integrated Development Environment<br />
IIS Internet Information Services<br />
ISA Internet Security & Acceleration<br />
ISP Internet Service Provider<br />
IST Information Society Technologies<br />
LGPL GNU Lesser General Public License<br />
MS Micros<strong>of</strong>t<br />
NA Not Applicable<br />
QoS Quality <strong>of</strong> Service<br />
RAD Rapid Application Development<br />
RDS Romanian Data System<br />
RTD Research Technological Development<br />
SMS Short Message Service<br />
SOA Service Oriented Architecture<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
<strong>SODIUM</strong> Service Oriented Development In a Unified fraMework<br />
SWOT Strengths, Weaknesses, Opportunities, Threats<br />
UDDI Universal Description, Discovery <strong>and</strong> Integration<br />
UML Unified Modelling Language<br />
USCL Unified Service Composition Language<br />
USQL Unified Service Query Language<br />
VSCL Visual Service Composition Language<br />
WSRF Web Services Resource Framework<br />
FP6-004559 p.10 <strong>of</strong> 139
LIST OF TABLES<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Table 1: Source <strong>of</strong> evaluation for <strong>ATC</strong>’s functional requirements ..........................................21<br />
Table 2: Source <strong>of</strong> evaluation for <strong>ATC</strong>’s non-functional requirements ...................................25<br />
Table 3: <strong>SODIUM</strong> platform features tested at LOCUS pilot ...................................................37<br />
Table 4: Important features tested at LOCUS pilot ................................................................40<br />
Table 5: LOCUS equipment <strong>and</strong> internet services used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot.................41<br />
Table 6: Required s<strong>of</strong>tware for <strong>the</strong> LOCUS pilot ....................................................................42<br />
Table 7: LOCUS: Installation <strong>of</strong> <strong>SODIUM</strong> tools / server side: problems <strong>and</strong> solutions...........43<br />
Table 8: LOCUS : Installation <strong>of</strong> <strong>SODIUM</strong> tools / client side: problems <strong>and</strong> solutions ...........43<br />
Table 9: <strong>Evaluation</strong> <strong>of</strong> platform level requirements: installation phase at LOCUS .................44<br />
Table 10: <strong>SODIUM</strong> platform features tested at MEDISYSTEM pilot ......................................83<br />
Table 11: Important features tested at MEDISYSTEM pilot ...................................................84<br />
Table 12: MEDISYSTEM equipment <strong>and</strong> internet services used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot ...86<br />
Table 13: Required s<strong>of</strong>tware for <strong>the</strong> MEDISYSTEM pilot.......................................................86<br />
Table 14: MEDISYSTEM: Installation <strong>of</strong> <strong>SODIUM</strong> tools / server side: problems <strong>and</strong> solutions<br />
........................................................................................................................................87<br />
Table 15: MEDISYSTEM : Installation <strong>of</strong> <strong>SODIUM</strong> tools / client side: problems <strong>and</strong> solutions<br />
........................................................................................................................................88<br />
Table 16: <strong>Evaluation</strong> <strong>of</strong> platform level requirements: installation phase at MEDISYSTEM ....88<br />
Table 17: MEDISYSTEM Preliminary qualitative assessment .............................................102<br />
Table 18: Norwegian User Forum Activities .........................................................................113<br />
Table 19: Greek User Forum Activities ................................................................................114<br />
Table 20: <strong>SODIUM</strong> tangible assets......................................................................................117<br />
FP6-004559 p.11 <strong>of</strong> 139
1. Introduction<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The purpose <strong>of</strong> this document is to provide an assessment <strong>of</strong> <strong>the</strong> results <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
project, taking into account:<br />
� Requirements set by <strong>the</strong> Industrial partner (<strong>ATC</strong>) including top level business,<br />
functional <strong>and</strong> non-functional requirements, <strong>the</strong> latter two based on <strong>the</strong> user pilots<br />
assessment as described below<br />
� Functional <strong>and</strong> non-functional capabilities <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools<br />
based around <strong>the</strong> two user pilot applications that can be used to examine whe<strong>the</strong>r<br />
<strong>the</strong> requirements <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform described in deliverable D3 part I [1]<br />
are met. To ensure that <strong>the</strong> evaluation is comprehensive <strong>the</strong> pilots have exercised<br />
all <strong>SODIUM</strong> components, from <strong>the</strong> visual development tools to <strong>the</strong> run-time<br />
environment.<br />
� Feedback received from <strong>the</strong> external user forums<br />
� Feedback received from <strong>the</strong> demonstration <strong>of</strong> <strong>SODIUM</strong> during <strong>the</strong> IST event 2006<br />
in Helsinki<br />
� Requirements set by <strong>the</strong> <strong>SODIUM</strong> Business plan<br />
FP6-004559 p.12 <strong>of</strong> 139
2. Methodology for <strong>Assessment</strong><br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The Methodology to be followed is developed especially for <strong>SODIUM</strong> taking into account its<br />
characteristics as:<br />
1. A project for pre-competitive research in state-<strong>of</strong>-<strong>the</strong>-art Technology co-funded by <strong>the</strong><br />
European Commission, where <strong>the</strong> Contribution <strong>of</strong> Technology Institutes <strong>and</strong><br />
Universities is <strong>of</strong> paramount importance.<br />
2. A project with users with completely different pr<strong>of</strong>iles <strong>and</strong> different (though compatible<br />
<strong>and</strong> complementary) aspirations for <strong>the</strong> outcome <strong>of</strong> <strong>the</strong> project that have provided very<br />
specific <strong>and</strong> comprehensive requirements<br />
3. A project where full–scale commercial exploitation is <strong>the</strong> direct goal <strong>of</strong> <strong>the</strong> one main<br />
industrial partner, whereas internal exploitation <strong>the</strong> goal <strong>of</strong> <strong>the</strong> two users<br />
4. A project, which <strong>of</strong>fers significant possibilities for <strong>of</strong>fering Consulting Services by all<br />
Technical Partners.<br />
5. A project that develops a S<strong>of</strong>tware <strong>Platform</strong> <strong>and</strong> tools that, irrespective <strong>of</strong> <strong>the</strong>ir future<br />
use, will need to satisfy certain Quality st<strong>and</strong>ards in order to be commercially<br />
successful<br />
6. A project which adopts an Open Source Approach<br />
To meet <strong>the</strong> above ends, <strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> is being performed in a composite<br />
multi-stage approach in order to ascertain that all <strong>the</strong> above characteristics are both taken<br />
into account <strong>and</strong> exploited towards obtaining <strong>the</strong> optimum project outcome.<br />
This approach involves:<br />
• An assessment <strong>of</strong> <strong>the</strong> degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies <strong>the</strong> Top-level<br />
Business, Functional <strong>and</strong> non-Functional Requirements <strong>of</strong> <strong>ATC</strong>, who in addition to<br />
being <strong>the</strong> project coordinator also serves as <strong>the</strong> main Industrial partner in <strong>the</strong><br />
Project.<br />
• An assessment <strong>of</strong> <strong>the</strong> degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies <strong>the</strong> Functional<br />
<strong>and</strong> non-Functional Requirements <strong>of</strong> LOCUS, a user that will mainly integrate <strong>and</strong><br />
compose publicly available services within its current s<strong>of</strong>tware product line, along<br />
with recommendations for Commercialization for clients <strong>of</strong> a similar pr<strong>of</strong>ile to <strong>the</strong>m<br />
• An assessment <strong>of</strong> <strong>the</strong> degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies <strong>the</strong> Functional<br />
<strong>and</strong> non-Functional Requirements <strong>of</strong> MEDISYSTEM, a user that has specific<br />
issues as it is a member <strong>of</strong> a large multinational Group <strong>of</strong> companies <strong>and</strong> will also<br />
deploy <strong>and</strong> use services within a “closed environment” in addition to publicly<br />
available services, along with recommendations for Commercialization for clients <strong>of</strong><br />
a similar pr<strong>of</strong>ile to <strong>the</strong>m.<br />
FP6-004559 p.13 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• An assessment <strong>of</strong> <strong>the</strong> degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies market<br />
Requirements stemming from <strong>the</strong> analysis <strong>of</strong> <strong>the</strong> feedback received from <strong>the</strong><br />
<strong>SODIUM</strong> user forums.<br />
• An assessment <strong>of</strong> <strong>the</strong> degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies Business<br />
Strengths <strong>and</strong> Opportunities for Commercialization <strong>of</strong> said Outcome, while, at <strong>the</strong><br />
same time, catering for Weaknesses identified in <strong>the</strong> Business Plan.<br />
Thus, this Report bridges <strong>the</strong> gap between Technology Development <strong>and</strong> Commercial<br />
Activities, by assessing Project Outcome in Business Terms <strong>and</strong> by providing guidelines on<br />
how to improve this Outcome for being competitive in <strong>the</strong> real Market, as this has been<br />
traced in <strong>the</strong> description <strong>of</strong> work.<br />
FP6-004559 p.14 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
3. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Methodology, <strong>Platform</strong> <strong>and</strong> Tools<br />
with respect to <strong>the</strong> requirements set by <strong>the</strong> Industrial Partner<br />
<strong>of</strong> <strong>the</strong> Project (<strong>ATC</strong>)<br />
3.1 Summary <strong>of</strong> Requirements<br />
3.1.1 Top Level Business Requirements <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> Achievement upon<br />
Project end.<br />
For each <strong>of</strong> <strong>the</strong> Top Level Business Requirements set by <strong>the</strong> Industrial Partner (<strong>ATC</strong>) <strong>and</strong><br />
presented in Deliverable D3 Part I [1], we summarise below <strong>the</strong> assessment method,<br />
executed evaluation activities <strong>and</strong> results up to M30 <strong>of</strong> <strong>the</strong> project<br />
A. Top Level Business Requirement: Employ technologies <strong>and</strong> tools for service discovery<br />
<strong>and</strong> composition that, upon <strong>the</strong> project end, are or are expected to become very soon,<br />
industry st<strong>and</strong>ards <strong>and</strong> thus acceptable by customers.<br />
<strong>Assessment</strong> Method<br />
� <strong>SODIUM</strong> will be presented to <strong>ATC</strong>’s customer base. A survey will be used to<br />
evaluate <strong>SODIUM</strong> platform features with respect to addressing key functional <strong>and</strong><br />
non-functional requirements <strong>of</strong> a platform supporting <strong>the</strong> discovery, composition,<br />
<strong>and</strong> execution <strong>of</strong> services as set in D3 Part I. This is directly related to <strong>the</strong><br />
operation <strong>of</strong> <strong>the</strong> User Forum set up by <strong>ATC</strong> in Greece <strong>and</strong> related activities are<br />
also reported in Section. 6<br />
Related evaluation activities <strong>and</strong> results M18-M24<br />
� <strong>SODIUM</strong> has been presented to <strong>the</strong> Chief Information Officers (CIOs) <strong>of</strong> <strong>the</strong><br />
Fourlis Group (where <strong>ATC</strong> participates) at <strong>the</strong> end <strong>of</strong> June 2006. The session<br />
involved a presentation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> approach in supporting SOA development<br />
<strong>and</strong> evolved into an open discussion regarding participants’ familiarity with SOA,<br />
as well as perceived benefits <strong>and</strong> problems with following such an approach. In<br />
addition, respondents were asked 1 to rate <strong>the</strong> importance <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
platform features supporting discovery <strong>and</strong> composition <strong>of</strong> heterogeneous<br />
services. The rationale for such an approach was to confirm <strong>the</strong> relevant rating <strong>of</strong><br />
<strong>SODIUM</strong> features performed by partners as reported in Deliverable D3 Part I [1]<br />
which influences related development work. As this was <strong>the</strong> first session with<br />
<strong>the</strong>se participants, reference was made only to <strong>the</strong> overall <strong>SODIUM</strong> platform<br />
features ra<strong>the</strong>r than detailing features <strong>of</strong> <strong>the</strong> different <strong>SODIUM</strong> tools, which would<br />
require a detailed demonstration <strong>of</strong> <strong>the</strong> tools. As per respondents answers, <strong>the</strong><br />
1 (A simple questionnaire was used <strong>and</strong> can be found in Appendix I –Questionnaires used in <strong>the</strong> sessions held in A<strong>the</strong>ns & relevant results)<br />
FP6-004559 p.15 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
following were considered <strong>the</strong> most important “selling” features <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
platform :<br />
o Modularity<br />
� provision <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform tools as modules which can be easily<br />
used on <strong>the</strong>ir own (e.g. use <strong>of</strong> <strong>the</strong> service discovery module only) or<br />
along o<strong>the</strong>r complementary applications available within an organisation<br />
(e.g. use <strong>of</strong> an alternative composition editor or execution engine)<br />
o Compatibility with services developed by different development tools<br />
� .NET based services should be accommodated as <strong>the</strong>y form a large part<br />
<strong>of</strong> services used within organisations<br />
o St<strong>and</strong>ards compliance<br />
� Open source on <strong>the</strong> o<strong>the</strong>r h<strong>and</strong>, although considered a desirable feature for <strong>the</strong><br />
platform, is not seen as a must<br />
� Not surprisingly, respondents stated that <strong>the</strong>ir familiarity with SOA is mainly<br />
around web services, thus did not comment on <strong>the</strong> platform’s support for JXTA<br />
p2p services <strong>and</strong> WSRF specifications (especially as p2p <strong>and</strong> grid services are<br />
not deployed within <strong>the</strong>ir business environments).<br />
Related evaluation activities <strong>and</strong> results M24-M30<br />
� Related assessment has been fur<strong>the</strong>r ascertained before project end with<br />
workshops / presentations <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> results to representatives <strong>of</strong> <strong>ATC</strong><br />
customer base including <strong>the</strong> banking <strong>and</strong> media sectors which form part <strong>of</strong> <strong>the</strong><br />
User Group in Greece. These workshops have been held in November 2006 as<br />
also reported in Section 6.<br />
� Both workshops included a discussion <strong>and</strong> brainstorming session which evolved<br />
around <strong>the</strong> drivers, challenges <strong>and</strong> perceived impact <strong>of</strong> <strong>the</strong> adoption <strong>of</strong> SOA by<br />
<strong>the</strong>se two sectors.<br />
� Fur<strong>the</strong>rmore, in <strong>the</strong> context <strong>of</strong> <strong>the</strong>se workshops <strong>and</strong> as part <strong>of</strong> <strong>the</strong> relevant survey<br />
initiated in <strong>the</strong> previous period, participants have been asked to respond to <strong>the</strong><br />
questionnaire enabling <strong>the</strong> identification <strong>of</strong> <strong>the</strong> key features <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
platform <strong>and</strong> tools that should be taken into consideration for fur<strong>the</strong>r exploiting<br />
results post project end.<br />
Feedback from <strong>the</strong> Banking workshop<br />
� As identified by participants, <strong>the</strong> banking sector is considered among <strong>the</strong> early<br />
adopters <strong>of</strong> SOA<br />
� The main drivers for SOA adoption in <strong>the</strong> sector include <strong>the</strong> need to<br />
FP6-004559 p.16 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
� overcome <strong>the</strong> limitations <strong>of</strong> legacy systems <strong>and</strong> increase reuse<br />
� adapt banking systems to changing customer requirements<br />
(Multichannel integration is considered key for all participants) as well as<br />
compliance regulations while keeping operating costs low<br />
� address integration challenges brought about by mergers <strong>and</strong><br />
acquisitions<br />
� In terms <strong>of</strong> challenges, <strong>the</strong> following were identified:<br />
� perceived costs <strong>and</strong> complexity related to SOA implementation<br />
� need for Business <strong>and</strong> IT alignment (not a sector specific issue but still <strong>of</strong><br />
high importance)<br />
� need to maintain a balance between flexibility brought about by SOA<br />
solutions <strong>and</strong> <strong>the</strong> security <strong>and</strong> data integrity that are absolutely critical in<br />
<strong>the</strong> banking environment<br />
� ensuring availability <strong>of</strong> services comprising an application when <strong>the</strong><br />
application is executed<br />
� trustworthiness <strong>of</strong> third party service providers<br />
� Despite challenges, impact <strong>of</strong> SOA in <strong>the</strong> sector is perceived positively as banks<br />
are expecting a greater reuse <strong>of</strong> IT assets, a reduction in <strong>the</strong> cost related to <strong>the</strong><br />
development <strong>and</strong> implementation <strong>of</strong> new systems <strong>and</strong> an enhanced ability to<br />
create dynamic business services that respond to customer needs<br />
� In summary, participants agreed that <strong>the</strong> <strong>SODIUM</strong> solution fits well in <strong>the</strong> banking<br />
environment where <strong>the</strong>re is a strong need to develop applications that respond to<br />
changing customer needs <strong>and</strong> support reuse <strong>of</strong> services in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
bank’s multi-channel approach through a variety <strong>of</strong> access devices (PC, PDA,<br />
mobile) to support customer self-servicing.<br />
In addition to <strong>the</strong> feedback received from <strong>the</strong> discussion <strong>and</strong> brainstorming session,<br />
following a demonstration <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools, participants were also<br />
asked to identify <strong>the</strong> most important features <strong>of</strong> <strong>the</strong> solution. Participants identified<br />
St<strong>and</strong>ards compliance as a very important feature The ability to support<br />
heterogeneous services is also a unique selling point for <strong>the</strong> platform, especially as<br />
<strong>the</strong> sector places importance in support <strong>of</strong> grid services (in addition to already<br />
extensively deployed web services) to address exp<strong>and</strong>ing data volumes <strong>and</strong> ensure<br />
increased response times. The ability to specify QoS properties at design time is also<br />
seen as a very important feature. Fur<strong>the</strong>rmore, <strong>the</strong> fact that <strong>the</strong> solution addresses<br />
<strong>the</strong> whole development life-cycle from design to execution is also considered as a<br />
key selling point.<br />
Feedback from <strong>the</strong> Media workshop<br />
FP6-004559 p.17 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
� As identified by respondents, <strong>the</strong> Media industry is one facing numerous<br />
challenges in terms <strong>of</strong> complexity <strong>and</strong> inefficiencies.<br />
� Workflow is <strong>the</strong> key word in content–oriented businesses, however still <strong>and</strong> to a<br />
large extent many activities are being performed manually in a non-organised<br />
manner<br />
� Processes supporting <strong>the</strong> creation, management <strong>and</strong> distribution <strong>of</strong> digital assets<br />
are not linked with o<strong>the</strong>r business systems resulting in delivery delays<br />
� SOA’s perceived impact lies in support <strong>of</strong> integration which is currently lacking in<br />
<strong>the</strong> sector as per participants views. For instance <strong>the</strong> ability to integrate content<br />
<strong>and</strong> billing systems is considered very important As is <strong>the</strong> case with <strong>the</strong> Banking<br />
sector, multichannel delivery is also considered critical <strong>and</strong> is expected to be<br />
facilitated by SOA.<br />
� In summary, participants stated that service oriented development with <strong>SODIUM</strong><br />
can potentially improve process workflows in content delivery enabling integration<br />
<strong>of</strong> <strong>the</strong>ir systems. <strong>SODIUM</strong> support for heterogeneous services is also considered<br />
important as <strong>the</strong> sector has strong needs for collaboration in work which can be<br />
supported through p2p services as well as processing <strong>of</strong> content which can be<br />
effected through grid services. Modularity <strong>of</strong> <strong>the</strong> solution is also considered a very<br />
important feature.<br />
Participants in both workshops identified <strong>the</strong> need for training for potential users <strong>of</strong> <strong>the</strong><br />
<strong>SODIUM</strong> platform <strong>and</strong> tools that should be provided by a team <strong>of</strong> qualified <strong>SODIUM</strong> experts,<br />
<strong>the</strong> provision <strong>of</strong> documentation <strong>and</strong> support for <strong>the</strong> tools.<br />
B. Top Level Business Requirement: Provide total independence from platform providers,<br />
Operating Systems, Proprietary Solutions, etc.<br />
<strong>Assessment</strong> Method<br />
� Ensuring that this requirement has influenced <strong>the</strong> <strong>SODIUM</strong> Architecture <strong>and</strong><br />
subsequent development <strong>and</strong> integration work continues to satisfy this<br />
requirement<br />
Related evaluation activities <strong>and</strong> results M18-M24<br />
� This requirement was a pre-requisite <strong>and</strong> is already reflected in <strong>the</strong> Open<br />
Architecture <strong>of</strong> <strong>SODIUM</strong>. <strong>SODIUM</strong> platform constituent tools namely Visual<br />
Composition Studio, USQL engine, USCL engine <strong>and</strong> Composition Repository are<br />
all provided as open-source <strong>and</strong> platform-independent s<strong>of</strong>tware components.<br />
Related evaluation activities <strong>and</strong> results M24-M30<br />
� It is considered that this requirement has been met. No fur<strong>the</strong>r integration or<br />
refinement activities were expected or proved to adversely affect this requirement.<br />
FP6-004559 p.18 <strong>of</strong> 139
3.1.2 Functional Requirements<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The following table summarises <strong>the</strong> Functional Requirements set by <strong>the</strong> Industrial Partner<br />
<strong>and</strong> presented in Deliverable D3 Part I [1] <strong>and</strong> source <strong>of</strong> evaluation <strong>the</strong>re<strong>of</strong>. The assessment<br />
<strong>of</strong> achievement <strong>of</strong> <strong>the</strong>se requirements has been elaborated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> two pilots, as<br />
described in Sections 5 <strong>and</strong> 6 hereinafter.<br />
FP6-004559 p.19 <strong>of</strong> 139
Req. Requirement Description Source <strong>of</strong><br />
code<br />
<strong>Evaluation</strong><br />
RP04 Quick & easy The platform should MEDISYSTEM Pilot,<br />
discovery <strong>of</strong> enable <strong>the</strong> quick <strong>and</strong> LOCUS pilot<br />
heterogeneous easy discovery <strong>of</strong><br />
services<br />
heterogeneous services Related functionality<br />
(P2P, Grid or Web to be evaluated is<br />
Services), primarily based provided by <strong>the</strong><br />
on <strong>the</strong> desired<br />
characteristics.<br />
USQL engine<br />
RP12 Audit Trails With all our Enterprise MEDISYSTEM Pilot,<br />
solutions, audit trails are<br />
accentual in diagnosing<br />
LOCUS pilot<br />
fails <strong>and</strong> problems. In Related functionality<br />
some applications it is a to be evaluated is<br />
requirement by law. It is provided by <strong>the</strong><br />
essential to be able to USCL engine <strong>and</strong><br />
capture execution <strong>the</strong> Composition<br />
information such as who<br />
executed a composition,<br />
when, what where <strong>the</strong><br />
inputs to <strong>the</strong> execution<br />
<strong>and</strong> <strong>the</strong> result<br />
Repository<br />
RP05 Visual design <strong>of</strong> Being able to visualize MEDISYSTEM Pilot,<br />
compositions compositions aids <strong>the</strong><br />
developer to underst<strong>and</strong><br />
LOCUS pilot<br />
<strong>the</strong> service composition, Related functionality<br />
reduces <strong>the</strong> amount <strong>of</strong> to be evaluated is<br />
code that is written <strong>and</strong> provided by <strong>the</strong><br />
reduces <strong>the</strong> time taken to Visual Composition<br />
produce compositions Studio<br />
FP6-004559 p.20 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Req. met Notes from <strong>the</strong> pilots<br />
Yes. The USQL Client has been integrated into <strong>the</strong><br />
Visual Composition Studio as a dialog, so <strong>the</strong><br />
USQL engine is accessed just by right-clicking<br />
on a task in <strong>the</strong> composition In addition,<br />
queries are formulated with <strong>the</strong> USQL Dialog in<br />
a service type-independent manner.<br />
Yes. All execution is logged in <strong>the</strong> Execution<br />
Engine. It is possible to see all input <strong>and</strong> all<br />
output in <strong>the</strong> log.<br />
Yes. The Visual Composition Studio provides a<br />
graphical interface making it easy to create a<br />
composition.
Req. Requirement Description Source <strong>of</strong><br />
code<br />
<strong>Evaluation</strong><br />
RP06 Reuse <strong>of</strong> existing The platform should MEDISYSTEM Pilot,<br />
solutions<br />
enable <strong>the</strong> reuse <strong>of</strong><br />
existing services as well<br />
LOCUS pilot<br />
as existing compositions Related functionality<br />
to be evaluated is<br />
provided by <strong>the</strong><br />
Visual Composition<br />
Studio, <strong>and</strong> <strong>the</strong><br />
Composition<br />
repository<br />
RP14 Composition<br />
Storage <strong>and</strong><br />
Management<br />
The platform should<br />
enable <strong>the</strong> management<br />
<strong>and</strong> versioning <strong>of</strong> source<br />
code produced by <strong>the</strong><br />
<strong>SODIUM</strong> platform tools<br />
MEDISYSTEM Pilot,<br />
LOCUS pilot<br />
Related functionality<br />
to be evaluated is<br />
provided by <strong>the</strong><br />
Composition<br />
repository<br />
FP6-004559 p.21 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Req. met Notes from <strong>the</strong> pilots<br />
Yes. A composition can be created in <strong>the</strong> Visual<br />
Composition Studio, <strong>and</strong> <strong>the</strong>n stored in <strong>the</strong><br />
Composition Repository. At a later stage <strong>the</strong><br />
composition can be retrieved from <strong>the</strong><br />
Composition Repository <strong>and</strong> be opened in <strong>the</strong><br />
Visual Composition Studio.<br />
Yes The Composition Repository can store several<br />
versions <strong>of</strong> a composition.<br />
Table 1: Source <strong>of</strong> evaluation for <strong>ATC</strong>’s functional requirements
3.1.3 Non - Functional Requirements<br />
FP6-004559 p.22 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The following table summarises Non Functional Requirements Set by <strong>the</strong> Industrial Partner (<strong>ATC</strong>) <strong>and</strong> source <strong>of</strong> evaluation <strong>the</strong>re<strong>of</strong>. It is<br />
Compatible with Table 6-1 <strong>of</strong> D3 Part I [1]:<br />
Req. Requirement Description Source <strong>of</strong><br />
code<br />
<strong>Evaluation</strong><br />
RP03 <strong>Platform</strong><br />
<strong>SODIUM</strong> platform MEDISYSTEM<br />
Independence should be<br />
Pilot,<br />
independent <strong>of</strong><br />
platform providers<br />
LOCUS pilot<br />
<strong>and</strong> Operating The pilots make<br />
Systems<br />
use <strong>of</strong> different<br />
environments. The<br />
successes or<br />
failures <strong>of</strong> setting<br />
up <strong>and</strong> running <strong>the</strong><br />
<strong>SODIUM</strong> platform<br />
will be captured by<br />
maintaining a log <strong>of</strong><br />
<strong>the</strong> setup <strong>and</strong><br />
operation <strong>of</strong> <strong>the</strong><br />
<strong>SODIUM</strong> platform.<br />
Req. met Notes from <strong>the</strong> pilots<br />
Partially LOCUS <strong>and</strong> MEDISYSTEM have set up <strong>the</strong> <strong>SODIUM</strong> platform on a<br />
Windows environment <strong>and</strong> did not attempt to install <strong>the</strong> <strong>SODIUM</strong><br />
platform in different platforms, as this was not required by <strong>the</strong>ir<br />
business <strong>and</strong> pilot needs.<br />
Still, <strong>SODIUM</strong> is Java-based; thus, as Java is platform-independent,<br />
it should not cause any problems to set up <strong>the</strong> <strong>SODIUM</strong> platform on<br />
o<strong>the</strong>r platforms
Req. Requirement Description Source <strong>of</strong><br />
code<br />
<strong>Evaluation</strong><br />
RP07 Open Source The platform should It is considered that<br />
accommodate an this requirement is<br />
open source<br />
approach so as to<br />
met.<br />
enable its extension The adoption <strong>of</strong><br />
with additional Open Source<br />
features if needed. implementation has<br />
been ensured in <strong>the</strong><br />
design <strong>and</strong><br />
subsequent<br />
development <strong>of</strong> <strong>the</strong><br />
platform <strong>and</strong> tools.<br />
RP10 Scalability The platform should MEDISYSTEM<br />
accommodate <strong>the</strong><br />
needs <strong>of</strong> various<br />
Pilot, LOCUS pilot<br />
types <strong>of</strong> clients, The pilots with<br />
ranging from low <strong>SODIUM</strong> have<br />
dem<strong>and</strong>ing solutions different load<br />
supporting just a few scenarios. The<br />
concurrent users, to pilot users will be<br />
high dem<strong>and</strong><br />
asked to measure<br />
solutions supporting <strong>the</strong> performance<br />
higher levels <strong>of</strong> characteristics <strong>of</strong><br />
concurrent users. <strong>the</strong> <strong>SODIUM</strong><br />
platform during <strong>the</strong><br />
pilots.<br />
FP6-004559 p.23 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Req. met Notes from <strong>the</strong> pilots<br />
Yes The <strong>SODIUM</strong> platform was installed under LGPL. Source code will<br />
be available after completion <strong>of</strong> <strong>the</strong> project.<br />
Yes This was demonstrated at an earlier review by ETHz. Additional<br />
comments from Locus are: <strong>the</strong>re seems to be little overhead in<br />
running <strong>the</strong> composition through <strong>the</strong> Execution Engine. The only<br />
overhead occurs after <strong>the</strong> Execution Engine has been restarted, <strong>the</strong>n<br />
<strong>the</strong> first execution takes a bit longer.<br />
In addition a test was done starting <strong>the</strong> Execution Engine using first a<br />
single client, <strong>the</strong>n using two clients..<br />
When running <strong>the</strong> Execution Engine from one client, <strong>and</strong> running a<br />
composition 50 times, <strong>the</strong> average performance was 1644ms.<br />
When running <strong>the</strong> same composition from two clients, <strong>the</strong> average<br />
perfomance was 1831ms <strong>and</strong> 1782ms. There is hence a lower<br />
perfomance when running two clients, but this is probably due to lack<br />
<strong>of</strong> memory on <strong>the</strong> computer where <strong>the</strong> Execution Engine was<br />
installed.
FP6-004559 p.24 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Req. Requirement Description Source <strong>of</strong><br />
Req. met Notes from <strong>the</strong> pilots<br />
code<br />
<strong>Evaluation</strong><br />
RP01 St<strong>and</strong>ards The <strong>SODIUM</strong><br />
MEDISYSTEM Yes The <strong>SODIUM</strong> tools support st<strong>and</strong>ard SOAP Web services, JXTA P2P<br />
Compliance <strong>Platform</strong> should Pilot, LOCUS pilot<br />
services, <strong>and</strong> WSRF-compliant Grid services (i.e. stateful web<br />
support appropriate<br />
services).<br />
st<strong>and</strong>ards for P2P, Both pilots make<br />
Grid <strong>and</strong> Web use <strong>of</strong> services<br />
Services.<br />
from different<br />
sources. Any<br />
related problems<br />
encountered during<br />
<strong>the</strong> pilots will be<br />
reported.<br />
RP13 RAD The platform should LOCUS pilot Yes Creating compositions in <strong>the</strong> Visual Composition Studio facilitates <strong>the</strong><br />
enable rapid<br />
process instead <strong>of</strong> manually having to create <strong>the</strong> composition in a<br />
application<br />
st<strong>and</strong>ard programming language. Transformation to <strong>the</strong> USCL<br />
development <strong>and</strong><br />
language format is straight forward, <strong>and</strong> deploying <strong>the</strong> USCL file into<br />
deployment.<br />
<strong>the</strong> Execution Engine is just a matter <strong>of</strong> copy-paste.<br />
The composition can <strong>the</strong>n be executed by setting start parameters in<br />
<strong>the</strong> Execution Engine, or be called from a client using st<strong>and</strong>ard web<br />
service interface.<br />
RP08 Secure sharing The platform should MEDISYSTEM Yes There is nothing in <strong>the</strong> Visual Composition Studio that secures <strong>the</strong><br />
<strong>of</strong> source files enable <strong>the</strong> secure Pilot, LOCUS pilot<br />
composition files, but <strong>the</strong> Composition Repository requires <strong>the</strong> use <strong>of</strong><br />
accessing <strong>of</strong> files (e.g.<br />
username/password, so as long as <strong>the</strong> compositions are stored only<br />
who is allowed to view<br />
or alter stored<br />
compositions, who is<br />
permitted to create<br />
new versions <strong>of</strong><br />
compositions)<br />
<strong>the</strong>re <strong>the</strong> requirement is met.
Req. Requirement Description Source <strong>of</strong><br />
code<br />
<strong>Evaluation</strong><br />
RP15 Extensibility The platform should Close to project<br />
enable <strong>the</strong><br />
end, technical<br />
incorporation <strong>of</strong> new partners will identify<br />
service technologies emerging<br />
as <strong>the</strong>y appear technologies (if<br />
any) <strong>and</strong> explain<br />
how <strong>SODIUM</strong><br />
would<br />
accommodate <strong>the</strong>m<br />
RP16 Modularity The platform should<br />
be modular so as to<br />
User Forums<br />
be able to combine Participants will<br />
<strong>the</strong> different parts provide input on <strong>the</strong><br />
according to <strong>the</strong> possibility <strong>of</strong> using<br />
different customer <strong>SODIUM</strong> platform<br />
needs <strong>and</strong> to<br />
modules in<br />
incorporate<br />
combination with<br />
extensions <strong>and</strong> legacy external tools<br />
systems used by <strong>the</strong> available in <strong>the</strong>ir<br />
customers<br />
environments.<br />
FP6-004559 p.25 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Req. met Notes from <strong>the</strong> pilots<br />
Yes Particularly <strong>the</strong> USQL Engine was easily extended to support <strong>the</strong><br />
new W3C recommendation on semantic service description,<br />
SAWSDL<br />
Partially Within <strong>the</strong> project scope no attempt was made to integrate <strong>the</strong><br />
<strong>SODIUM</strong> tools independently with o<strong>the</strong>r commercially available<br />
tools.<br />
Never<strong>the</strong>less, <strong>the</strong> sodium tools have been developed<br />
independently <strong>of</strong> each o<strong>the</strong>r with st<strong>and</strong>ard interfaces. Thus,<br />
<strong>the</strong>y can be combined in various ways according to <strong>the</strong><br />
customers’ needs<br />
Table 2: Source <strong>of</strong> evaluation for <strong>ATC</strong>’s non-functional requirements
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
3.2 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
3.2.1 Qualitative <strong>Assessment</strong> <strong>of</strong> Benefits from using <strong>the</strong> approach<br />
For <strong>the</strong> Industrial partner, <strong>the</strong> Business Benefits from using <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> are those<br />
pertaining to a S<strong>of</strong>tware Developer / Integrator thus associated with <strong>the</strong> Requirements<br />
summarized in <strong>the</strong> previous section. Below we summarise <strong>the</strong> assessment method, executed<br />
evaluation activities <strong>and</strong> results up to M30 <strong>of</strong> <strong>the</strong> project:<br />
<strong>Assessment</strong> Method<br />
� Consultation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Technology to members <strong>of</strong> four different Business<br />
Units <strong>of</strong> <strong>the</strong> Industrial Partner namely <strong>the</strong> ERP/Financial Solutions for Enterprises<br />
Unit; <strong>the</strong> Banking Solutions Unit; <strong>the</strong> Digital asset Management Unit <strong>and</strong> <strong>the</strong><br />
eLearning <strong>and</strong> Web Services Unit. A series <strong>of</strong> presentations <strong>and</strong> focused<br />
workshops will be held with <strong>the</strong> aim to collect feedback from each unit. Particular<br />
differences from different Business Units will be particularly interesting in both<br />
shaping <strong>the</strong> final <strong>SODIUM</strong> outcome <strong>and</strong> in providing appropriate directions<br />
towards which type <strong>of</strong> clients exploitation should focus.<br />
Related evaluation activities <strong>and</strong> results during M18-M24:<br />
o An introductory workshop was held in May 2006 involving <strong>the</strong> <strong>ATC</strong> <strong>SODIUM</strong><br />
team <strong>and</strong> <strong>the</strong> directors <strong>of</strong> <strong>the</strong> four aforementioned Business Units where<br />
<strong>SODIUM</strong> in support <strong>of</strong> SOA development was discussed.<br />
o The main preliminary feedback received by participants at this stage relate to<br />
<strong>the</strong> perceived value <strong>of</strong> <strong>SODIUM</strong> with respect to :<br />
� Increased developer productivity<br />
� Reduction <strong>of</strong> development cost<br />
� Reuse <strong>of</strong> services<br />
Fur<strong>the</strong>rmore, participants commented on <strong>SODIUM</strong> potential contribution to<br />
achieving enterprise level SOA <strong>and</strong> its anticipated benefits <strong>of</strong> revenue growth,<br />
cost reductions, <strong>and</strong> IT productivity that should be considered as a selling point<br />
for fur<strong>the</strong>r exploitation <strong>of</strong> <strong>the</strong> approach. This should be preceded by a series <strong>of</strong><br />
pilot projects within organisations which will demonstrate <strong>the</strong> added value <strong>of</strong> <strong>the</strong><br />
approach.<br />
The above activities were introductory, in nature, <strong>and</strong> did not aim at obtaining<br />
specific feedback for assessment. More formal activities aiming at practically<br />
assessing business benefits <strong>of</strong> <strong>the</strong> industrial user will be conducted in <strong>the</strong> last<br />
Phase <strong>of</strong> <strong>the</strong> Project, as detailed below.<br />
Related evaluation activities <strong>and</strong> results during M24-M30<br />
FP6-004559 p.26 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
� A follow-up common session was held in mid December 2006 with<br />
representatives <strong>of</strong> <strong>the</strong> four <strong>ATC</strong> main Business units where <strong>the</strong> <strong>SODIUM</strong> platform<br />
<strong>and</strong> tools were demonstrated. Representatives are <strong>of</strong> technical background <strong>and</strong><br />
have extensive experience in working in commercial projects.<br />
� During this session, following <strong>the</strong> demonstration, discussion evolved around<br />
possible enhancements <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools that can fur<strong>the</strong>r<br />
improve exploitability <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> solution in <strong>the</strong> business environment<br />
� The ability to store <strong>and</strong> retrieve compositions so as to reuse <strong>the</strong>m in<br />
different applications is considered an important feature, thus post<br />
project end, <strong>the</strong> role <strong>of</strong> <strong>the</strong> Composition repository could be extended to<br />
provide additional relevant functionality<br />
� In terms <strong>of</strong> <strong>the</strong> Composition Studio, <strong>the</strong> graphical support in <strong>the</strong> area <strong>of</strong><br />
transformations <strong>of</strong> messages between services could be enhanced<br />
� In terms <strong>of</strong> <strong>the</strong> USQL engine, <strong>the</strong> ability to store query results to <strong>the</strong><br />
Local Dictionary <strong>of</strong> <strong>the</strong> Composition Studio is seen as an additional<br />
feature that can facilitate <strong>the</strong> developer<br />
� In terms <strong>of</strong> using <strong>the</strong> USCL engine in a commercial environment issues<br />
related to load balancing <strong>and</strong> fail over should be addressed Fur<strong>the</strong>rmore,<br />
automatic code generation to support <strong>the</strong> integration <strong>of</strong> <strong>the</strong> compositions<br />
into applications would provide additional value to <strong>the</strong> solution<br />
� Support for p2p services should be extended (beyond JXTA)<br />
o Finally, <strong>the</strong> <strong>SODIUM</strong> methodology is seen as an asset that should be exploited<br />
when selling <strong>the</strong> <strong>SODIUM</strong> solution in addition to <strong>the</strong> provision <strong>of</strong> <strong>the</strong> platform<br />
<strong>and</strong> tools<br />
3.2.2 Problems envisaged in Using <strong>the</strong> Approach<br />
As discussed during <strong>the</strong> sessions organized by <strong>the</strong> Industrial Partner, <strong>the</strong> ones involving<br />
external parties, namely <strong>the</strong> CIOs <strong>of</strong> <strong>the</strong> Fourlis Group, representatives from <strong>the</strong> Banking <strong>and</strong><br />
Media sector <strong>and</strong> <strong>the</strong> ones involving internal to <strong>the</strong> company parties, <strong>the</strong> main issues<br />
identified relate to <strong>the</strong> dem<strong>and</strong>s placed on business by <strong>SODIUM</strong> in <strong>the</strong> general context <strong>of</strong> <strong>the</strong><br />
SOA paradigm such as<br />
� impact on existing business <strong>and</strong> IT processes<br />
� skills needed for developers, architects, <strong>and</strong> business analysts<br />
Fur<strong>the</strong>rmore, as in all adoption lifecycles, it is expected that initial projects will be<br />
characterized by increased complexity <strong>and</strong> cost. Pilot projects in an organisation can pace<br />
<strong>the</strong> way for more extensive use <strong>of</strong> <strong>the</strong> approach <strong>and</strong> <strong>the</strong> tools. Training <strong>and</strong> support in <strong>the</strong><br />
initial stages <strong>of</strong> application are considered an important factor for successful project<br />
completion.<br />
FP6-004559 p.27 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
4. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Results <strong>of</strong> <strong>the</strong> LOCUS pilot<br />
As detailed in Deliverable D5 Part I [3], Locus provides digital map solutions, decision-making<br />
tools, messaging systems, communication solutions, fleet management systems <strong>and</strong> patient<br />
monitoring systems. Our solutions contribute to shortening response times which in turn<br />
makes for better services to <strong>the</strong> general public. Life-critical information is obtained, logged<br />
<strong>and</strong> documented. This implies more lives saved, reduced suffering <strong>and</strong> lower costs.<br />
Emergency crews are <strong>of</strong>fered an improved working environment <strong>and</strong> <strong>the</strong> quality <strong>and</strong><br />
efficiency <strong>of</strong> services increases.<br />
Locus develops <strong>and</strong> provides solutions for efficient vehicle fleet management <strong>and</strong>/or mobile<br />
users. Locus has also a dominant role within <strong>the</strong> area <strong>of</strong> public safety in Norway with<br />
customers in <strong>the</strong> health, fire <strong>and</strong> police services. Locus is also in a strong position in <strong>the</strong><br />
security, assistance <strong>and</strong> transport segments. The customers are major players in <strong>the</strong> Nordic<br />
countries <strong>and</strong> give us a strategic platform for fur<strong>the</strong>r growth.<br />
4.1 Scope <strong>of</strong> <strong>the</strong> Pilot<br />
The Locus pilot will be based on an existing Locus’ s<strong>of</strong>tware product called TransMed. The<br />
ambition is to replace parts <strong>of</strong> <strong>the</strong> existing program code by service compositions created by<br />
means <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform.<br />
Locus represents two user roles in <strong>the</strong> project:<br />
1. The one role is that <strong>of</strong> a user <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform, developing service<br />
compositions, integrating <strong>the</strong>m into <strong>the</strong>ir products <strong>and</strong>/or (possibly in future) publishing<br />
compositions as web services, <strong>and</strong> finally executing <strong>the</strong> compositions as integrated<br />
parts <strong>of</strong> Locus’ s<strong>of</strong>tware products/applications.<br />
2. The o<strong>the</strong>r role is that <strong>of</strong> a representative for <strong>the</strong> Locus products end-users. Locus has<br />
very good knowledge <strong>of</strong> its customers’ needs, as <strong>the</strong> products <strong>the</strong>y develop are used<br />
in an area with very strict requirements in <strong>the</strong> crises domain. In addition, end users will<br />
be involved when possible, e.g. in user seminars <strong>and</strong> demos.<br />
4.1.1 Business Requirements<br />
Why use <strong>SODIUM</strong>?<br />
• Encapsulate application logic in services.<br />
• Be able to create compositions consisting <strong>of</strong> services<br />
• Compositions should be stored outside <strong>the</strong> application so that a composition might be<br />
modified without having to modify <strong>the</strong> application<br />
• Be able to reuse compositions from an existing application<br />
• Discover services ei<strong>the</strong>r at design-time or at run-time<br />
• Be able to integrate services <strong>of</strong> different st<strong>and</strong>ards, including but not limited to web<br />
services, grid services <strong>and</strong> p2p services.<br />
FP6-004559 p.28 <strong>of</strong> 139
4.1.2 Technical Requirements<br />
4.1.2.1 Functional requirements<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Major functional requirements for LOCUS include:<br />
• Unified service discovery: Must be able to discover Web, P2P <strong>and</strong> Grid services<br />
quickly <strong>and</strong> easily. Services can be discovered when <strong>the</strong> composition is being<br />
developed (i.e. at design-time), or when <strong>the</strong> composition is being run (i.e. at run-time)<br />
• Dynamic service discovery: To dynamically discover services <strong>the</strong>y must be<br />
adequately described <strong>and</strong> appropriately published in registries or networks, such as<br />
UDDI, JXTA, etc.<br />
• Support <strong>of</strong> heterogeneous services: Services can be heterogeneous. Should at<br />
least support web services, grid services <strong>and</strong> p2p services<br />
• Service Composition: A composition can be used by more than one application.<br />
Therefore one must be able to store a composition <strong>and</strong> <strong>the</strong>n retrieve it at a later stage.<br />
A composition can be modified on-<strong>the</strong>-fly<br />
• Audit: Be able to monitor <strong>the</strong> execution <strong>of</strong> a composition.<br />
• <strong>Platform</strong> independence: The composition should be able to be run on any platform<br />
4.1.2.2 Non functional requirements<br />
• Security: <strong>SODIUM</strong> must be able to support secure/closed environment for some parts<br />
<strong>of</strong> <strong>the</strong> application. This means that <strong>the</strong> platform will be part <strong>of</strong> <strong>the</strong> closed environment,<br />
i.e. installed on site. As regards secure service invocation, username/password should<br />
not be part <strong>of</strong> composition but should be passed as parameters to <strong>the</strong> composition.<br />
Must <strong>the</strong>refore be encrypted. Must be able to run on secure connection (https).<br />
• Availability. Preferably 24/7 with 98.5% reliability<br />
• Extensibility: As new technologies (e.g. new service types) emerge, <strong>the</strong> <strong>SODIUM</strong><br />
platform should be able to incorporate <strong>the</strong>m.<br />
• Modularity: It should be possible to install <strong>and</strong> run <strong>the</strong> <strong>SODIUM</strong> components as<br />
individual modules<br />
• Robustness: If a service fails, <strong>the</strong>n <strong>the</strong> system should try an alternative service (if<br />
available, <strong>and</strong> configured). If no alternative service has been configured, <strong>the</strong> system<br />
should search for alternative services, pick <strong>the</strong> ‘best’ automatically <strong>and</strong> run it. The<br />
system must log that <strong>the</strong> original service failed, <strong>and</strong> log which service was used<br />
instead. The application should be notified, so that it is possible to inform <strong>the</strong> user that<br />
an alternative service has been selected. This should be done with no involvement<br />
from <strong>the</strong> users.<br />
FP6-004559 p.29 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• Scalability/Exp<strong>and</strong>ability: Must be able to scale <strong>and</strong> exp<strong>and</strong> <strong>the</strong> <strong>SODIUM</strong> platform to<br />
be able to h<strong>and</strong>le an increasing traffic.<br />
• Maintainability: If a service has been upgraded, <strong>the</strong>n <strong>the</strong> old version <strong>of</strong> <strong>the</strong> service<br />
must be available for some time (e.g. a month) in order for <strong>the</strong> IT personnel to<br />
upgrade <strong>the</strong> s<strong>of</strong>tware to use <strong>the</strong> new version <strong>of</strong> <strong>the</strong> service. This means that <strong>the</strong><br />
system should log any attempt to use an out-<strong>of</strong>-date service <strong>and</strong> send a message to<br />
<strong>the</strong> responsible personnel about this.<br />
4.1.3 Pilot Description<br />
As detailed in Deliverable D5 Part I [3], <strong>the</strong> Locus pilot will be based on an existing Locus’<br />
s<strong>of</strong>tware product called TransMed. The ambition is to replace existing code with<br />
heterogeneous service compositions created by using <strong>the</strong> <strong>SODIUM</strong> platform.<br />
TransMed is a fleet management system used by EMS communication centres throughout<br />
Norway.<br />
TransMed is designed to transfer information between <strong>the</strong> EMS communication centres <strong>and</strong><br />
<strong>the</strong> ambulances.<br />
A simplified form <strong>of</strong> a Web Service usage is implemented today: On <strong>the</strong> TransMed PDA <strong>the</strong><br />
map images are loaded from an Internet server. But to achieve this all code has been put into<br />
<strong>the</strong> TransMed source. The goal is to have a unified interface when running Internet services.<br />
This will be achieved by using <strong>the</strong> <strong>SODIUM</strong> platform to create a service composition, <strong>and</strong><br />
<strong>the</strong>n from TransMed using a <strong>SODIUM</strong> API, execute <strong>the</strong> composition <strong>and</strong> return <strong>the</strong> result<br />
from <strong>the</strong> execution to TransMed.<br />
TransMed today is based on traditional client-server technology, GSM-SMS <strong>and</strong> GPRS. Most<br />
<strong>of</strong> <strong>the</strong> processing is performed on <strong>the</strong> server, with only minor GUI processing performed on<br />
<strong>the</strong> various clients.<br />
The <strong>SODIUM</strong> outcomes will be used by <strong>the</strong> pilot to:<br />
• identify which tasks to be solved <strong>and</strong> <strong>the</strong>ir interrelationship (flow patterns)<br />
• detail <strong>the</strong>se tasks (subtasks)<br />
• specify QoS requirements (optional, as this information is not provided by most<br />
available services <strong>and</strong> due to lack <strong>of</strong> st<strong>and</strong>ards in <strong>the</strong> three service domains)<br />
• identify which <strong>of</strong> <strong>the</strong>se tasks can be executed by services<br />
• locate suitable services or optionally associate a query with that task<br />
• ensure correct flow <strong>of</strong> data<br />
• execute composition (both design <strong>and</strong> real time)<br />
• upload, update, reuse, delete compositions in composition repository<br />
FP6-004559 p.30 <strong>of</strong> 139
4.2 <strong>SODIUM</strong> Features tested (LOCUS)<br />
FP6-004559 p.31 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The following table presents <strong>the</strong> main <strong>SODIUM</strong> platform features tested <strong>and</strong> validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> pilot as described in<br />
deliverable D5 Part I [3]. Each <strong>of</strong> <strong>the</strong>se features is related to one or more specific requirements that have been formulated in D3 part I [1].<br />
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L01 Use <strong>of</strong> <strong>the</strong> Visual Editor to<br />
create <strong>the</strong> visual graph <strong>of</strong> <strong>the</strong><br />
composite service by <strong>the</strong> pilot<br />
team.<br />
L02 Access <strong>the</strong> repository to retrieve<br />
stored services (if any) by <strong>the</strong><br />
pilot team<br />
L03 Access <strong>the</strong> USQL engine to<br />
retrieve available services<br />
L04 Access <strong>the</strong> USCL engine to<br />
execute resulting composition<br />
L05 Open <strong>and</strong> save compositions<br />
both in <strong>the</strong> local file system <strong>and</strong><br />
in <strong>the</strong> composition repository<br />
Done when running <strong>the</strong><br />
composition suite.<br />
Done when running <strong>the</strong><br />
composition repository.<br />
Done when running <strong>the</strong> USQL<br />
engine GUI.<br />
Done when passing a<br />
composition converted into USCL<br />
to <strong>the</strong> execution engine <strong>and</strong> when<br />
invoking <strong>the</strong> execution engine<br />
from <strong>the</strong> pilot application.<br />
Done when running <strong>the</strong><br />
composition suite<br />
Requirement in D3<br />
Part I Section 6.2<br />
RP05, RP13, RM02,<br />
RM03, RM06, RM10,<br />
RM11, RM31, RD08,<br />
RM27<br />
Req. met Notes<br />
Yes.<br />
RM02, RF01, RF02 Yes. Compositions were stored in <strong>the</strong><br />
Composition Repository <strong>and</strong> retrieved<br />
again. The compositions could <strong>the</strong>n be<br />
edited in <strong>the</strong> Visual Composition Studio.<br />
RP04, RM13, RD08 Yes Tested from within <strong>the</strong> Visual Composition<br />
Studio.<br />
RE05, RD01, RD02,<br />
RD03, RD04, RD05,<br />
RD08<br />
RM02, RM32, RP08,<br />
RF01, RF02, RD03,<br />
RF05, RF06, RF07<br />
Yes. Executed <strong>the</strong> composition by starting it<br />
from within <strong>the</strong> Execution Engine <strong>and</strong><br />
starting it from a .NET client.<br />
Yes. Visual Composition Studio has <strong>the</strong> ability<br />
to store <strong>the</strong> composition to <strong>the</strong> file system.<br />
The Composition Repository h<strong>and</strong>led <strong>the</strong><br />
storage <strong>of</strong> <strong>the</strong> composition in <strong>the</strong><br />
repository.
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L06 Use basic control pattern<br />
Sequence. (Executes activities<br />
in sequence)<br />
L07 Use basic control pattern<br />
Parallel Split. (Executed<br />
activities in parallel)<br />
L08 Use basic control pattern<br />
Synchronization. (Synchronize<br />
two parallel threads <strong>of</strong><br />
execution)<br />
L09 Use basic control pattern<br />
Exclusive Choice. (Choose one<br />
execution path from many<br />
alternatives)<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
compositions:<br />
• Create gas dispersion<br />
plume <strong>and</strong> map<br />
presentation<br />
• Calculate resource<br />
coverages<br />
• Chat communication<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
composition:<br />
• Find caller’s position<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
composition<br />
• Find caller’s position<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
composition<br />
• Find caller’s position<br />
FP6-004559 p.32 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
Req. met Notes<br />
Yes. All compositions can be run with <strong>the</strong> tasks<br />
executed in sequence.<br />
Yes Tasks can be executed in parallel, <strong>and</strong><br />
<strong>the</strong> Execution Engine waits for both to<br />
complete before execution is resumed.<br />
Yes. The Execution Engine waits for all tasks<br />
involved in a parallel thread to complete<br />
before execution is resumed.<br />
Yes Is solved by using XPath expression in<br />
decision node.
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L10 Use basic control pattern Simple<br />
Merge. (Merge two alternative<br />
execution paths)<br />
L11 Use advanced branching <strong>and</strong><br />
synchronization pattern<br />
Discriminator.<br />
(wait for one among a set <strong>of</strong><br />
activities completes before<br />
proceedings; if several <strong>of</strong> <strong>the</strong><br />
activities being waited for are<br />
executed, <strong>the</strong> discriminator only<br />
fires once)<br />
L12 Use advanced branching <strong>and</strong><br />
synchronization pattern Multiple<br />
choice.<br />
(choose several execution paths<br />
from many alternatives)<br />
L13 Run query engine, search for<br />
services <strong>and</strong> let query engine<br />
return no results.<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
composition<br />
• Find caller’s position<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
compositions:<br />
• Create gas dispersion<br />
plume <strong>and</strong> map<br />
presentation<br />
• Contact GeoData<br />
provider<br />
Will be done when composing<br />
<strong>and</strong> running <strong>the</strong> service<br />
compositions:<br />
• Find caller’s position<br />
• Calculate resource<br />
coverages<br />
Will be done by running one <strong>of</strong> <strong>the</strong><br />
compositions with query<br />
parameters that are not used by<br />
any service.<br />
FP6-004559 p.33 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RM03, RM06, RM09,<br />
RM12, RM16,<br />
RM21, RM24, RM27,<br />
RM30<br />
RD01, RD02, RD08,<br />
RD14, RD23, RD24<br />
Req. met Notes<br />
Yes Was tested when getting information from<br />
stationary phone <strong>and</strong> mobile phone, only<br />
one <strong>of</strong> <strong>the</strong> tasks was executed <strong>and</strong><br />
execution continued when <strong>the</strong> task was<br />
completed.<br />
Yes Done when we have alternative (web)<br />
services on a task,<br />
Yes Several tasks are fired <strong>and</strong> <strong>the</strong> result from<br />
<strong>the</strong> tasks was inspected before execution<br />
continued.<br />
Yes Tested by using name <strong>of</strong> service that did<br />
not exist, name <strong>of</strong> provider that did not<br />
exist.
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L14 Translate VSCL file to USCL file Will be done when composition is<br />
complete, <strong>and</strong> we are ready to<br />
run/test it in <strong>the</strong> execution engine<br />
L15 Run composition, defined<br />
service is not available, use<br />
alternative service defined in<br />
composition instead.<br />
L16 Run composition, defined<br />
service is not available, run<br />
query engine to search for<br />
services instead.<br />
Will be done by modifying <strong>and</strong><br />
running <strong>the</strong> Contact geoData<br />
provider composition <strong>and</strong> make<br />
sure that defined service is not<br />
available.<br />
Will be done by modifying <strong>and</strong><br />
running <strong>the</strong> SetupAppointment<br />
composition <strong>and</strong> make sure that<br />
<strong>the</strong> defined service is not<br />
available.<br />
FP6-004559 p.34 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
Req. met Notes<br />
RM15, RM23 Yes Done in <strong>the</strong> Visual Composition Studio.<br />
After translation <strong>the</strong> USCL file was<br />
inspected <strong>and</strong> <strong>the</strong>n deployed in <strong>the</strong><br />
Execution Engine.<br />
RM17, RM18, RM19 Yes Contacted <strong>the</strong> GeoData provider (by<br />
getting a map) on two different servers.<br />
Shut down one <strong>of</strong> <strong>the</strong> servers, <strong>the</strong> map<br />
was <strong>the</strong>n retrieved from <strong>the</strong> still running<br />
server.<br />
RD08, RD23, RM14 Yes This was done using a MEDISYSTEM<br />
query, hence not tested by Locus
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L17 Run query engine to search for<br />
services based on specific QoS<br />
criteria. No services are found to<br />
meet <strong>the</strong> specified QoS<br />
constraints.<br />
This will be done by modifying <strong>the</strong><br />
find caller’s position composition.<br />
First, a query based on syntactic<br />
<strong>and</strong>/or semantic criteria for a<br />
specific task in <strong>the</strong> composition<br />
will be performed, resulting in<br />
some matching services.<br />
Next, <strong>the</strong> same query will be<br />
fur<strong>the</strong>r constrained with <strong>the</strong><br />
addition <strong>of</strong> tight QoS criteria,<br />
making sure that <strong>the</strong> previously<br />
returned services do not meet <strong>the</strong><br />
requested quality values.<br />
FP6-004559 p.35 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RD05, RD08, RD23,<br />
RM14<br />
Req. met Notes<br />
Yes Used a 100% availability criterion, which<br />
was not met by any <strong>of</strong> <strong>the</strong> services.
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L18 Run query engine, return<br />
service <strong>of</strong> type Web Service.<br />
Invoke <strong>the</strong> service.<br />
L19 Run query engine, return<br />
service <strong>of</strong> type p2p. Invoke <strong>the</strong><br />
service.<br />
Done by running compositions:<br />
• Find caller’s position<br />
• Crate gas dispersion<br />
plume<br />
• Determine best route to<br />
location<br />
• Contact resource<br />
coverage provider<br />
• Contact Geo data<br />
provider<br />
Done by running compositions:<br />
• Char communication<br />
• Transfer clip to server<br />
• Transfer clip to recipients<br />
FP6-004559 p.36 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RD01, RD02, RD04,<br />
RD06, RD07, RD08,<br />
RD09, RD11, RD23,<br />
RM14<br />
RD03, RD07, RD08,<br />
RD18, RD23, RM14<br />
Req. met Notes<br />
Yes<br />
Searched for <strong>the</strong> service in <strong>the</strong> Query<br />
Engine. The service was <strong>the</strong>n connected<br />
to a given task. USCL file was created<br />
<strong>and</strong> Execution Engine executed <strong>the</strong><br />
composition.<br />
Yes Locus tested <strong>the</strong> part <strong>of</strong> querying for a<br />
p2p service. This test was successful.<br />
We were able to discover <strong>the</strong> p2p service,<br />
but <strong>the</strong> result did not contain adequate<br />
information for invoking it directly. (The<br />
actual execution <strong>of</strong> <strong>the</strong> composition was<br />
performed in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
MEDISYSTEM pilot)
LOCUS<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
L20 Run query engine, return<br />
service <strong>of</strong> type Grid Service.<br />
Invoke <strong>the</strong> service.<br />
L21 The USQL Engine will accept a<br />
USQL query containing USQLsupported<br />
QoS search criteria<br />
such as availability, reliability,<br />
processing time, <strong>and</strong> security.<br />
Then, <strong>the</strong> query will be<br />
forwarded by <strong>the</strong> USQL Engine<br />
to <strong>the</strong> appropriate service<br />
registries <strong>and</strong> / or p2p networks<br />
where it will be executed.<br />
The resulting USQL response<br />
will contain only services<br />
conforming to <strong>the</strong> specified QoS<br />
requirements <strong>and</strong> <strong>the</strong> best<br />
service will appear first in <strong>the</strong> list<br />
for <strong>the</strong> execution engine to<br />
select <strong>and</strong> invoke it.<br />
Done by running compositions:<br />
• Calculate resource<br />
coverages<br />
• Determine best route to<br />
location<br />
Will be done by running <strong>the</strong><br />
composition<br />
• Find caller’s position<br />
<strong>and</strong> make sure that services that<br />
match <strong>the</strong> QoS criteria are<br />
selected.<br />
FP6-004559 p.37 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RD07, RD08, RD16,<br />
RD24, RM14<br />
Req. met Notes<br />
Yes<br />
Table 3: <strong>SODIUM</strong> platform features tested at LOCUS pilot<br />
Locus tested <strong>the</strong> part <strong>of</strong> querying for a<br />
grid service. This test was successful.<br />
We were able to discover <strong>the</strong> grid service,<br />
but <strong>the</strong> result did not contain adequate<br />
information for invoking it directly.(The<br />
actual execution <strong>of</strong> <strong>the</strong> composition was<br />
performed in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
MEDISYSTEM pilot)<br />
RD05, RD08 Yes Done in <strong>the</strong> Composition Studio by<br />
invoking <strong>the</strong> USQL engine with a given<br />
set <strong>of</strong> QoS criteria. The Query Engine<br />
<strong>the</strong>n returned matching services.
FP6-004559 p.38 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The following table summarises validation <strong>of</strong> <strong>the</strong> following important features <strong>of</strong> <strong>SODIUM</strong> in <strong>the</strong> context <strong>of</strong> <strong>the</strong> LOCUS pilot: QoS, trust &<br />
security, fault h<strong>and</strong>ling/tolerance, dynamic discovery <strong>of</strong> services <strong>and</strong> performance.<br />
Features Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
QoS QoS <strong>of</strong>fers was defined for some specific services, paying special attention to <strong>the</strong> alternative ones, i.e. services which are<br />
functionally similar <strong>and</strong> expose a similar interface. The QoS parameters were manually annotated in <strong>the</strong> service descriptions<br />
with <strong>the</strong> use <strong>of</strong> <strong>the</strong> WS-QoS schema.<br />
The Query Engine used <strong>the</strong> QoS values when selecting services. We gradually refined <strong>the</strong> query until we were left with only<br />
<strong>the</strong> services with <strong>the</strong> best fitted QoS values.<br />
Trust & Security The ability to use services from specific service providers is important <strong>and</strong> was demonstrated using three different approaches:<br />
1. Register /import services from known (<strong>and</strong> hence trusted) providers into <strong>the</strong> Visual Composition Studio <strong>and</strong> <strong>the</strong>reafter<br />
use <strong>the</strong>se services in <strong>the</strong> composition.<br />
2. Create a reusable query in <strong>the</strong> USQL engine where a filter can be added specifying which service providers that<br />
should be excluded or included.<br />
3. Define a query in <strong>the</strong> USQL engine that searches for services in specific registries.<br />
4. Use <strong>the</strong> Security search criterion <strong>of</strong> USQL to discover services operating over secure communication channels (e.g.<br />
HTTPS)<br />
The first 3 approaches were tested <strong>and</strong> worked. The last approach was not tested, as all Locus services operate over HTTP.
Features Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
Fault h<strong>and</strong>ling/tolerance Exception<br />
FP6-004559 p.39 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Tested by closing <strong>the</strong> web server where a service resided before starting <strong>the</strong> Execution Engine. The Execution Engine <strong>the</strong>n<br />
used an alternative service (if available) or returned to <strong>the</strong> client with an error code if no service was available.<br />
Timeout<br />
Added two services as alternative services to a specific task. Set <strong>the</strong> timeout so low that <strong>the</strong> first service was not able to reply<br />
before <strong>the</strong> time-out. The second service was <strong>the</strong>n executed.<br />
Dynamic discovery <strong>of</strong> services A query may be associated with a task in <strong>the</strong> composition. At run-time <strong>the</strong> USCL Execution Engine will forward <strong>the</strong> query <strong>the</strong><br />
<strong>the</strong> USQL Engine for execution, <strong>and</strong> <strong>the</strong> first service on <strong>the</strong> query result from <strong>the</strong> query execution will be selected. Then <strong>the</strong><br />
USCL Execution Engine will invoke <strong>the</strong> selected service.<br />
This scenario was successfully tested by MEDISYSTEM
Features Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
Performance<br />
FP6-004559 p.40 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The USCL ExectionEngine logs all execution times.<br />
An example <strong>of</strong> this is displayed below:<br />
{FindARouteUsingWsAndGrid}Proc_Transform_input_N66115[1.0].0.0:0:WALL<br />
5<br />
0.015<br />
{FindARouteUsingWsAndGrid}Proc_N66213_Alt_2[1.0].CalculateFastestRoute.0:0:WALL<br />
5<br />
1.016<br />
{FindARouteUsingWsAndGrid}GetFastestRouteDescription[1.0].0.0:0:WALL<br />
5<br />
2.031<br />
{FindARouteUsingWsAndGrid}Proc_N66115_Alt_1[1.0].GetFastestRouteDescription.0:0:WALL<br />
5<br />
0.984<br />
{FindARouteUsingWsAndGrid}Proc_Transform_input_N66115[1.0].Task_Transform_input_part_1.0:0:WALL<br />
5<br />
0.015<br />
{FindARouteUsingWsAndGrid}Proc_N66213_Alt_2[1.0].Task_Transform_input.0:0:WALL<br />
5<br />
0.016<br />
{FindARouteUsingWsAndGrid}Proc_Transform_input_N66213[1.0].Task_Transform_input_part_1.0:0:WALL<br />
5<br />
0.016<br />
{FindARouteUsingWsAndGrid}Proc_N66213_Alt_2[1.0].0.0:0:WALL<br />
5<br />
.047<br />
The time is given in seconds with milliseconds as precision. The first transformation took 0.015 seconds to complete.<br />
There are also time indications for when processes start <strong>and</strong> end in <strong>the</strong> same log:<br />
{FindARouteUsingWsAndGrid}Proc_N66213_Alt_2[1.0].CalculateFastestRoute.0:0:STARTDT<br />
23<br />
2007-01-11 13:24:17.585<br />
{FindARouteUsingWsAndGrid}GetFastestRouteDescription[1.0].CalculateFastestRoute_Alt_2.0:0:ENDDT<br />
23<br />
2007-01-11 13:24:18.616<br />
By subtracting <strong>the</strong> start from <strong>the</strong> end <strong>the</strong> complete execution time can be calculated.<br />
Table 4: Important features tested at LOCUS pilot
4.3 <strong>Evaluation</strong> checklists used<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Checklists used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> LOCUS pilot for evaluating <strong>the</strong> <strong>SODIUM</strong> tools <strong>and</strong><br />
methodology can be found in Appendix III - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> tools <strong>and</strong><br />
Appendix IV - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> methodology.<br />
4.4 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
4.4.1 Preliminary <strong>Assessment</strong> –Installation Phase<br />
This section provides a first assessment <strong>of</strong> <strong>the</strong> installation phase <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> tools at<br />
LOCUS premises up to Month 27 <strong>of</strong> <strong>the</strong> project.<br />
Details <strong>of</strong> <strong>the</strong> LOCUS environment including Operating System, Application Server(s), o<strong>the</strong>r<br />
required s<strong>of</strong>tware <strong>and</strong> hardware where <strong>SODIUM</strong> platform is installed are included.<br />
The assessment addresses <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> components Visual Composition<br />
Suite, USQL engine, USCL engine <strong>and</strong> Composition Repository. Encountered problems with<br />
installation <strong>of</strong> <strong>the</strong>se are described as well as <strong>the</strong> resolution approach followed where<br />
applicable.<br />
4.4.1.1 Description <strong>of</strong> LOCUS environment in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
Equipment & internet services<br />
The following table contains <strong>the</strong> equipment <strong>and</strong> services located at LOCUS premises that are<br />
used for <strong>the</strong> LOCUS Pilot <strong>and</strong> for <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform.<br />
Equipment/Service Name<br />
Operating<br />
System<br />
Role<br />
Status<br />
Fortinet Fortigate 100A Fortinet Linux Firewall Operational<br />
Fiber Optic Internet<br />
Operational<br />
Internet Connection Open System<br />
Owned by<br />
Locus<br />
Connections from Local ISP.<br />
It is <strong>the</strong> main access to our<br />
web server to store <strong>the</strong><br />
services<br />
Fujitsu Siemens<br />
computer<br />
(Laptop)<br />
laptop<br />
MS Windows<br />
XP Pr<strong>of</strong>essional<br />
Used as a client for <strong>the</strong><br />
Sodium pilot <strong>and</strong> Visual<br />
Editor.<br />
Operational<br />
No Br<strong>and</strong><br />
Server<br />
transmed_data<br />
MS Windows<br />
Server 2003<br />
Store IIS Server, UDDI<br />
Server.<br />
Operational<br />
MS Windows Contains <strong>the</strong> Spider <strong>and</strong> <strong>the</strong> Operational<br />
No Br<strong>and</strong> Server spiderserver XP Pr<strong>of</strong>essional<br />
2002<br />
ResponseAnalyzer programs<br />
Table 5: LOCUS equipment <strong>and</strong> internet services used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
Required s<strong>of</strong>tware<br />
The following table contains <strong>the</strong> s<strong>of</strong>tware <strong>and</strong> applications that are used in conjunction with<br />
<strong>the</strong> LOCUS Pilot <strong>and</strong> <strong>the</strong> <strong>SODIUM</strong> platform<br />
FP6-004559 p.41 <strong>of</strong> 139
S<strong>of</strong>tware / Application Installed on<br />
DB MS SQL Server<br />
2000<br />
MS IIS Server 5.1 transweb_data<br />
MS UDDI Server<br />
ver.5.2.3790<br />
MS .Net Framework 2.0<br />
v2.0.50727<br />
MS SQL Desktop<br />
Engine (UDDI)<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Related<br />
databases /<br />
files<br />
Transweb_data GAB, TC30<br />
InternalWS<br />
ExternalWS<br />
UDDI,<br />
transweb_data UDDI<br />
tone_laptop NA<br />
transweb_server UDDI<br />
Spider 2.1 SpiderServer NA<br />
ResponseAnalyzer 1.0 SpiderServer NA<br />
Visual Studio 2005<br />
v 8.0.50727.42<br />
tone_laptop NA<br />
Role<br />
SQL database used for <strong>the</strong> Web<br />
services<br />
Store <strong>and</strong> publish web pages<br />
Table 6: Required s<strong>of</strong>tware for <strong>the</strong> LOCUS pilot<br />
4.4.1.2 <strong>SODIUM</strong> platform tools installation : problems <strong>and</strong> solutions<br />
FP6-004559 p.42 <strong>of</strong> 139<br />
Status<br />
Operationa<br />
l<br />
Operationa<br />
l<br />
Publish UDDI information Operationa<br />
l<br />
Used by web services created in Operationa<br />
Visual Studio<br />
l<br />
Database used by <strong>the</strong> UDDI<br />
Operationa<br />
publisher<br />
l<br />
Route calculation <strong>and</strong> optimization Operationa<br />
l<br />
Equipment coverage Operationa<br />
l<br />
Web service development Operationa<br />
l<br />
Server environment installation:<br />
The following table lists <strong>the</strong> s<strong>of</strong>tware applications <strong>and</strong> <strong>SODIUM</strong> components that are used for<br />
<strong>the</strong> Locus Pilot <strong>and</strong> in order to deploy <strong>the</strong> <strong>SODIUM</strong> platform on <strong>the</strong> server side. Problems<br />
encountered during installation <strong>and</strong> solution to <strong>the</strong>se are also included.<br />
S<strong>of</strong>tware / component Computer Status Problem encountered Solution<br />
Eclipse 3.1 IDE<br />
tone_laptop<br />
Operational<br />
Versioning Install <strong>the</strong><br />
latest version<br />
transweb_dat<br />
The web server did not start Problem was<br />
a<br />
due to old<br />
Web Server Apache<br />
Tomcat 4.1.31<br />
Operational<br />
installation <strong>of</strong><br />
Tomcat 4.0<br />
which kept<br />
ports<br />
allocated.<br />
Web Server Apache<br />
Tomcat 5.0.30<br />
tone_laptop<br />
Operational<br />
None<br />
NA<br />
Java 1.5.0<br />
transweb_dat<br />
a<br />
Operational None<br />
NA<br />
<strong>SODIUM</strong>: USQL Engine tone_laptop Operational None NA<br />
<strong>SODIUM</strong>: USCL Engine tone_laptop Operational None NA<br />
<strong>SODIUM</strong>: Composition<br />
Repository<br />
transweb_dat<br />
a<br />
Operational None<br />
NA<br />
transweb_dat<br />
Problem importing SQL scripts Had to give<br />
<strong>SODIUM</strong>: Composition a<br />
password <strong>of</strong><br />
Repository DB (MySQL<br />
Operational<br />
user<br />
4.1)<br />
sodiumrepo<br />
instead <strong>of</strong>
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
S<strong>of</strong>tware / component Computer Status Problem encountered Solution<br />
root user.<br />
MS SQL Desktop<br />
Engine<br />
transweb_dat<br />
a<br />
Operational None<br />
Table 7: LOCUS: Installation <strong>of</strong> <strong>SODIUM</strong> tools / server side: problems <strong>and</strong> solutions<br />
Client environment installation (all on laptop):<br />
The following table lists <strong>the</strong> s<strong>of</strong>tware applications <strong>and</strong> <strong>SODIUM</strong> components that are used by<br />
<strong>the</strong> LOCUS Pilot <strong>and</strong> in order to deploy <strong>the</strong> <strong>SODIUM</strong> platform on <strong>the</strong> client side: Problems<br />
encountered during installation <strong>and</strong> solutions to <strong>the</strong>se are also included where applicable.<br />
S<strong>of</strong>tware / component Status Problem Solution<br />
Eclipse 3.1 IDE Operational None NA<br />
Java 1.5.0 Operational None NA<br />
<strong>SODIUM</strong>: Visual Editor<br />
(Eclipse Plug-in)<br />
Operational None<br />
NA<br />
<strong>SODIUM</strong>: USQL Engine<br />
Operational None<br />
NA<br />
(Eclipse Plug-in)<br />
<strong>SODIUM</strong>: USCL Engine<br />
(Eclipse Plug-in)<br />
Operational None<br />
Table 8: LOCUS : Installation <strong>of</strong> <strong>SODIUM</strong> tools / client side: problems <strong>and</strong> solutions<br />
4.4.1.3 <strong>Evaluation</strong> <strong>of</strong> platform-level requirements during <strong>the</strong> installation<br />
The following table summarizes <strong>the</strong> evaluation <strong>of</strong> <strong>SODIUM</strong> platform level requirements as per<br />
D3 Part I during <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform components at LOCUS:<br />
Requirement Satisfied <strong>Assessment</strong> at<br />
installation<br />
RP03: <strong>Platform</strong><br />
independence<br />
Details<br />
YES All installed OK All components were installed<br />
without issues related to <strong>the</strong><br />
platform. But must bear in mind<br />
that only <strong>the</strong> Windows platform<br />
was selected. System was not<br />
installed on for instance a Linux<br />
installation.<br />
RP11: Security YES All installed OK All <strong>the</strong> security issues were<br />
managed outside <strong>the</strong> <strong>SODIUM</strong><br />
platform such as firewall, use <strong>of</strong><br />
trusted sites <strong>and</strong> sources.<br />
RP16: Modularity YES All installed OK Modularity requirement is fulfilled.<br />
Each <strong>SODIUM</strong> component was<br />
installed separately <strong>and</strong> was able<br />
FP6-004559 p.43 <strong>of</strong> 139<br />
NA<br />
NA
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement Satisfied <strong>Assessment</strong> at<br />
installation<br />
Details<br />
to run on its own.<br />
Table 9: <strong>Evaluation</strong> <strong>of</strong> platform level requirements: installation phase at LOCUS<br />
FP6-004559 p.44 <strong>of</strong> 139
4.4.2 <strong>Assessment</strong> related to <strong>the</strong> use <strong>of</strong> tools <strong>and</strong> methodology till end <strong>of</strong> project<br />
4.4.2.1 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Visual Editor<br />
FP6-004559 p.45 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
Heterogeneous<br />
service types<br />
Ability to model<br />
service operation calls<br />
to Web, Grid <strong>and</strong> P2P<br />
services<br />
Basic file h<strong>and</strong>ling Support for create,<br />
open, edit <strong>and</strong> print<br />
Common workflow<br />
patterns<br />
Support for sequence,<br />
parallel split,<br />
synchronization,<br />
exclusive choice,<br />
multiple choice,<br />
simple merge <strong>and</strong><br />
discriminator<br />
Documentation Support for basic<br />
annotation <strong>and</strong><br />
commenting<br />
functionality<br />
St<strong>and</strong>ardized<br />
modeling language<br />
Should be based on a<br />
st<strong>and</strong>ard modeling<br />
language<br />
QoS Characteristics The ability to specify<br />
QoS properties <strong>of</strong><br />
specific services as<br />
Manual inspection Operational tests, trials OK Web service, grid service <strong>and</strong><br />
p2p service was successfully<br />
modelled.<br />
Manual inspection Operational tests, trials OK<br />
Manual inspection Operational tests, trials OK Visual Composition Studio has<br />
<strong>the</strong> ability to model <strong>the</strong> common<br />
workflow patterns, <strong>and</strong> <strong>the</strong><br />
execution engine can execute<br />
<strong>the</strong> USCL created by <strong>the</strong><br />
Composition Studio.<br />
Manual inspection Operational tests, trials OK All elements have a Description<br />
column that can be used for<br />
commenting.<br />
In addition all elements have<br />
semantic type definition.<br />
Manual inspection Comparison with UML2<br />
activity models<br />
OK The composition looks like a<br />
UML2 activity model.<br />
Manual inspection Operational tests, trials OK QoS criteria can be specified for<br />
each task.
FP6-004559 p.46 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
well as <strong>the</strong> QoS<br />
requirements <strong>of</strong><br />
specific tasks<br />
Basic composition<br />
constructs<br />
Support for task<br />
modeling, service<br />
operation modeling,<br />
input/output<br />
parameters <strong>and</strong> data<br />
transformations, start<br />
<strong>and</strong> end nodes<br />
Parameter types Support for defining<br />
both syntactic <strong>and</strong><br />
semantic types for<br />
input/output<br />
parameters.<br />
Timeouts Ability to specify<br />
maximum response<br />
Task hierarchy<br />
time for a service<br />
Support for specifying<br />
sublevels <strong>of</strong> tasks<br />
Graphical symbols Should be st<strong>and</strong>ardsbased<br />
Au<strong>the</strong>ntication<br />
constraints<br />
Support for specifying<br />
distinct<br />
au<strong>the</strong>ntications<br />
requirements for<br />
different service<br />
operations within <strong>the</strong><br />
same composition<br />
Manual inspection Operational tests, trials OK All has been implemented.<br />
Manual inspection Operational tests, trials OK All types <strong>of</strong> parameters are<br />
provided.<br />
Manual inspection Operational tests, trials OK Can set maximum response<br />
time for each task.<br />
Manual inspection Operational tests, trials OK Can create sub compositions.<br />
Compare with UML2 Comparison with UML2<br />
activity models<br />
Manual inspection Operational tests, trials Not OK This has not been implemented.<br />
OK
FP6-004559 p.47 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
Basic editing<br />
functions<br />
Technical evaluation<br />
Support for<br />
enabling/disabling<br />
sticky selection<br />
4.4.2.2 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USQL engine<br />
Manual inspection Operational tests, trials OK Sticky selection can be easily<br />
enabled <strong>and</strong> disabled.<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
Response time < 20 seconds Log files Operational tests, trials OK When searching for services in a<br />
JXTA network which was not<br />
available, it took a long time<br />
before <strong>the</strong> query timed out.<br />
However this timeout could be<br />
modified, <strong>and</strong> after doing that <strong>the</strong><br />
response time was within <strong>the</strong><br />
requested limit.<br />
Exception h<strong>and</strong>ling Transparency,<br />
effectiveness<br />
Security Au<strong>the</strong>ntication for<br />
administrators<br />
Interviews, Log files Operational tests, trials OK Exceptions <strong>and</strong> any error<br />
conditions are logged in <strong>the</strong><br />
st<strong>and</strong>ard Tomcat log, easily<br />
available in <strong>the</strong> log folder.<br />
Interviews Operational tests NOT OK Previous versions <strong>of</strong> <strong>the</strong> USQL<br />
Engine used a web service<br />
interface with au<strong>the</strong>ntication to<br />
administer <strong>the</strong> server. Current<br />
version is not using that, <strong>and</strong><br />
management is done manually
FP6-004559 p.48 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
<strong>and</strong> locally with respect to <strong>the</strong><br />
installation, hence <strong>the</strong> need for<br />
au<strong>the</strong>ntication is limited.<br />
Availability 24/7 Interviews Operational tests, trials OK The Query Engine can be set up<br />
on any server, <strong>the</strong>refore if <strong>the</strong><br />
server is available 24/7 <strong>the</strong>n <strong>the</strong><br />
Query Engine is available.<br />
Exp<strong>and</strong>ability Extensions must be<br />
easily accommodated<br />
Interviews Trials OK This refers to <strong>the</strong> ability <strong>of</strong> <strong>the</strong><br />
USQL Engine to accommodate<br />
different types <strong>of</strong> registries (e.g.<br />
UDDI, JXTA) <strong>and</strong> service<br />
description protocols (e.g. WSDL,<br />
SAWSDL, WS-QoS) with <strong>the</strong> use<br />
<strong>of</strong> plug-ins. Tested searching for<br />
Web services, p2p <strong>and</strong> grid<br />
services.<br />
Maintainability On a monthly basis Interviews Trials Not<br />
tested.<br />
Scalability 3 registries per query<br />
within accepted<br />
response time<br />
Log files Operational tests, trials Partially<br />
supported<br />
Cannot answer this since we are<br />
not in production.<br />
Locus maintains only 2 registries<br />
(1 UDDI server <strong>and</strong> 1 JXTA<br />
network). Thus, only 2 registries<br />
per query were tested.<br />
Portability Install anywhere Interviews Operational tests OK Installed on Windows platform –<br />
no problem. The Query Engine<br />
uses Tomcat, <strong>the</strong>refore portability<br />
is ensured.
User acceptance <strong>and</strong> impact analysis evaluation<br />
FP6-004559 p.49 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Result Comment<br />
Usefulness Use <strong>of</strong> <strong>the</strong> engine<br />
within <strong>the</strong> development<br />
lifecycle<br />
Ease <strong>of</strong><br />
underst<strong>and</strong>ing<br />
Novice users must be<br />
able to use <strong>the</strong> engine<br />
for service discovery<br />
Willingness to use Users must be willing<br />
to use <strong>the</strong> query engine<br />
during service<br />
composition<br />
Willingness to pay Users must be willing<br />
to pay in order to use<br />
<strong>the</strong> query engine<br />
4.4.2.3 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> overall methodology<br />
Questionnaires Post-surveys OK The engine is very useful when<br />
<strong>the</strong>re are a lot <strong>of</strong> services<br />
available. It makes it easy to<br />
search for <strong>and</strong> select <strong>the</strong> most<br />
appropriate service.<br />
Questionnaires Trials OK Only problem was in<br />
underst<strong>and</strong>ing <strong>of</strong> <strong>the</strong> concept <strong>of</strong><br />
ontologies, but developing <strong>and</strong><br />
maintaining an ontology is not<br />
within <strong>the</strong> scope <strong>of</strong> <strong>SODIUM</strong>.<br />
Interviews Pre-survey, Trials OK Tool was used when developing<br />
new compositions in <strong>the</strong> Visual<br />
Composition Studio.<br />
Interviews Post-surveys OK Based on Locus’ need for a<br />
query engine <strong>the</strong> answer is no,<br />
but a larger company with a pool<br />
<strong>of</strong> services will be more willing<br />
to pay for <strong>the</strong> query engine in<br />
order to facilitate <strong>the</strong> search for<br />
services.
FP6-004559 p.50 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Req. met.<br />
Abstract <strong>and</strong><br />
concrete<br />
compositions<br />
Bottom-up<br />
composition<br />
development<br />
Discovery <strong>of</strong> existing<br />
services<br />
Dynamic service<br />
discovery<br />
The ability to specify<br />
compositions <strong>of</strong> tasks<br />
without knowledge <strong>of</strong><br />
existing services, <strong>and</strong><br />
to select specific<br />
services for <strong>the</strong> tasks,<br />
<strong>and</strong> <strong>the</strong> ability to<br />
maintain this<br />
information in <strong>the</strong><br />
same model<br />
The ability to produce<br />
compositions when<br />
<strong>the</strong> user knows<br />
exactly which services<br />
to use<br />
The ability to search<br />
for services<br />
The ability to define<br />
run-time queries,<br />
meaning that <strong>the</strong><br />
search for a matching<br />
service is performed<br />
as part <strong>of</strong> <strong>the</strong><br />
execution<br />
Manual inspection Operational tests, trials Yes.<br />
Tasks can be fully specified, partially<br />
specified or not specified at all. If not<br />
specified, <strong>the</strong> execution engine will treat it as<br />
a black box that does not return any output.<br />
Manual inspection Operational tests, trials Yes.<br />
The ability to drag a specified service into a<br />
composition is implemented. By doing that all<br />
details regarding input <strong>and</strong> output are<br />
automatically h<strong>and</strong>led.<br />
Manual inspection Operational tests, trials Yes.<br />
Using <strong>the</strong> USQL Query from inside <strong>the</strong><br />
Visual Composition Studio enables <strong>the</strong><br />
discovery <strong>of</strong> existing services.<br />
Manual inspection Operational tests, trials Yes.<br />
A query can be solved in <strong>the</strong> composition in<br />
<strong>the</strong> Visual Composition Studio. The<br />
translated USCL file will contain <strong>the</strong> query,<br />
<strong>and</strong> <strong>the</strong> Execution Engine will execute <strong>the</strong><br />
query at run-time.<br />
This was tested in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
MEDISYSTEM pilot.
FP6-004559 p.51 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method Req. met.<br />
Data<br />
transformations<br />
Multiple services per<br />
task<br />
Transformation to<br />
executable format<br />
Support for defining<br />
data transformations<br />
between data objects<br />
Support to select<br />
several c<strong>and</strong>idate<br />
services for a task<br />
including an execution<br />
strategy for final<br />
selection.<br />
Support for<br />
transformation<br />
4.4.2.4 Overall evaluation conclusions<br />
Manual inspection Operational tests, trials Yes.<br />
Data can be transformed on multiple levels:<br />
1) Output from one task<br />
transformed<br />
ano<strong>the</strong>r task.<br />
into input to<br />
2) Input/output to <strong>the</strong> task can be<br />
transformed into input/output<br />
for a specific service that don’t<br />
have <strong>the</strong> same service<br />
description.<br />
Manual inspection Operational tests, trials Yes.<br />
A task can have more than one actual<br />
service to be invoked at execution time. The<br />
services will ei<strong>the</strong>r run in parallel or in series.<br />
Run, <strong>the</strong> transformation,<br />
deploy <strong>the</strong> result in<br />
USCL engine <strong>and</strong><br />
execute it<br />
To summarize, we take a look at <strong>the</strong> functional <strong>and</strong> non-functional requirements <strong>and</strong> conclude:<br />
Operational tests, trials Yes.<br />
The composition can be transformed into a<br />
USCL file which can be deployed <strong>and</strong><br />
executed in <strong>the</strong> Execution Engine.
FP6-004559 p.52 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement Description <strong>of</strong> requirement Req. met<br />
Unified service discovery<br />
Dynamic service discovery<br />
Support <strong>of</strong> heterogeneous<br />
services<br />
Service Composition<br />
Must be able to discover services quickly <strong>and</strong> easily. Services<br />
can be discovered when <strong>the</strong> composition is being developed<br />
(i.e. at design-time), or when <strong>the</strong> composition is being run (i.e. at<br />
run-time)<br />
To dynamically discover services <strong>the</strong>y must be adequately<br />
described <strong>and</strong> appropriately published in registries or networks,<br />
such as UDDI, JXTA, etc.<br />
Services can be heterogeneous. Should at least support web<br />
services, grid services <strong>and</strong> p2p services<br />
A composition can be used by more than one application.<br />
Therefore one must be able to store a composition <strong>and</strong> <strong>the</strong>n<br />
retrieve it at a later stage. A composition can be modified on<strong>the</strong>-fly<br />
Yes. The Query Engine can be accessed by<br />
<strong>the</strong> Composition Studio at design-time, or<br />
by <strong>the</strong> Execution Engine at run-time.<br />
Locus excercised service discovery only at<br />
design time. Medisystem made use <strong>of</strong> <strong>the</strong><br />
dynamic discovery feature too.<br />
Yes.<br />
Yes. All <strong>SODIUM</strong> tools provide support for<br />
st<strong>and</strong>ard SOAP Web services, JXTA P2P<br />
services <strong>and</strong> WSRF-compliant Grid<br />
services.<br />
Locus tested this requirement by executing<br />
compositions containing web <strong>and</strong> grid<br />
services. The additional use <strong>of</strong> p2p services<br />
was tested by Medisystem.<br />
Yes.
FP6-004559 p.53 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement Description <strong>of</strong> requirement Req. met<br />
Audit Be able to monitor <strong>the</strong> execution <strong>of</strong> a composition. Yes.<br />
<strong>Platform</strong> independence The composition should be able to be run on any platform Yes<br />
Security<br />
Must be able to support Secure/closed environment for some<br />
parts <strong>of</strong> <strong>the</strong> application. This means that <strong>the</strong> platform will be part<br />
<strong>of</strong> <strong>the</strong> closed environment, i.e. installed on site.<br />
Availability Preferably 24/7 with 98.5% reliability Yes<br />
Extensible<br />
When new technologies (e.g. service types) emerge, <strong>the</strong>n <strong>the</strong><br />
<strong>SODIUM</strong> platform should be able to incorporate <strong>the</strong>se<br />
technologies.<br />
Modularity Should be possible to install <strong>and</strong> run <strong>SODIUM</strong> components as<br />
individual modules .<br />
Security Username/password should not be part <strong>of</strong> composition but<br />
should be passed as parameters to <strong>the</strong> composition. Must<br />
<strong>the</strong>refore be encrypted. Must be able to run on secure<br />
connection (https).<br />
Robustness If a service fails, <strong>the</strong>n <strong>the</strong> system should try an alternative<br />
service (if available, <strong>and</strong> configured). If no alternative service<br />
Yes<br />
Yes<br />
Yes<br />
Yes. An encrypted password can be sent as<br />
<strong>the</strong> value through to <strong>the</strong> engine as long as<br />
<strong>the</strong> service receiving it will be able to<br />
decrypt it. In addition HTTPS could be used.<br />
Within <strong>the</strong> scope <strong>of</strong> <strong>SODIUM</strong>, Locus does<br />
not have any services running over HTTPS.<br />
However, <strong>the</strong> underlying communication<br />
protocol is kept transparent by <strong>the</strong> <strong>SODIUM</strong><br />
tools.<br />
Partly. If service fails, <strong>the</strong>n alternative<br />
service is selected, but if <strong>the</strong> alternative
FP6-004559 p.54 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement Description <strong>of</strong> requirement Req. met<br />
has been configured, <strong>the</strong> system should search for alternative<br />
services, pick <strong>the</strong> ‘best’ automatically <strong>and</strong> run it. The system<br />
must log that <strong>the</strong> original service failed, <strong>and</strong> log which service<br />
was used instead. The application should be notified, so that it is<br />
possible to inform <strong>the</strong> user that an alternative service has been<br />
selected. This should be done with no involvement from <strong>the</strong><br />
users.<br />
Scalability/Exp<strong>and</strong>ability Must be able to scale <strong>and</strong> exp<strong>and</strong> <strong>the</strong> <strong>SODIUM</strong> platform to be<br />
able to h<strong>and</strong>le an increasing traffic.<br />
Maintainability If a service has been upgraded, <strong>the</strong>n <strong>the</strong> old version <strong>of</strong> <strong>the</strong><br />
service must be available for some time (e.g. a month) in order<br />
for <strong>the</strong> IT personnel to upgrade <strong>the</strong> s<strong>of</strong>tware to use <strong>the</strong> new<br />
version <strong>of</strong> <strong>the</strong> service. This means that <strong>the</strong> system should log<br />
any attempt to use an out-<strong>of</strong>-date service <strong>and</strong> send a message<br />
to <strong>the</strong> responsible personnel about this.<br />
service fails, a search is not performed<br />
automatically.<br />
Yes.<br />
No. The Execution Engine does no such<br />
logging. This feature would have to be<br />
implemented in <strong>the</strong> actual services.<br />
This is beyond <strong>the</strong> scope <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong><br />
platform functionality
4.4.3 Meeting Key Business Requirements for LOCUS<br />
FP6-004559 p.55 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
In this section we summarise how <strong>the</strong> key business requirements are met for LOCUS through <strong>the</strong> use <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools<br />
Business requirement Req.<br />
met<br />
Comment<br />
Encapsulate application logic in services Yes In addition to just running services it is possible to create decision nodes <strong>and</strong><br />
transformation <strong>of</strong> data.<br />
Be able to create compositions consisting <strong>of</strong> Yes<br />
services.<br />
A composition contains tasks, <strong>and</strong> each task can invoke one or more services.<br />
Compositions should be stored outside <strong>the</strong><br />
application so that a composition might be<br />
modified without having to modify <strong>the</strong> application<br />
Be able to reuse compositions from an existing<br />
application<br />
Discover services ei<strong>the</strong>r at design-time or at runtime.<br />
Be able to integrate services <strong>of</strong> different<br />
st<strong>and</strong>ards, including but not limited to web<br />
services, grid services <strong>and</strong> p2p services.<br />
Yes The composition is translated into a USCL file which is deployed in <strong>the</strong> Execution<br />
Engine. The composition can be modified <strong>and</strong> redeployed in <strong>the</strong> Execution Engine<br />
without <strong>the</strong> client application’s “knowledge”.<br />
Yes Deployed USCL files can be used by any client.<br />
Yes Services can be discovered by using <strong>the</strong> integrated USQL dialog in <strong>the</strong> Visual<br />
Composition Studio or directly through <strong>the</strong> USCL Engine at runtime, provided that a<br />
USQL query has been assigned to a task in <strong>the</strong> composition.<br />
Locus tested discovery only at design time. Runtime service discovery was<br />
successfully tested by Medisystem.<br />
Yes There is support for web services, grid <strong>and</strong> p2p in <strong>the</strong> Visual Composition Studio,<br />
Query Engine <strong>and</strong> <strong>the</strong> Execution Engine. New types <strong>of</strong> services can be implemented<br />
by creating plug-ins to <strong>the</strong> USQL Query Engine <strong>and</strong> <strong>the</strong> USCL Execution Engine.<br />
Locus tested this requirement by executing compositions containing web <strong>and</strong> grid<br />
services. The additional use <strong>of</strong> p2p services was tested by Medisystem.
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
4.4.4 Qualitative Benefits from using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
Locus is <strong>the</strong> Norwegian market leader in IT solutions for logistics, fleet management,<br />
communication, registration <strong>and</strong> geographic decision tools. Locus develops mobile<br />
applications <strong>and</strong> has a very strong position within its market areas. Its goal is to be <strong>the</strong><br />
leading supplier <strong>of</strong> mobile applications in <strong>the</strong> Sc<strong>and</strong>inavian markets for transportation,<br />
emergency, security <strong>and</strong> <strong>the</strong> military.<br />
The Key Business Benefits from Using <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> are described in Section 5.4.3<br />
above.<br />
The <strong>Assessment</strong> <strong>of</strong> whe<strong>the</strong>r <strong>the</strong>se benefits are indeed obtained by using <strong>SODIUM</strong> in <strong>the</strong><br />
environment <strong>of</strong> LOCUS will be ascertained in a Qualitative manner by recording <strong>the</strong><br />
experiences <strong>of</strong> different functions in LOCUS that were involved in <strong>the</strong> Pilots <strong>and</strong> by also<br />
obtaining feedback from <strong>the</strong> Management.<br />
The Qualitative feedback was based on a presentation/discussion/brainstorming method<br />
approach.<br />
A preliminary assessment up to M24 <strong>of</strong> <strong>the</strong> project revealed <strong>the</strong> following:<br />
Locus has during <strong>the</strong> last 10 years entered into mainly two business areas:<br />
• Public Safety including<br />
o Governmental Emergency centres <strong>and</strong> life saving activities<br />
o Private Assistance companies<br />
o Private security <strong>and</strong> safety companies<br />
• Transportation industry<br />
o Distributors <strong>of</strong> goods<br />
o Transport companies<br />
o Waste h<strong>and</strong>ling companies<br />
These customers are mainly situated in Norway, but an increasing number <strong>of</strong> customers<br />
are now also coming from <strong>the</strong> o<strong>the</strong>r Nordic countries Sweden, Denmark <strong>and</strong> Finl<strong>and</strong>. In<br />
all <strong>the</strong>se markets <strong>the</strong>re are needs <strong>and</strong> acceptance <strong>of</strong> <strong>of</strong>fering services <strong>of</strong> various kinds.<br />
Locus <strong>the</strong>refore has built up a service platform which will host reusable services. This also<br />
fits very well into <strong>the</strong> company’s SOA strategy in addition to <strong>the</strong> SOA strategy we see our<br />
customers have.<br />
The possible services to be developed may be primitive services or services composed <strong>of</strong><br />
o<strong>the</strong>r services. In addition to opening a new market in <strong>the</strong> service domain, this way <strong>of</strong><br />
working will improve <strong>the</strong> development process <strong>of</strong> Locus s<strong>of</strong>tware products by integrating<br />
FP6-004559 p.56 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
re-useable, <strong>and</strong> possibly also adaptable, services in <strong>the</strong>m. The <strong>SODIUM</strong> platform will<br />
ease <strong>the</strong> development <strong>of</strong> new services by <strong>of</strong>fering <strong>the</strong> possibility <strong>of</strong> composing,<br />
discovering <strong>and</strong> executing re-useable <strong>and</strong> adaptable compositions consisting <strong>of</strong><br />
heterogeneous services in a unified way. This is a great advantage compared to having to<br />
write <strong>the</strong> compositions <strong>and</strong> <strong>the</strong> peculiarities <strong>of</strong> each service type in <strong>the</strong> application code.<br />
Also, by encapsulating <strong>the</strong> composition content, <strong>the</strong> internal structure <strong>of</strong> <strong>the</strong> composition<br />
may change over time without affecting <strong>the</strong> application in any significant way as long as<br />
<strong>the</strong> signature doesn’t change <strong>of</strong> course. The usage <strong>of</strong> high level tools would make it<br />
possible to very efficiently produce <strong>and</strong> maintain existing <strong>and</strong> new services. The expected<br />
increase in efficiency would be between 25 – 50% <strong>of</strong> normal workload.<br />
The <strong>SODIUM</strong> project will enhance <strong>the</strong> focus on service provisioning internally within<br />
Locus as a service constructor <strong>and</strong> externally as a service provider in wider <strong>and</strong><br />
exp<strong>and</strong>ed future market which more <strong>and</strong> more are focused on SOA.<br />
<strong>Assessment</strong> till end <strong>of</strong> <strong>the</strong> project revealed <strong>the</strong> following:<br />
The expected increase in efficiency is below 25-50% <strong>of</strong> normal workload. Mainly because<br />
using <strong>the</strong> VSCL/USCL language introduces <strong>the</strong> need to create transformations between<br />
all tasks in <strong>the</strong> composition. St<strong>and</strong>ard transformation can easily be done using an Xml<br />
tool (for instance Stylus Studio), but transformations involving 2-to-1 transformation<br />
introduces <strong>the</strong> need for doing some h<strong>and</strong>-coded transformation <strong>and</strong> this can be quite<br />
tiresome. In addition, <strong>the</strong> XSLT will depend upon <strong>the</strong> names given to <strong>the</strong> output tags that<br />
act as input to <strong>the</strong> transformation, meaning that if <strong>the</strong> names are changed, <strong>the</strong> XSLT<br />
must also be changed.<br />
The quality <strong>of</strong> <strong>the</strong> platform must be increased in terms <strong>of</strong> giving more detailed error<br />
messages in <strong>the</strong> Execution Engine. In <strong>the</strong> present version, some error messages lack<br />
detailed information making it hard to figure out what <strong>the</strong> problem is. Thus a good deal <strong>of</strong><br />
time is spent figuring out what <strong>the</strong> actual problem is.<br />
In addition <strong>the</strong> Eclipse platform is using a substantial deal <strong>of</strong> memory <strong>and</strong> <strong>the</strong> platform<br />
<strong>the</strong>refore has to be rebooted from time to time.<br />
More details regarding <strong>the</strong>se issues can be found in section 4.5 Lessons Learned,<br />
Recommendations <strong>and</strong> Suggestions for improvement for commercialization.<br />
An estimate <strong>of</strong> <strong>the</strong> efficiency increase is <strong>the</strong>refore closer to <strong>the</strong> low range <strong>of</strong> 20-25%.<br />
4.4.5 Cost <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
The Costs associated with introducing <strong>SODIUM</strong> into a business environment will be studied<br />
<strong>and</strong> quantified:<br />
Such costs will include:<br />
a) Thorough Training <strong>of</strong> all Personnel involved <strong>and</strong> probably third parties that<br />
participate in S<strong>of</strong>tware Development<br />
FP6-004559 p.57 <strong>of</strong> 139
) Acquisition <strong>of</strong> Tools etc.<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
c) Development <strong>of</strong> Quality Procedures<br />
d) Minor adaptations <strong>of</strong> Technical Documentation<br />
Fur<strong>the</strong>r Costs may be spotted during <strong>the</strong> operation <strong>of</strong> <strong>the</strong> pilots <strong>and</strong> will reported in<br />
subsequent versions <strong>of</strong> this document (M30).<br />
These Costs will be quantified with respect to both <strong>the</strong> size <strong>of</strong> <strong>the</strong> S<strong>of</strong>tware Project where<br />
<strong>SODIUM</strong> will be used <strong>and</strong> <strong>the</strong> degree <strong>of</strong> third party involvement. The results will be used in<br />
order to quantify <strong>the</strong> size <strong>of</strong> benefits that an industry should expect in order that using<br />
<strong>SODIUM</strong> becomes pr<strong>of</strong>itable.<br />
Of course, <strong>the</strong> effects <strong>of</strong> diversification, i.e. <strong>the</strong> ability to <strong>of</strong>fer services that cannot be<br />
effectively <strong>and</strong> efficiently composed in ano<strong>the</strong>r manner will not be subject <strong>of</strong> a quantitative<br />
analysis.<br />
Below we present related costs in term <strong>of</strong> effort. It should be noted that <strong>the</strong>se are all initial<br />
costs, that is <strong>the</strong> cost <strong>the</strong> first time a user performs <strong>the</strong> activity.<br />
Activity Cost (p-days)<br />
Training in using <strong>the</strong> tools 1<br />
Training for supporting <strong>the</strong> tools 2<br />
Installation <strong>of</strong> tools 1<br />
Customization <strong>of</strong> tools<br />
Involving setting up <strong>the</strong> correct Java version<br />
1<br />
Create composition<br />
Create a medium complex composition with sub compositions, alternative<br />
services on at least one task, use <strong>of</strong> decision node, split/merge.<br />
Query for services 1<br />
Execute compositions<br />
This assumes that <strong>the</strong> execution is not successful at first try, <strong>and</strong> <strong>the</strong>refore<br />
needs some debugging.<br />
Integration<br />
Including transforming from VSCL to USCL, using <strong>the</strong> embedded query<br />
engine in <strong>the</strong> Composition Studio, <strong>and</strong> deploying <strong>the</strong> USCL file in <strong>the</strong><br />
execution engine.<br />
Transformation<br />
Meaning <strong>the</strong> work needed when transforming output from one task to input to<br />
ano<strong>the</strong>r task in <strong>the</strong> Visual Composition Editor<br />
Integration with client application<br />
Includes <strong>the</strong> coding that needs to be done to start <strong>the</strong> execution engine, <strong>and</strong><br />
retrieving <strong>the</strong> results.<br />
FP6-004559 p.58 <strong>of</strong> 139<br />
3<br />
2<br />
1<br />
1<br />
1
4.4.6 Cost Benefit Analysis<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Working with <strong>the</strong> <strong>SODIUM</strong> pilot, Locus is focusing on crisis management in <strong>the</strong> Pubic Safety<br />
market. In this market <strong>the</strong>re is a need <strong>and</strong> acceptance <strong>of</strong> services <strong>of</strong> various kinds.<br />
Locus <strong>the</strong>refore sees <strong>the</strong> possibilities <strong>and</strong> considers development <strong>of</strong> reusable services as a<br />
promising future market place. The possible services to be developed may be primitive<br />
services or services composed <strong>of</strong> o<strong>the</strong>r services.<br />
In addition to opening a new market in <strong>the</strong> service domain, this way <strong>of</strong> working will improve<br />
<strong>the</strong> development process <strong>of</strong> Locus s<strong>of</strong>tware products by integrating re-useable, service<br />
compositions in <strong>the</strong>m.<br />
The <strong>SODIUM</strong> platform will ease <strong>the</strong> development <strong>of</strong> new services by <strong>of</strong>fering <strong>the</strong> possibility <strong>of</strong><br />
composing, discovering <strong>and</strong> executing re-useable <strong>and</strong> adaptable compositions consisting <strong>of</strong><br />
heterogeneous services in a unified way. This is a great advantage compared to <strong>the</strong><br />
traditional method <strong>of</strong> having to write <strong>the</strong> compositions <strong>and</strong> <strong>the</strong> peculiarities <strong>of</strong> each service<br />
type in <strong>the</strong> application code. Also, by encapsulating <strong>the</strong> composition content, <strong>the</strong> internal<br />
structure <strong>of</strong> <strong>the</strong> composition may evolve over time without affecting <strong>the</strong> application in any<br />
significant way as long as <strong>the</strong> composite service’s signature does not change.<br />
The <strong>SODIUM</strong> platform will internally in Locus enhance <strong>the</strong> focus on service provisioning <strong>and</strong><br />
externally enhance Locus as a service provider in a market which is more <strong>and</strong> more focused<br />
on SOA.<br />
Cost: Hours Rate One time cost Yearly cost<br />
Equipment<br />
1 new server for <strong>the</strong> Execution engine 3 000,00 € 0,00 €<br />
1 new server for <strong>the</strong> Query engine 3 000,00 € 0,00 €<br />
Installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform 3 150 €/hour 450,00 € 0,00 €<br />
Training:<br />
10 employees trained in using <strong>the</strong> platform 75 150 €/hour 11 250,00 € 0,00 €<br />
2 employees trained in supporting <strong>the</strong><br />
platform 10 150 €/hour 1 500,00 € 0,00 €<br />
O<strong>the</strong>r costs:<br />
Lost time caused by less efficiency during<br />
startup 58 500,00 € 0,00 €<br />
Lost time caused by less efficiency during<br />
startup 57 000,00 € 0,00 €<br />
FP6-004559 p.59 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Cost: Hours Rate One time cost Yearly cost<br />
Change in existing code 40 150 €/hour 6 000,00 €<br />
Total cost: 140 700,00 €<br />
Benefit:<br />
20% improvement <strong>of</strong> efficiency 20% <strong>of</strong><br />
1700hours 150 €/hour 51 000,00 €<br />
Improved possibility <strong>of</strong> differentiating services<br />
for <strong>the</strong> customers 10 000,00 €<br />
Re-use <strong>of</strong> code across platform boundaries 10 000,00 €<br />
Cost reduction caused by maintenance only<br />
performed at central site 5 150 €/hour 750,00 €<br />
Cost reduction caused by central update <strong>of</strong><br />
basic data 5 150 €/hour 750,00 €<br />
Cost reduction caused by reduced number <strong>of</strong><br />
local installations. 3 150 €/hour 450,00 €<br />
Total benefit 72 950,00 €<br />
Payback time: 140 700,00 € / 72 950,00 € = 1.93 <strong>of</strong> a year = approx. 1 year 11 months<br />
FP6-004559 p.60 <strong>of</strong> 139
FP6-004559 p.61 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
4.5 Lessons Learned, Recommendations <strong>and</strong> Suggestions for improvement for commercialization<br />
The following table summarises lessons learned in <strong>the</strong> context <strong>of</strong> <strong>the</strong> LOCUS pilot with respect to organisational changes introduced by<br />
<strong>SODIUM</strong> <strong>and</strong> training needed related to <strong>the</strong> use <strong>of</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools<br />
Issue Comment<br />
Organizational<br />
changes<br />
The <strong>SODIUM</strong> approach will not imply organizational changes.<br />
Quality procedures are affected, because <strong>the</strong> person that creates <strong>the</strong> compositions must be aware <strong>of</strong> all uses <strong>of</strong> <strong>the</strong><br />
composition so that nothing is compromised when a new version is created.<br />
Training There are two types <strong>of</strong> users: <strong>the</strong> composition designers <strong>and</strong> <strong>the</strong> client application developers. They will both need at least<br />
one day <strong>of</strong> training in order to master <strong>the</strong> platform.<br />
The following table summarises lessons learned in <strong>the</strong> context <strong>of</strong> <strong>the</strong> LOCUS pilot with respect to <strong>the</strong> use <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong><br />
tools<br />
Tool Issue Comment/Solution<br />
Composition<br />
Studio<br />
Usability The Composition Studio is easy to use.<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Transformation <strong>of</strong> data. Between each task in a composition we need to have transformations because <strong>the</strong> output format from one task does<br />
not match <strong>the</strong> input format to <strong>the</strong> o<strong>the</strong>r task. Creating all <strong>the</strong>se transformations are quite tiresome <strong>and</strong> is not<br />
something that needs to be done when using traditional .NET application development tools. The transformation is<br />
set up in <strong>the</strong> Composition Studio, but <strong>the</strong> user needs an Xml tool to be able to create <strong>the</strong> transformations.<br />
When creating transformations that have two inputs, additional code for h<strong>and</strong>ling xalan has to be included in <strong>the</strong><br />
XSLT, <strong>and</strong> <strong>the</strong> transformation requires that <strong>the</strong> name <strong>of</strong> <strong>the</strong> input tags are used in <strong>the</strong> XSLT, meaning that if <strong>the</strong> name<br />
is changed on a tag, <strong>the</strong> transformation will not work.<br />
Automation Transformation <strong>of</strong> data. This is done using an external XML tool. Transformations from 2 to 1 would be simpler to<br />
h<strong>and</strong>le if <strong>the</strong> Composition Studio was able to set up <strong>the</strong> transformation.
Tool Issue Comment/Solution<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
FP6-004559 p.62 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Task execution. In <strong>the</strong> Composition Studio one has <strong>the</strong> opportunity <strong>of</strong> selecting to execute <strong>the</strong> task or <strong>the</strong> sub-composition, but if a<br />
sub-composition exists, it will always be executed no matter what is selected.<br />
Defined types. Input to <strong>the</strong> overall composition needs to be specified in <strong>the</strong> local dictionary in <strong>the</strong> Composition Studio,<strong>and</strong> <strong>the</strong>refore<br />
<strong>the</strong> user has to create a file containing this information <strong>and</strong> import it into <strong>the</strong> local dictionary. It would be better to be<br />
able to define types within <strong>the</strong> Composition Studio instead <strong>of</strong> having to import <strong>the</strong>m.<br />
Transformation on a<br />
service within a task.<br />
The Composition Studio gives error messages when <strong>the</strong> user wants to perform a transformation for a service on a<br />
specific task:<br />
The reason is that <strong>the</strong> language is set to Java. If this was set to XSLT <strong>the</strong>n <strong>the</strong> errors would disappear.
FP6-004559 p.63 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Tool Issue Comment/Solution<br />
The Error view should be removed – it is not displayed when performing transformation between tasks.<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Transformation. Deleting a service on a task containing transformations: Seems like <strong>the</strong> XSLT remains in <strong>the</strong> VSCL file – it should be<br />
deleted.<br />
Import <strong>of</strong> service<br />
descriptions.<br />
Showing types.<br />
Problems when a service description imported into <strong>the</strong> local dictionary is deleted:<br />
This question is given each time <strong>the</strong> Composition Studio is started, even when Yes has been selected.<br />
The update procedure is not optimized, <strong>and</strong> it is not simple to update a WSDL reference in <strong>the</strong> Local Dictionary<br />
because <strong>of</strong> error messages given from <strong>the</strong> Studio.<br />
In <strong>the</strong> first versions <strong>of</strong> <strong>the</strong> Composition Studio, <strong>the</strong> developer was not able to see which service description <strong>the</strong><br />
different types came from:
Tool Issue Comment/Solution<br />
FP6-004559 p.64 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This made matters complicated if several services had <strong>the</strong> same types.<br />
This has been improved in <strong>the</strong> latest version <strong>of</strong> <strong>the</strong> Composition Studio by setting <strong>the</strong> name <strong>of</strong> <strong>the</strong> service description<br />
in brackets after <strong>the</strong> type name:
Tool Issue Comment/Solution<br />
Composition<br />
Studio<br />
Service operation<br />
timeout.<br />
FP6-004559 p.65 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
In <strong>the</strong> Composition Studio <strong>the</strong> user can set <strong>the</strong> timeout for services when running alternatives in series or parallel:
Tool Issue Comment/Solution<br />
Composition<br />
Repository<br />
FP6-004559 p.66 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This feature would also be useful when only running one service. The feature does not work in <strong>the</strong> current version;<br />
<strong>the</strong> timeout is always 5 minutes.<br />
Usability <strong>and</strong> integration The Composition Repository is easy to use. It is an additional tool (not included in <strong>the</strong> <strong>SODIUM</strong> description <strong>of</strong> work)<br />
that has been conceived to work in a st<strong>and</strong>alone manner. In <strong>the</strong> future, tighter integration with <strong>the</strong> Composition Studio
Tool Issue Comment/Solution<br />
would bring additional value.<br />
Execution<br />
Engine<br />
Execution<br />
Engine<br />
Execution<br />
Engine<br />
Execution<br />
Engine<br />
FP6-004559 p.67 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Execution log The Execution Engine gives a good overview <strong>of</strong> what happens when <strong>the</strong> composition is executed, mostly with<br />
detailed error messages.<br />
Delivery <strong>of</strong> results<br />
during execution.<br />
When executing <strong>the</strong> composition in <strong>the</strong> execution engine, results are delivered back to <strong>the</strong> client as soon as <strong>the</strong>y are<br />
available. This means that <strong>the</strong> client can start processing <strong>the</strong> results before <strong>the</strong> complete composition has been<br />
executed.<br />
Parallel execution Parallel execution did not work in <strong>the</strong> first versions <strong>of</strong> <strong>the</strong> USCL so everything had to be run in series. The current<br />
version h<strong>and</strong>les this requirement.<br />
Display <strong>of</strong> compositions<br />
in <strong>the</strong> execution engine.<br />
The generated USCL file has a lot <strong>of</strong> ”entry” points, <strong>and</strong> <strong>the</strong>y mess up <strong>the</strong> information when asking <strong>the</strong> Execution<br />
Engine to show which compositions are available:<br />
{Demonstration}Demonstration[1.0]<br />
{Demonstration}Proc_N65914_Alt_1[1.0]<br />
{Demonstration}Proc_Transform_input_N65914[1.0]<br />
{Demonstration}GetCallerPosition[1.0]<br />
{Demonstration}GetCallerInfo[1.0]<br />
{Demonstration}Proc_Transform_output_N65914[1.0]<br />
{Demonstration}GetSubscriberAddress[1.0]<br />
{Demonstration}Proc_Transform_input_N66299[1.0]<br />
{Demonstration}GetSubscriberName[1.0]<br />
{Demonstration}Proc_N66299_Alt_1[1.0]<br />
{Demonstration}Proc_Transform_output_N66299[1.0]<br />
The only information that should have been displayed was:<br />
{Demonstration}Demonstration[1.0]<br />
Execution Deployment. When deploying a composition in <strong>the</strong> Execution Engine all services must be available. This will not always be <strong>the</strong>
FP6-004559 p.68 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Tool Issue Comment/Solution<br />
Engine case, so it should be possible to deploy a composition at any time.<br />
Query Engine Usability <strong>and</strong> integration The query engine is well integrated in <strong>the</strong> Composition Studio <strong>and</strong> is easy to use.<br />
Query Engine Automation <strong>of</strong> tasks A query has to be generated from scratch each time a new task is created. Some <strong>of</strong> <strong>the</strong> parameters in <strong>the</strong> query will<br />
be default parameters (Ontology to use, provider etc), <strong>and</strong> it should be possible to store <strong>the</strong>se parameters for later<br />
usage.
Tool Issue Comment/Solution<br />
Query Engine Display origin <strong>of</strong><br />
services<br />
FP6-004559 p.69 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
When returning <strong>the</strong> query result, <strong>the</strong> URL to <strong>the</strong> wsdl is displayed. It would also be feasible to display <strong>the</strong> URL to <strong>the</strong>
FP6-004559 p.70 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Tool Issue Comment/Solution<br />
actual service, especially since <strong>the</strong> wsdl URL resides in a UDDI register which gives no indication to where <strong>the</strong> actual<br />
service is.<br />
4.5.1 Recommendations for future enhancement<br />
The following table summarises recommendations from <strong>the</strong> LOCUS pilot for future enhancement with respect to <strong>the</strong> <strong>SODIUM</strong> platform<br />
<strong>and</strong> tools.<br />
Tool Issue Issue, Comment/Solution<br />
Composition<br />
Repository<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Composition<br />
Studio<br />
Integration Although an additional tool conceived to work in a st<strong>and</strong>alone manner, <strong>the</strong>re should be tighter integration <strong>of</strong> <strong>the</strong><br />
Composition Repository with <strong>the</strong> Visual Composition Studio.<br />
VSCL to USCL<br />
transformation.<br />
If possible implement more error checking when performing <strong>the</strong> transformation. Should not be able to create <strong>the</strong><br />
USCL file if <strong>the</strong>re are errors in <strong>the</strong> composition. This is possible in <strong>the</strong> current version.<br />
Copy composition. It would improve <strong>the</strong> Composition Studio if it was possible to copy a composition. It can be done manually today, but<br />
references in <strong>the</strong> uml2 file still point to <strong>the</strong> old composition which leads to transformation to USCL begin ruined.<br />
Transformations. Transformation <strong>of</strong> data, especially 2-to-1 transformations should be h<strong>and</strong>led by <strong>the</strong> Composition Studio.<br />
Initial <strong>and</strong> final node. When creating a composition, <strong>the</strong> ”Initial” <strong>and</strong> “Final” node should be added to <strong>the</strong> composition as a default.<br />
Combination <strong>of</strong><br />
services.<br />
The scenario is as follows:<br />
We would like to run ei<strong>the</strong>r <strong>the</strong> method (GetMapMethod1), (GetMapMethod2) OR (ConvertData + GetMapMethod3).<br />
The services should be run in serial mode, if GetMapMethod1 does not reply, <strong>the</strong>n GetMapMethod2 is started, <strong>and</strong> if<br />
GetMapMethod 2 does not reply ConvertData <strong>and</strong> GetMapMethod3 is started.<br />
The requirement is to be able to have more than one service being viewed as an autonomous service by <strong>the</strong>
Tool Issue Issue, Comment/Solution<br />
Composition Studio.<br />
Composition<br />
Studio<br />
Selecting a service on<br />
a task.<br />
FP6-004559 p.71 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
When creating a task manually in <strong>the</strong> Composition Studio <strong>the</strong> service name is not displayed in <strong>the</strong> same manner as in<br />
<strong>the</strong> local dictionary:<br />
The Local dictionary uses <strong>the</strong> name that was given to <strong>the</strong> description when it was imported. When selecting services<br />
only <strong>the</strong> service name is given:
Tool Issue Issue, Comment/Solution<br />
Composition<br />
Studio<br />
FP6-004559 p.72 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This makes it hard to see which service is selected because we might have <strong>the</strong> same name for several services (<strong>the</strong><br />
name Service is <strong>the</strong> default name given when creating a .Net Web Service).<br />
It would be better to use <strong>the</strong> same display value as <strong>the</strong> one used in <strong>the</strong> local dictionary.<br />
Naming <strong>of</strong> task Name <strong>of</strong> composition <strong>and</strong> task cannot be <strong>the</strong> same.<br />
If <strong>the</strong> same name is given both to <strong>the</strong> composition <strong>and</strong> <strong>the</strong> task as in <strong>the</strong> figure below, <strong>the</strong> composition will fail in <strong>the</strong><br />
execution engine.
Tool Issue Issue, Comment/Solution<br />
Composition<br />
Studio/Execution<br />
Engine<br />
Input parameters<br />
missing<br />
FP6-004559 p.73 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
There is no error message in <strong>the</strong> execution engine, so it’s hard to know why <strong>the</strong> execution failed.<br />
The composition studio should <strong>the</strong>refore not allow <strong>the</strong> same name used by both composition <strong>and</strong> task.<br />
When a web service does not have any input parameters, <strong>the</strong>n <strong>the</strong> composition can not be executed in <strong>the</strong> Execution<br />
Engine. Therefore when importing service descriptions in <strong>the</strong> Composition Studio, it should be checked if <strong>the</strong> service<br />
has input parameters, <strong>and</strong> <strong>the</strong> Execution Engine should be able to execute a service with no input parameters.
Tool Issue Issue, Comment/Solution<br />
Execution Engine Deployment.<br />
Execution Engine Error messages in<br />
execution engine.<br />
Execution Engine Eclipse/Java resource<br />
usage.<br />
FP6-004559 p.74 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
If a (web) service used in a composition is not available when <strong>the</strong> composition is deployed, an error message like this<br />
is displayed:<br />
It would be better if <strong>the</strong> engine could tell <strong>the</strong> user <strong>the</strong> reason why it failed.<br />
Most <strong>of</strong> <strong>the</strong> error messages are descriptive, but some especially <strong>the</strong> ones related to transformations should have<br />
more detail. E.g.: when <strong>the</strong>re is an error in a XSLT file, this is reported, but <strong>the</strong> contents <strong>of</strong> <strong>the</strong> XSLT is not displayed,<br />
so <strong>the</strong>refore it’s not always easy to find error.<br />
Running <strong>the</strong> Execution engine in Eclipse/Java seems to consume a good deal <strong>of</strong> memory when <strong>the</strong> engine has been<br />
running for a while.<br />
When redeployment occurs frequently <strong>the</strong> OutOfMemoryException is thrown.<br />
It should be possible to do frequent redeployment without having <strong>the</strong>se problems.<br />
Execution Engine Composition does not When a client calls <strong>the</strong> execution engine <strong>and</strong> asks it to run a non-existing this error message is returned to <strong>the</strong> client:
Tool Issue Issue, Comment/Solution<br />
exist.<br />
Exception while Starting Process.<br />
Query engine<br />
Query engine<br />
Query engine<br />
Query engine<br />
FP6-004559 p.75 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
It would be better if <strong>the</strong> message explained why <strong>the</strong>re was an exception. This is logged on <strong>the</strong> Execution Engine side,<br />
<strong>and</strong> should <strong>the</strong>refore be passed to <strong>the</strong> client.<br />
Display registries In <strong>the</strong> current version it is not possible to see which UDDI (<strong>and</strong> o<strong>the</strong>r registries) that will be used when searching.<br />
They are configured in <strong>the</strong> Tomcat server. It would be feasible to see <strong>the</strong> registries.<br />
Available registries It would be feasible to see which <strong>of</strong> <strong>the</strong> registries are available, <strong>and</strong> in addition be able to select in <strong>the</strong> USQL Dialog<br />
which registries to use when searching.<br />
UDDI details When <strong>the</strong> result from <strong>the</strong> query is returned, <strong>the</strong>n information about which registry (UDDI, etc) <strong>the</strong> service was found in<br />
should be displayed.<br />
Selection <strong>of</strong> services When <strong>the</strong> result from <strong>the</strong> query is returned, <strong>the</strong>n it should be possible to select which services to use in <strong>the</strong><br />
composition by selecting <strong>the</strong> appropriate rows <strong>and</strong> select Save. I <strong>the</strong> current version all services not <strong>of</strong> interest have<br />
to be deleted before <strong>the</strong> user can press Save.
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
5. <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Results <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot<br />
5.1 Scope <strong>of</strong> <strong>the</strong> Pilot<br />
5.1.1 Business Requirements<br />
As described in D5 Part II [4], Medisystem (S.C. Medisystem HOSPITAL S.A) is <strong>the</strong> first<br />
private hospital in Romania <strong>and</strong> it is licensed to perform medical <strong>and</strong> hospital services.<br />
Information Technology is at present <strong>the</strong> means to provide <strong>the</strong> backbone for business<br />
support <strong>and</strong> leveraging <strong>of</strong> various systems information <strong>and</strong> also a key factor to realizing<br />
future benefits for <strong>the</strong> Hospital.<br />
As a Private Healthcare organization <strong>and</strong> as a company committed to technology evolution,<br />
Medisystem is constantly looking to Improve existing capability by integrating heterogeneous<br />
information systems with existing business partners <strong>and</strong> <strong>the</strong>n extending resulting solutions<br />
with future business partners; Make publicly available part <strong>of</strong> internal information to be<br />
accessed by our patients; Improve health service provided by <strong>the</strong> hospital by facilitating<br />
medical <strong>and</strong> clinical information exchange with <strong>and</strong> between our doctors; Develop <strong>and</strong> test<br />
tools as to be use in very near future for similar <strong>and</strong> growing business needs; Assist in<br />
formulating a roadmap for <strong>the</strong> introduction <strong>of</strong> new technologies in <strong>the</strong> Hospital environment<br />
In this context Medisystem is investigating <strong>the</strong> opportunities <strong>of</strong>fered by service oriented<br />
development. As a direct consequence, <strong>the</strong> main objectives <strong>of</strong> MEDISYSTEM in <strong>the</strong><br />
<strong>SODIUM</strong> project have been:<br />
- Use or develop different types <strong>of</strong> available services such as Web, P2P, <strong>and</strong> Grid<br />
services<br />
- Explore <strong>the</strong> ability to combine “internal services or private services” with publicly<br />
available services. This will be important for a Company within a large Multinational<br />
Group as it may have access to s<strong>of</strong>tware <strong>and</strong> services from all members <strong>of</strong> <strong>the</strong> Group<br />
<strong>and</strong> <strong>the</strong>ir providers; this will lead to ei<strong>the</strong>r a maximization <strong>of</strong> capabilities or a reduction<br />
<strong>of</strong> cost or both<br />
- Experiment, test <strong>and</strong> adopt solutions that will enable Medisystem Hospital to efficiently<br />
<strong>and</strong> effectively develop applications from heterogeneous services in order to respond<br />
to requirements that are specific to a fast evolving <strong>and</strong> very dynamic environment as<br />
<strong>the</strong> Healthcare.<br />
- Prepare for <strong>the</strong> new developing market <strong>of</strong> IT services <strong>and</strong> test <strong>the</strong> capabilities to easy<br />
use <strong>and</strong> integrate <strong>the</strong> emerging services with existing capabilities.<br />
- <strong>SODIUM</strong> is expected to accommodate simple discovery <strong>of</strong> new services <strong>and</strong> fast use<br />
<strong>of</strong> <strong>the</strong>m in respect with our specific needs<br />
The <strong>SODIUM</strong> platform has been:<br />
FP6-004559 p.76 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• used for composing domain specific service compositions<br />
• used for executing heterogeneous services in a homogenous, unified manner<br />
• operated within a controlled environment as most <strong>the</strong> service providers are trusted<br />
partners (business contractual agreements have been signed)<br />
Why use <strong>SODIUM</strong>?<br />
• Allows to dynamically discover new services<br />
• Allows to easy create new compositions <strong>and</strong> change existing ones<br />
• Allows to use different type <strong>of</strong> services (WEB, P2P, GRID) (publicly available or<br />
private) <strong>and</strong> be prepared for new types<br />
• Permit reuse <strong>of</strong> a composition into new one<br />
• Allows <strong>the</strong> monitoring <strong>of</strong> <strong>the</strong> execution <strong>of</strong> compositions through provided logs<br />
• Use <strong>of</strong> graphical (UML) composition tools permits to more accurately reflect <strong>the</strong><br />
business needs into compositions<br />
• Perfectly fitting <strong>the</strong> medical environment described as having increased dem<strong>and</strong>s <strong>of</strong><br />
exchanging various types <strong>of</strong> data <strong>and</strong> having a fast changing rate <strong>of</strong> <strong>the</strong> business<br />
requests.<br />
5.1.2 Technical Requirements<br />
5.1.2.1 Functional requirements<br />
• Permit unified service discovery <strong>of</strong> heterogeneous types <strong>of</strong> services (i.e. Web, P2P,<br />
<strong>and</strong> Grid services)<br />
• Enable dynamic discovery <strong>of</strong> <strong>the</strong> services to be used both at design-time <strong>and</strong> at runtime<br />
• Enable <strong>the</strong> reuse <strong>of</strong> a composition into a new one. Need for storage <strong>of</strong> <strong>the</strong><br />
composition<br />
• Enable simple <strong>and</strong> suggestive implementation <strong>of</strong> workflows into composition by<br />
use <strong>of</strong> state <strong>of</strong> <strong>the</strong> art composition tools<br />
• Enable fast changes <strong>of</strong> a composition <strong>and</strong> deployment<br />
• Support tracking <strong>of</strong> <strong>the</strong> execution <strong>of</strong> a composition<br />
• The composition should be able to run on most common platforms<br />
5.1.2.2 Non functional requirements<br />
• Outside <strong>the</strong> platform security: <strong>the</strong> platform is to be secured by installing it on a<br />
secured/controlled environment<br />
• <strong>Platform</strong> security:<br />
• Log on information to be externally passed as parameters to <strong>the</strong> composition<br />
• Provide use <strong>of</strong> external methods <strong>of</strong> data encryption<br />
• Secure <strong>the</strong> data transfer on secure connection (HTTPs).<br />
• Availability: as <strong>of</strong> 99 % from 24/7<br />
• Reliability: as <strong>of</strong> 98%<br />
FP6-004559 p.77 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• Extensibility: <strong>the</strong> platform should be extensible in order to easily accommodate new<br />
service types <strong>and</strong> <strong>the</strong>ir related technologies, as <strong>the</strong>y emerge.<br />
• Modularity: Should be able to install <strong>and</strong> run <strong>SODIUM</strong> components as individual<br />
modules<br />
• Performance: Response time <strong>of</strong> <strong>the</strong> platform shall be within 10 to 30 seconds<br />
• Scalability/Exp<strong>and</strong>ability: <strong>SODIUM</strong> platform should be able to h<strong>and</strong>le increased<br />
traffic <strong>and</strong> number <strong>of</strong> services<br />
• Maintainability: The <strong>SODIUM</strong> platform should support older versions <strong>of</strong> services by<br />
allowing parallel availability <strong>of</strong> both versions for a chosen time period<br />
5.1.3 Pilot Description<br />
As detailed in Deliverable D5 Part II [4], <strong>the</strong> pilot is focused on servicing various actors such<br />
as internal or external doctors, receptionists, private or insured patients. This is usually done<br />
by <strong>the</strong> hospital web pages that are static <strong>and</strong> contains sections for patients <strong>and</strong> for doctors.<br />
The pilot provides a new dynamic web page containing sections that can provide for <strong>the</strong>m up<br />
to date information stored in local databases <strong>and</strong> unavailable for <strong>the</strong>m or new facilities such<br />
as online appointment or checking <strong>the</strong> status <strong>of</strong> an insurance plan etc.<br />
In <strong>the</strong> doctor section <strong>the</strong> pilot can provide information on <strong>the</strong> medical procedures <strong>and</strong><br />
medication for each <strong>of</strong> doctor’s patients <strong>and</strong> for each patient’s episode. Also <strong>the</strong> doctor can<br />
request medical information on drugs or request for a second opinion to a remote doctor that<br />
is available on line.<br />
In <strong>the</strong> patient section someone can request for an appointment for a specialty or a doctor at a<br />
desired date <strong>and</strong> time, after consulting <strong>the</strong> page presenting in real time <strong>the</strong> doctor availability.<br />
After making online appointments <strong>the</strong> process is ended by a confirmation made by<br />
receptionist. For patients that have been previously registered in <strong>the</strong> hospital database with<br />
at least one medical episode, <strong>the</strong> pilot can provide medical information <strong>of</strong> each <strong>of</strong> his/hers<br />
episode.<br />
In <strong>the</strong> section reserved for <strong>the</strong> personnel <strong>of</strong> <strong>the</strong> hospital <strong>the</strong> pilot provides <strong>the</strong> possibility <strong>of</strong><br />
confirming or canceling a request for an appointment toge<strong>the</strong>r with checking with <strong>the</strong><br />
insurance company <strong>the</strong> status <strong>of</strong> <strong>the</strong> insurance plan for an insured patient <strong>and</strong> also sending<br />
for approval a request containing specific medical procedures for <strong>the</strong> same patient.<br />
The <strong>SODIUM</strong> platform <strong>and</strong> tools are used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot to:<br />
• Develop <strong>and</strong> test compositions corresponding to each <strong>of</strong> <strong>the</strong> identified business<br />
processes<br />
• Reuse existing web, grid <strong>and</strong> P2P services owned by Medisystem or business<br />
partners<br />
• Specify QoS requirements (optional when <strong>the</strong>se are available)<br />
• Identify which <strong>of</strong> required tasks cannot be executed by services <strong>and</strong> move <strong>the</strong>m at <strong>the</strong><br />
application level<br />
• Redesign quickly <strong>the</strong> tasks to reflect new requirements <strong>and</strong> resources<br />
• Locate <strong>and</strong> use suitable services or optionally associate a query with that task<br />
• Execute compositions to include multiple calls<br />
FP6-004559 p.78 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• Upload, update, reuse, delete compositions in composition repository<br />
FP6-004559 p.79 <strong>of</strong> 139
5.2 <strong>SODIUM</strong> Features tested (MEDISYSTEM)<br />
FP6-004559 p.80 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The following table presents <strong>the</strong> main <strong>SODIUM</strong> platform features tested <strong>and</strong> validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> pilot as described in<br />
deliverable D5 Part II [4]. Each <strong>of</strong> <strong>the</strong>se features is related to one or more specific requirements that have been formulated in D3 part I<br />
[1].<br />
Medisy<br />
stem<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature To be validated in <strong>the</strong> context<br />
<strong>of</strong> <strong>the</strong> pilot<br />
M01 Use <strong>of</strong> <strong>the</strong> Visual Editor to<br />
create <strong>the</strong> visual graph <strong>of</strong> <strong>the</strong><br />
composite service by <strong>the</strong> pilot<br />
team.<br />
M02 Access <strong>the</strong> repository to retrieve<br />
stored services (if any) by <strong>the</strong><br />
pilot team<br />
M03 Access <strong>the</strong> USQL engine to<br />
retrieve available services<br />
Requirement in D3<br />
Part I Section 6.2<br />
Yes RP05, RM01 RM03,<br />
RM17, RM19, RM09,<br />
RM21<br />
Yes RP08, RF01, RF02,<br />
RF06, RF05<br />
Yes RP04, RM13, RM14,<br />
RD01, RD05, RD06,<br />
RD07, RD08, RD09,<br />
RD10, RD11, RD12,<br />
RD13, RD14, RD16,<br />
RD17 RD18, RD20,<br />
RD23<br />
Req. met Notes<br />
Yes<br />
Yes The repository is available as a web page<br />
that can be accessed remotely.<br />
Yes The USQL engine is available as a web<br />
service that can be accessed remotely
Medisy<br />
stem<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature To be validated in <strong>the</strong> context<br />
<strong>of</strong> <strong>the</strong> pilot<br />
M04 Run query engine, return<br />
service <strong>of</strong> type WEB Service.<br />
Invoke <strong>the</strong> service.<br />
M05 Run query engine, return<br />
service <strong>of</strong> type P2P. Invoke <strong>the</strong><br />
service.<br />
M06 Run query engine, return<br />
service <strong>of</strong> type GRID Service.<br />
Invoke <strong>the</strong> service.<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
• Online Appointment<br />
• Access patient file<br />
Personal Doctor accessing patient<br />
file<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
• Doctor consulting specialists<br />
for second opinion<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
• Search & retrieve drug related<br />
statistics<br />
FP6-004559 p.81 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
RE04, RE05, RE07,<br />
RE12, RE13, RE14<br />
RP17, RD07, RD12,<br />
RD01<br />
Req. met Notes<br />
Yes Tested both at design time <strong>and</strong> runtime<br />
Yes Tested only at design time<br />
RP18 , Yes Tested only at design time
Medisy<br />
stem<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature To be validated in <strong>the</strong> context<br />
<strong>of</strong> <strong>the</strong> pilot<br />
M07 Use basic control pattern<br />
Sequence. (Execute activities in<br />
sequence)<br />
M08 Use basic control pattern<br />
Parallel Split. (Execute activities<br />
in parallel)<br />
M09 Use basic control pattern Simple<br />
Merge. (Merge two alternative<br />
execution paths)<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
• Online appointment<br />
• Access patient file<br />
• Personal doctor accessing<br />
patient file<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
� Personal Doctor accessing<br />
patient file<br />
Done by running <strong>the</strong> following<br />
compositions:<br />
� Personal Doctor accessing<br />
patient file<br />
M10 Translate VSCL file to USCL file Performed while producing <strong>the</strong><br />
USCL file out <strong>of</strong> <strong>the</strong> composition<br />
graph that will be developed with<br />
<strong>the</strong> Visual Composition Suite<br />
FP6-004559 p.82 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
Req. met Notes<br />
RM03 Yes Done at design time <strong>and</strong> in <strong>the</strong> pilot<br />
RM03 Yes Used at design time<br />
RM03 Yes Done at design time <strong>and</strong> in <strong>the</strong> pilot<br />
RM23 Yes Attention need to be paid when mixing<br />
local dictionaries
Medisy<br />
stem<br />
Testing<br />
Code<br />
<strong>SODIUM</strong> platform feature To be validated in <strong>the</strong> context<br />
<strong>of</strong> <strong>the</strong> pilot<br />
M11 Open <strong>and</strong> save compositions<br />
both in <strong>the</strong> local file system <strong>and</strong><br />
in <strong>the</strong> composition repository<br />
M12 Access <strong>the</strong> USCL engine to<br />
execute resulting composition<br />
Done by running <strong>the</strong> all<br />
compositions<br />
Done by running <strong>the</strong> compositions<br />
created through <strong>the</strong> steps<br />
described above<br />
FP6-004559 p.83 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Requirement in D3<br />
Part I Section 6.2<br />
Req. met Notes<br />
RM02, RM32 Yes Attention need to be paid to save <strong>the</strong> vscl,<br />
uml2 files toge<strong>the</strong>r with <strong>the</strong> local<br />
dictionary<br />
RE05 Yes The USCL engine presents two interfaces<br />
<strong>of</strong> accessing <strong>and</strong> running <strong>the</strong><br />
compositions at <strong>the</strong> API <strong>and</strong> Web level.<br />
The API interface is working properly.<br />
Error when accessing <strong>the</strong> web interface.<br />
Table 10: <strong>SODIUM</strong> platform features tested at MEDISYSTEM pilot<br />
The following table summarises validation <strong>of</strong> <strong>the</strong> following important features <strong>of</strong> <strong>SODIUM</strong> in <strong>the</strong> context <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot (as<br />
described in deliverable D5 Part II [4].): QoS, trust & security, fault h<strong>and</strong>ling/tolerance, dynamic discovery <strong>of</strong> services <strong>and</strong> performance<br />
Features Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
QoS • Special attention was paid in annotating <strong>the</strong> service descriptions with <strong>the</strong> use <strong>of</strong> <strong>the</strong> WS-QoS schema<br />
• The QoS parameters were manually annotated in <strong>the</strong> service descriptions, as <strong>the</strong>re is a lack <strong>of</strong> external broker tools in this<br />
area.<br />
• The Query Engine provides easy to use mechanisms to query <strong>and</strong> select services based on QoS search criteria.<br />
• The result <strong>of</strong> running a query based on QoS was as expected.
Features Validated in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
FP6-004559 p.84 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Trust & Security • The process <strong>of</strong> importing services into Local Dictionary is a manual process. The user decides if a service from a provider<br />
is to be trusted or not<br />
• The USQL dialog provides user-friendly <strong>and</strong> powerful mechanism to filter services according to provider name.<br />
• Search for services can be directed toward trusted registries through manual configuration <strong>of</strong> <strong>the</strong> USQL Engine.<br />
• The USQL Engine provides elementary support in searching for secure services.<br />
• Security was ensured by using <strong>the</strong> Execution engine behind <strong>the</strong> local firewall.<br />
Fault h<strong>and</strong>ling/tolerance • Exceptions- Execution Engine returns an error code when exceptions occurred<br />
• Timeouts – The Composition Studio allows to set Timeout <strong>and</strong> <strong>the</strong> Execution Engine take into consideration this parameter<br />
when executing <strong>the</strong> composition<br />
Dynamic discovery <strong>of</strong> services • The Composition Studio allows to associate a USQL query with a task.<br />
• The Execution Engine forwards <strong>the</strong> query <strong>the</strong> USQL Engine. From <strong>the</strong> list <strong>of</strong> services returned by <strong>the</strong> USQL Engine <strong>the</strong><br />
Execution Engine will invoke <strong>the</strong> first one in <strong>the</strong> list<br />
Performance • The Execution Engine logs execution times (start <strong>and</strong> stop) for all processes<br />
• The Execution Engine has been heavily loaded with multiple requests from 4 users at <strong>the</strong> same time. No decrease in<br />
performance was noticed<br />
Table 11: Important features tested at MEDISYSTEM pilot
5.3 <strong>Evaluation</strong> checklists used<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Checklists used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot for evaluating <strong>the</strong> <strong>SODIUM</strong> tools<br />
<strong>and</strong> methodology can be found in Appendix III - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> tools<br />
<strong>and</strong> Appendix IV - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> methodology.<br />
5.4 <strong>Assessment</strong> <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
5.4.1 Preliminary <strong>Assessment</strong> –Installation Phase<br />
This section provides a first assessment <strong>of</strong> <strong>the</strong> installation phase <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> tools at<br />
MEDISYSTEM premises up to Month 24 <strong>of</strong> <strong>the</strong> project.<br />
Details <strong>of</strong> <strong>the</strong> Medisystem environment including Operating System, Application Server(s),<br />
o<strong>the</strong>r required s<strong>of</strong>tware <strong>and</strong> hardware where <strong>SODIUM</strong> platform is installed are included.<br />
The assessment addresses <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> components Visual Composition<br />
Suite, USQL engine <strong>and</strong> USCL engine. Encountered problems with installation <strong>of</strong> <strong>the</strong>se are<br />
described as well as <strong>the</strong> resolution approach followed where applicable.<br />
5.4.1.1 Description <strong>of</strong> Medisystem environment in <strong>the</strong> context <strong>of</strong> <strong>the</strong> pilot<br />
Equipment & internet services<br />
The following table contains <strong>the</strong> equipment <strong>and</strong> services located in Euroclinic Hospital that<br />
are used for <strong>the</strong> Medisystem Pilot <strong>and</strong> for <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform.<br />
Equipment/Service Name<br />
Operating<br />
System<br />
Role<br />
Status<br />
Server Dell PowerEdge<br />
2600 Dual Processor<br />
Medtrak-srv<br />
MS Windows<br />
Server 2003<br />
Store Medtrak medical<br />
application, its DB <strong>and</strong><br />
medical related files<br />
Operational<br />
Server Dell PowerEdge<br />
2600 Dual Processor<br />
Platinum-srv<br />
MS Windows<br />
Server 2003<br />
Store SQL Server <strong>and</strong> DB for<br />
<strong>the</strong> Web services<br />
Operational<br />
Store IIS Server, UDDI Operational<br />
Server HP ProLiant<br />
ML350 Single Processor<br />
Websrv<br />
MS Windows<br />
Server 2003<br />
Server, TomCat Server to act<br />
as Web Server for <strong>the</strong><br />
Medisystem’s Web Services<br />
<strong>and</strong> compositions.<br />
PC Dell Optiplex GX270 Isarom<br />
MS Windows<br />
Server 2000<br />
Firewall Operational<br />
Laptop Computer HP<br />
NC6120<br />
LaptopIT<br />
MS Windows<br />
XP Pr<strong>of</strong>essional<br />
Acts as client computer <strong>and</strong><br />
for development <strong>of</strong> new<br />
compositions.<br />
Operational<br />
Fiber Optic Internet<br />
Operational<br />
Internet Connection Open System<br />
Owned by<br />
Medisystem<br />
Connections from Local<br />
ISPs. Is <strong>the</strong> main access to<br />
our web server to store <strong>the</strong><br />
services<br />
Internet Connection Open System<br />
Owned by<br />
MedCenter<br />
Fiber Optic Internet<br />
Connections from Local<br />
Operational<br />
FP6-004559 p.85 <strong>of</strong> 139
Equipment/Service Name<br />
Internet Connection RDS<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Operating<br />
System<br />
Owned by<br />
Interamerican<br />
Role<br />
ISPs. It will provide external<br />
access to MedCenter Web<br />
Services.<br />
VPN through Fiber Optic<br />
Internet Connections from<br />
Local ISPs. It will provide<br />
external access to<br />
Interamerican Web Services.<br />
FP6-004559 p.86 <strong>of</strong> 139<br />
Status<br />
Operational<br />
Table 12: MEDISYSTEM equipment <strong>and</strong> internet services used in <strong>the</strong> context <strong>of</strong> <strong>the</strong><br />
pilot<br />
Required s<strong>of</strong>tware<br />
The following table contains <strong>the</strong> s<strong>of</strong>tware <strong>and</strong> applications that are used in conjunction with<br />
<strong>the</strong> Medisystem Pilot <strong>and</strong> with <strong>the</strong> <strong>SODIUM</strong> platform<br />
S<strong>of</strong>tware / Application<br />
DB Cache Server<br />
Medtrak Application<br />
DB MS SQL Server<br />
2000<br />
Transfer Meddata VB<br />
application<br />
Installed<br />
on<br />
MedtraksrvMedtraksrv<br />
Platinum<br />
-srv<br />
Medtraksrv<br />
MS IIS Server 6.0 Websrv<br />
MS UDDI Server<br />
ver.5.2.3790<br />
Related<br />
databases / files<br />
Meddata &<br />
Medtrak<br />
Meddata &<br />
Medtrak<br />
Medtrak,<br />
Canamed &<br />
<strong>SODIUM</strong><br />
Cache Medtrak &<br />
SQL Medtrak<br />
InternalWS,<br />
ExternalWS,<br />
UDDI, UDDIpublic<br />
Websrv UDDI<br />
MS ISA 2000 Server Isarom NA<br />
MS .Net Framework 2.0<br />
ver.2.0.507727.42<br />
MS SQL Desktop<br />
Engine (UDDI)<br />
Websrv NA<br />
Websrv<br />
UDDI,Sodiumrep<br />
o<br />
Role<br />
Store in Cache type <strong>of</strong> DBs patient,<br />
care provider <strong>and</strong> hospital data<br />
Interfaces <strong>and</strong> routines to get limited<br />
access to Cache type <strong>of</strong> DBs<br />
Store in intermediary SQL DBs data<br />
that is used for <strong>the</strong> Web services<br />
Application developed to<br />
automatically or manually transfer<br />
data from <strong>the</strong> Cache Medtrak DB to<br />
SQL Medtrak DB<br />
Store <strong>and</strong> publish web pages<br />
Status<br />
Operationa<br />
l<br />
Operationa<br />
l<br />
Operationa<br />
l<br />
Operationa<br />
l<br />
Operationa<br />
l<br />
Publish UDDI information Operationa<br />
l<br />
Provide controlled access to <strong>and</strong> Operationa<br />
from <strong>the</strong> web server<br />
l<br />
Allows to configure remoting<br />
services <strong>and</strong> code access security<br />
policy<br />
Operationa<br />
l<br />
Store in SQL DBs data that is used Operationa<br />
for <strong>the</strong> UDDI publisher<br />
l<br />
Table 13: Required s<strong>of</strong>tware for <strong>the</strong> MEDISYSTEM pilot
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
5.4.1.2 <strong>SODIUM</strong> platform tools installation : problems <strong>and</strong> solutions<br />
Server environment installation (all on Websrv):<br />
The following table lists <strong>the</strong> s<strong>of</strong>tware applications <strong>and</strong> <strong>SODIUM</strong> components that are used for<br />
<strong>the</strong> Medisystem Pilot <strong>and</strong> in order to deploy <strong>the</strong> <strong>SODIUM</strong> platform on <strong>the</strong> server side.<br />
Problems encountered during installation <strong>and</strong> solutions to <strong>the</strong>se are also included.<br />
S<strong>of</strong>tware / component Status Problem encountered Solution<br />
Eclipse 3.2.1 IDE Operational Versioning <strong>of</strong> Java None.<br />
MS SQL Desktop<br />
Engine<br />
Web Server Apache<br />
Tomcat 4.1<br />
Operational<br />
Operational<br />
Initial choice was to install MS<br />
MySQL 4.1 which was not fully<br />
suitable for MS UDDI Server<br />
The web server does not start.<br />
Server unavailable outside <strong>the</strong><br />
firewall.<br />
Java 1.5.0 Operational None NA<br />
<strong>SODIUM</strong>: USQL Engine Operational None NA<br />
<strong>SODIUM</strong>: USCL Engine Operational None NA<br />
<strong>SODIUM</strong>: Composition<br />
Repository<br />
Operational<br />
<strong>SODIUM</strong>: Composition<br />
Repository DB (MySQL) Operational<br />
JXTA plug-in<br />
The composition repository<br />
(tomcat application) couldn’t<br />
connect to <strong>the</strong> database server.<br />
Although <strong>the</strong> related web page is<br />
functional, <strong>the</strong> DB User does not<br />
au<strong>the</strong>nticate.<br />
Install <strong>and</strong> configure <strong>the</strong><br />
appropriate Java version by<br />
using <strong>the</strong> VM comm<strong>and</strong> <strong>and</strong><br />
Preferences/Java/Installed<br />
JREs<br />
Remove MySQL <strong>and</strong> install<br />
MS SQL Desktop Engine<br />
Make appropriate changes in<br />
<strong>the</strong> Tomcat configuration file.<br />
Change <strong>the</strong> default port <strong>of</strong><br />
<strong>the</strong> web server in <strong>the</strong><br />
configuration file. Publish <strong>the</strong><br />
server in <strong>the</strong> Firewall.<br />
Solve <strong>the</strong> Repository DB<br />
issue<br />
Added localhost to <strong>the</strong> list <strong>of</strong><br />
machines from which this<br />
database user can connect<br />
from (MySql Server) <strong>and</strong><br />
manually grant access to <strong>the</strong><br />
DB.<br />
Table 14: MEDISYSTEM: Installation <strong>of</strong> <strong>SODIUM</strong> tools / server side: problems <strong>and</strong><br />
solutions<br />
Client environment installation (all on LaptopIT):<br />
The following table lists <strong>the</strong> s<strong>of</strong>tware applications <strong>and</strong> <strong>SODIUM</strong> components that are used for<br />
<strong>the</strong> Medisystem Pilot <strong>and</strong> in order to deploy <strong>the</strong> <strong>SODIUM</strong> platform on <strong>the</strong> client side:<br />
Problems encountered during installation <strong>and</strong> solutions to <strong>the</strong>se are also included where<br />
applicable.<br />
FP6-004559 p.87 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
S<strong>of</strong>tware / component Status Problem Solution<br />
Versioning Install <strong>the</strong> latest version <strong>of</strong> Eclipse<br />
Eclipse 3.1.2 IDE Operational<br />
<strong>and</strong> <strong>of</strong> Jena, UML2 <strong>and</strong> Web Tools<br />
Project Plug-ins<br />
Java 1.5.0 Operational None NA<br />
<strong>SODIUM</strong>: Visual Editor<br />
(Eclipse Plug-in)<br />
Operational<br />
Versioning. Install manually different<br />
components <strong>and</strong> reinstall <strong>the</strong> Visual<br />
Editor plug-in.<br />
<strong>SODIUM</strong>: USQL Client<br />
(Eclipse Plug-in)<br />
Operational<br />
Do not return any service Change <strong>the</strong> version <strong>of</strong> Java <strong>and</strong><br />
make use <strong>of</strong> VM switch <strong>and</strong><br />
Preferences/Java/Installed JREs<br />
JXTA Network Operational<br />
Peers didn’t always find<br />
each o<strong>the</strong>r<br />
Made <strong>the</strong> appropriate peer<br />
configuration.<br />
Table 15: MEDISYSTEM : Installation <strong>of</strong> <strong>SODIUM</strong> tools / client side: problems <strong>and</strong><br />
solutions<br />
5.4.1.3 <strong>Evaluation</strong> <strong>of</strong> platform-level requirements during <strong>the</strong> installation<br />
The following table summarizes <strong>the</strong> evaluation <strong>of</strong> <strong>SODIUM</strong> platform level requirements as per<br />
D3 Part I during <strong>the</strong> installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform components at MEDISYSTEM:<br />
Requirement Satisfied <strong>Assessment</strong> at<br />
installation<br />
RP03: <strong>Platform</strong><br />
independence<br />
Details<br />
YES All installed OK All components were installed<br />
without issues related to <strong>the</strong><br />
platform<br />
RP10: Scalability YES All installed OK At <strong>the</strong> installation phase no<br />
scalability issues were<br />
encountered<br />
RP11: Security YES All installed OK All <strong>the</strong> security issues were<br />
managed by o<strong>the</strong>r means outside<br />
<strong>the</strong> <strong>SODIUM</strong> platform such as<br />
firewall, use trusted sites <strong>and</strong><br />
sources<br />
RP16: Modularity YES All installed OK Excellent example <strong>of</strong> modularity.<br />
Each component can be installed<br />
<strong>and</strong> run on its own.<br />
Table 16: <strong>Evaluation</strong> <strong>of</strong> platform level requirements: installation phase at<br />
MEDISYSTEM<br />
FP6-004559 p.88 <strong>of</strong> 139
5.4.2 <strong>Assessment</strong> related to <strong>the</strong> use <strong>of</strong> tools <strong>and</strong> methodology till end <strong>of</strong> project<br />
5.4.2.1 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Visual Editor<br />
Criterion/Indicator Requirements Measurement<br />
tool<br />
Heterogeneous<br />
service types<br />
Ability to use services <strong>of</strong><br />
types Web, Grid <strong>and</strong> P2P<br />
services<br />
Basic file h<strong>and</strong>ling Support for create, open, edit<br />
save <strong>and</strong> print<br />
Common workflow<br />
patterns<br />
Support for sequence,<br />
parallel split, synchronization,<br />
exclusive choice, multiple<br />
choice, simple merge <strong>and</strong><br />
discriminator<br />
Documentation Support for basic annotation<br />
<strong>and</strong> commenting functionality<br />
QoS Characteristics The ability to specify QoS<br />
properties <strong>of</strong> specific services<br />
as well as <strong>the</strong> QoS<br />
requirements <strong>of</strong> specific tasks<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
FP6-004559 p.89 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection<br />
method<br />
Result Comment<br />
Operational tests, trials OK The P2P invocation has been<br />
tested with difficulty as <strong>the</strong> P2P<br />
network technology use was not<br />
reliable. The configuration <strong>of</strong> <strong>the</strong><br />
plug-ins needed to invoke<br />
compositions with P2P services is<br />
complex <strong>and</strong> can easily induce<br />
errors.<br />
Operational tests, trials OK Includes drag <strong>and</strong> drop feature<br />
Operational tests, trials OK Has <strong>the</strong> ability to model <strong>the</strong> basic<br />
workflows. More advance<br />
workflows can be implemented by<br />
use <strong>of</strong> <strong>the</strong> XSLT <strong>and</strong> XPath<br />
languages<br />
Operational tests OK All panes, views <strong>and</strong> components<br />
have been presented in detail.<br />
Separate<br />
available.<br />
installation steps are<br />
Operational tests, trials OK QoS criteria can be specified for<br />
each task.
Criterion/Indicator Requirements Measurement<br />
tool<br />
Basic composition<br />
constructs<br />
Support for task modeling,<br />
service operation modeling,<br />
input/output parameters <strong>and</strong><br />
data transformations, start<br />
<strong>and</strong> end nodes<br />
Parameter types Support for defining syntactic<br />
<strong>and</strong> semantic types for<br />
input/output parameters.<br />
Timeouts Ability to specify maximum<br />
response time for a service<br />
Task hierarchy Support for specifying<br />
sublevels <strong>of</strong> tasks<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Graphical symbols Should be st<strong>and</strong>ards-based Manual<br />
inspection<br />
Basic editing<br />
functions<br />
Support for<br />
enabling/disabling sticky<br />
selection<br />
Manual<br />
inspection<br />
FP6-004559 p.90 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection<br />
method<br />
Result Comment<br />
Operational tests, trials OK All have been implemented.<br />
Operational tests OK All basic types <strong>of</strong> parameters are<br />
provided.<br />
Operational tests, trials OK The maximum response time for<br />
each task can be set.<br />
Operational tests, trials OK Sub compositions/task can be<br />
used.<br />
Operational tests, trials OK The available symbols are<br />
st<strong>and</strong>ard.<br />
Operational tests, trials OK Sticky selection is available.
5.4.2.2 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USQL Engine<br />
Criterion/Indicator Requirements Measurement<br />
tool<br />
Access both private<br />
& public registries<br />
Unified access <strong>of</strong><br />
heterogeneous<br />
registries<br />
Support operation-<br />
<strong>and</strong> message-level<br />
search criteria<br />
Semantically<br />
enhanced service<br />
discovery<br />
QoS-aware service<br />
discovery <strong>and</strong><br />
selection<br />
Should be able to access <strong>and</strong><br />
query against both public <strong>and</strong><br />
private registries, in a<br />
seamless manner.<br />
Should be able to access <strong>and</strong><br />
query against various<br />
heterogeneous service<br />
registries <strong>and</strong> networks in a<br />
transparent way.<br />
Should provide for <strong>the</strong> users<br />
<strong>the</strong> appropriate means for<br />
expressing search criteria at<br />
<strong>the</strong> operation level <strong>and</strong><br />
message level, addition to<br />
service-level requirements.<br />
Should be able to support<br />
semantic matchmaking.<br />
Should enable users to<br />
specify QoS-based search<br />
criteria.<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
FP6-004559 p.91 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Operational tests, trials OK The way <strong>of</strong> accessing public <strong>and</strong><br />
private registries is quite<br />
complicated<br />
Operational tests OK The manner <strong>of</strong> supporting this<br />
feature is very user friendly<br />
Operational tests OK It covers very well all <strong>the</strong><br />
requirements<br />
Operational tests OK All <strong>the</strong> basic requirements are<br />
covered<br />
Operational tests OK QoS criteria are simple to use in a<br />
USQL query <strong>and</strong> <strong>the</strong>y effectively<br />
improve service selection.
Criterion/Indicator Requirements Measurement<br />
tool<br />
Up-to-date<br />
application <strong>of</strong><br />
service discovery<br />
over P2P networks<br />
User-friendly<br />
interface<br />
Should allow retrieving up-todate<br />
service advertisements<br />
from highly volatile<br />
environments, such as P2P<br />
networks.<br />
Should facilitate users in<br />
constructing service requests<br />
<strong>and</strong> submitting <strong>the</strong>m for<br />
execution<br />
Performance Should respond in service<br />
requests at a reasonable time<br />
< 60 seconds)<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Exception h<strong>and</strong>ling Transparency, effectiveness Manual<br />
inspection, Log<br />
files<br />
Availability 24/7 Manual<br />
inspection<br />
Exp<strong>and</strong>ability Extensions must be easily<br />
accommodated<br />
Manual<br />
inspection<br />
FP6-004559 p.92 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Trials Partially<br />
OK<br />
Due to <strong>the</strong> asynchronous, volatile<br />
nature <strong>of</strong> P2P networks <strong>and</strong> <strong>the</strong><br />
lack <strong>of</strong> a caching mechanism for<br />
<strong>the</strong> USQL Engine, it is not always<br />
feasible to discover all available<br />
P2P services with a single query<br />
execution. Thus, recall is reduced,<br />
as opposed to <strong>the</strong> case <strong>of</strong> Web<br />
service discovery <strong>and</strong> Grid service<br />
discovery.<br />
Operational tests, trials OK The interface is well organized<br />
allowing developing complex<br />
queries in a simple manner.<br />
Operational tests, trials OK Response time is affected by <strong>the</strong><br />
connection state to USQL engine.<br />
However, timeout can be modified.<br />
Operational tests, trials OK Exceptions are logged in <strong>the</strong><br />
Tomcat Server log.<br />
Operational tests, trials OK The Query Engine is available as<br />
long <strong>the</strong> web server is running.<br />
Operational tests OK The Engine is able to<br />
accommodate different types <strong>of</strong><br />
registries such as UDDI, JXTA <strong>and</strong><br />
service description protocols such<br />
as WSDL, SAWSDL or WS-QoS .
Criterion/Indicator Requirements Measurement<br />
tool<br />
Maintainability On request or when updates<br />
are available<br />
Manual<br />
inspection<br />
Scalability 2 registries have been tested Manual<br />
inspection, logs<br />
Portability Install on windows platform Manual<br />
inspection<br />
FP6-004559 p.93 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Operational tests, trials OK Updates <strong>and</strong> regular check have<br />
been performed with ease.<br />
Trials OK Response within required time<br />
scale<br />
Operational tests OK Running with no problem on<br />
Windows platform. No tests on<br />
o<strong>the</strong>r platform have been<br />
performed.
5.4.2.3 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> USCL Engine<br />
Criterion/Indicator Requirements Measurement<br />
tool<br />
Extensibility Should accommodate<br />
services <strong>of</strong> different kinds.<br />
Abstraction Should be based on a unified<br />
model, which does not<br />
require any extension when it<br />
is applied to compose<br />
services <strong>of</strong> different kinds.<br />
Modularity Should provide a modular<br />
architecture to permit dealing<br />
with issues such as security<br />
<strong>and</strong> reliable message<br />
delivery.<br />
Flexible Deployment Should be flexible in<br />
deployment, in order to tackle<br />
specific security <strong>and</strong><br />
performance issues.<br />
Exception h<strong>and</strong>ling Should provide support to<br />
exception h<strong>and</strong>ling<br />
Manual<br />
inspection, logs<br />
Manual<br />
inspection, logs<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection, logs<br />
FP6-004559 p.94 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Operational tests, trials OK Web <strong>and</strong> Grid services are quite<br />
simple to deploy. Taking in <strong>the</strong><br />
consideration <strong>the</strong> nature <strong>of</strong> P2P<br />
services some more issues<br />
emerged, but were solved.<br />
Operational tests, trials OK Same approach no matter <strong>the</strong> kind<br />
<strong>of</strong> services used in compositions.<br />
Operational tests, trials OK Various mechanisms are in place<br />
to allow dealing with <strong>the</strong>se issues.<br />
Operational tests, trials OK Same as above.<br />
Operational tests, trials OK The available system outputs that<br />
are <strong>the</strong> mechanisms to deal with<br />
exception h<strong>and</strong>ling can be used<br />
both at deployment time <strong>and</strong> at run<br />
time.
Criterion/Indicator Requirements Measurement<br />
tool<br />
Reliable Execution Mechanisms for reliable<br />
execution should be in place<br />
so that faults within <strong>the</strong><br />
execution engine itself do not<br />
affect <strong>the</strong> execution <strong>of</strong> its<br />
compositions.<br />
Persistent storage<br />
independence<br />
Publishing <strong>of</strong><br />
service<br />
compositions<br />
The reliable execution<br />
mechanism should be<br />
independent <strong>of</strong> <strong>the</strong> underlying<br />
data storage technology.<br />
Should enables clients to<br />
invoke service compositions<br />
as services, by utilizing well<br />
known industry st<strong>and</strong>ards,<br />
such as WSDL <strong>and</strong> SOAP<br />
Manual<br />
inspection, logs<br />
Manual<br />
inspection, logs<br />
Manual<br />
inspection<br />
FP6-004559 p.95 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Operational tests, trials OK The available mechanisms have<br />
been evaluated on different<br />
occasions not on as a main load<br />
task. On <strong>the</strong>se occasions <strong>the</strong><br />
engine did notify <strong>the</strong> user.<br />
Operational tests, trials OK Requirements have been achieved<br />
Operational tests, trials OK Some issues have been reported<br />
on <strong>the</strong> Web Services API interface.<br />
The main API interface performed<br />
well.
5.4.2.4 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> Composition repository<br />
Criterion/Indicator Requirements Measurement<br />
tool<br />
Versioning The ability to store different<br />
versions <strong>of</strong> <strong>the</strong> same file.<br />
Manual<br />
inspection<br />
Remote access Should be remotely accessible. Manual<br />
inspection<br />
Search capability Files should be easily located<br />
<strong>and</strong> retrieved, based on specific<br />
criteria<br />
Availability Should be highly available<br />
(24/7).<br />
Scalability Should be scalable to support<br />
multiple user access.<br />
Security It is important that any file<br />
storage <strong>and</strong> versioning system<br />
provides access control by<br />
assigning specific privileges to<br />
users.<br />
File sharing It should be possible for a file to<br />
be shared among multiple<br />
projects.<br />
File Branching It should be possible for a<br />
shared file to be broken into two<br />
or more independent files, for<br />
each project.<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
FP6-004559 p.96 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Result Comment<br />
Operational tests, trials OK Simple to use <strong>and</strong> good visibility <strong>of</strong><br />
versions<br />
Operational tests, trials OK Is accessible as a web page.<br />
Operational tests, trials OK Requirements have been achieved<br />
Operational tests, trials OK This feature depends primarily on<br />
<strong>the</strong> availability <strong>of</strong> <strong>the</strong> web server<br />
hosting <strong>the</strong> repository<br />
Operational tests, trials OK Requirements have been achieved<br />
Operational tests, trials OK Requirements have been achieved<br />
Operational tests, trials OK The repository allows easy sharing<br />
<strong>of</strong> <strong>the</strong> same file among multiple<br />
projects<br />
Operational tests, trials OK Only on manual basis
5.4.2.5 <strong>Evaluation</strong> <strong>of</strong> <strong>the</strong> overall methodology<br />
Criterion/Indicator Requirements Measurement<br />
tool<br />
Abstract <strong>and</strong><br />
concrete<br />
compositions<br />
Bottom-up<br />
composition<br />
development<br />
Discovery <strong>of</strong> existing<br />
services<br />
Dynamic service<br />
discovery<br />
Data<br />
transformations<br />
The ability to specify<br />
compositions <strong>of</strong> tasks without<br />
knowledge <strong>of</strong> existing<br />
services, <strong>and</strong> to select<br />
specific services for <strong>the</strong><br />
tasks, <strong>and</strong> <strong>the</strong> ability to<br />
maintain this information in<br />
<strong>the</strong> same model<br />
The ability to produce<br />
compositions when <strong>the</strong> user<br />
knows exactly which services<br />
to use<br />
The ability to search for<br />
services<br />
The ability to define run-time<br />
queries, meaning that <strong>the</strong><br />
search for a matching service<br />
is performed as part <strong>of</strong> <strong>the</strong><br />
execution<br />
Support for defining data<br />
transformations between data<br />
objects<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
Manual<br />
inspection<br />
FP6-004559 p.97 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Req. met.<br />
Operational tests, trials Yes.<br />
Tasks inside composition can also not be<br />
assigned to a specific service or subtask if<br />
needed. The execution engine will treat <strong>the</strong><br />
task as a black box that if this does not<br />
return any output.<br />
Operational tests, trials Yes.<br />
This is done very easy <strong>and</strong> also<br />
automatically includes <strong>the</strong> input <strong>and</strong> output<br />
parameters <strong>of</strong> <strong>the</strong> used service.<br />
Operational tests, trials Yes.<br />
This is done very easy by using <strong>the</strong> USQL<br />
Query from inside <strong>the</strong> Visual Composition<br />
Studio.<br />
Operational tests, trials Yes.<br />
This is done very easy in <strong>the</strong> Visual<br />
Composition Studio as a query can be<br />
included <strong>and</strong> run in <strong>the</strong> composition. The<br />
Execution Engine has <strong>the</strong> ability to execute<br />
<strong>the</strong> query at run-time.<br />
Operational tests, trials Yes.<br />
Both simple <strong>and</strong> more complex data<br />
transformations can be used. The process<br />
is not simple, even for <strong>the</strong> simplest
Criterion/Indicator Requirements Measurement<br />
tool<br />
Multiple services per<br />
task<br />
Transformation to<br />
executable format<br />
Support to select several<br />
c<strong>and</strong>idate services for a task<br />
including an execution<br />
strategy for final selection.<br />
Manual<br />
inspection<br />
Support for transformation Manual<br />
inspection<br />
FP6-004559 p.98 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Data collection method Req. met.<br />
transformations <strong>and</strong> likely to induce errors.<br />
Operational tests, trials Yes.<br />
A task can have more than one service that<br />
can be run in parallel or in series.<br />
Operational tests, trials Yes.<br />
The compositions are compiled into USCL<br />
files. These files are <strong>the</strong>n deployed <strong>and</strong><br />
executed in <strong>the</strong> Execution Engine.
5.4.3 Meeting Key Business Requirements for MEDISYSTEM<br />
FP6-004559 p.99 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
In this section we summarise how <strong>the</strong> key business requirements are met for MEDISYSTEM through <strong>the</strong> use <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform<br />
<strong>and</strong> tools.<br />
Business requirement Req.<br />
met<br />
Use different types <strong>of</strong> available services such<br />
as Web, P2P, <strong>and</strong> Grid services<br />
Explore <strong>the</strong> ability to combine “internal<br />
services or private services” with publicly<br />
available services.<br />
Experiment, test <strong>and</strong> adopt solutions to<br />
efficiently <strong>and</strong> effectively develop applications<br />
from heterogeneous services.<br />
Test <strong>the</strong> capabilities to easy use <strong>and</strong> integrate<br />
<strong>the</strong> emerging services with existing<br />
capabilities.<br />
Accommodate simple discovery <strong>of</strong> new<br />
services <strong>and</strong> fast use.<br />
Comments<br />
Yes The use <strong>of</strong> each different type <strong>of</strong> service is quite simple as long as <strong>the</strong> services are<br />
available <strong>and</strong> <strong>the</strong> appropriate plug-in components have been set up.<br />
Yes A composition may contain internal or external services in a seamless manner.<br />
Yes The solution provided by <strong>the</strong> compositions that simply can include heterogeneous<br />
services proved to be efficient.<br />
Yes The resulting service <strong>of</strong> a composition can be integrated with <strong>the</strong> existing applications.<br />
Two interfaces are available: API <strong>and</strong> Web<br />
Yes Services can be discovered by using <strong>the</strong> integrated USQL Dialog in <strong>the</strong> Visual<br />
Composition Studio.
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
5.4.4 Qualitative benefits from using <strong>the</strong> <strong>SODIUM</strong> approach<br />
Medisystem (S.C. MEDISYSTEM HOSPITAL S.A) belongs to <strong>the</strong> Eureko Group<br />
(www.Eureko.net), one <strong>of</strong> <strong>the</strong> leading financial services firms in Europe with significant<br />
financial resources <strong>and</strong> internationally recognized credit ratings. Medisystem operates<br />
Euroclinic Bucharest, <strong>the</strong> first private hospital in Romania, <strong>and</strong> <strong>the</strong> flagship facility <strong>of</strong> <strong>the</strong><br />
Medisystem project in Romania. The Hospital, a br<strong>and</strong> new facility built next to <strong>the</strong> most<br />
modern public hospital in Romania – Floreasca Emergency Hospital, is licensed to perform<br />
medical <strong>and</strong> hospital services.<br />
The principal benefits from using <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> that are relevant to an end user with<br />
<strong>the</strong> characteristics <strong>of</strong> MEDISYSTEM are summarized in Section 5.1.1. above <strong>and</strong> relate both<br />
to <strong>the</strong> functionality <strong>and</strong> capabilities <strong>of</strong>fered by <strong>the</strong> <strong>SODIUM</strong> Methodology <strong>and</strong> <strong>Platform</strong> <strong>and</strong><br />
<strong>the</strong> fact that MEDISYSTEM is a member <strong>of</strong> an international Group with access to assets <strong>and</strong><br />
expertise <strong>of</strong> far larger companies<br />
The assessment <strong>of</strong> whe<strong>the</strong>r <strong>the</strong>se benefits are indeed obtained by using <strong>SODIUM</strong> will be<br />
carried out in <strong>the</strong> environment <strong>of</strong> MEDISYSTEM, a company which<br />
a) Belongs to a large multinational Group<br />
b) Has a small IT unit, though heavily relies on procurement<br />
c) Has <strong>the</strong> ability to form an International Private Network for publishing services along<br />
with IT departments <strong>of</strong> sister/mo<strong>the</strong>r/daughter/associated companies, some <strong>of</strong> which<br />
are <strong>of</strong> a ra<strong>the</strong>r considerable size <strong>and</strong> capability (especially those <strong>of</strong> Insurance<br />
Companies)<br />
d) Has strategic procurement priorities <strong>and</strong> constraints will be ascertained in a qualitative<br />
manner by recording <strong>the</strong> experiences <strong>of</strong> different functions in MEDISYSTEM that were<br />
involved in <strong>the</strong> Pilots <strong>and</strong> by also obtaining feedback from <strong>the</strong> Management.<br />
Qualitative feedback has been collected in <strong>the</strong> context <strong>of</strong> presentations, discussions <strong>and</strong><br />
brainstorming sessions conducted within MEDISYSTEM.<br />
In providing such an assessment, MEDISYSTEM has decided to “codify” perceived business<br />
benefits as per following SOA benefits reported in [9] as follows:<br />
• Business Effectiveness<br />
� Be1. Agility, responsiveness to market <strong>and</strong> competitive dynamics<br />
� Be2. Greater process efficiencies<br />
� Be3. Deployment <strong>of</strong> resources based on business needs<br />
• Cost Efficiency<br />
� Be4. Reduced maintenance costs<br />
FP6-004559 p.100 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
� Be5. Reduced skills <strong>and</strong> effort to support business change<br />
� Be6. Price/performance optimization based on freedom to select<br />
platform, technology, <strong>and</strong> location independently<br />
• Reduced Risk<br />
� Be7. Higher level <strong>of</strong> IT quality<br />
� Be8. Incremental deployment<br />
� Be9. Improved payback times<br />
Fur<strong>the</strong>rmore, <strong>the</strong> assessment process will also look for deficiencies that are to fall in one <strong>of</strong><br />
<strong>the</strong> areas:<br />
• Df1. Inability to properly manage <strong>and</strong> monitor services<br />
• Df2. Inadequate security measures<br />
• Df3. Inconsistent performance <strong>and</strong> reliability (quality <strong>of</strong> service)<br />
• Df4. Issues resulting from a lack <strong>of</strong> discipline <strong>and</strong> control in <strong>the</strong> development<br />
<strong>and</strong> operations management areas<br />
• Df5. The need for middleware functionality to h<strong>and</strong>le orchestration,<br />
transformation etc<br />
For a small IT team in charge with deploying new developments to support <strong>the</strong> business it is<br />
important <strong>and</strong> some time crucial to asses <strong>the</strong> benefits <strong>and</strong> especially <strong>the</strong> risks related not<br />
only with <strong>the</strong> deployed solution but with all <strong>the</strong> related activities including <strong>the</strong> installation.<br />
The following table summarizes qualitative assessment up to M30 where <strong>the</strong> codes for<br />
benefits <strong>and</strong> deficiencies are depicted above:<br />
Pilot activity Assessed<br />
benefits<br />
MPA1. Installing basic<br />
s<strong>of</strong>tware components to<br />
support <strong>the</strong> platform<br />
MPA2. Installing <strong>the</strong> Visual<br />
Editor<br />
Be4, Be5,Be6,<br />
Be7, Be8, Be9<br />
Assessed<br />
deficiencies<br />
Issues /Notes<br />
Df4,Df5 Fast installation.<br />
Versioning issues<br />
can be important.<br />
Be5, Be8 Df4, Df5 Easy to install.<br />
MPA3. Installing <strong>the</strong> repository Be5, Be8 Df4,Df5 Easy to install.<br />
MPA4. Installing <strong>the</strong> USCL<br />
engine<br />
Be5, Be8 Df4,Df5 Easy to install.<br />
MPA5. Installing <strong>the</strong> query Be5, Be8 Df4, Df5 Easy to install.<br />
FP6-004559 p.101 <strong>of</strong> 139
Pilot activity Assessed<br />
benefits<br />
engine<br />
MPA6. General use <strong>of</strong> <strong>the</strong><br />
Visual Editor<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Be1, Be2, Be3,<br />
Be5, Be8, Be9<br />
MPA7. Access <strong>the</strong> repository Be1, Be2, Be3,<br />
Be4, Be5, Be8,<br />
MPA8. Access <strong>the</strong> USQL<br />
engine to retrieve available<br />
services<br />
MPA9. Run query engine,<br />
return service <strong>of</strong> type WEB<br />
Service<br />
MPA10. Run compositions<br />
invoking WEB services<br />
MPA11. Run query engine,<br />
return service <strong>of</strong> type P2P<br />
MPA12. Run compositions<br />
invoking P2P services<br />
MPA13. Run query engine,<br />
return service <strong>of</strong> type GRID<br />
service<br />
MPA14. Run compositions<br />
invoking GRID service<br />
Be1, Be2, Be3,<br />
Be5, Be8, Be9<br />
Be1, Be2, Be3,<br />
Be5, Be8, Be9<br />
Assessed<br />
deficiencies<br />
Issues /Notes<br />
Df1, DF5 It covers well all<br />
main needs. Intuitive<br />
<strong>and</strong> easy to use<br />
tools. Main issues<br />
related with data<br />
transformations.<br />
Df1 Easy to install.<br />
none It covers well all<br />
main needs. Intuitive<br />
<strong>and</strong> easy to use<br />
tools. Effective<br />
response.<br />
none Easy to use <strong>and</strong><br />
effective response.<br />
Be4, Be5, Be6 none Easy to use<br />
Be1, Be2, Be3,<br />
Be5, Be8, Be9<br />
Be4, Be5, Be6<br />
Be1, Be2, Be3,<br />
Be4, Be5, Be6,<br />
Be9<br />
Effective response.<br />
none Easy to use <strong>and</strong><br />
effective response.<br />
Be4, Be5, Be6 none Easy to use<br />
Table 17: MEDISYSTEM Preliminary qualitative assessment<br />
Summarizing <strong>the</strong> assessment revealed <strong>the</strong> following:<br />
• The estimated increase in efficiency is in <strong>the</strong> range <strong>of</strong> 30-65% <strong>of</strong> normal workload. The<br />
development <strong>and</strong> testing <strong>of</strong> a medium size composition requires 45% <strong>of</strong> <strong>the</strong> total<br />
development time while <strong>the</strong> transformations <strong>and</strong> decision nodes <strong>and</strong> <strong>the</strong>ir testing require<br />
<strong>the</strong> remaining <strong>of</strong> 55%.<br />
FP6-004559 p.102 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• Even simple st<strong>and</strong>ard transformation can induce errors although can easily be done <strong>and</strong><br />
testing by using an available XML tool (Stylus Studio). 2-to-1 transformation requires<br />
more h<strong>and</strong>-coding <strong>and</strong> this is very time consuming <strong>and</strong> induce errors.<br />
• The decision node requires knowledge <strong>of</strong> XSLT <strong>and</strong> all <strong>the</strong> changes affecting <strong>the</strong> node<br />
need to be done manually.<br />
• Error messages related with transformation <strong>and</strong> decision nodes are visible at run time on<br />
Execution Engine not at design time on Visual Studio<br />
• The Eclipse platform is using important amount <strong>of</strong> memory that can affect <strong>the</strong><br />
performance <strong>of</strong> o<strong>the</strong>r running application.<br />
5.4.5 Cost <strong>of</strong> Using <strong>the</strong> <strong>SODIUM</strong> Approach<br />
The costs associated with introducing <strong>and</strong> making full use <strong>of</strong> <strong>SODIUM</strong> into a business<br />
environment <strong>of</strong> a large group is studied <strong>and</strong> quantified:<br />
Such costs can include:<br />
a) Set up <strong>of</strong> infrastructures <strong>and</strong> procedures for publishing <strong>and</strong> maintaining services in<br />
a private network<br />
b) Set up <strong>of</strong> infrastructures for discovering, selecting, acquiring <strong>and</strong> introducing<br />
services into <strong>the</strong> group private network<br />
c) Particular measures to be taken for security<br />
d) Adaptation <strong>of</strong> procurement procedures <strong>and</strong> agreements<br />
e) Thorough training <strong>of</strong> all personnel involved <strong>and</strong> probably third parties that<br />
participate in s<strong>of</strong>tware development<br />
f) Acquisition <strong>of</strong> tools etc.<br />
g) Development <strong>of</strong> quality procedures<br />
h) Major adaptations <strong>of</strong> technical documentation <strong>and</strong> quality documentation<br />
Fur<strong>the</strong>r costs have not been spotted during <strong>the</strong> operation <strong>of</strong> <strong>the</strong> pilots.<br />
The following quantitative analysis is focused on most common activities <strong>and</strong> does not<br />
include complex or special cases.<br />
Activity Cost (pers.-days)<br />
Training in using <strong>the</strong> tools 2<br />
Training for supporting <strong>the</strong> tools 1<br />
FP6-004559 p.103 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Activity Cost (pers.-days)<br />
Installation <strong>of</strong> tools 2<br />
Customization <strong>of</strong> tools; involving setting up Java, Tomcat, MySQL etc 2<br />
Create composition<br />
Create a medium complex composition with sub compositions, alternative<br />
services on at least one task, use <strong>of</strong> decision node, split/merge.<br />
Query for services 0.5<br />
Execute composition<br />
Assuming that <strong>the</strong> execution requires debugging.<br />
Integration<br />
Including transforming from VSCL to USCL, using <strong>the</strong> embedded query<br />
engine in <strong>the</strong> Composition Studio, deploying <strong>the</strong> USCL file in <strong>the</strong> execution<br />
engine <strong>and</strong> storing <strong>the</strong> associated file into Repository.<br />
Transformation<br />
Assuming that at least 2 transformations <strong>of</strong> output from one task to input to<br />
ano<strong>the</strong>r task is to be done in <strong>the</strong> Visual Composition Editor<br />
Integration with client application<br />
Including <strong>the</strong> coding needed to use <strong>the</strong> result from <strong>the</strong> execution engine <strong>and</strong><br />
to process this result according to <strong>the</strong> type <strong>of</strong> <strong>the</strong> output data.<br />
5.4.6 Cost Benefit Analysis<br />
Cost:<br />
Hours<br />
Rate<br />
(€/hour)<br />
FP6-004559 p.104 <strong>of</strong> 139<br />
1<br />
0.5<br />
0.5<br />
1<br />
1.5<br />
One time<br />
cost<br />
(€)<br />
Yearly<br />
cost<br />
(€)<br />
Equipment<br />
1 new server for <strong>the</strong> Execution engine 2000 0<br />
1 new PC for <strong>the</strong> Visual Studio 1550 0<br />
Setup <strong>the</strong> equipment hardware <strong>and</strong> OS 24 30 480 0<br />
Installation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform 16 30 720 0<br />
0 0<br />
Training: 0 0<br />
5 employees trained in using <strong>the</strong> platform 20 30 600 0<br />
3 employees trained in supporting <strong>the</strong> platform 80 30 2400 0<br />
0 0<br />
O<strong>the</strong>r costs: 0 0<br />
Change existing code 80 30 2400 0<br />
Total cost: 10150 0<br />
Benefit:<br />
35% improvement <strong>of</strong> efficiency 1700 30 17850<br />
Possibility <strong>of</strong> terminate outsourcing contracts 5000
Cost:<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Hours<br />
Rate<br />
(€/hour)<br />
One time<br />
cost<br />
(€)<br />
FP6-004559 p.105 <strong>of</strong> 139<br />
Yearly<br />
cost<br />
(€)<br />
Re-use <strong>of</strong> code 160 30 4800<br />
Cost reduction as maintenance performed locally 16 30 480<br />
Cost reduction caused by central update <strong>of</strong> data 16 30 480<br />
Cost reduction caused by faster local installations 24 30 720<br />
Total benefit 29330<br />
Payback time: 10150 € / 29330 € = 0.34 <strong>of</strong> a year = approx. 1 year 11 months
FP6-004559 p.106 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
5.5 Lessons Learned, Recommendations <strong>and</strong> Suggestions for improvement for commercialization<br />
The following table summarises lessons learned in <strong>the</strong> context <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot with respect to Organisational changes<br />
introduced by <strong>SODIUM</strong> <strong>and</strong> training needed related to <strong>the</strong> use <strong>of</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools<br />
Issue Comment<br />
Organizational<br />
changes<br />
The <strong>SODIUM</strong> approach does not imply organizational changes. Quality <strong>of</strong> <strong>the</strong> procedures can be affected as <strong>the</strong> user<br />
changing or using <strong>the</strong> composition needs comprehensive knowledge when a new version is created.<br />
Training The designers <strong>of</strong> <strong>the</strong> compositions require 2 days <strong>of</strong> training, while <strong>the</strong> developers for <strong>the</strong> client application require 1 day <strong>of</strong><br />
training.<br />
The following table summarises lessons learned in <strong>the</strong> context <strong>of</strong> <strong>the</strong> MEDISYSTEM pilot with respect to <strong>the</strong> use <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform<br />
<strong>and</strong> tools<br />
Tool Issue Comment/Solution<br />
Composition Studio Usability It is very user friendly <strong>and</strong> tools are intuitive. The logic <strong>and</strong> data flows can well cover complex scenarios.<br />
Composition Studio Changes in Local Changes to a service description from a service in Local Dictionary are not successfully reloaded <strong>and</strong><br />
Dictionary links to <strong>the</strong> service/task in <strong>the</strong> composition need to be done manually.<br />
Composition Studio Basic data type Basic data type such as string, int, Boolean etc are difficult or impossible to be used as most <strong>of</strong> data<br />
available in Local provided by a service in a task need to be transformed as it is wrapped by its SOAP. No transformation to<br />
Dictionary basic data is possible <strong>and</strong> user needs to define this data into a file, publish on a web server <strong>and</strong> <strong>the</strong>n<br />
import into local dictionary.<br />
Composition Studio Versioning <strong>of</strong> <strong>the</strong> A couple <strong>of</strong> issues have been encountered do to <strong>the</strong> version <strong>of</strong> Eclipse, Java or o<strong>the</strong>r auxiliary plug-ins or<br />
Eclipse, Java etc third party s<strong>of</strong>tware.
FP6-004559 p.107 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Tool Issue Comment/Solution<br />
Composition Studio Suggestions for<br />
possible<br />
• Simple data transformation <strong>of</strong> common output <strong>and</strong> input parameters<br />
automations <strong>of</strong><br />
common but very<br />
• Basic decision nodes<br />
used task<br />
• Simple mechanism to verify data transformation available inside <strong>the</strong> Visual Studio<br />
Execution Engine<br />
Execution Engine<br />
Execution Engine<br />
Execution Engine<br />
Usability<br />
Multiple ”entry”<br />
points <strong>of</strong> <strong>the</strong><br />
composition in<br />
<strong>the</strong> execution<br />
engine<br />
The Web access<br />
interface to<br />
access <strong>the</strong><br />
composition in<br />
<strong>the</strong> Execution<br />
Engine<br />
Versioning <strong>of</strong> <strong>the</strong><br />
Eclipse, Java etc<br />
• Wizard for 2 to 1 transformations<br />
• Possible improvements:<br />
• Local dictionary to allow imports <strong>of</strong> all <strong>the</strong> services with descriptions available at a single URL<br />
• Possibility to allow remapping <strong>of</strong> a task components from a service to a new, similar or updated<br />
service that has identical parameters with <strong>the</strong> previous service used in <strong>the</strong> composition.<br />
• The Execution Engine is easy to use for <strong>the</strong> most common tasks, can h<strong>and</strong>le very well a large amount<br />
<strong>of</strong> processes <strong>and</strong> is very robust. The information system that also includes <strong>the</strong> error message system<br />
gives a large amount <strong>of</strong> information about <strong>the</strong> processes.<br />
The Execution Engine generates couple <strong>of</strong> ”entry” points into a running composition. This is very useful<br />
when need to access subtasks but can very confusing for developers. Suggestion for <strong>the</strong> engine to<br />
provide mechanism in a form a check box to present subtask or only <strong>the</strong> main task.<br />
When a composition is deployed a specific web service interface is created (based on <strong>the</strong> composition) for<br />
invocation. It was found to be difficult to integrate this web service, so <strong>the</strong> web service API <strong>of</strong> <strong>the</strong> USCL engine was<br />
used instead..<br />
A couple <strong>of</strong> issues have been encountered do to <strong>the</strong> version <strong>of</strong> Eclipse, Java or o<strong>the</strong>r auxiliary plug-ins or
Tool Issue Comment/Solution<br />
third party s<strong>of</strong>tware.<br />
Execution Engine Suggestions for<br />
possible<br />
improvements<br />
USQL Dialog <strong>and</strong><br />
Engine<br />
USQL Dialog <strong>and</strong><br />
Engine<br />
Composition<br />
Repository<br />
Composition<br />
Repository<br />
• Simplify <strong>the</strong> error message mechanism<br />
FP6-004559 p.108 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
• Clearly separate <strong>the</strong> error messages from <strong>the</strong> output messages<br />
• Make <strong>the</strong> access to <strong>the</strong> web interface <strong>of</strong> a composition to behave identical as any web service<br />
• Locating <strong>the</strong> current issue in <strong>the</strong> editor is available but can be simplified <strong>and</strong> improved to speed up<br />
<strong>the</strong> debugging process<br />
Usability It is very user friendly, with search tabs well organized <strong>and</strong> intuitive. The USQL Dialog is well integrated<br />
in <strong>the</strong> Composition Studio.<br />
Possible<br />
improvements<br />
• Support for publication <strong>of</strong> services<br />
• Enable update <strong>of</strong> <strong>the</strong> ontologies being used.<br />
• Be able to simply include <strong>the</strong> Local Dictionary present in <strong>the</strong> Composition Studio when executing<br />
queries<br />
Usability The Composition Repository is simple to use <strong>and</strong> can store different version <strong>of</strong> <strong>the</strong> same project.<br />
Possible<br />
improvements<br />
5.5.1 Recommendations for future enhancement:<br />
Needs to be more tightly integrated with <strong>the</strong> Visual Composition Studio.<br />
The following table summarises recommendations from <strong>the</strong> MEDISYSTEM pilot for future enhancement with respect to <strong>the</strong> <strong>SODIUM</strong><br />
platform <strong>and</strong> tools
Tool Issue Comment/Solution<br />
Composition Studio Basic data<br />
transformations<br />
Composition Studio 2-to-1<br />
transformations<br />
Composition Studio More error<br />
messages<br />
present in <strong>the</strong><br />
Composition<br />
Studio<br />
Composition Studio Copy <strong>and</strong> rename<br />
composition in<br />
Composition<br />
Studio.<br />
Execution Engine Error messages<br />
in Execution<br />
Engine<br />
Execution Engine Separate screen<br />
for results in<br />
Execution Engine<br />
USQL Dialog &<br />
Query Engine<br />
Updating <strong>the</strong><br />
USQL Engine’s<br />
configuration<br />
files.<br />
FP6-004559 p.109 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Transformation <strong>of</strong> basic data <strong>and</strong> data types present in Local Dictionary should be facilitated by <strong>the</strong><br />
Composition Studio.<br />
2-to-1 transformations should also be made in <strong>the</strong> Composition Studio by a specialized module or tools.<br />
A wizard for 2-to-1 transformation will be <strong>of</strong> great help.<br />
Some errors related with <strong>the</strong> transformations should be also available in Composition Studio not only at<br />
run time in Execution Engine<br />
By copying or renaming a composition <strong>the</strong> reference points to <strong>the</strong> same initial uml2. This is making <strong>the</strong><br />
copied or renamed file difficult to be later reused.<br />
The errors during run time are presented in <strong>the</strong> same screen with <strong>the</strong> results <strong>and</strong> o<strong>the</strong>r information.<br />
These types <strong>of</strong> information should be categorized <strong>and</strong> presented in different screens.<br />
It is time consuming to locate <strong>the</strong> result <strong>of</strong> a process. A separate screen eventually with improved graphic<br />
interface will help. To retrieve information <strong>of</strong> a process or <strong>the</strong> result <strong>of</strong> it now someone need to type<br />
comm<strong>and</strong>s.<br />
In <strong>the</strong> current version <strong>the</strong> process <strong>of</strong> updating <strong>the</strong> configuration files <strong>of</strong> <strong>the</strong> USQL Engine hosted by<br />
Tomcat server is time consuming.
Tool Issue Comment/Solution<br />
USQL Dialog &<br />
Query Engine<br />
USQL Dialog &<br />
Query Engine<br />
Composition<br />
Repository<br />
Multiple<br />
ontologies<br />
Multiple selection<br />
<strong>of</strong> results<br />
Improve<br />
integration<br />
FP6-004559 p.110 <strong>of</strong> 139<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
It would be useful to simultaneously access more than one ontology at <strong>the</strong> same time <strong>and</strong> to enable<br />
updating <strong>the</strong> ontologies being used..<br />
The screen presenting <strong>the</strong> results <strong>of</strong> a query allow in <strong>the</strong> current version only to delete a single service.<br />
More facilities such as multiple selection <strong>of</strong> result entries, or a context menu should be present here to<br />
facilitate <strong>the</strong> selection <strong>of</strong> <strong>the</strong> appropriate service before <strong>the</strong> user can press “Save Results”.<br />
The Composition Repository should be integrated with <strong>the</strong> Visual Composition Studio.
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
6. <strong>Evaluation</strong> as per <strong>the</strong> feedback from external user forums<br />
As described in Deliverable D13 - Plan for <strong>the</strong> dissemination <strong>and</strong> use <strong>of</strong> knowledge [6] :<br />
The <strong>SODIUM</strong> user forums have been established at a national level with <strong>the</strong> aim to present<br />
<strong>the</strong> <strong>SODIUM</strong> results <strong>and</strong> obtain feedback which is considered valuable in refining project<br />
outcome.<br />
� In Norway, SINTEF <strong>and</strong> Locus has taken <strong>the</strong> initiative to establish a SOA User working<br />
group, under <strong>the</strong> umbrella <strong>of</strong> <strong>the</strong> Norwegian Computer Society. The group is led by Arne<br />
J. Berre <strong>of</strong> SINTEF, <strong>and</strong> currently counts around 100 active members. During <strong>the</strong> spring<br />
2006 monthly events around topics related to service-oriented architectures were held.<br />
The <strong>SODIUM</strong> toolset has been presented <strong>and</strong> demonstrated for an industrial audience in<br />
this context.<br />
� In Greece, <strong>ATC</strong> presented <strong>the</strong> <strong>SODIUM</strong> results to organisations that form its customer<br />
base in key business areas (banking <strong>and</strong> media). Related activities (organisation <strong>of</strong> group<br />
meetings <strong>and</strong> demonstration <strong>of</strong> <strong>SODIUM</strong> platform) have taken place in July 2006 <strong>and</strong><br />
November 2006.<br />
� In Switzerl<strong>and</strong>, ETHZ has been actively involved in <strong>the</strong> recent Swiss Grid Initiative, where<br />
<strong>the</strong> <strong>SODIUM</strong> platform has been successfully presented to <strong>the</strong> Swiss Scientific community<br />
<strong>and</strong> key components are currently being deployed at several universities <strong>and</strong> at <strong>the</strong> Swiss<br />
National Supercomputing Center. ETHZ is also involved in promoting <strong>the</strong> use <strong>of</strong> <strong>the</strong><br />
composition engine for Grid computing <strong>and</strong> large scale scientific computations.<br />
6.1 Feedback from user forums<br />
Feedback from user forums with participants beyond <strong>the</strong> Consortium is considered important<br />
in refining <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools. For each event involving users <strong>the</strong> following<br />
information is being reported:<br />
� Country<br />
� Date <strong>and</strong> Venue<br />
� <strong>SODIUM</strong> partner in charge <strong>of</strong> event<br />
� Subject <strong>of</strong> event / workshop<br />
� Number <strong>of</strong> participants<br />
� Details on participants (company names <strong>and</strong> line <strong>of</strong> business)<br />
� Means <strong>of</strong> collecting feedback (e.g. questionnaires, open format brainstorming<br />
session)<br />
� <strong>Evaluation</strong> feedback – main points<br />
FP6-004559 p.111 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
In this version <strong>of</strong> <strong>the</strong> deliverable, this section presents feedback received in <strong>the</strong> main relevant<br />
events held in Norway during <strong>the</strong> reporting period as well as <strong>the</strong> first event in Greece.<br />
Similarly related activities in Switzerl<strong>and</strong> are planned for September <strong>and</strong> will be reported<br />
once completed.<br />
6.1.1.1 Norwegian User Forum<br />
Activities involving presentations <strong>of</strong> <strong>SODIUM</strong> results to user forums were held in Norway<br />
during 2006 as presented in <strong>the</strong> table below:<br />
Date<br />
<strong>and</strong><br />
Venue<br />
Feb 8<br />
2006<br />
March<br />
15<br />
2006<br />
April 3-<br />
4 2006<br />
<strong>SODIUM</strong><br />
partner<br />
in<br />
charge<br />
<strong>of</strong> event<br />
Subject <strong>of</strong><br />
event /<br />
worksh.<br />
SINTEF SOA –<br />
Best<br />
practises<br />
SINTEF SOA<br />
interest<br />
group<br />
SINTEF<br />
<strong>and</strong><br />
LOCUS<br />
No.<br />
<strong>of</strong> att.<br />
Details on participants<br />
(company names <strong>and</strong><br />
line <strong>of</strong> business)<br />
20 End users, consultants<br />
<strong>and</strong> suppliers using or<br />
promoting SOA strategy.<br />
10 Users: Selvaag (Building<br />
construction), Aeat<br />
(Gorvemental)<br />
Suppliers: IBM, Sun,<br />
Locus.<br />
Consultants: Bekk<br />
Research: Sintef,<br />
University <strong>of</strong> Oslo<br />
SOA 50 Users: Aftenposten<br />
(media), Ullevål<br />
University Hospital<br />
(Medical - hospital), Aeat<br />
(Governmental), IFI<br />
(Governmental), Selvaag<br />
(Building construction),<br />
Telenor<br />
(Telecommunications),<br />
Suppliers: IBM;, SUN,<br />
Simula Research Lab.,<br />
Norsk Regnesentral, Det<br />
Norske Veritas<br />
Research: Sintef,<br />
University <strong>of</strong> Oslo<br />
Consulting: Bekk, Mesan,<br />
S<strong>of</strong>tware Innovation,<br />
Ivanor<br />
Means <strong>of</strong><br />
collecting<br />
feedback<br />
<strong>Evaluation</strong> feedback –<br />
main points<br />
Discussion No specific feedback was<br />
taken. There was an open<br />
discussion around SOA<br />
topics. <strong>SODIUM</strong> is brought<br />
in here as an element to be<br />
considered.<br />
Questionnaire The overall rating for <strong>the</strong><br />
<strong>SODIUM</strong> presentation was<br />
given a score <strong>of</strong> 4 (1 – 6<br />
(best) both on presentation<br />
<strong>and</strong> content.<br />
FP6-004559 p.112 <strong>of</strong> 139<br />
The main feedback was<br />
taken from demonstrations<br />
<strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Visual<br />
Composition Suite :<br />
Main feedback points:<br />
The feedback on <strong>the</strong> GUI<br />
<strong>and</strong> functionality was in line<br />
with what <strong>the</strong> developers in<br />
<strong>the</strong> <strong>SODIUM</strong> consortium has<br />
experienced. This feedback<br />
has been provided to<br />
responsible partner.<br />
Questions have been raised<br />
concerning if it is possible to<br />
exchange information by<br />
UML alone. As <strong>the</strong> UML
Date<br />
<strong>and</strong><br />
Venue<br />
June 7<br />
2006<br />
Sept.<br />
20,<br />
2006<br />
Oct.<br />
18,<br />
2006<br />
Nov<br />
15,<br />
2006<br />
Dec.<br />
12,<br />
2006<br />
<strong>SODIUM</strong><br />
partner<br />
in<br />
charge<br />
<strong>of</strong> event<br />
Subject <strong>of</strong><br />
event /<br />
worksh.<br />
SINTEF SOA –<br />
Best<br />
practises<br />
follow up<br />
SINTEF Semantic<br />
Web <strong>and</strong><br />
Technologi<br />
es<br />
SINTEF SOA for<br />
Application<br />
integration<br />
SINTEF BPM <strong>and</strong><br />
SOA<br />
SINTEF Web 2.0<br />
<strong>and</strong> SOA<br />
2.0 <strong>and</strong><br />
evolution<br />
towards<br />
3.0<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
No.<br />
<strong>of</strong> att.<br />
Details on participants<br />
(company names <strong>and</strong><br />
line <strong>of</strong> business)<br />
10 A subset <strong>of</strong> <strong>the</strong><br />
representatives from <strong>the</strong><br />
April session.<br />
80 Additional organisations<br />
also with an interest in<br />
semantic technologies<br />
45 Core partners in <strong>the</strong> SOA<br />
special interest group<br />
40 Organisations with an<br />
interest in <strong>the</strong> relationship<br />
between business<br />
models <strong>and</strong> SOA<br />
50 Extended set <strong>of</strong> partners<br />
in <strong>the</strong> SOA special<br />
interest group<br />
Means <strong>of</strong><br />
collecting<br />
feedback<br />
Table 18: Norwegian User Forum Activities<br />
<strong>Evaluation</strong> feedback –<br />
main points<br />
FP6-004559 p.113 <strong>of</strong> 139<br />
language has no complete<br />
functionality to exchange all<br />
information <strong>the</strong> solution used<br />
in <strong>SODIUM</strong> got acceptance.<br />
The need for <strong>the</strong> <strong>SODIUM</strong><br />
tools to work with .Net<br />
development tools has been<br />
raised. The <strong>SODIUM</strong><br />
partners are evaluating <strong>the</strong><br />
consequences for having<br />
implemented better .Net<br />
support.<br />
Brainstorming Brainstorming around setting<br />
up a set <strong>of</strong> rules for “Best<br />
practice for SOA” as part <strong>of</strong><br />
<strong>the</strong> Norwegian Computer<br />
Society user groups.<br />
Discussion Semantic aspects need to<br />
be integrated with SOA<br />
technologies like Web<br />
services, P2P <strong>and</strong> Grid<br />
Discussion It is a general problem that<br />
<strong>the</strong> availability <strong>of</strong> real<br />
services to search for is so<br />
limited. The initial approach<br />
<strong>of</strong> UDDI has been a market<br />
failure.<br />
Discussion UML activity diagrams<br />
should be related to BPMN<br />
evolution.<br />
Discussion It is foreseen a merge <strong>of</strong><br />
trends from <strong>the</strong> user<br />
involvement with usability<br />
(AJAX) <strong>and</strong> Folksonomies,<br />
<strong>and</strong> semantic technologies<br />
on top <strong>of</strong> a heterogeneous<br />
platform <strong>of</strong> Web services,<br />
P2P <strong>and</strong> Grid – enhanced<br />
with Agent technologies <strong>and</strong><br />
sensor technologies
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Note : The questionnaire used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> session held on April 3-4 2006by SINTEF<br />
<strong>and</strong> LOCUS (<strong>and</strong> related quantitative results) are presented in Appendix II - Norwegian User<br />
Forum Questionnaire <strong>and</strong> related results<br />
6.1.1.2 Greek User Forum<br />
Presentations <strong>of</strong> <strong>SODIUM</strong> results to user forums held in Greece during 2006 are presented in<br />
<strong>the</strong> table below:<br />
Date<br />
<strong>and</strong><br />
Venue<br />
June<br />
30,<br />
2006<br />
Novem<br />
ber 27,<br />
2006<br />
Novem<br />
ber 30,<br />
2006<br />
<strong>SODIUM</strong><br />
partner<br />
in<br />
charge<br />
<strong>of</strong> event<br />
Subject<br />
<strong>of</strong> event<br />
/<br />
worksh.<br />
<strong>ATC</strong> Introducti<br />
on to<br />
SOA <strong>and</strong><br />
<strong>the</strong><br />
<strong>SODIUM</strong><br />
approach<br />
<strong>ATC</strong> Presentat<br />
tion <strong>of</strong><br />
<strong>SODIUM</strong><br />
project,<br />
<strong>and</strong><br />
results<br />
<strong>ATC</strong> Presentat<br />
tion <strong>of</strong><br />
<strong>SODIUM</strong><br />
project,<br />
<strong>and</strong><br />
results<br />
No.<br />
<strong>of</strong><br />
att.<br />
Details on<br />
participants<br />
(company names<br />
<strong>and</strong> line <strong>of</strong><br />
business)<br />
6 CIOS <strong>of</strong> <strong>the</strong> Fourlis<br />
Group<br />
4 Representatives <strong>of</strong><br />
<strong>ATC</strong> banking<br />
customers : Alpha<br />
Bank, Eurobank, Post<br />
bank Bulgaria<br />
5 Representatives <strong>of</strong><br />
<strong>ATC</strong> media<br />
customers : ANA<br />
(News Agency),<br />
KERDOS, Nafteboriki<br />
(Newspapers),<br />
Antenna (TV station),<br />
Liberis (Publishing<br />
House)<br />
Means <strong>of</strong><br />
collecting<br />
feedback<br />
Discussion,<br />
Questionna<br />
ire<br />
Discussion,<br />
Questionna<br />
ire<br />
Discussion,<br />
Questionna<br />
ire<br />
Table 19: Greek User Forum Activities<br />
<strong>Evaluation</strong> feedback – main points<br />
To a large extent, respondents confirmed<br />
importance <strong>of</strong> <strong>SODIUM</strong> features (vs<br />
desirability) as initially identified by project<br />
partners. “Compatibility with services<br />
developed by different development tools”,<br />
“Modularity” <strong>and</strong> “St<strong>and</strong>ards compliance”<br />
was considered <strong>the</strong> most important<br />
features <strong>and</strong> selling points for <strong>the</strong> <strong>SODIUM</strong><br />
platform.<br />
<strong>SODIUM</strong> fits well in <strong>the</strong> banking<br />
environment where <strong>the</strong>re is a strong need<br />
to develop applications that respond to<br />
changing customer needs, regulatory<br />
requirements <strong>and</strong> business evolutions <strong>and</strong><br />
support reuse <strong>of</strong> services in <strong>the</strong> context <strong>of</strong><br />
<strong>the</strong> bank’s multi-channel approach through<br />
a variety <strong>of</strong> access devices<br />
(PC,PDA,mobile) to support customer selfservicing.<br />
The media industry faces challenges<br />
related to inefficiency <strong>of</strong> processes for<br />
creating, managing <strong>and</strong> distributing digital<br />
assets. Service oriented development with<br />
<strong>SODIUM</strong> can potentially improve process<br />
workflows in content delivery enabling<br />
integration <strong>of</strong> content <strong>and</strong> billing systems.<br />
Note: The questionnaires used in <strong>the</strong> context <strong>of</strong> <strong>the</strong> sessions <strong>and</strong> related results can be<br />
found in Appendix I –Questionnaires used in <strong>the</strong> sessions held in A<strong>the</strong>ns & relevant results<br />
(Greek User forum).<br />
FP6-004559 p.114 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
7. <strong>Evaluation</strong> at <strong>the</strong> IST Event 2006<br />
<strong>SODIUM</strong> participated in <strong>the</strong> IST Event 2006 2 , held in Helsinki in 21-23 November 2006 with<br />
an Exhibition st<strong>and</strong>. The Exhibition was open to <strong>the</strong> general public <strong>and</strong> aimed at presenting<br />
concrete results <strong>of</strong> research in <strong>and</strong> around Europe within <strong>the</strong> field <strong>of</strong> Information <strong>and</strong><br />
Communications Technologies.<br />
The <strong>SODIUM</strong> st<strong>and</strong> was a “Research <strong>and</strong> Technology” St<strong>and</strong> within <strong>the</strong> Exhibition zone for<br />
“Novel solutions for business <strong>and</strong> industry”. The <strong>the</strong>me <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> st<strong>and</strong> was<br />
“Demonstrating user-friendly graphical tools in to discover web, peer-to-peer <strong>and</strong> GRID<br />
services”<br />
During <strong>the</strong> three days event, a presentation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> results with real-time<br />
demonstration <strong>of</strong> <strong>the</strong> LOCUS pilot was effected. Flyers describing <strong>the</strong> project, its results as<br />
well as <strong>the</strong> two pilots were also distributed.<br />
Feedback from visitors is presented below<br />
Date<br />
<strong>and</strong><br />
Venue<br />
21-23<br />
Nov<br />
2006,<br />
IST<br />
event<br />
2006,<br />
Helsinki<br />
SODIU<br />
M<br />
partner<br />
in<br />
charge<br />
<strong>of</strong><br />
event<br />
NKUA,<br />
LOCUS<br />
, <strong>ATC</strong>,<br />
SINTE<br />
F also<br />
present<br />
Subject <strong>of</strong><br />
event /<br />
workshop.<br />
Exhibition<br />
st<strong>and</strong> –<br />
Demonstra<br />
tion <strong>of</strong><br />
<strong>SODIUM</strong><br />
results <strong>and</strong><br />
No.<br />
<strong>of</strong> att.<br />
Appro<br />
x 100<br />
Details on<br />
participants<br />
(company names<br />
<strong>and</strong> line <strong>of</strong><br />
business)<br />
The majority <strong>of</strong> <strong>the</strong><br />
visitors represented<br />
Universities <strong>and</strong> / or<br />
o<strong>the</strong>r research<br />
institutions.<br />
2 http://ec.europa.eu/information_society/istevent/2006/index_en.htm<br />
Means <strong>of</strong><br />
collecting<br />
feedback<br />
<strong>Evaluation</strong> feedback – main points<br />
Discussion We received positive comments, both for <strong>the</strong><br />
tools <strong>and</strong> <strong>the</strong> pilot application.<br />
People were particularly interested in <strong>the</strong><br />
open-source license <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> tools<br />
<strong>and</strong> kept asking when <strong>the</strong> tools will be<br />
available as open-source. Also, <strong>the</strong>y seemed<br />
to like <strong>the</strong> fact that we had tools covering <strong>the</strong><br />
whole development phase, <strong>and</strong> that all <strong>of</strong><br />
<strong>the</strong>m were integrated in Eclipse. Ano<strong>the</strong>r<br />
feature that made good impression was <strong>the</strong><br />
platform's independence from <strong>the</strong> various<br />
service types <strong>and</strong> st<strong>and</strong>ards.<br />
Finally, we received questions on whe<strong>the</strong>r<br />
<strong>the</strong>re is a plan for continuation / expansion <strong>of</strong><br />
our research results in future projects or not.<br />
Regarding <strong>the</strong> pilot demo performed by<br />
Locus:<br />
- visitors were impressed that this was a realtime<br />
application.<br />
- <strong>the</strong> majority <strong>of</strong> <strong>the</strong> visitors has used ei<strong>the</strong>r<br />
FP6-004559 p.115 <strong>of</strong> 139
Date<br />
<strong>and</strong><br />
Venue<br />
SODIU<br />
M<br />
partner<br />
in<br />
charge<br />
<strong>of</strong><br />
event<br />
Subject <strong>of</strong><br />
event /<br />
workshop.<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
No.<br />
<strong>of</strong> att.<br />
Details on<br />
participants<br />
(company names<br />
<strong>and</strong> line <strong>of</strong><br />
business)<br />
Means <strong>of</strong><br />
collecting<br />
feedback<br />
<strong>Evaluation</strong> feedback – main points<br />
grid or web services <strong>and</strong> was very interested<br />
in our work in making such services<br />
transparent to <strong>the</strong> user.<br />
- It was interesting to visitors to be able to<br />
withdraw <strong>the</strong> composition from <strong>the</strong><br />
application so that <strong>the</strong> composition could be<br />
used on several platforms.<br />
- All seemed very interested in <strong>the</strong> Query<br />
Engine <strong>and</strong> <strong>the</strong> possibility <strong>of</strong> searching for<br />
services in <strong>the</strong> development phase.<br />
- The Composition Studio which was <strong>the</strong><br />
main focus <strong>of</strong> <strong>the</strong> pilot demonstration<br />
received credit for its user friendliness in<br />
creating compositions.<br />
FP6-004559 p.116 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
8. <strong>Evaluation</strong> <strong>of</strong> Results with Respect to Business Plan<br />
Requirements<br />
8.1 Summary <strong>of</strong> <strong>SODIUM</strong> Assets<br />
As described in <strong>the</strong> <strong>SODIUM</strong> D16-Business Plan [7], <strong>the</strong> main tangible <strong>SODIUM</strong> assets are<br />
as follows:<br />
Result Description<br />
<strong>SODIUM</strong> Unified<br />
Service Composition<br />
Methodology<br />
Methods <strong>and</strong> techniques for composing heterogeneous services (web, p2p, Grid)<br />
Generic Service Model Specification <strong>of</strong> a generic service model supporting <strong>the</strong> description <strong>of</strong><br />
heterogeneous services (web, p2p, grid)<br />
Visual Service<br />
Composition Language<br />
(VSCL)<br />
Specification for graphical descriptions <strong>of</strong> service compositions at multiple levels <strong>of</strong><br />
details<br />
Unified Service Specification for lexical representation <strong>of</strong> service composition<br />
Composition Language<br />
(USCL)<br />
Unified Service Query Specification <strong>of</strong> a unified service query language facilitating <strong>the</strong> discovery <strong>of</strong><br />
Language (USQL) heterogeneous services (i.e. web, p2p <strong>and</strong> grid services)<br />
<strong>SODIUM</strong> Visual Support for designing <strong>and</strong> analysing composition graphs, translation <strong>of</strong> graphical to<br />
Composition Suite lexical representations<br />
<strong>SODIUM</strong> USQL Engine Mechanism for discovering various types <strong>of</strong> services that can be used in a<br />
composition, based on syntactic, semantic <strong>and</strong> QoS search criteria<br />
<strong>SODIUM</strong> USCL Engine Mechanism used for executing lexical descriptions <strong>of</strong> composition graphs<br />
<strong>SODIUM</strong> Composition<br />
Repository<br />
Mechanism for storing / reusing service compositions<br />
<strong>SODIUM</strong> <strong>Platform</strong> Environment comprising <strong>of</strong> integrated tools described above supporting <strong>the</strong> unified<br />
composition, discovery <strong>and</strong> execution <strong>of</strong> heterogeneous services<br />
Table 20: <strong>SODIUM</strong> tangible assets<br />
Fur<strong>the</strong>r to <strong>the</strong> above tangible assets, intangible assets are expected to stem from <strong>the</strong> overall<br />
project, <strong>and</strong> especially from <strong>the</strong> conduction <strong>of</strong> pilots. These assets will help <strong>the</strong> future<br />
exploiters <strong>of</strong> <strong>the</strong> technology, make its best use. Such assets are:<br />
• An increase in <strong>the</strong> know-how, methodologies, supporting tools <strong>and</strong> runtime<br />
middleware in order to facilitate RTD developers in composing heterogeneous<br />
types <strong>of</strong> services through an open, middleware development platform<br />
• The ability to provide consulting services <strong>and</strong> know how in <strong>the</strong> state <strong>of</strong> <strong>the</strong> art in<br />
service discovery <strong>and</strong> composition<br />
FP6-004559 p.117 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The task <strong>of</strong> exploiting tangible assets from a pre-competitive Research <strong>and</strong> Development<br />
activity efficiently is always a tricky issue that requires that certain measures are taken during<br />
<strong>the</strong> project in order to minimize <strong>the</strong> adverse effects <strong>of</strong> any weaknesses <strong>and</strong> threats<br />
encountered <strong>and</strong> in order to make optimal use <strong>of</strong> <strong>the</strong> strengths <strong>of</strong> <strong>the</strong> solution/ products <strong>and</strong><br />
<strong>the</strong> evolving market opportunities.<br />
Thus, it is necessary to assess <strong>the</strong> outcome <strong>of</strong> <strong>the</strong> project from this scope as well, so as to<br />
take measures, even in <strong>the</strong> last stages <strong>of</strong> <strong>the</strong> project that will ensure that productisation /<br />
commercialisation after project end does not become ano<strong>the</strong>r similar or larger in size, project.<br />
8.2 Summary <strong>of</strong> SWOT Analysis Findings<br />
The SWOT (Strengths, Weaknesses, Opportunities, Threats) analysis for <strong>the</strong> <strong>SODIUM</strong><br />
solution has been discussed in <strong>the</strong> respective <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Business Plan [7]. In this<br />
section we will provide a summary <strong>of</strong> <strong>the</strong> analysis finding in order to assess <strong>the</strong> effectiveness<br />
<strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> methodology, platform <strong>and</strong> tools in exploiting <strong>the</strong> opportunities present as<br />
well as in order to assess <strong>the</strong> provisions <strong>and</strong> measures taken to minimize weaknesses.<br />
The main opportunities for <strong>the</strong> <strong>SODIUM</strong> solution lie in <strong>the</strong> combination <strong>of</strong> <strong>the</strong> effects <strong>of</strong> two<br />
trends:<br />
• First, a trend towards “industrializing” or automating s<strong>of</strong>tware development which is<br />
becoming a key issue as new s<strong>of</strong>tware development is becoming increasingly more<br />
expensive. This trend was evident in <strong>the</strong> nineties <strong>and</strong> was partially addressed <strong>the</strong>n by<br />
s<strong>of</strong>tware re-use, but more recent developments in S<strong>of</strong>tware Architecture, now permit<br />
more far-reaching approaches involving Service Oriented Architectures that can<br />
drastically reduce <strong>the</strong> cost <strong>of</strong> S<strong>of</strong>tware development at <strong>the</strong> same time increasing its<br />
quality, by <strong>of</strong>fering state-<strong>of</strong>-<strong>the</strong>-art applications in several domains as Services. The<br />
Morgan Stanley Research Report <strong>of</strong> April 2006 on Enterprise S<strong>of</strong>tware <strong>Platform</strong> [10]<br />
views “migration to Service Oriented Architectures (SOA) as <strong>the</strong> primary technology<br />
trend”.<br />
• Second, a trend towards “inventing” novel architectures that are ei<strong>the</strong>r driven by<br />
specific functional needs <strong>of</strong> certain types <strong>of</strong> users or which permit to exploit at<br />
maximum computer power <strong>and</strong> data dispersed over several user sites. This trend is by<br />
nature endless <strong>and</strong> brings <strong>the</strong> need for solutions that can cope with heterogeneous<br />
services. At this time GRID Services <strong>and</strong> Peer- to – Peer Services are two dominant<br />
types <strong>of</strong> emerging architectures that need to be taken into account in designing a<br />
platform for service composition.<br />
Weaknesses <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> Solution lie in <strong>the</strong> facts that<br />
a) it is <strong>the</strong> result <strong>of</strong> a Research <strong>and</strong> Development activity, ra<strong>the</strong>r than a product resulting from<br />
straight-through-production activities. This must be taken into account as it may “streng<strong>the</strong>n”<br />
<strong>the</strong> importance <strong>of</strong> certain inhibiting factors regarding <strong>the</strong> acceptance <strong>of</strong> SOA Solutions by<br />
Enterprises. As reported in D16-<strong>SODIUM</strong> Business Plan [7], “Limited visibility <strong>of</strong> Business<br />
Value <strong>and</strong> lack <strong>of</strong> skills remain <strong>the</strong> principal inhibitors for SOA adoption by Enterprises,<br />
accompanied by <strong>the</strong> natural resistance to change” [11]. To overcome this, <strong>SODIUM</strong> must<br />
FP6-004559 p.118 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
present a paradigm that will convince decision makers that <strong>the</strong> <strong>Platform</strong> <strong>and</strong> Methodology are<br />
capable <strong>of</strong> supporting real-life industrial applications <strong>and</strong> that Services which are reliable,<br />
scaleable, secure <strong>and</strong> available do exist.<br />
b) it is a new product with overlapping functionality with existing products, a fact that may be<br />
a weakness that may hinder <strong>SODIUM</strong> from gaining sufficiently high market penetration.<br />
Slower penetration than <strong>the</strong> levels sought will lead to a difficulty in streng<strong>the</strong>ning <strong>the</strong> solution<br />
<strong>and</strong> in increasing paradigm available, as well as in building a competent team <strong>of</strong> <strong>SODIUM</strong><br />
specialists within <strong>the</strong> exploiting partner.<br />
8.2.1 Effectiveness <strong>of</strong> <strong>SODIUM</strong> Methodology, platform <strong>and</strong> Tools in Exploiting<br />
Opportunities<br />
<strong>SODIUM</strong> will be practically introduced into <strong>the</strong> SOA solutions in mid – to - late 2007, a period<br />
which <strong>the</strong> Consortium considers as ra<strong>the</strong>r favorable because successful paradigm from o<strong>the</strong>r<br />
solution providers will have already significantly increased <strong>the</strong> SOA solutions <strong>and</strong> services<br />
market. As Information Technology focuses more on getting more out <strong>of</strong> existing systems<br />
(ra<strong>the</strong>r continuously embarking in ventures for new system development) <strong>SODIUM</strong> appears<br />
promising in getting “<strong>the</strong> most” out <strong>of</strong> combining three types <strong>of</strong> heterogeneous services (web,<br />
p2p, grid).<br />
<strong>SODIUM</strong> will be <strong>of</strong>fered, as described in <strong>SODIUM</strong> deliverable D13- Exploitation Agreement<br />
[8] with an Open Source Policy based on <strong>the</strong> LGPL model 3 which is fully suitable for<br />
licensing or for distribution via already existing networks, once <strong>the</strong> <strong>SODIUM</strong> Methodology <strong>and</strong><br />
Tools have been streng<strong>the</strong>ned enough in <strong>the</strong> course <strong>of</strong> Commercial Contracts in Phase II <strong>of</strong><br />
exploitation 4 .<br />
Hence, current possible competitors (in particular actors which focus almost exclusively on<br />
SOA) could become promoters <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> technology 5 .<br />
Thus <strong>SODIUM</strong> Offer could benefit from <strong>the</strong> anticipated fast growth <strong>of</strong> <strong>the</strong> SOA market by<br />
positioning itself as a provider for a specific part <strong>of</strong> this market which focuses on discovery<br />
<strong>and</strong> composition <strong>of</strong> heterogeneous services in a unified manner. It can target specific user<br />
communities which require specific GRID <strong>and</strong> P2P services.<br />
In this manner, future SOA developers will be able to exploit fully <strong>the</strong> Business (Efficiency,<br />
Responsiveness, Adaptability) <strong>and</strong> Technical Benefits (Reduced Complexity, Increased<br />
Reuse <strong>and</strong> Legacy Integration) that <strong>SODIUM</strong> partners claim to be <strong>the</strong> principal Strengths <strong>of</strong><br />
3 http://www.opensource.org/licenses/lgpl-license.php<br />
4 M24-36 post project end as per <strong>the</strong> <strong>SODIUM</strong> Business Plan (Deliverable D16)<br />
5<br />
A typical commercial example <strong>of</strong> an organization which <strong>of</strong>fers a platform where SOA solution providers can reach wider markets in <strong>the</strong><br />
JBOSS Service. : http://www.jboss.com/services/index<br />
FP6-004559 p.119 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
<strong>the</strong> <strong>SODIUM</strong> Solution as per <strong>the</strong> relevant SWOT Analysis in Deliverable D16 Business Plan<br />
[7].<br />
8.2.2 Provisions <strong>and</strong> Measures taken to minimize weaknesses <strong>and</strong> <strong>the</strong>ir effects<br />
The Provisions <strong>and</strong> Measures taken to minimize weaknesses are in two distinct directions:<br />
ensuring that pilots to be conducted are representative <strong>of</strong> <strong>the</strong> future commercial contracts<br />
<strong>and</strong> that <strong>the</strong> main Industrial Partner adopts a Business Plan that help overcome weaknesses.<br />
• Provisions related to selection <strong>of</strong> suitable pilot applications for developing<br />
specifications, designing <strong>the</strong> system <strong>and</strong> validating <strong>the</strong> results<br />
The first provision relates to <strong>the</strong> pilots <strong>and</strong> services chosen. The pilots cover two potential<br />
types <strong>of</strong> <strong>SODIUM</strong> assets users:<br />
First, a typical end User (such as MEDISYSTEM) which employ Web, P2P <strong>and</strong> Grid<br />
Services for building an industrial strength application in a hospital environment where<br />
reliability <strong>and</strong> availability are very important; in this pilot <strong>the</strong> ability <strong>of</strong> an average-skilled<br />
industrial IT department to integrate <strong>SODIUM</strong> assets in <strong>the</strong>ir st<strong>and</strong>ard development <strong>and</strong><br />
maintenance work will be tested.<br />
Second, a typical integrator which composes applications from existing services (such as<br />
LOCUS) where Web, P2P <strong>and</strong> Grid Services are composed in order to develop an everyday<br />
use application which forms part <strong>of</strong> a crisis management application, where again<br />
availability <strong>and</strong> reliability are very important; in this pilot, <strong>the</strong> ability <strong>of</strong> a highly skilled<br />
development team <strong>of</strong> a commercial IT company to integrate <strong>SODIUM</strong> assets in <strong>the</strong>ir<br />
st<strong>and</strong>ard development, service provision <strong>and</strong> maintenance work will be tested.<br />
The ability to h<strong>and</strong>le efficiently <strong>the</strong> different sets <strong>of</strong> User Requirements for each <strong>of</strong> <strong>the</strong><br />
pilots, <strong>and</strong> hence to provide evidence <strong>of</strong> ability to support industry st<strong>and</strong>ard s<strong>of</strong>tware<br />
development by composing services using <strong>the</strong> <strong>SODIUM</strong> methodology, platform <strong>and</strong> tools<br />
have been discussed in <strong>the</strong> relevant sections 5 <strong>and</strong> 6 in this report.<br />
• Provisions related to adoption <strong>of</strong> a Business Plan that caters for increasing<br />
awareness <strong>and</strong> building gradually an industrial strength solution<br />
The second provision relates to <strong>the</strong> structure <strong>of</strong> <strong>the</strong> Exploitation Phases <strong>and</strong> <strong>the</strong> Method<br />
<strong>of</strong> “building” competent <strong>SODIUM</strong> consultants <strong>and</strong> engineers as explained in D16-<strong>SODIUM</strong><br />
Business Plan [7]. A phased approach is selected for <strong>the</strong> Exploitation, where solution<br />
streng<strong>the</strong>ning in <strong>the</strong> course <strong>of</strong> early commercial contracts has a high importance in<br />
subsequent exploitation efforts, leading to a solution that can be provided for use by third<br />
parties (franchisees etc.)<br />
Phase I <strong>of</strong> exploitation focuses on increasing awareness, <strong>and</strong> on gaining a small number<br />
<strong>of</strong> contracts (exclusively from existing <strong>ATC</strong> clientele) in order to streng<strong>the</strong>n <strong>the</strong> solution<br />
<strong>of</strong>fered by <strong>SODIUM</strong> by subjecting to <strong>the</strong> criticism <strong>of</strong> fur<strong>the</strong>r end-users.<br />
Phase II <strong>of</strong> exploitation aims at fur<strong>the</strong>r streng<strong>the</strong>ning <strong>the</strong> solution by gaining contracts<br />
from <strong>the</strong> open market (ra<strong>the</strong>r than from existing clients). To do so, <strong>the</strong> initial streng<strong>the</strong>ning<br />
FP6-004559 p.120 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
during Phase I will be very positive. Fur<strong>the</strong>rmore, this Phase aims at employing a stepped<br />
“generation” approach for building competent <strong>SODIUM</strong> experts through both conventional<br />
<strong>and</strong> in-<strong>the</strong>-job training.<br />
The above provisions work toge<strong>the</strong>r towards permitting just <strong>the</strong> introduction <strong>of</strong> <strong>SODIUM</strong> to<br />
<strong>the</strong> market <strong>and</strong> towards building a name for it. Real provision for <strong>the</strong> existing weaknesses<br />
can only be achieved during <strong>the</strong> course <strong>of</strong> actual implementation <strong>of</strong> project exploitation.<br />
8.3 Recommendations <strong>and</strong> Suggestions for Commercialization<br />
As per <strong>the</strong> current status <strong>of</strong> development, <strong>SODIUM</strong> assets have been put under <strong>the</strong> strain <strong>of</strong><br />
testing in two specific, though complementary applications.<br />
In <strong>the</strong> first case, (LOCUS), <strong>SODIUM</strong> technology enables a services provider to improve <strong>the</strong><br />
quality <strong>and</strong> financial efficiency <strong>of</strong> a specific service provided by <strong>the</strong> Company, composing<br />
services known to <strong>the</strong> User.<br />
In <strong>the</strong> second case (MEDISYSTEM), <strong>SODIUM</strong> technology is used by an end-user directly, in<br />
order to maximize <strong>the</strong> benefits from belonging to several Groups, whe<strong>the</strong>r sectorial or<br />
Business –related in order to maximize <strong>the</strong> effectiveness <strong>of</strong> <strong>the</strong>ir systems at a minimum<br />
degree <strong>of</strong> investment <strong>and</strong> uncertainty regarding <strong>the</strong> quality <strong>of</strong> Services.<br />
Beyond project end, <strong>and</strong> in order to enhance exploitability <strong>of</strong> <strong>the</strong> solution, it will be necessary<br />
that it is streng<strong>the</strong>ned <strong>and</strong> tested along <strong>the</strong> following directions:<br />
a) testing for service provision by a service provider at real-life complexity <strong>and</strong><br />
pressure <strong>of</strong> operation<br />
b) Testing under real-life industrial conditions in at least two or three different sectorial<br />
domains (i.e. banking, media) in small, well defined commercial projects<br />
c) Development <strong>of</strong> procedural mechanisms for training <strong>SODIUM</strong> experts in <strong>the</strong> course<br />
<strong>of</strong> on-going commercial projects in order to develop a mechanism that can serve<br />
<strong>the</strong> “generations <strong>of</strong> experts” scheme proposed as methodology for developing<br />
<strong>SODIUM</strong> implementation teams.<br />
FP6-004559 p.121 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
9. Conclusions <strong>and</strong> Suggestions for fur<strong>the</strong>r work / Guidelines for<br />
Productisation<br />
9.1 Recommendations from <strong>the</strong> Industrial User<br />
In <strong>the</strong> context <strong>of</strong> <strong>the</strong> project <strong>and</strong> as reported in previous sections, an assessment <strong>of</strong> <strong>the</strong><br />
degree that <strong>the</strong> <strong>SODIUM</strong> Outcome satisfies <strong>the</strong> Top-level Business, Functional <strong>and</strong> non-<br />
Functional Requirements <strong>of</strong> <strong>ATC</strong> as <strong>the</strong> main industrial partner <strong>of</strong> <strong>the</strong> project has been<br />
performed.<br />
In terms <strong>of</strong> enhancements to <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools, <strong>the</strong> following suggestions are<br />
provided by <strong>ATC</strong>,<br />
� The ability to store <strong>and</strong> retrieve compositions so as to reuse in different applications is<br />
considered an important feature, thus post project end <strong>the</strong> role <strong>of</strong> <strong>the</strong> Composition<br />
repository could be extended to provide additional relevant functionality<br />
� The graphical support in <strong>the</strong> area <strong>of</strong> transformations <strong>of</strong> messages between services in<br />
<strong>the</strong> Composition Studio, could be enhanced<br />
� The ability <strong>of</strong> storing query results from <strong>the</strong> USQL engine to <strong>the</strong> Local Dictionary <strong>of</strong> <strong>the</strong><br />
Composition Studio is seen as an additional feature that can facilitate <strong>the</strong> developer<br />
� In terms <strong>of</strong> using <strong>the</strong> USCL engine in a commercial environment issues related to load<br />
balancing <strong>and</strong> fail over should be addressed<br />
� Fur<strong>the</strong>rmore, automatic code generation to support <strong>the</strong> integration <strong>of</strong> <strong>the</strong> compositions<br />
into applications would provided additional value to <strong>the</strong> solution<br />
� Support for p2p services should be extended (beyond JXTA)<br />
In addition to <strong>the</strong> above, <strong>the</strong> <strong>SODIUM</strong> methodology is also seen as an asset that should be<br />
exploited when selling <strong>the</strong> <strong>SODIUM</strong> solution in addition to <strong>the</strong> provision <strong>of</strong> <strong>the</strong> platform <strong>and</strong><br />
tools<br />
In terms <strong>of</strong> supporting service oriented development, <strong>SODIUM</strong> contribution to increased<br />
developer productivity, reduction <strong>of</strong> development cost <strong>and</strong> reuse <strong>of</strong> services should be<br />
considered as important selling points. At <strong>the</strong> same time, as in all adoption lifecycles, it is<br />
expected that initial projects will be characterized by increased complexity <strong>and</strong> cost. Pilot<br />
projects in an organisation can pace <strong>the</strong> way for more extensive use <strong>of</strong> <strong>the</strong> approach <strong>and</strong> <strong>the</strong><br />
tools. Training <strong>and</strong> support in <strong>the</strong> initial stages <strong>of</strong> application are considered an important<br />
factor for successful project completion.<br />
FP6-004559 p.122 <strong>of</strong> 139
9.2 Recommendations from LOCUS<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The <strong>SODIUM</strong> solution is after initial training has been completed fairly easy to use. Some<br />
improvements are necessary if <strong>the</strong> solution is to be used by pr<strong>of</strong>essional developers.<br />
The Composition Repository should be integrated with <strong>the</strong> Composition Studio for easy<br />
access to compositions.<br />
In order to simplify development, it should be possible to make a copy <strong>of</strong> a composition <strong>and</strong><br />
<strong>the</strong>n refine <strong>the</strong> copy. This would facilitate a refined development approach where one single<br />
step at a time is added to a composition.<br />
All <strong>the</strong> SOAP transformations should be h<strong>and</strong>led by <strong>the</strong> Composition Studio, especially since<br />
<strong>the</strong> Execution Engine needs transformation on a specific format when we are dealing with<br />
transformation from 2 sources. In addition <strong>the</strong> VSCL to USCL transformation should check<br />
that <strong>the</strong> composition is correct.<br />
The Execution Engine should have improved error h<strong>and</strong>ling logging, this would facilitate<br />
debugging <strong>of</strong> <strong>the</strong> composition. In addition <strong>the</strong> VSCL to USCL transformation<br />
The Query Engine is working according to <strong>the</strong> expectations, but after using <strong>the</strong> tool for a<br />
while <strong>the</strong> need for deleting multiple service alternative simultaneously has occurred. This<br />
would make <strong>the</strong> service selection process much simpler. It would also be feasible to be able<br />
to see which UDDI (<strong>and</strong> o<strong>the</strong>r) registries that is used for <strong>the</strong> search.<br />
On-line documentation <strong>of</strong> <strong>the</strong> tools is preferable. Then <strong>the</strong> latest version <strong>of</strong> <strong>the</strong> documentation<br />
is always at h<strong>and</strong>.<br />
9.3 Recommendations from MEDISYSTEM<br />
The <strong>SODIUM</strong> solution is user-friendly, easy to deploy, <strong>and</strong> does not require many resources<br />
for installation <strong>and</strong> usage. The results provided by <strong>the</strong> <strong>SODIUM</strong> solution are reliable <strong>and</strong> <strong>the</strong><br />
general performance <strong>of</strong> <strong>the</strong> components is in good accordance with <strong>the</strong> needs <strong>of</strong> a medium<br />
size company. The time needed for training to develop compositions with basic control <strong>and</strong><br />
data flows, even with not so qualified users, is small. The <strong>SODIUM</strong> solution also provides<br />
means to deal with more complex control <strong>and</strong> data flows.<br />
Several improvements have been noticeable during <strong>the</strong> installation, configuration <strong>and</strong> testing<br />
<strong>of</strong> <strong>the</strong> solution.<br />
All <strong>the</strong> SOAP transformations, or at least <strong>the</strong> basic <strong>and</strong> more frequent ones, should be<br />
facilitated by <strong>the</strong> Visual Composition Studio.<br />
The process <strong>of</strong> building <strong>the</strong> USCL file should be accompanied by a syntax error checking<br />
especially for <strong>the</strong> manually created SOAP transformations.<br />
The Execution Engine provides extensive logging <strong>of</strong> <strong>the</strong> processes. The information<br />
presented needs to be grouped <strong>and</strong> presented separately, according to different categories<br />
<strong>of</strong> information, so as to facilitate both <strong>the</strong> debugging process <strong>and</strong> <strong>the</strong> monitoring.<br />
FP6-004559 p.123 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
The Execution Engine provides two interfaces for its output. The API interface performs very<br />
well, while <strong>the</strong> Web interface could be fur<strong>the</strong>r improved.<br />
The Query Engine is very well organized <strong>and</strong> easy to use but <strong>the</strong> process <strong>of</strong> configuring <strong>the</strong><br />
target registries <strong>and</strong> annotating <strong>the</strong> service descriptions with semantics <strong>and</strong> QoS is time<br />
consuming. However, <strong>the</strong> task <strong>of</strong> semantic <strong>and</strong> QoS annotations goes beyond <strong>the</strong> scope <strong>of</strong><br />
<strong>the</strong> Query Engine.<br />
The Composition Repository should be accessible from within <strong>the</strong> Composition Studio.<br />
The deployment <strong>of</strong> <strong>the</strong> platform components <strong>and</strong> <strong>the</strong> documentation needs also to be more<br />
integrated.<br />
9.4 Recommendations from <strong>the</strong> User Forums<br />
Based on feedback, received from <strong>the</strong> Greek Forum 6 :<br />
The <strong>SODIUM</strong> solution fits well in <strong>the</strong> banking environment where <strong>the</strong>re is a strong need to<br />
develop applications that respond to changing customer needs, regulatory requirements,<br />
address integration challenges, <strong>and</strong> support reuse <strong>of</strong> services in <strong>the</strong> context <strong>of</strong> <strong>the</strong> bank’s<br />
multi-channel approach to support customer self-servicing.<br />
In <strong>the</strong> context <strong>of</strong> media, SOA’s perceived impact lies in support <strong>of</strong> integration which is<br />
currently lacking in <strong>the</strong> sector. Service oriented development with <strong>SODIUM</strong> can potentially<br />
improve process workflows in content delivery enabling integration <strong>of</strong> <strong>the</strong>ir systems. Finally<br />
as is <strong>the</strong> case with <strong>the</strong> Banking sector, multi-channel delivery is also considered critical <strong>and</strong> is<br />
expected to be facilitated by SOA.<br />
The key selling points <strong>of</strong> <strong>SODIUM</strong> to be used for promoting <strong>the</strong> results post project end<br />
include modularity, compatibility with services developed by different development tools <strong>and</strong><br />
st<strong>and</strong>ards compliance.<br />
Last but not least, to fur<strong>the</strong>r support exploitation <strong>and</strong> adoption <strong>of</strong> <strong>SODIUM</strong>, key factors<br />
include training for potential users <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> platform <strong>and</strong> tools that should be provided<br />
by a team <strong>of</strong> qualified <strong>SODIUM</strong> experts, <strong>the</strong> provision <strong>of</strong> documentation <strong>and</strong> support for <strong>the</strong><br />
tools.<br />
6 Fur<strong>the</strong>r relevant comments can be found in section 6.1.1.1<br />
FP6-004559 p.124 <strong>of</strong> 139
10. References<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
[1] D3 Part I - Requirements Specification for Service Composition, Feb 2006<br />
[2] D3 Part II - Architecture <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong>, Feb 2006<br />
[3] D5 Part I – Requirements specification for <strong>the</strong> Locus Pilot, June 2006<br />
[4] D5 Part II - Requirements specification for <strong>the</strong> Medisystem Pilot, June 2006<br />
[5] DI4.1 – <strong>Evaluation</strong> Plan, June 2005<br />
[6] D13- Plan for <strong>the</strong> dissemination <strong>and</strong> use <strong>of</strong> knowledge<br />
[7] D16-Business Plan, June 2006<br />
[8] D17-Exploitation Agreement, June 2006<br />
[9] The Business Case for SOA Rationalizing <strong>the</strong> Benefits <strong>of</strong> Service-Oriented Architecture,<br />
January 2005, webMethods<br />
[10] Morgan Stanley Research, Industry View In-line, Enterprise S<strong>of</strong>tware, April 2006<br />
[11] InfoWorld Market Research, An Overview <strong>of</strong> <strong>the</strong> SOA Market, Conducted by IDG<br />
Research Services, March 2005<br />
FP6-004559 p.125 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
11. Appendix I –Questionnaires used in <strong>the</strong> sessions held in<br />
A<strong>the</strong>ns & relevant results (Greek User forum)<br />
Session held in A<strong>the</strong>ns 30/6/2006 & relevant results<br />
List <strong>of</strong> participants<br />
Takis Karabourniotis, Group CIO<br />
Em.Vithoris, House Market (IKEA) Greece CIO<br />
A,.Frantzeskos, Intersport Hellas CIO<br />
G.Ghristakeas Intarget CIO<br />
G. Karagiannitis Fourlis Trade CIO<br />
G. Afentoulis, Euroelectronics (SAMSUNG Greece) CTO<br />
Questionnaire<br />
<strong>SODIUM</strong> features<br />
Below you may find a list <strong>of</strong> features provided/supported by <strong>the</strong> <strong>SODIUM</strong> platform. Please rate <strong>the</strong>se features<br />
by marking <strong>the</strong>m as Important or Desirable. Where needed please ask for a clarification.<br />
<strong>SODIUM</strong> platform Feature<br />
Quick & easy discovery <strong>of</strong><br />
heterogeneous services<br />
Visual design <strong>of</strong> compositions<br />
Reuse <strong>of</strong> existing solutions<br />
Audit trails<br />
Composition storage & management<br />
St<strong>and</strong>ards compliance<br />
Compatibility with services developed<br />
by different development tools<br />
<strong>Platform</strong> independence<br />
Open source<br />
Secure sharing <strong>of</strong> source files<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
FP6-004559 p.126 <strong>of</strong> 139
<strong>SODIUM</strong> platform Feature<br />
Availability<br />
Scalability<br />
Security<br />
RAD<br />
Extensibility<br />
Modularity<br />
Support <strong>of</strong> JXTA P2P services<br />
Support <strong>of</strong> <strong>the</strong> WSRF specification<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
Of <strong>the</strong> features presented above, please identify below <strong>the</strong> 3 most important in your opinion:<br />
1. ___________________________________________<br />
2. ___________________________________________<br />
3. ___________________________________________<br />
Comments:<br />
Thank you!<br />
FP6-004559 p.127 <strong>of</strong> 139
Results<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
<strong>SODIUM</strong> platform<br />
Rating (nr <strong>of</strong> responses)<br />
Feature Considered Considered Do no know<br />
important desirable<br />
Quick & easy<br />
discovery <strong>of</strong><br />
heterogeneous<br />
services<br />
6<br />
Visual design <strong>of</strong><br />
compositions<br />
6<br />
Reuse <strong>of</strong> existing<br />
solutions<br />
6<br />
Audit trails 6<br />
Composition storage &<br />
management<br />
St<strong>and</strong>ards compliance 6<br />
Compatibility with<br />
services developed by<br />
different development<br />
tools<br />
<strong>Platform</strong> independence 4<br />
Open source 1<br />
2<br />
5<br />
Secure sharing <strong>of</strong><br />
source files<br />
6<br />
Availability 6<br />
Scalability 6<br />
Security<br />
RAD 4 2<br />
Extensibility 5 1<br />
Modularity 6<br />
Support <strong>of</strong> JXTA P2P<br />
services<br />
Support <strong>of</strong> <strong>the</strong> WSRF<br />
specification<br />
6<br />
6<br />
I<br />
I<br />
<strong>SODIUM</strong> <strong>Platform</strong> Feature Nr <strong>of</strong> respondents rating it as most<br />
important<br />
Compatibility with services developed by<br />
different development tools<br />
5 out <strong>of</strong> 6<br />
St<strong>and</strong>ards compliance 4 out <strong>of</strong> 6<br />
Modularity 4 out <strong>of</strong> 6<br />
FP6-004559 p.128 <strong>of</strong> 139<br />
1<br />
1<br />
5<br />
5
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Session held in A<strong>the</strong>ns 27/11/2006 & relevant results<br />
List <strong>of</strong> participants<br />
Representatives <strong>of</strong> <strong>ATC</strong> banking customers:<br />
Dr. D.Stamoulis, (Alpha Bank)<br />
Ms E. Paleologou, Mr. N.Mazos (Eurobank)<br />
Mrs C.Petkova, Post bank Bulgaria (Bulgaria)<br />
Questionnaire<br />
SOA <strong>and</strong> <strong>the</strong> Banking sector<br />
What are <strong>the</strong> main drivers for SOA in your environment?<br />
What are <strong>the</strong> main challenges/risks with respect to implementation <strong>of</strong> SOA in your environment?<br />
What is <strong>the</strong> expected impact <strong>of</strong> SOA in your environment?<br />
<strong>SODIUM</strong> features<br />
Below you may find a list <strong>of</strong> features provided/supported by <strong>the</strong> <strong>SODIUM</strong> platform. Please rate <strong>the</strong>se features<br />
by marking <strong>the</strong>m as Important or Desirable. Where needed please ask for a clarification.<br />
<strong>SODIUM</strong> platform Feature<br />
Quick & easy discovery <strong>of</strong><br />
heterogeneous services<br />
Visual design <strong>of</strong> compositions<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
FP6-004559 p.129 <strong>of</strong> 139
<strong>SODIUM</strong> platform Feature<br />
Reuse <strong>of</strong> existing solutions<br />
Audit trails<br />
Composition storage & management<br />
St<strong>and</strong>ards compliance<br />
Compatibility with services developed<br />
by different development tools<br />
<strong>Platform</strong> independence<br />
Open source<br />
Secure sharing <strong>of</strong> source files<br />
Availability<br />
Scalability<br />
Security<br />
RAD<br />
Extensibility<br />
Modularity<br />
Support <strong>of</strong> JXTA P2P services<br />
Support <strong>of</strong> <strong>the</strong> WSRF specification<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
Of <strong>the</strong> features presented above, please identify below <strong>the</strong> most important in your opinion:<br />
___________________________________________<br />
___________________________________________<br />
___________________________________________<br />
Comments:<br />
Thank you!<br />
FP6-004559 p.130 <strong>of</strong> 139
Results<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
<strong>SODIUM</strong> platform<br />
Rating (nr <strong>of</strong> responses)<br />
Feature Considered Considered Do no know<br />
important desirable<br />
Quick & easy<br />
discovery <strong>of</strong><br />
heterogeneous<br />
services<br />
4<br />
Visual design <strong>of</strong><br />
compositions<br />
4<br />
Reuse <strong>of</strong> existing<br />
solutions<br />
4<br />
Audit trails 4<br />
Composition storage &<br />
management<br />
St<strong>and</strong>ards compliance 4<br />
Compatibility with<br />
services developed by<br />
different development<br />
tools<br />
<strong>Platform</strong> independence 4<br />
Open source 4<br />
Secure sharing <strong>of</strong><br />
source files<br />
4<br />
Availability 3 1<br />
Scalability 4<br />
Security 4<br />
RAD 4<br />
Extensibility 3 1<br />
Modularity 4<br />
Support <strong>of</strong> JXTA P2P<br />
services<br />
Support <strong>of</strong> <strong>the</strong> WSRF<br />
specification<br />
4<br />
4<br />
<strong>SODIUM</strong> <strong>Platform</strong> Feature Nr <strong>of</strong> respondents rating it as most<br />
important<br />
St<strong>and</strong>ards compliance 4 out <strong>of</strong> 4<br />
Compatibility with services developed by<br />
different development tools 3 out <strong>of</strong> 4<br />
FP6-004559 p.131 <strong>of</strong> 139<br />
4<br />
4
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Session held in A<strong>the</strong>ns 30/11/2006 & relevant results<br />
List <strong>of</strong> participants<br />
Representatives <strong>of</strong> <strong>ATC</strong> media customers:<br />
Mr. P.Mantis ANA (News Agency)<br />
Mr. V. Antonopoulos, KERDOS (Newspaper)<br />
Mr. G. Zafolias, Nafteboriki (Newspaper)<br />
Mr. V. Moulakakis, Antenna (TV station),<br />
Mrs. I. Makrinaki, Liberis (Publishing House)<br />
Questionnaire<br />
SOA <strong>and</strong> <strong>the</strong> Media sector<br />
What are <strong>the</strong> main drivers for SOA in your environment?<br />
What are <strong>the</strong> main challenges/risks with respect to implementation <strong>of</strong> SOA in your environment?<br />
What is <strong>the</strong> expected impact <strong>of</strong> SOA in your environment?<br />
<strong>SODIUM</strong> features<br />
Below you may find a list <strong>of</strong> features provided/supported by <strong>the</strong> <strong>SODIUM</strong> platform. Please rate <strong>the</strong>se features<br />
by marking <strong>the</strong>m as Important or Desirable. Where needed please ask for a clarification.<br />
<strong>SODIUM</strong> platform Feature<br />
Quick & easy discovery <strong>of</strong><br />
heterogeneous services<br />
Visual design <strong>of</strong> compositions<br />
Reuse <strong>of</strong> existing solutions<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
FP6-004559 p.132 <strong>of</strong> 139
<strong>SODIUM</strong> platform Feature<br />
Audit trails<br />
Composition storage & management<br />
St<strong>and</strong>ards compliance<br />
Compatibility with services developed<br />
by different development tools<br />
<strong>Platform</strong> independence<br />
Open source<br />
Secure sharing <strong>of</strong> source files<br />
Availability<br />
Scalability<br />
Security<br />
RAD<br />
Extensibility<br />
Modularity<br />
Support <strong>of</strong> JXTA P2P services<br />
Support <strong>of</strong> <strong>the</strong> WSRF specification<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
This<br />
feature is<br />
important<br />
This<br />
feature is<br />
desirable<br />
Do no<br />
know<br />
Of <strong>the</strong> features presented above, please identify below <strong>the</strong> most important in your opinion:<br />
___________________________________________<br />
___________________________________________<br />
___________________________________________<br />
Comments:<br />
Thank you!<br />
FP6-004559 p.133 <strong>of</strong> 139
Results<br />
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
<strong>SODIUM</strong> platform<br />
Rating (nr <strong>of</strong> responses)<br />
Feature Considered Considered Do no know<br />
important desirable<br />
Quick & easy<br />
discovery <strong>of</strong><br />
heterogeneous<br />
services<br />
5<br />
Visual design <strong>of</strong><br />
compositions<br />
5<br />
Reuse <strong>of</strong> existing<br />
solutions<br />
5<br />
Audit trails 5<br />
Composition storage &<br />
management<br />
St<strong>and</strong>ards compliance 5<br />
Compatibility with<br />
services developed by<br />
different development<br />
tools<br />
<strong>Platform</strong> independence 5<br />
Open source 3 2<br />
Secure sharing <strong>of</strong><br />
4<br />
source files<br />
1<br />
Availability 5<br />
Scalability 5<br />
Security 4 1<br />
RAD 5<br />
Extensibility 4 1<br />
Modularity 5<br />
Support <strong>of</strong> JXTA P2P<br />
services<br />
Support <strong>of</strong> <strong>the</strong> WSRF<br />
specification<br />
5<br />
5<br />
<strong>SODIUM</strong> <strong>Platform</strong> Feature Nr <strong>of</strong> respondents rating it as most<br />
important<br />
Modularity 4 out <strong>of</strong> 5<br />
Quick & easy discovery <strong>of</strong> heterogeneous<br />
services 3 out <strong>of</strong> 5<br />
FP6-004559 p.134 <strong>of</strong> 139<br />
2<br />
2<br />
3<br />
3
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
12. Appendix II - Norwegian User Forum Questionnaire <strong>and</strong><br />
related results<br />
Please see attachment <strong>D21</strong>-Appendix II.<br />
FP6-004559 p.135 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
13. Appendix III - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong> tools<br />
As per <strong>the</strong> internal <strong>SODIUM</strong> evaluation plan [5], a set <strong>of</strong> evaluation checklists will be provided<br />
for <strong>the</strong> pilot users in order to perform a technical <strong>and</strong> user acceptance evaluation for <strong>the</strong> main<br />
<strong>SODIUM</strong> tools.<br />
13.1 Visual Editor<br />
Technical evaluation<br />
Criterion/Indicator Requirements Measurement tool Data collection method<br />
Heterogeneous<br />
service types<br />
Ability to model<br />
service operation calls<br />
to Web, Grid <strong>and</strong> P2P<br />
services<br />
Basic file h<strong>and</strong>ling Support for create,<br />
open, edit <strong>and</strong> print<br />
Common workflow<br />
patterns<br />
Support for sequence,<br />
parallel split,<br />
synchronization,<br />
exclusive choice,<br />
multiple choice,<br />
simple merge <strong>and</strong><br />
discriminator<br />
Documentation Support for basic<br />
annotation <strong>and</strong><br />
commenting<br />
functionality<br />
St<strong>and</strong>ardized<br />
modeling language<br />
Should be based on a<br />
st<strong>and</strong>ard modeling<br />
language<br />
QoS Characteristics The ability to specify<br />
QoS properties <strong>of</strong><br />
specific services as<br />
well as <strong>the</strong> QoS<br />
requirements <strong>of</strong><br />
specific tasks<br />
Basic composition<br />
constructs<br />
Support for task<br />
modeling, service<br />
operation modeling,<br />
input/output<br />
parameters <strong>and</strong> data<br />
transformations, start<br />
<strong>and</strong> end nodes<br />
Parameter types Support for defining<br />
both syntactic <strong>and</strong><br />
semantic types for<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Comparison with UML2<br />
activity models<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
FP6-004559 p.136 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements<br />
input/output<br />
parameters.<br />
Measurement tool Data collection method<br />
Timeouts Ability to specify Manual inspection Operational tests, trials<br />
maximum response<br />
time for a service<br />
Task hierarchy Support for specifying<br />
sublevels <strong>of</strong> tasks<br />
Graphical symbols Should be st<strong>and</strong>ardsbased<br />
Au<strong>the</strong>ntication<br />
constraints<br />
Basic editing<br />
functions<br />
13.2 USQL engine<br />
Technical evaluation<br />
Support for specifying<br />
distinct<br />
au<strong>the</strong>ntications<br />
requirements for<br />
different service<br />
operations within <strong>the</strong><br />
same composition<br />
Support for<br />
enabling/disabling<br />
sticky selection<br />
Manual inspection Operational tests, trials<br />
Compare with UML2 Comparison with UML2<br />
activity models<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Criterion/Indicator Requirements Measurement tool Data collection method<br />
Response time < 20 seconds Log files Operational tests, trials<br />
Exception h<strong>and</strong>ling Transparency,<br />
effectiveness<br />
Security Au<strong>the</strong>ntication for<br />
administrators<br />
Interviews, Log files Operational tests, trials<br />
Interviews Operational tests<br />
Availability 24/7 Interviews Operational tests, trials<br />
Exp<strong>and</strong>ability Extensions must be<br />
easily accommodated<br />
Interviews Trials<br />
Maintainability On a monthly basis Interviews Trials<br />
Scalability 3 registries per query<br />
within accepted<br />
response time<br />
Log files Operational tests, trials<br />
Portability Install anywhere Interviews Operational tests<br />
User acceptance <strong>and</strong> impact analysis evaluation<br />
Criterion/Indicator Requirements Measurement tool Data collection method<br />
Usefulness Use <strong>of</strong> <strong>the</strong> engine Questionnaires Post-surveys<br />
within <strong>the</strong> development<br />
lifecycle<br />
FP6-004559 p.137 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
Criterion/Indicator Requirements Measurement tool Data collection method<br />
Ease <strong>of</strong><br />
underst<strong>and</strong>ing<br />
Novice users must be<br />
able to use <strong>the</strong> engine<br />
for service discovery<br />
Willingness to use Users must be willing<br />
to use <strong>the</strong> query engine<br />
during service<br />
composition<br />
Willingness to pay Users must be willing<br />
to pay in order to use<br />
<strong>the</strong> query engine<br />
Questionnaires Trials<br />
Interviews Pre-survey, Trials<br />
Interviews Post-surveys<br />
FP6-004559 p.138 <strong>of</strong> 139
<strong>SODIUM</strong> 0621F40_<strong>Evaluation</strong> <strong>and</strong> <strong>Assessment</strong> <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> <strong>Platform</strong> Methodolodgy <strong>and</strong> Tools<br />
14. Appendix IV - <strong>Evaluation</strong> checklists for <strong>the</strong> <strong>SODIUM</strong><br />
methodology<br />
As per <strong>the</strong> internal <strong>SODIUM</strong> evaluation plan [5], a checklist will be provided for <strong>the</strong> pilot users<br />
in order to perform an evaluation <strong>of</strong> <strong>the</strong> <strong>SODIUM</strong> methodology as follows:<br />
Criterion/Indicator Requirements Measurement tool Data collection method<br />
Abstract <strong>and</strong><br />
concrete<br />
compositions<br />
Bottom-up<br />
composition<br />
development<br />
Discovery <strong>of</strong> existing<br />
services<br />
Dynamic service<br />
discovery<br />
Data<br />
transformations<br />
Multiple services per<br />
task<br />
Transformation to<br />
executable format<br />
The ability to specify<br />
compositions <strong>of</strong> tasks<br />
without knowledge <strong>of</strong><br />
existing services, <strong>and</strong><br />
to select specific<br />
services for <strong>the</strong> tasks,<br />
<strong>and</strong> <strong>the</strong> ability to<br />
maintain this<br />
information in <strong>the</strong><br />
same model<br />
The ability to produce<br />
compositions when<br />
<strong>the</strong> user knows<br />
exactly which services<br />
to use<br />
The ability to search<br />
for services<br />
The ability to define<br />
run-time queries,<br />
meaning that <strong>the</strong><br />
search for a matching<br />
service is performed<br />
as part <strong>of</strong> <strong>the</strong><br />
execution<br />
Support for defining<br />
data transformations<br />
between data objects<br />
Support to select<br />
several c<strong>and</strong>idate<br />
services for a task<br />
including an execution<br />
strategy for final<br />
selection.<br />
Support for<br />
transformation<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Manual inspection Operational tests, trials<br />
Run, <strong>the</strong> transformation,<br />
deploy <strong>the</strong> result in<br />
USCL engine <strong>and</strong><br />
execute it<br />
Operational tests, trials<br />
FP6-004559 p.139 <strong>of</strong> 139