TAPAS WP1 – Application Service Requirements and Specification.

Slides:



Advertisements
Similar presentations
P SATel Institute for Information Processing University of Pisa SantAnna school Pisa Today trends in Software Engineering 1. Distributed Objects 2. Component.
Advertisements

E-Science AHM, Nottingham. September 20 th, Glen Dobson: An OWL Ontology for QoS Glen Dobson (Russell Lock, Ian Sommerville)
Precise Service Level Agreements James Skene, Davide Lamanna, Wolfgang Emmerich University College London.
Specification, Partitioning, and Composition Techniques for Web Applications in the Context of Event-B Abdolbaghi Rezazadeh Michael Butler University of.
Pontus Boström and Marina Waldén Åbo Akademi University/ TUCS Development of Fault Tolerant Grid Applications Using Distributed B.
1 © Wolfgang Emmerich, 2002 UCL Wolfgang Emmerich.
TAPASDelivMarch04 1 TAPAS Deliverables for March 04 (Trusted and QoS-Aware Provision of Application Services) Santosh Shrivastava Newcastle University.
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
1 SLAng Semantics, and Service Composition James Skene, Davide Lamanna, Wolfgang Emmerich.
Dynamic SLAs Discussion Omer Rana, School of Computer Science, Cardiff.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Distributed components
Information Retrieval in Practice
Technical Architectures
Chapter 13 Physical Architecture Layer Design
Software Requirements
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Overview of Search Engines
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
1 The Architectural Design of FRUIT: A Family of Retargetable User Interface Tools Yi Liu, H. Conrad Cunningham and Hui Xiong Computer & Information Science.
1 소프트웨어공학 강좌 Chap 9. Distributed Systems Architectures - Architectural design for software that executes on more than one processor -
INTELLIGENT AUTOMATION INC. Extending Rational Rose to support MAS design in UML Intelligent Automation Inc. 2 Research Place, Suite 202 Rockville, MD.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
Integrating Security Design Into The Software Development Process For E-Commerce Systems By: M.T. Chan, L.F. Kwok (City University of Hong Kong)
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Introduction to MDA (Model Driven Architecture) CYT.
ASG - Towards the Adaptive Semantic Services Enterprise Harald Meyer WWW Service Composition with Semantic Web Services
The Grid Component Model: an Overview “Proposal for a Grid Component Model” DPM02 “Basic Features of the Grid Component Model (assessed)” -- DPM04 CoreGrid.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
SLAng - SLA notation generator A language for defining SLAs Davide Lamanna, James Skene and Wolfgang Emmerich University College London Computer Science.
Class 5 Architecture-Based Self-Healing Systems David Garlan Carnegie Mellon University.
TAPAS meeting Application Hosting Requirements adesso AG Werner Beckmann
Performance evaluation of component-based software systems Seminar of Component Engineering course Rofideh hadighi 7 Jan 2010.
1 Unobtrusive Performance Analysis – Where is the QoS in TAPAS? University College London James Skene –
Newcastle upon Tyne, September 2002 V. Ghini, G. Lodi, N. Mezzetti, F. Panzieri Department of Computer Science University of Bologna.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 32. Review Behavioral Patterns – Observer Pattern – Chain of command.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
1 CBSE Process: issues and Challenges From CBSE Landscape document chapter From.
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
Creating competitive advantage Copyright © 2003 Enterprise Java Beans Presenter: Wickramanayake HMKSK Version:0.1 Last Updated:
Copyright © 2004, Keith D Swenson, All Rights Reserved. OASIS Asynchronous Service Access Protocol (ASAP) Tutorial Overview, OASIS ASAP TC May 4, 2004.
Model Driven Performance Analysis University College London James Skene –
EJB. Introduction Enterprise Java Beans is a specification for creating server- side scalable, transactional, multi-user secure enterprise-level applications.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
1 Software Requirements Descriptions and specifications of a system.
Dr D. Greer, Queens University Belfast ) Software Engineering Chapter 7 Software Architectural Design Learning Outcomes Understand.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
IAB-Feb 04 1 TAPAS Progress Report (Trusted and QoS-Aware Provision of Application Services) Santosh Shrivastava Newcastle University.
Dr. Ir. Yeffry Handoko Putra
Information Retrieval in Practice
Common Object Request Broker Architecture (CORBA)
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
OPM/S: Semantic Engineering of Web Services
Distribution and components
 DATAABSTRACTION  INSTANCES& SCHEMAS  DATA MODELS.
Service-centric Software Engineering
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Component--based development
Web Application Server 2001/3/27 Kang, Seungwoo. Web Application Server A class of middleware Speeding application development Strategic platform for.
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
Chapter 5 Architectural Design.
Presentation transcript:

TAPAS WP1 – Application Service Requirements and Specification

This Presentation Briefly, the goals of WP1 The context of the problem Our approach A language for service level specifications Performance modelling for application services

