CS 545 - Component Based Software Design
Course Description: This course covers the
modern component based software design approaches including the Component
Object Model (COM/COM+), CORBA, Enterprise Java Beans and Dot Net technologies.
It starts with an in-depth look at the infrastructure of COM components
presenting concepts of class factories, interfaces (standard and custom),
in-proc and local server components, IDL, type libraries, proxy/stubs and
marshalling, automation and the IDispatch interface, structured storage and
ActiveX controls. The distributed form of COM referred to as DCOM and its
newest form known as COM+ which integrates the transaction and queuing
capabilities are explained. A comparison to the CORBA technology is made by
explaining its architecture and remoting capabilities. Then Enterprise Java
Beans are covered including entity and session beans with transaction and
messaging capabilities. A comparison of COM+ and EJB architectures is carried
out from performance and scalability point of view. Finally the design of
enterprise applications using the Dot Net technology is explored.
3 semester hours.
Prerequisites:
CS440 – Windows Programming.
Prerequisites
by Topic:
1.
Good background in C++ programming.
2.
Some knowledge of Windows programming.
3.
Some knowledge of Java programming.
Reference Books:
Instructor:
Ausif
Mahmood, Ph.D.
Professor, Computer Science and
Engineering,
University of Bridgeport, CT 06601.
Phone: (203) 576-4737, email: mahmood@bridgeport.edu
TOPICS:
1. COM
basics
Interfaces
(IUnknown, IClassFactory and Custom Interfaces),
GUIDs,
Class factories, Registry and the COM system
2. In-Proc
and Local Servers
IDL,
Type libraries, Proxy/Stubs and Marshalling
3.
Automation and the IDispatch Interface
4.
Multithreading models as applied to COM
5.
Connection points and ActiveX Controls
6. DLL
Surrogates
7. Executable
Components on Remote Machines
Marshalling
for DCOM (Standard, Type Library and Custom)
8. COM+
Architecture
COM+ Deployment
services, transactions and queued components,
object pooling,
dynamic load balancing, loosely coupled events,
COM+ security.
9.
CORBA fundamentals
CORBA
IDL, stubs and skeletons, object transaction service,
security
service, object management.
10. Enterprise
Java Beans
Entity and session
beans, implementing transactions, security and messaging.
11. Dot
Net for Enterprise Applications
Creating web services,
shared assemblies, importing, exporting COM and .Net components.
Assignments and Projects: Weekly assignments. One major project involving COM+, EJB and Dot Net technologies.
Grading: Midterm Test – 25 % of the grade
Final Exam - 40% of the grade
Assignment – 15% of the grade
Project – 20% of the grade