Date of Award
Doctor of Science (PhD)
Computing and Software
Tom Maibaum, Rolf Sebaldt
Service-Oriented Architecture (SOA) focuses on dividing the enterprise application layer of an enterprise system into components (as services) that have direct relationships with the business functionality of the enterprise. Web services, which are based on message exchanges, are the most widely adopted SOA technology. Web services provide web-accessible programs and devices that have been widely promoted for cloud computing environments. However, different types of web services are required to model actual services in the business domain. Particularly, enterprises (business providers such as banks, health care, and insurance companies) usually send their agents or other personnel (e.g., representatives, installers, maintainers, and trainers) to client sides to perform required services. An enterprise agent can be modeled as a software agent - a computer program that cannot be transmitted efficiently by communication messages. Lacking an efficient way to model the transmission of enterprise agents in traditional message based technologies restricts the application and usage of service-oriented architectures. The central problem addressed in this thesis is the need to develop an efficient SOA model for enterprise agents that will enable service providers to process client data locally at the client side.
To address the research problem, the thesis proposes to model enterprise agents in SOA with a generic software agent called the Service Representative. This is a generic software agent which stays at the client side and can be customized by different service providers to process client data locally. Moreover, to employ a service representative, the thesis proposes a new type of web services called Task Services. While a traditional web service, called Data Service, processes client data completely at the server side, a task service is a web service with the capability of processing client data and resources partially or completely at the client side, using a Service Representative. Each task service assigns a task with three components to the generic service representative: task model, task knowledge, and task data. The task components are mapped to business components such as business process models, business rules and actions, and business data, where they can be efficiently transmitted by service messages.
The combination of a service representative and task services provides an executable platform for service providers at the client side. Moreover, the client does not need to reveal its data, and hence privacy and security are maintained. Large volume client data is processed locally, causing less network traffic. Finally, real-time and event-triggered web services can be developed, based on the proposed approach.
The main contributions and novelty of this research are: i) a domain independent computational model of enterprise agents in SOA to support a wide variety of client-processing tasks, ii) client- side web services which are compatible with typical server-side web services and comparable to other client-side processing technologies, iii) extensions of the SOA architecture by adding novel generic components including the service representative, the competition desk, and the service composition certifier, iv) provision of a formal model of client-side and server-side web services based on their construction of business components, v) empirical evaluations of the web service model in a number of different applications, using a prototype system, and vi) the application of the developed model to a number of target domains including the healthcare field. Furthermore, because client-side and server-side web services are complementary, a decision support model is provided that will assist service developers to decide upon the best service type for a web service.
Najafi, Mehran, "Extending Service Oriented Architecture Using Generic Service Representatives" (2012). Open Access Dissertations and Theses. Paper 6970.
McMaster University Library