The Goals of WP1 Report describing application hosting requirements [delivered by Adesso]. Service level agreement specification method. Service composition and analysis method. A toolkit for service composition and analysis.

Application Service Provision in a Federated Environment Marketplace ASP ISPSSP Buyer TTP Vendor 1 Vendor n Credit Rating Agency Retail Bank 1 Retail Bank n Service Level Agreement (SLA)

Vertical and Horizontal SLAs Beans Container Network Database UserBeans Container Network

What is a Service Level Agreement? Service Level Agreement Service Level Specification Pricing Policy Client Service Provider «instance» Legal Contract

Formalisation We intend to produce a formal language, with a well defined syntax and semantics for describing service level specifications (SLSs). It would also be beneficial to extend this language to associate costs with the entities and parameters in an SLS. Monitoring schedules could also be included.

Benefit of Formal SLS 1. SLS Application Container Management Statistics Contract Verification Interface Client or subcontractor

Benefit of Formal SLS 2. SLSs for existing clients and sub- contractors System model Modelling tool Predictions and evaluation of hypothetical SLA Hypothetical SLS

Formal SLS with Costing SLSs for existing clients and sub- contractors System model Modelling tool Legal boilerplate/cost evaluations Hypothetical SLS Cost model

Formal SLS with Costing and Business Modelling SLSs for existing clients and sub- contractors System model Modelling tool Parts and service costs. Better availability predictions. Cost model Business model

Our Approach To use popular and standard information exchange formats – XML To use popular and standard modelling paradigms – UML To concentrate on specific, popular, state- of-the-art application server technologies – Enterprise Java Beans (possibly.NET)

Our Approach 2 The SLS specification language will associate performance targets with identifiable ASP components. An ASP deploys QoS-aware middleware that monitors the components identified in each SLSs that they undertake to meet. Additionally, modelling tools will be developed to assist ASP in determining what SLSs they can undertake to meet.

Our Approach 3 The SLS language will not have a semantics dependent on complete models of the ASP. These are not relevant to the purpose of an SLA, which is to define an agreement. The semantics will instead be defined in terms of the domains of the performance properties, those structural elements of the ASP that are pertinent, and partial process models describing use cases. In particular the language will not necessarily preclude ‘un-meetable’ or unreasonable specifications.

QoS Properties Are somewhat dependent on the system tier being described. Generic properties are: –Performance (latency, scalability) –Reliability (mean time to failure) –Availability (probability that the system will be operational at a given instant)

QoS Properties 2 Property value targets may be specified using ranges, or statistical distributions qualified by other variables, e.g. Performance vs. Load = Scalability Property value targets may be qualified by a ‘confidence’ or ‘tolerance’ – e.g. the target must be met at least 95% of the time.

SLS Composition Composition may not lead to inherently reasonable agreements. This must be evaluated separately by the partners to the agreement using modelling. SLSs must adopt a naming scheme for system components/assemblies that allows SLSs from different organisations to be concatenated without ambiguity. These names would automatically identify model and system components in modelling tools and QoS-aware middleware.

Modelling We intend to use UML models as the repository for all modelling information. SLSs will identify model components and the properties to be established. The UML will be converted to a variety of formal models, amenable to analysis, e.g. SPAs, Bayesian Belief Networks. The results of analysis will be reintegrated into the UML model.

Vertical Composition of Models By refinement: Components Objects Methods Level of abstraction Container action Persistence Action Processor Resource Operating System Action Subroutines Network Resource Performance observations and predictions can be made at any level of abstraction. Consistency must be maintained between the levels.

Vertical Composition of Models 2 The performance of an action at a higher level abstraction is directly dependent on the performance of the lower level actions. We can ensure that the guarantee at the higher (simplified) level is consistent with that of the lower level actions by calculating the latency of the more detailed lower-level model (e.g. using a SPA model). An analogous approach is possible for reliability using Bayesian networks. The rate of failure of an assembly is conditional on the failure rates of its components.

Horizontal Composition of Models Is easy. UML, Markov chains, Petri nets and equivalently, stochastic algebras, are all graph-based models. It is relatively easy to translate between the different formalisms and to compose two models of the same kind. Composition of results is generally difficult. No safe inference can be drawn about the behaviour of one system by examining the behaviour of a similar one, since a small change can alter behaviour considerably. Instead, compose the models then recalculate.

Composition of Models of Different Types We will want to factor availability information into performance guarantees. Bayesian networks inherently transgress the Markov property relied upon by SPAs. The answer might be quite simple: Modify performance estimates in proportion to availability. Alternatively heuristic approaches may be investigated. A unified approach based on only one modelling paradigm seems unlikely.

Modelling Pitfalls State-space explosion is the classic problem with graph-based models. The middleware approach with centralised services and object-request brokering is mitigating as it reduces nxn interactions to nx1. We aim to provide standard models of common services to assist in avoiding these problems. A modelling tool must incorporate cognitive support and feedback for modellers.