13.01.2013 Views

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

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!