Schedule (subject to change; check regularly)
Week 1        Aug.    29        Software Architecture Principles            Lead: Malek
-- D. Garlan and M. Shaw, “Introduction to Software Architecture” Advances in Software Engineering and Knowledge Engineering, Volume 1, edited by V.Ambriola and G.Tortora, World Scientific Publishing Company, New Jersey, 1993.

Week 2        Sep.   5        Labor day -- no class

Week 3        Sep.    12        Service Oriented Architecture Principles            Lead: Malek
-- D. Panda, "An Introduction to Service-Oriented Architecture from a Java Developer Perspective."
-- F. Curbera, M. Duftler, R. Khalaf, W. Nagy, N. Mukhi, and S. Weerawaran. "Unraveling the Web Services Web: an introduction to SOAP, WSDL, and UDDI." IEEE Internet Computing, vol 6, no 2, pp. 86-93, Mar 2002. 
-- M. P. Papazoglou, P. Traverso, S. Dustdar, and F. Leymann. "Service-Oriented Computing: State of the Art and Research Challenges."IEEE Computer, vol. 40, pp. 39-45, 2007.

Week 4        Sep.    19        Service Oriented Architecture Research           Lead: Malek: SASSY, SCN, Project Discussion
-- S. Malek, N. Esfahani, D. Menasce, J. Sousa, and H. Gomaa. “Self-Architecting Software Systems (SASSY) from QoS-Annotated Activity Models.” ICSE 2009 Workshop on Principles of Engineering Service-Oriented Systems (PESOS 2009), Vancouver, Canada, May 2009.
-- D.A. Menascé, J. Ewing, H. Gomaa, S. Malek, and J.P. Sousa “A Framework for Utility-Based Service Oriented Design in SASSY” First Joint WOSP/SIPEW International Conference on Performance Engineering (WOSP/SIPEW 2010), San Jose, California, USA January 28-30, 2010.
-- N. Esfahani, S. Malek. "Social Computing Networks: A New Paradigm for Engineering Pervasive Software Systems." International Conference on Software Software Engineering (ICSE 2010), New Ideas and Emerging Results Track, Cape Town, South Africa, May 2010.
-- Project discussion

Week 5        Sep.    26        Architecture-based Adaptation          
-- J. O. Kephart, D. Chess. “The Vision of Autonomic Computing.” IEEE Computer Vol. 36(1): 41-50 (2003) (Shivam)
-- P. Oreizy, N. Medvidovic, and R. Taylor. "Architecture-Based Runtime Software Evolution." 20th International Conference on Software Engineering, Kyoto, Japan, April 1998. (Homam)
-- Project discussion
-- Teams
Week 6        Oct.    3            
-- No lecture
-- Meet with your team

Week 7        Oct.    11 (meets on Tues)       Self-Management and Quality of Service   
-- J. Kramer, and J. Magee. "Self-Managed Systems: an Architectural Challenge." International Conference on Software Engineering, Future of Software Engineering Track, Minneapolis, MN, May 2007. (Alan)        
-- V. Cardellini, E. Casalicchio, V. Grassi, F. L. Presti, R. Mirandola. “QoS Driven Runtime Adaptation of Service-Oriented Architectures” European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software on Engineering (ESEC/FSE), Amsterdam, Netherlands, August 2009. (Christina)
-- Project discussion

Week 8        Oct.   17       Service Description, Discovery, Selection, and Deployment
-- UDDI, WSDL, and SOAP using an example (Brian)
-- D. A. Menasce, E. Casalicchio, V. Dubey. "A Heuristic Approach to Optimal Service Selection in Service-Oriented Architecture." ACM Workshop on Software and Performance (WOSP 2008), Princeton, NJ, June 2008. (Kyle)
-- S. Malek, N. Medvidovic, and M. Mikic-Rakic. "An Extensible Framework for Improving a Distributed Software System's Deployment Architecture." accepted to appear in IEEE Transactions on Software Engineering. (Malek)

Week 9        Oct.    24       Security, Trust, and Coordination     
-- E. Yuan, and J. Tong. Attributed Based Access Control (ABAC) for Web Services. IEEE International Conference on Web Services, Orlando, Florida, July 2005. (Eric)
-- E. Michael Maximilien, M. P. Singh. "Toward Autonomic Web Services Trust and Selection." 2nd International Conference on Service Oriented Computing, New York, NY, 2004. (Len)
-- BPEL: Business Process Execution Language using an example (Nancy)  

