COM3240 - Component-Based Programming

Winter Quarter, Jan 4 - Mar 14, 2000
Tuesdays, 6:00-9:00 P.M.

Bookmark this page as http://www.ccs.neu.edu/home/lorenz/com3240.html.

[ English | Français | Deutsche | Español | Português ]

Instructor

David H. Lorenz
111 Cullinane Hall, College of Computer Science,
Northeastern University, Boston, MA 02115
Internet: lorenz@ccs.neu.edu
TA/Grader: Predrag Petkovic

Required Textbook

The main source of information is:
Clemens Szyperski
Component Software - Beyond Object-Oriented Programming
Addison-Wesley / ACM Press, 1998 (411 pages)
ISBN 0-201-17888-5

The textbook discusses components from a number of technical and non-technical perspectives.  The readings from this book will be supplemented with more focused readings on the Java Beans component technology.  In addition, we will read a number of papers related to component technology that will be distributed in class.

Book Cover

Software Development Product Excellence Best Book Award.

Required Software

Students will receive a CD with the following software: (license issues in review, students may need to download a copy directly and sign the agreement.)
Goals. The goals of the course are:

Course Structure. About one-third of the time would be spent on advanced OO concepts; another third would be devoted to Java and Sun's component model in detail; and the last third on selected papers related to component technology.
The programming assignments will give students hands-on experience programming components in Java and Java Beans, and using component development environments. Students will learn how to:

Guest Lectures. Two guest lectures will be given, one on CORBA (by OMG) and the other on COM (by Microsoft).

Requirements. The course will consist of readings, programming assignments, two exams, and a final project (no final exam). Students will be required to write Java and Java Beans programs applying the latest features of Java 2.

Content. Concepts of object-oriented programming that form the basis for components (e.g., generic programming, programming by contracts, programming with metaclasses.) Software architecture for supporting components (e.g., implicit invocation, filters, reflection.) Theoretical foundations of components (e.g., aspect-oriented programming, subject-oriented programming, environmental acquisition.) Concrete realizations of components in some industry standards (e.g., JavaBeans, EJB, CORBA, COM/DCOM.) Selective topics in component research. The students will do a project where some creation, deployment, and evolution methods of software components are applied.

Prerequisites

Basic understanding of OO concepts.
COM3230 Object-Oriented Design (or by permission of instructor)

Handouts

Related courses and events at Northeastern University

Software


 D. H. LorenzLast Modified: $Date: 2000/02/17 05:52:30 $