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