Task: D3 - Investigate existing services
To find services that are already implemented in the organization and can be reused in the application under development.To keep track of the services, their contracts and associated software systems (implementation) are register in a central Services Catalogue of services.
Disciplines: Design
Purpose
To find services that are already implemented in the organization and can be reused in the application under development.
Relationships
RolesPrimary Performer: Additional Performers:
InputsMandatory:
    Optional:
    • None
    Outputs
      Process Usage
      Main Description

      Existing services could be reused as if or it could be necessary to implement intermediary services for reusing other services that are not completely suited to the application, which is preferable than implement them again from scratch. To keep track of the services, their contracts and associated software systems (implementation) are register in a central Services Catalogue of services. In the SoaML component diagram an adapter or wrapper has to be defined to relate the design service to its existing implementation, which will then be linked in Activity D4. If the service can be used as it is, then the functionality of the adapter will be solely to call the existing component that implements the service; if it is similar then the adapter will add or modify the existing functionality to suite the new requirements for the service.

      Example of wrapper definition taken from the SoaML standard:

       

      Steps
      Identify existing services providing the required functionality listed in the services Catalogue
      Define if the existing service could be used as is or if it is necessary to implement intermediary services
      If an intermediary service has to be implemented, define the functionality it will reuse from the existing service, and the functionality that has to be added
      Identify the location and way to invoke the existing service
      Key Considerations
      An adapter or wrapped component is defined in the SoaML component diagram for the participant, to invoke the existing service, adding or modifying functionality if needed.