AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking Developing .NET Web Service-based Architectures with Aspect-Oriented Component Engineering Santokh Singh 1 , Professor John Grundy 1,2 and Professor John Hosking 1 1 Department of Computer Science 2 Department of Electrical and Computer Engineering, University of Auckland, New Zealand
16
Embed
Developing.NET Web Service- based Architectures with Aspect-Oriented Component Engineering Santokh Singh 1, Professor John Grundy 1,2 and Professor John.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Developing .NET Web Service-based Architectures with
Aspect-Oriented Component Engineering
Santokh Singh1, Professor John Grundy1,2 and Professor John Hosking1
1 Department of Computer Science
2 Department of Electrical and Computer Engineering, University of Auckland, New Zealand
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Outline Introduction & Motivation Aspect-oriented Component Engineering AO Components & Aspect Details AOCE – web services architecture AOCE.NET AOUDDI and AOWSDL Current and Future Work Conclusions
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Introduction
Present component-based systems engineering focuses on low level software component interface design and implementation.
Great setbacks – Often results in development of components whose
services are hard to understand and combine. Makes too many assumptions about other
components related to it. Component documentation is too low level which is
again hard to understand at higher levels.
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Motivation
Low-level software component interface design and implementation - cumbersome and difficult to comprehend.
The larger the software system, the more prevalent and critical this problem becomes.
Problem even in industries producing or refactoring the code for commercial software tools and systems.
Leads to tremendous wastage in terms of time, effort and resources.
A solution need to be found, real fast!
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Aspect-oriented Component Engineering
AOCE - a new component based software engineering technique.
Aims at enabling software engineers develop efficient, better and more reusable software components.
AO-Components are better characterised and categorised.
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
AOCEAO Components will vertically slice the application
Data processing comp. Event History Process
Views
Distributionrelated services
Software applicationbuilt using
AOCE techniques
Process Users
User Interfacerelated services
Persistencyrelated services
Performancerelated services
Aspects will horizontally slice the Components
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Aspects in AOCE
Aspects horizontally slice the overall software system that was vertically componentised.
Aspects characterize specific cross-cutting functional and non-functional properties of the components.
Examples of Aspects: security, persistency, configuration, collaboration,
transaction processing, distribution, user interface, performance and resource utilization.
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
Aspect-oriented web services architecture
Find, using aspectualqueries & responses
AO-Discovery Agencies(AOUDDI)
AO-Discovery Agencies(AOUDDI)
AO-Service
Providers
AO-Service
Providers
AO-Service
Requestors
AO-Service
RequestorsInteract/bind
Publish
AO-ServiceDescription(AOWSDL)
Aspect-oriented Clients
Aspect-oriented Services
AO-ServiceDescription(AOWSDL)
Validating agents/
Adaptors
Validating agents/
Adaptors
Runtime Validation and
Adapting
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
AOCE.NET Overview of using AOCE to develop .NET web service-based
software systems
1. AO-Specification and AO-Designs
3. Deploy Web Services
2. Implementation Using AOCE
Fully Componentised Aspect-oriented Web
services providers
.Car Rentals WS
Hotels Web Services
Flights Web Services
AO-Adaptors
AO-Client(s) Validation
Agents
AO-Servers
AO-UDDI
4. Register Web Services
5. Discover Web Services
6. Validate and Integrate Web
Services
AO-WSDL
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking
…….. <aowsdl:Component ComponentName="FlightsDataManagementComponent"> <aowsdl:ComponentDescription Description="Component to find Flights to various cities and countries including seats availability in the flights" /> <aowsdl:Aspects> <aowsdl:FunctionalAspects> <aowsdl:Aspect Type="Persistency" AspectName=“Persistency_FlightsData" WSEntryPoint="true" Standalone="true"> <aowsdl:AspectDescription Description="To search for Flights based on dates and city or country query" /> …… <aowsdl:Parameters> <aowsdl:Parameter ParameterName="strCity" ParameterType="string" /> <aowsdl:Parameter ParameterName="strCountry" ParameterType="string" /> ….. </aowsdl:Parameters> <aowsdl:Return ReturnType="DataSet" />
AOWSDL - Aspect-Oriented Web Services Description Language for describing ao-web services.
•A sample of the component element in the AOWSDL document is shown on the left.
AWSA '04 Presentation (c) Santokh, John Grundy & John Hosking