Instructor: Prof. Hans-Arno Jacobsen [ Contact Information ] Office hours: Catch me right after class, or by appointment. Room: GB 248 (occassionally in Lab BA2128, see below) Time: Thursday 3:30 PM - 5:30 PM Textbook: Research papers et al. Previous years: 2005, 2004, 2003, 2002, 2001.
A "middleware system" (a.k.a. computing infrastructure) constitutes a set of services that aim at facilitating the development of distributed applications in heterogeneous environments. The primary objectives of middleware are to foster application portability, distributed application component interoperability, and facilitate software component integration. At least conceptually, the "middleware layer" comprises a layer below the application and above the operating system and network substrate. Common middleware platforms include CORBA, DCOM, Java RMI, J2EE, MQSeries, MSMQ, and Web Services.
Other than in previous years (see 2003, 2002, and 2001.), this course constitutes an introductory-level course aiming to discuss middleware trends around Service-oriented Architectures and Web services.
This course targets advanced undergraduate students and graduate students. The course is less research-oriented than in previous years and more oriented towards covering current middleware trends in industry.
The following constitutes a tentative outline of the course.
Take away: Definition of SOA
Slides: Slides
Reading material: SOA Foundation Paper
Reference material: TBD
Take away: Importance and benefits of standards
Reading material: TBD
Reference material: TBD
Take away:Application integration patterns
Slides: Slides
Reading material: Blue Book (Ch. 1 and Ch. 4, only
Reference material: Remaining chapters of blue book.
Take away: J2EE runtime environment
Slides: Slides
Reading material: Reading
An excerpt (chapter 2) from the book called "Building J2EE Applications with the Rational Unified Process". This excerpt was made available by permission from Addison-Wesley. See [ Link ]
Reference material: J2EE Spec.
Take away: ESB patterns (also introduce adapter topic)
Slides
Reading material: [ Paper 1 ] [ Paper 2 ]
Reference material: N/A.
Take away: Proposal and Statement of Work
Slides: N/A
Reading material: N/A
Reference material: N/A
Feb 23 Reading Week (no lecture)
Take away: SOA lifecycle (or process integration)
Slides
Reading material: N/A
Reference material: N/A
Take away Security reference architecture for SOA
Slides: Slide set 1 and Slide set 2
Reading material: [ Paper 1 ]
Reference material: TBD
Take away: Current trends
Slides: Slides
Reading material: [ Paper 1 ] and [ Paper 2 ]
Reference material: N/A.
This course constitutes an introductory-level graduate course that aims at discussing industry trends in the middleware space.
The course features three labs/workshops that will expose the student to Web services, BPEL et al. with hands-on exercises.
This course is project-based, i.e., you have to propose and carry out a project that investigates an issue within the scope of middleware systems. A list of suggested topics will be discussed in class.
The guidelines for research projects are as follows:
For your final project write-up you must use the proposed format (cf. ACM proceedings format.) Do not write more than 8 pages in the given format. Note, you may write less, if you are able to express your project results in fewer pages.
Your project report must be of "publishable quality". This means, the presentation should not include typos, not contain too many grammatical errors, etc. It DOES NOT mean that your paper must be ready for publication in a major conference. (Even though this would be a desirable future result, but is not necessary in order to achieve a good result in the course !)
- submit a progress report by e-mail in ASCII (plain e-mail) anytime before TBA - it should contain: - brief and concise description of the problem you are working on - describe your approach - summary of accomplishments so far - next steps - problems encountered and how you anticipate to solve themProject Proposals:
- are due TBA - just send me a plain e-mail with a description - the proposal should include the following points: - problem statement: identify the problem - relevance: state why this is an important problem - related approaches: briefly review what others have done to solve this problem - approach: say what you intend to do to solve the problem - describe anticipated difficulties...
A list of suggested project topics will be distributed in class a few weeks after the beginning of the semester.
The course mark is broken down as follows: