CS504070 – Enterprise Service-Oriented Architecture

Introduction

  • This course serves as an introduction to the notion of Service Oriented Architecture (SOA) and its most fundamental building block: the service. It strives to provide participants an understanding of the major concept and principles underlying SOA, such as abstraction, coupling, reusability, discoverability, interoperability, and composition. It illustrates how systems and solutions can utilize SOA to enable increased business flexibility and responsiveness to marketplace challenges and opportunities.
  • Participants will develop a solid understanding of service orientation and learn how to design services for SOA in an enterprise. The course provides participants not only with the big picture, but also with a foundation for applying directly the tools, processes, and methods to design cases.
  • Web Services, which provide the most well-known technology platform for realizing SOA such as Amazon Web Services, will be introduced as part of the course. Participants will also have an opportunity to participate in hands-on practice sessions on designing and implementing services.

Announcement

  • Register group and final project topic at this form by 9-Jan-2019.

Syllabus

  • Week 01 – Chapter 00 [PDF]
  • Week 02 – Chapter 01 [PDF]
  • Week 03 – Chapter 02 (con’t) [PDF]
  • Week 04 – Chapter 03 [PDF]

Books

  • Nicolai M. Josuttis, [2007], SOA in Practice: The Art of Distributed System Design, O’Reilly Media
  • Thomas Erl, [2007], SOA: Principles of Service Design, Prentice Hall
  • Thomas Erl, [2005], Service-Oriented Architecture (SOA): Concepts, Technology, and Design, Prentice Hall
  • Dirk Krafzig, Karl Banke and Dirk Slama, [2004], Enterprise SOA: Service-Oriented Architecture Best Practices, Prentice Hall
  • Thomas Erl, [2014], Next Generation SOA: A Concise Introduction to Service Technology & Service-Orientation, Prentice Hall
  • Thomas Rischbeck, Thomas Erl, [2009], SOA Design Patterns, Prentice Hall
  • Jose Sandoval, [2009], RESTful Java Web Services, Packt Publishing, USA
  • Mark Hansen, [2007], SOA Using Java™ Web Services, Prentice Hall, USA
  • Chris Richardson, Floyd Smith, [2016], Microservices – From Design to Deployment, NGINX, Inc.
  • Chris Richardson, [2019], Microservices Patterns With Examples In Java, Manning Publications Co.

Demo & Software

  • XAMPP 5.6.39 [Windows 32-bit | MacOS 64-bit]
  • Eclipse IDE for Java EE Developers 2018-12 [Download]
  • Demo #1: Java libraries (apache-tomcat-8.5.37, jaxrs-ri-2.27) [Download]
  • Demo #2: Connect to DB and how-to implement a secure sign-in service. [Download]
  • Demo #3: Log-in service – The download file includes: Webpage (PHP & HTML), Java programs, a DB backup file. [Download]

Policies

  • Assignment and final project must be submitted by the due date. No late submission will be accepted. All members of each group must submit the work also.
  • About collaboration, you may discuss with other students on the review reports. However, you must write up the reports on your own independently.
  • You need to be honest in all academic work and understanding that failure to comply with this commitment will result in disciplinary action.