Instructor: Prof. Hans-Arno Jacobsen [ Contact Information ] Office hours: Catch me right after class, or by appointment. Room: BA 4164 (Thursday) and TBA (Monday, at selected dates only) Time: Thursday 3:00 PM - 5:00 PM Textbook: Research papers et al. Previous years: 2007, 2006, 2005, 2004, 2003, 2002, 2001.
I updated the project proposals section below
Project proposals should follow the SOW Pattern developed by G. Lee in his first lecture. Students should answer all the questions raised in the proposal section on this web site
Monday lectures 3 - 5 pm BA 2175 Bahen Building
15-JAN-07 GB 221 Galbraith Building (Monday, 15th only)
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: Statement of Work and Proposal Writing
Slides: [ Slides ]
Take away: Middleware Definition and Course Overview
Slides: [ Slides ]
Take away: Definition of SOA
Slides: Slides Part 1 Slides Part 2
Reading material: SOA Foundation Paper
Take away: Why Standards?
Slides: [ Slides ]
Take away: Web Services 101
Slides: [ Slides ]
Take away: Application Integration Patterns
Slides: [ Slides ]
Take away: Critical Middleware Design Questions
Slides: None.
Take away: Web 2.0: What's that?
Slides: [ Slides ]
Take away: ESB and ESB Patterns
Slides: Slides Part 1 Slides Part 2
Take away: SOA Euphoria
Slides: None
Take away: Key points about service composition. Key points about Grids.
Slides: Web Service Composition and Grids
Take away: Appliance, XML processing and acceleration
Slides: Slides
Take away: Events and Event-based Applications
Slides: None.
Take away: Supporting application development for sensor-based and RFID-based environments
Slides: Sensor networks RFID
Take away: BPM Big Picture
Slides: Slides
Take away: Publish/Subscribe Paradigm: Use and Design
Slides: Slides
Take away: (1) Middleware with QoS guarantees and (2) middleware abstractions for ad hoc networking environments
Slides: QoS-aware middleware Middleware for ad hoc networks
Take away: Service regisry applications and SCA overview
Slides: Slides , Slides
Take away: Chord DHT and CAN
Slides: Chord CAN
Take away: Business Processes: From Concept to Practice
Slides: Slides Lab Errata
Take away: Business Processes and How They are Developed
Slides: Lab Instructions I
Lab Instructions II
Take away: SOA in the real-world
Slides: Not available. Reading material: Production Topologies
Take away: RUP
Slides: Slides
Take away: Problems and architectures of MPOG
Slides: Slides
Take away: Current Trends and Wrap-up
Slides: Slides
Take away: Overlay Network: (1) Practice adn (2) Research
Slides: Slides (1)
Slides (2)
Agenda & Presenters This is a tentative agenda, subject to change without notice. For updates please watch the course web site. Session 10 - March 22 Case studies Peter Beggs Session 11 - March 29 Rational Unified Process Session 12 April 5 Trends and Directions and Wrap-up Peter Beggs & presenters team Additional Lecture ECE 1770 (April 9th) Course project presentations
This year the course is co-taught with IBM Experts who will outline the latest industry trends, especially as pertaining to Web services and Service-orientation. There are two parts to the course. The first part is comprised of the weekly lectures by IBM Experts and the second part is comprised of the additional weekly lectures by Professor Jacobsen.
This course constitutes an introductory-level graduate course that aims at discussing industry trends in the middleware space (invited lectures held by IBM Experts.)
This course also aims at introducing invariant middleware systems concepts and introducing the student to middleware systems research questions.
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:
The course project may be conducted in groups of two students. In the course project you should demonstrate the ability to do research by solving a small research problem. The emphasis of the project is to apply a solid research methodology from beginning to end. You will learn about what a solid research methodology is in reading and analysis various research papers throughout the course (i.e., for the expert topics and the additional lectures of the course.)
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:
- just send me a ***plain e-mail*** with a description - NO!!! Attachement (will be returned on simply trashed.) - the proposal should follow the Statement of Work (SOW) Pattern introduced by Gordon Lee in his lecture (first lecture) - 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:
The expert topics are topics that you select among a set of topics outlined in the first additional lecture on Monday, January 15th. An expert topic requires you to read a few papers on a specific topic. You will then have to conduct a focused 20 minute presentation on the topic and lead a subsequent discussion of about 40 minutes. Leading a discussion can best be done by preparing a few controversial questions about the reading material and bluntly asking them. Often, it is a challenge to get other students in the class to respond and engage them in the discussion, so prepare for that.
Date, time, and modus operandi to be determined. Often we opt for a 48 hour take-home exam towards the end of the course. The exam poses a little research problem that is to be solved (see past years.) To accommodate part-time students we select a Friday Monday period (i.e., actually longer than 48 hours.) The exam tests whether you can apply the concepts covered in class on a specific and well-defined research question.