Week 10        Oct.    31      Midterm Project Presentation
Linus + Anwara + Sameeksha
Nancy + Alan

Week 11        Nov.    7       Midterm Project Presentation
Shivam + Romil + Swapnil
Len + Brian

Week 12        Nov.    14         Coordination Cont. and Composition    
-- C. Peltz. "Web Services Orchestration and Choreography." IEEE Computer, vol 36, no 10, Oct 2003. (Sunitha)
-- C. Pautasso, T. Heinis, and G. Alonso. "Autonomic Execution of Service Compositions." Int'l Conf. on Web Services (ICWS 2005), Orlando, Florida, July 2005. (Swapnil)
-- ESB: Enterprise Service Bus using an example (Anwara)

Week 13        Nov. 21        Service Composition Cont.
-- BPMN: Business Process Modeling Notation using an example (Linus)
-- I. Yen, H. Ma, F. B. Bastani, H. Mei. "QoS-Reconfigurable Web Services and Compositions for High-Assurance Systems." IEEE Computer, Aug 2008. (Alvin)
-- L. Zeng, B. Benatallah, A. H. H. Ngu, M. Dumas, J. Kalagnanam, and H. Chang. "QoS-Aware Middleware for Web Services Composition." IEEE Transactions on Software Engineering, vol. 30, no. 5, May 2004. (Sameeksha)

Week 14        Nov.    28           Monitoring and Testing    
-- G. Denaro, M. Pezze, D. Tosi. “Ensuring interoperable service-oriented systems through engineered self-healing.” 7th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2009, Amsterdam, The Netherlands, August 24-28, 2009.  (Romil) 
-- F. Raimondi, J. Skene, W. Emmerich. "Efficient Online Monitoring of Web-Service SLAs." International Symposium on the Foundations of Software Engineering (FSE 2008), Atlanta, GA, Nov. 2008. (Kaveh)
-- O. Moser, F. Rosenberg, S. Dustdar. "Non-Intrusive Monitoring and Adaptation for WS-BPEL." 17th International World Wide Web Conference (Web Engineering Track) (WWW'08), 21-25. April 2008, Beijing, China. (Xuefeng)   

Week 15        Dec.    5        Final Project Presentation 1
Shivam + Romil + Swapnil

Finals Week            Dec. 12           Final Project Presentation 2 (room 4801, Engineering building, 4:30-7pm)
Nancy + Alan

Finals Week            Dec. 19           Final Project Presentation 3 (in class, as scheduled, 4:30-7pm)
Sameeksha + Anwara + Linus
Len + Brian


Professor                    Dr. Sam Malek

                                    Electronic Mail:

                                    Office: 4431, Engineering Building

                                    Office Phone: +1-703-993-1677

                                    Office Hours: Mon 2-4pm or by appointment


This course covers the state-of-the-art approaches to building dependable Service-Oriented Architecture (SOA) software systems. Additionally, the shortcomings of the current approaches are identified, and open research topics and avenues for future advancement are discussed. The course is geared towards advanced MS or PhD students that are interested in gaining an in-depth knowledge of SOA systems and related topics. A variety of topics will be covered in the context of SOA systems, including Software Architecture, Quality of Service, Analysis, Autonomic Computing, Monitoring, and Coordination. The course will be conducted in seminar fashion. The students are expected to energetically participate in the discussions. The students are also expected to work on either an implementation project or a research topic of interest and report on their progress throughout the semester.  


  1. MS student with advanced standing or PhD student

  2. Good knowledge of software engineering, design, object-oriented programming, distributed systems, and web technology (e.g., XML)


Textbook and Readings

  1. SOA Principles of Service Design, Thomas Erl, Prentice Hall (optional)

  2. Supplemental papers (see the schedule below)


  1. Paper, concept, technology presentation (15%) - Other than papers and concepts covered by the instructor, one (or more depending on the size of class) student leads the discussion of paper or concept in the class. PhD students are expected to present a research paper, while MS students have the choice of selecting either a research paper or a concept/technology for their presentation.

  2. Class participation (10%) - All students are expected to read all of the papers and participate in the class discussions. Students who do not participate in the discussions, and students who miss (or sleep through) classes will not receive credit for this portion of the grade. Shyness or lack of English proficiency are not excuses.

  3. Quizzes (25%) - Several short quizzes will be given for the readings assigned each week. Each student will be allowed to drop the lowest quiz score during the semester.

  4. Project (50%) - Students are expected to work on a project involving research, programming, or ideally both throughout the semester. The project grade is based on the mid-term/final presentation, final paper, and demo.