CS3650 Visual Languages and Programming
Week 1: (dates)
COMPONENT DEFINITION
Definition of a software component (C1)
The component industry metaphor (C2)
Component models and services (C3)
Week 2: (dates)
VISUAL MODELING WITH UML
An Example specification (C4)
THE CASE FOR COMPONENTS
The business case for components (C5)
Exercise 1 (due dates)
Week 3: (dates)
THE DESIGN OF SOFTWARE COMPONENT INFRASTRUCTURES
Software components and the UML (C14)
Component infrastructures (C15)
Project Discussion: The Virtual Classroom
Exercise 2 (due dates)
Week 4: (dates)
Project Discussion: The Chronobot
Time/Knowledge Exchange Protocol
Project Discussion: Standard interface for the Virtual Classroom
Exercise 3 (due dates)
Week 5: (dates)
Business components (C16)
Project Discussion: Use Virtual Classroom to discuss term project
Week 6: (dates)
Components and connectors (C17)
An OPEN process for component-based development (C18)
SOFTWARE SYSTEMS
Software architecture (C20)
Software architecture design principles (C21)
Exercise 4 (due dates)
Week 7: (dates)
THE MANAGEMENT OF COMPONENT-BASED SOFTWARE SYSTEMS
Measurement and metrics for software components (C23)
Configuration management (C29)
COMPONENT TECHNOLOGIES
CORBA (C31)
and a simple example
Week 8: (dates)
COM+ (C32)
and more examples
JavaBeans (C33)
Week 9: (dates)
GNOME (C34)
Choosing between COM+, EJB, and CCM (C35)
Project Milestone I to define messages for interface (dates)
Midterm Review (dates)
Week 10: (dates)
Midterm (dates)
Project Discussion: Use Virtual Classroom to discuss term project (dates)
Week 11: (dates)
Patterns
Week 12: (dates)
Project Milestone II (dates) to test your component using the
remote control (Java version, please download and unzip).
Please read the tutorial on how to use the remote control.
A C++ Interface for the components (works with the Remote Control 1.0) is provided,
which has been tested with GNU's g++ compiler on elements machines.
Software agents (C36)
CONCLUSION
Summary (C41) and future of CBSE (C42)
Week 13: (dates)
Project Demos and Presentations
Week 14: (dates)
Project Demos and Presentations
Final Thought:
The master programmer moves from program to program without fear. No
change in management can harm him. He will not be fired, even if the project
is canceled. Why is this? He is filled with the Tao.
-- Geoffrey James, The Tao of Programming
Note: The chapters C1, C2, and so on, refer to the book,
Component Based Software Engineering: Putting the Pieces Together,
by George T. Heineman and William T. Councill,
Addison-Wesley Pub Co; 1st edition, June 8, 2001,
ISBN: 0201704854.
(Hardcover 818 pages,
List Price: $54.99,
used books from $15.19. Order from amazon.com)