Service Proforma Middleware Workshop Notes • Please complete as much of this proforma as possible – it will help make the workshop more informative & productive for us all. • If you will be talking about more than one service feel free to add an overall architecture diagram showing the relationship between services. • Also, please provide a motivation slide for developing/using the service set. Service: WS-JDML • Web Service for job submission and monitoring • <availability of code/implementation> – http://www.lesc.ic.ac.uk/iceni – Apache / ICENI Licence – Web-sites / mailing-list • <SOA Model:WS> Service Operations • submitJob – Description: submit a Job as specified by the Job Description Markup Language – IN: JDMLDocument – OUT: JobIdentifier • getJobStatus – Description: get the job state – IN: JobIdentifier – OUT: JobStatus What do you use to build your service? (i.e. How ‘standard’ is your service?) NB:A low score means less risk & more mainstream • Widely Implemented Standard Specification (1pt) – <Demonstrable Multiple Implementations, e.g. SOAP, WSDL> • Implemented draft specification (2pt) – <Specification in standards body and supported by most/many companies. One/few implementations exist (e.g., WS-Security, BPEL)> • • • Implemented draft specification (3pt) – <Specification in standards body but alternatives exist. Industry is divided. One/few implementations exist. (e.g., Transactions, coordination, notification, etc.). Implemented proposal (4pt) – An implementation of an idea, a proposal but not submitted to standards body yet (e.g., WS-Addressing, WS-Trust, etc.) Non-implemented proposal (5pt) – <An idea that exits as a white paper, but no code and no specification details> • Concept (6pt) – <An idea that exists only as power point slides!!> • TOTAL: SOAP, WSDL, WS-Security = 3 Service Dependencies • What else does your service depend on (i.e. external dependencies)? – RDBMs / J2EE EJBs – Logging (Java Logging) – Message Queue (JMS) • What does your implementation depend on? – Java – J2EE 1.4 compliant AAA & Security • What authentication mechanism do you use? – WS-Security • What authorisation mechanism do you use? – Flexible composition of authorisation plugins. • What accounting mechanism do you use? – Java logging • Does service interaction need to be encrypted? • If these are not used now, will they be in the future? Exploiting the Service Architecture • What features from your ‘plumbing’ do you use in your service? – Event notification – Meta-data Service Activity • Multiple interaction or single user? – Multiple • Throughput (1/per day or 100/per second?) • Typical data volume moved in • Typical data volume moved out Service Failure • Required Reliability – Failure semantics? • Positive ack (might need WS-ReliableMessaging) • Required Persistence – Job entered into the queue is always persisted • Required Availability – One of many or unique requirement Required Service Management • Remote access to: – Usage statistics – Job Progress – Job Diagnostic and repair interfaces