Winter
2011/12 | Middleware Platforms (half-course, 4VL + 2 PR)
VL: Die+Do, 11:00-12:30, RUD 26, 1'303,
Prof.
Jens-Peter Redlich, Dr. Zubow
UE: Die, 09:15-10:45, RUD 26, 1.303, Robert Sombrutzki
UE: Do, 13:15-14:45, RUD 26, 1.303, Robert Sombrutzki | Computer Science Department Systems Architecture Group
|
Prüfungskomplexe finden Sie >>
hier <<
| Abstract: Middleware provides a standardized infrastructure for distributed computing. It comprises standardized programming APIs, augmented by a set of core services that make it possible to develop and execute distributed applications in heterogeneous environments. The primary objectives of middleware are to foster application portability and application interoperability. Middleware is, roughly speaking, the software below the application and above the operating system / network. Common middleware platforms include,
Java-RMI, CORBA, CORBA Components, and Java Beans.
| Synopsis:
- Half-Course, Praktische Informatik, Hauptstudium/Masterstudium.
- Offered regularly, usually in fall, at least once every two
years.
- 2 lectures per week, over one semester
(4SWS VL + 2SWS PR).
- Prerequisites: PI 1,2,3; basic knowledge in computer networks (TCP/IP),
Java, XML.
Credits and grading: - Oral examinations are offered by the instructor at the end of the semester, and at the beginning of the following semester.
- To qualify for the examination, students have to
complete lab assignments to the satisfaction of the teaching assistant.
Lab (Praktikum):
- Labs are scheduled every 2 weeks at the time and place
specified above. A teaching assistant will be present at each lab to assist
students with questions and problems.
- Participation (physical presence) at the lab is mandatory
in order to obtain credits for the assignment.
- A lab worksheet will be published on this web site a few
days before the corresponding lab is scheduled (usually Friday). Students
should use this time to adequately prepare for the lab.
- Results have to be submitted via GOYA
for grading. Submission deadlines are specified on the worksheets (usually
14 days after the assignment was published).
- Worksheets: [lab1],
[lab2], [lab3], [lab4],
[lab5], [lab6]
- Slides: [lab1],
[lab2], [lab3], [lab4],
[lab5], [lab6]
- Deadlines:
Syllabus:
|
A. Introduction |
|
- Admin Info
- Motivation
- Client Server Model, Variations, Objects
- Design Patterns
- Inter Process Communication / Network
Communication (optional)
|
W. R. Stevens. UNIX Network
Programming, The Sockets Networking. 2004.
ISBN 013490012X |
|
|
B. Java Remote Method Invocation (RMI) |
|
- Programming model
- Remote Interfaces and Remote Objects
- Architecture
- Parameter passing
- Failure handling
- Naming
- Development Process
|
|
C. CORBA (Common Object Request
Broker Architecture) |
|
- CORBA Architecture Overview
- Hello World in CORBA
- ORB Architecture
- CORBA IDL
- Interoperability
- Common Object Services
- CORBA Component Model (optional)
|
informational slides - not
presented in class |
|
Jens-Peter Redlich. Corba 2.0. Praktische
Einführung für C++ und Java.
ISBN
3827310601 |
|
Jon Siegel. CORBA 3 - Fundamentals and Programming.
ISBN
0471295183 |
|
|
D. Enterprise Java Beans (EJB) |
|
- Introduction
- Component Models
- Architectural Overview
- Primary Services
- Development
- Persistence
|
Basic Persistence,
pdf |
|
O/R Mapping,
pdf |
|
Entity Relationships,
pdf |
|
Entity Inheritance,
pdf |
|
Query Language,
pdf |
|
Entity Callbacks,
pdf |
- Session Beans
- Message-Driven Beans
- Transactions
- Web Services
- EJB 3.1
|
EJB Specification, 3.0,
http://java.sun.com/javaee/5/docs/api/index.html |
|
EJB
Specification, 2.1,
http://java.sun.com/products/ejb/docs.html |
|
Enterprise JavaBeans 3.0 by B. Burke, R. M.-Haefel, Covers EJB
3.0, ISBN 0-596-00978-X
|
|
Enterprise JavaBeans by Richard Monson-Haefel,
Covers EJB 2.1, O'Reilly, 2004, ISBN 0-596-00530-X
|
|
Java Message Service by R. Monson-Haefel, D.
Chappell, O'Reilly, ISBN 0-596-00068-5 |
|
Java RMI by W. Grosso, O'Reilly, 2002, ISBN
1-565-92452-5 |
|
|
E. Microsoft .NET |
|
- .NET Framework
(Overview)
- CRL
- Assemblies
- .NET Remoting
- .NET Security
|
| |
|