Service Computing

Time: Fall 2018
Students: Graduate students on Computer Science/Software Engineering
Classroom: New Main Building B225
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. Service computing has been widely used in Cloud systems, Web applications, Mobile applications, workflow systems and other distributed systems.

Tentative Course Schedule:

Week #DateTopicSlides*
1Sep 11,2018Service Computing OverviewOverview.pdf
2Sep 18,2018Network-based Service Technology (I)Service.pdf
3Sep 25,2018Network-based Service Technology (II)
4Oct 2,2018Holiday, No Class-
5Oct 9,2018Service Oriented Architecture (SOA)SOA.pdf
6Oct 16,2018Service Register, Description and DiscoveryServiceDiscovery.pdf
7Oct 23,2018Service Selection and RecommendationServiceRec.pdf
Homework (I)Homework-1.pdf
8Oct 30,2018Service Composition (I)ServiceComposition.pdf
9Nov 6,2018Service Composition (II)
10Nov 13,2018Service ExecutionServiceExecution.pdf
Homework (II)Homework-2.pdf
11Nov 20,2018Reading and Discussion (I)Reference Papers
12Nov 27,2018Impove Service Quality via ReplicationSQReplication.pdf
13Dec 4,2018Static Analysis for Service Bugs DetetcionSQStaticAnalysis.pdf
14Dec 11,2018Dynamic Analysis for Service Bugs DetectionSQDynamicAnalysis.pdf
15Dec 18,2018Formal Verification for Service Properties GuaranteeSQFormalVerification.pdf
Homework (III)Homework-3.pdf
16Dec 25,2018Reading and Discussion (II)Reference Papers
*: Slides are only for students in this course.
Reading and Disscussion (I) 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.
Reading and Disscussion (II) Reference Papers:
[1]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.
[2]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.
[3]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.
[4]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.
[5]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.