Definition of a software component (entire chapter)
Software life cycle (also see link)
What is gap fulfilment?
Component Models and Component Services (entire chapter)
UML (purpose and examples of each kind of diagrams)
A summary of UML diagrams (pay special attention to deployment diagrams)
I can ask you to provide UML digrams for a small design problem (see example)
How to make a business case? (I will provide the formulas, but you need to know how to do the math) What is TCO?
What are the three types of components? What is a wrapper?
Operational readiness. How to organize a component infrastructure
What is a component? What is an interface?
UML Class Diagrams for representing Subsytems and Interfaces (also subsequent five pages)
What is a software component infrastructure?
What is a component stereotype?
Granularity, fine grained, coarse grained (also see link to stepwise refinement)
What interface? What is a connector?
What are the common styles of software architecture? What are they used for?
How does everything fit together?
Continuous integration (related slides)
Configuration management: study the example of Visual Component Manager
The Traditional CORBA Object Model
CORBA Component Model (CCM). Concept of the CCM container. What is its purpose?
The comparison chart between COM and CORBA
What are context and causality?
COM+ philosophy: attribute-based programming
Enterprise Java Beans (Compare with CORBA design philosophy. What are common and what are different)
GNOME (Compare with other approaches)
Why Use a Middle-Tier Component Model Implementation?
What are software agents? Different type of agents?
What is certification? Why is certification important?
The following are topics covered after the midterm.
The final exam will place more emphasis on topics covered after the midterm.
Agile methodology (the entire chapter)