In this chapter, the learning objectives are: 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. | Service-centric Software Engineering 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 Service-oriented architectures Benefits of SOA Services can be provided locally or outsourced to external providers Services are . | Service-centric Software Engineering 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 Service-oriented architectures 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 Web service standards 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