Service Computing

Time: Fall 2023
School: Software
Students: Graduate students in Software Engineering
Classroom: 3(304)
Description: This course aims to introduce one kind of distributed system paradigm: service computing. Service computing focuses on how to divide distributed systems to "services" which can be seperately invoked through network requests and can provide independent functionalities, how to manage and evaluate existing services, and how to reuse these services for building more complex composite services, as well as how to assure the quality of services. Recently the micro-service architecture, FaaS (Function as a Service) and Serverless are also the new trends of Service Computing. Service computing has been widely used in Cloud systems, Big Data Services, IoT systems, Blockchain systems, Web applications, Mobile applications, workflow systems and other distributed systems.
Teachers: Xu Wang, Renyu Yang

Tentative Course Schedule:

Week #DateTopicSlides*
3Sep 17, 2023Service Computing OverviewOverview.pdf
4Sep 24, 2023Network-based ServicesServices.pdf
7Oct 15, 2023Service Oriented ArchitectureSOA.pdf
8Oct 22, 2023Classic Service Computing TechnologyClassicSC.pdf
9Oct 29, 2023Paper Discussion (I)
10Nov 5, 2023Emerging Service Computing TechnologyEmergingSC.pdf
11Nov 12, 2023Service InfrastructureSI.pdf
12Nov 19, 2023Service Quality (I)
13Nov 26, 2023Service Quality (II)
14Dec 3, 2023Paper Discussion (II)
*: Slides are only for students in this course.
Some Reference Papers:
[1]A. Segev and E. Toch, "Context-Based Matching and Ranking of Web Services for Composition," in IEEE Transactions on Services Computing, vol. 2, no. 3, pp. 210-222, July-Sept. 2009.
[2]D. Guinard, V. Trifa, S. Karnouskos, P. Spiess and D. Savio, "Interacting with the SOA-Based Internet of Things: Discovery, Query, Selection, and On-Demand Provisioning of Web Services," in IEEE Transactions on Services Computing, vol. 3, no. 3, pp. 223-235, July-Sept. 2010.
[3]Mohammad Alrifai, Dimitrios Skoutas, and Thomas Risse. Selecting skyline services for QoS-based web service composition. In Proceedings of the 19th international conference on World wide web (WWW '10). ACM, New York, NY, USA, 11-20.
[4]Zibin Zheng, Michael R. Lyu, "Collaborative Reliability Prediction of Service-Oriented Systems," in Proc. of ACM/IEEE International Conference on Software Engineering (ICSE), 2010.
[5]Wancai Zhang, Hailong Sun, Xudong Liu, and Xiaohui Guo, "Temporal QoS-Aware Web Service Recommendation via Non-negative Tensor Factorization," in Proc. of International World Wide Web Conference (WWW), 2014.
[6]X. Wang, H. Sun, T. Deng and J. Huai, "Consistency or latency? A quantitative analysis of replication systems based on replicated state machines," 2013 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), Budapest, 2013, pp. 1-12.
[7]Diego Ongaro and John Ousterhout. In search of an understandable consensus algorithm. In Proceedings of the 2014 USENIX conference on USENIX Annual Technical Conference (USENIX ATC'14), Garth Gibson and Nickolai Zeldovich (Eds.). USENIX Association, Berkeley, CA, USA, 305-320.
[8]Xu Zhao, Kirk Rodrigues, Yu Luo, Ding Yuan, and Michael Stumm. Non-intrusive Performance Profiling of Entire Software Stacks based on the Flow Reconstruction Principle. Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16), November 2016, Savannah, GA.
[9]Shengjian Guo, Meng Wu, and Chao Wang. Symbolic execution of programmable logic controller code. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering (ESEC/FSE 2017). ACM, New York, NY, USA, 326-336.
[10]Haopeng Liu, Xu Wang, Guangpu Li, Shan Lu, Feng Ye, and Chen Tian. FCatch: Automatically Detecting Time-of-fault Bugs in Cloud Systems. In Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '18). ACM, New York, NY, USA, 419-431.