Teaching Enterprise and Service-Oriented Architecture in Practice

Many companies expect their IT developers to understand their business strategy and to specify IT systems that will impact favorably the execution of their business strategy. Enterprise Architecture (EA) and Service-Oriented Architecture (SOA) address these issues. In this paper, we present a course that introduces EA and SOA to undergraduate CS students. The course is based on an immersive problem-based pedagogy coupled with role playing. The goal is to have the students conceptualize the theory out of the practical experience they gain in the course. Their experience is developed through a game in which the student teams manage competing companies, specify and then develop an IT system (using workflow and web-services). The course places an emphasis on the enterprise-wide impact of the IT systems. Through their practice, the students discover some of the important good-practices used in the industry. They also learn a systemic and systematic approach to address enterprise-wide problems.