Microsoft defines service oriented architecture as "the art of modeling
an organization's business processes, as a well-factored portfolio of
network-addressable business components."
In this course, we will study service oriented architecture from both an
architectural and development perspective. We will discus principles
and patterns but also study how these may be implemented in a modern
In particular we will cover the principles of service oriented analysis and
design, second generation web service standards, enterprise service bus (ESB)
functionality and web service orchestration using the Business Process Execution Language
(BPEL). There will also be a theoretical piece covering Petri nets.
The hands-on component of this course will include programming activities using
Oracle’s SOA Suite of tools.
A long the way the students will have the opportunity to study a high level
reference architecture built by IBM for CMU.
It will be assumed that the student has completed or is completing a course
in distributed systems that covers web services. It will also be assumed that
the student can program in Java or C#.
Suggested Prerequisite: 95-702 Distributed Systems