1 Introduction
2 Service based platform architectures
2.1 Objectives and benefits
2.2 State of the art
2.3 Common platform services
Service framework meta-service | Features |
---|---|
Developer portal | In the developer portal, companies should provide relevant and comprehensive aspects of their APIs such as API documentation, policy, terms and agreement, testing environment (sandbox or real), or API versioning |
Enterprise gateway | Management of the interaction between the API and external API consumers |
Policy enforcement and management | Management of both, design time and runtime policies of services. Design time policies are concerned with aspects such as design guidelines or security mechanism while run time policies are concerned with operational environment and requirements that have to be met by the service at runtime |
Security | The difference between security in SOA Governance and API Management is that in SOA Governance, the organization administers internal and known users while API Management handles external and unknown users. API Security manages additional aspects like authorization and authentication, API Key management, as well as Identity and Credential Management |
Service analytic and reporting | Exploration of insightful traffic analytics and reports of API activities with respect to developers account, application, or services as well as observation of the overall API usage and trends |
Service level agreement | Management of service levels as stated in SLA contract, service evaluation as well as fees for consuming the service and fines in case of contract violation |
Service lifecycle management | Managing the design, development and delivery of individual services in a SOA. The tasks include change management procedure, service registration and even deciding on service granularity |
Service metering and billing | Monitor and measure service usage as the basis for billing and calculation for the service consumers. Also the service performance can be monitored regularly |
Service registry and repository | The catalogue of services and management of their publication. Definition of taxonomies of the published services allowing consumers to find suitable services to their needs. While the Service Registry only contains service references, the Service Repository is the actual holder of documentation, policies and metadata about the versioning of the service |
Process framework service | Features |
---|---|
Development and lifecycle management platform services | Manages service integration process flows throughout their lifecycle including modeling, development, configuration, testing and deployment |
Integration platform services | Consists of aspects that ensure seamless integration flow both at design time (service orchestration) and runtime (process execution). These aspects include but are not limited to: Message transformation and routing, an Integrated Development Environment (IDE), adapters, flow management, protocol conversion, service virtualization, and security federation |
Monitoring, management, and administration platform services | Takes care of deployment and administration of integration flows, monitor their execution and manage their behavior. Covers several aspects such as technical and business activity monitoring, logging and tracking. as well error resolution |
3 A reference architecture for e-commerce service platforms
3.1 Framework
3.2 E-commerce company
3.3 Service provider
-
Message based integration can be realized through modern web services or web APIs that communicate over HTTP and can be consumed with state of the art integration tools and techniques. This kind of interface is suitable for standalone services such as payment services, address verifications, customer or credit enquiries but also to access or populate resources of SaaS applications and social media services in a programmable manner.
-
Another interface type is based on more specialized protocols that can be considered as an older technique to integrate services. Despite their higher complexity and technical dependencies, those protocols are still widely used to integrate legacy systems or communication services such as mail and chat but will not be implemented by modern SaaS applications.
-
Web applications are generally used as user interfaces in SaaS or social media services as well as in analytical services and reporting in form of dashboards.
-
On the backend analytical services will be integrated through an interface type that allows exchange of large amounts of data. Message based integration would produce too much overhead and is therefore not suitable for such scenarios which involves large to big data sets. Instead the integration will rather be based on data extraction, transfer and loading (ETL) or through database links.
3.4 Platform provider
4 A service platform based return registration process
4.1 Business case and solution design
Service | Description |
---|---|
Return registration | A web application that handles return shipments. It allows end customers to request a return of goods through the web interface. The user has the possibility to look up recent orders and select individual goods for return |
Parcel registration | The parcel delivery registration service allows to register parcel shipments, print parcel badges and schedule parcel pick up. In the case study scenario it is used to issue parcel label to the end customer |
Task list | A task list application assigns a lists of tasks to each user which they have to act upon. This can be approvals, responses or other action items. Those task list are often integrated into workflow systems and have advances features such as task forwarding, task escalation or holiday calendar integration. In this case the task list is used to assign approval notifications for the requested returns |
E-mail transmission | The e-mail service is used to send outgoing e-mails to the customer including the approval and parcel label for the return shipment |
4.2 Prototype
5 Validation
5.1 Pluggability
Criteria | Description |
---|---|
Ease of service provisioning (EOP) | The goal of service provisioning is to discover potential services, compare the various available services, to assess individual services with regards to the business needs, and to enter into a contract with the service provider. The service provider can facilitate these task by listing the service in various service marketplaces, disclose all the relevant information publicly including the terms of use, pricing, service levels, and documentation. Furthermore, the access to demo environments and self-service subscription can further facilitate the assessment and comparison of services |
Ease of service deployment (EOD) | Individual services should be easy to install, learn and test. By default cloud based services do not require technical testing and installation and thus, have an inherent advantage over traditional software components with regards to deployment. In any case the service should support learning and functional testing through high quality and accessible documentation |
Ease of service adaptation (EOA) | The service should be easy to adapt to the functional needs of the consumer. This includes the ability to configure and customize the service. Customizations have a higher level of technical complexity as additional or deviating logic has to be implemented. Configuration in contrast leverages existing logic through setup. A pluggable service maximizes configurability while reducing the need for customizations |
Ease of service integration (EOI) | Services should be able to communicate and share data mutually in order fulfill the overall business process. The construction of dedicated interfaces between services is labor intensive and should be supported by the service provider, for example through adapters or service platforms. Services should be able to share and exchange resources without other service quality criteria being affected, especially EOD, EOA and EOE |
Ease of service operation (EOO) | Service operation encompasses the long-term tasks to enable the continuous use of a service, namely maintenance, monitoring and customer support. Service providers can facilitate service operation by providing service level agreements for availability, bug fixing and change requests, as well as a suitable infrastructure such as call centres, a bug tracking systems, and support portals. In order to provide a single point of contact across services, a joint service infrastructure can further improve the EOO |
Ease of service exchange (EOE) | Loose coupling is a fundamental principle of service-oriented architectures and requires services to act as independent units of computing. The benefit is to facilitate the exchange of individual services. However, loose coupling of services requires dedicated service orchestration which affects the EOI |