Supporting quality of service, configuration, and autonomic reconfiguration using services-aware simulation

  • Author / Creator
    Smit, Michael
  • Service-oriented architectures (SOA) enable interaction among multiple entities, loose composition of components, service substitution, dynamic run-time binding, and a network-driven infrastructure. These potential benefits, regardless of the technology providing them, introduce challenges: multiple organizations interacting, behavior that changes at run-time, and `black box' functionality. Service interactions can be governed by service level agreements (SLAs) specifying quality of service standards; meeting these standards is an ongoing challenge. This dissertation advances the state of the art for configuring, deploying, and managing service systems. First, it demonstrates that authoring a simulation of a service-oriented system need not be prohibitively difficult, and that such simulations can produce a narrative that offers useful and realistic information about the predicted performance of a software system. This is in contrast to the results of a systematic survey of current frameworks. A framework is described and implemented that improves on the state-of-the-art in key areas. Second, this approach is used to simulate two real-world service systems. They are validated to accurately predict performance, and serve as testbeds for demonstrating simulation-driven methodologies. Third, a novel view on how service level agreements are negotiated, deployed, and evaluated is described. A simulation-driven methodology and tool allows consumers to explore trade-offs among configuration goals, based on a desire to produce an SLA that maximizes perceived value for the consumer and the provider. Another simulation-driven tool answers questions posed by administrators seeking configurations that will adhere to an SLA. A third tool enables run-time testing and monitoring of a service system. The tools are implemented and tested in both simulated and real scenarios. Finally, an autonomic manager capable of re-configuring an application at run-time is presented. A decision model is created before the service is deployed by running the simulation (either manually or automatically), collecting traces of performance, and constructing a state-transition model that identifies the (abstract) states of an application and the transitions among them. This is implemented and tested both in simulation and in a real-world cloud computing environment. Questions about the granularity of the abstract states and the size of the state space are asked and answered using empirical results.

  • Subjects / Keywords
  • Graduation date
  • Type of Item
  • Degree
    Doctor of Philosophy
  • DOI
  • License
    This thesis is made available by the University of Alberta Libraries with permission of the copyright owner solely for non-commercial purposes. This thesis, or any portion thereof, may not otherwise be copied or reproduced without the written consent of the copyright owner, except to the extent permitted by Canadian copyright law.
  • Language
  • Institution
    University of Alberta
  • Degree level
  • Department
    • Department of Computing Science
  • Supervisor / co-supervisor and their department(s)
    • Stroulia, Eleni (Computing Science)
  • Examining committee members and their departments
    • Hoover, H. James (Computing Science)
    • Sorenson, Paul (Computing Science)
    • Messinger, Paul (School of Business)
    • Bauer, Michael (Computer Science, UWO)