Seminar Topics & Project Ideas On Computer Science Electronics Electrical Mechanical Engineering Civil MBA Medicine Nursing Science Physics Mathematics Chemistry ppt pdf doc presentation downloads and Abstract

Full Version: Service-centric Software Engineering
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Service-centric Software Engineering
[attachment=27988]
Objectives
To explain the notion of a reusable service, based on web service standards, that provides a mechanism for inter-organisational computing;
To describe the service engineering process that is intended to produce reusable web services;
To introduce service composition as a means of application development;
To show how business process models may be used as a basis for the design of service-oriented systems.
Topics covered
Services as reusable components
Service engineering
Software development with services
Service-oriented architectures
A means of developing distributed systems where the components are stand-alone services
Services may execute on different computers from different service providers
Standard protocols have been developed to support service communication and information exchange
Benefits of SOA
Services can be provided locally or outsourced to external providers
Services are language-independent
Investment in legacy systems can be preserved
Inter-organisational computing is facilitated through simplified information exchange
Key standards
SOAP
A message exchange standard that supports service communication
WSDL (Web Service Definition Language)
This standard allows a service interface and its bindings to be defined
UDDI
Defines the components of a service specification that may be used to discover the existence of a service
WS-BPEL
A standard for workflow languages used to define service composition
Service-oriented software engineering
Existing approaches to software engineering have to evolve to reflect the service-oriented approach to software development
Service engineering. The development of dependable, reusable services
Software development for reuse
Software development with services. The development of dependable software where services are the fundamental components
Software development with reuse
Services as reusable components
A service can be defined as:
A loosely-coupled, reusable software component that encapsulates discrete functionality which may be distributed and programmatically accessed. A web service is a service that is accessed using standard Internet and XML-based protocols
A critical distinction between a service and a component as defined in CBSE is that services are independent
Services do not have a ‘requires’ interface
Services rely on message-based communication with messages expressed in XML
Web service description language
The service interface is defined in a service description expressed in WSDL. The WSDL specification defines
What operations the service supports and the format of the messages that are sent and received by the service
How the service is accessed - that is, the binding maps the abstract interface ontoa concrete set of protocols
Where the service is located. This is usually expressed as a URI (Universal Resource Identifier)
Service engineering
The process of developing services for reuse in service-oriented applications
The service has to be designed as a reusable abstraction that can be used in different systems
Involves
Service candidate identification
Service design
Service implementation
Service candidate identification
Three fundamental types of service
Utility services that implement general functionality used by different business processes
Business services that are associated with a specific business function e.g., in a university, student registration
Coordination services that support composite processes such as ordering
Service identification
Is the service associated with a single logical entity used in different business processes?
Is the task one that is carried out by different people in the organisation?
Is the service independent?
Does the service have to maintain state? Is a database required?
Could the service be used by clients outside the organisation?
Are different users of the service likely to have different non-functional requirements?
Catalogue services
Created by a supplier to show which good can be ordered from them by other companies
Service requirements
Specific version of catalogue should be created for each client
Catalogue shall be downloadable
The specification and prices of up to 6 items may be compared
Browsing and searching facilities shall be provided
A function shall be provided that allows the delivery date for ordered items to be predicted
Virtual orders shall be supported which reserve the goods for 48 hours to allow a company order to be placed