CS1631 Software Design Methodology
COMPONENT DEFINITION
Definition of a software component (C1)
The component industry metaphor (C2)
Component models and services (C3)
(Prerequisites: Please also study Data Flow Diagram and
Petri net)
VISUAL MODELING WITH UML
(Please download ArgoUML, and
read the book, Visual Modeling with Rational Rose 2002 and UML)
Exercise 1 (due dates)
An Example specification (C4)
THE CASE FOR COMPONENTS
The business case for components (C5)
Project I/II Discussion:
The Virtual Classroom
Exercise 2 (due dates)
Project I/II Discussion: Standard interface for the Virtual Classroom
Exercise 3 (due dates)
THE DESIGN OF SOFTWARE COMPONENT INFRASTRUCTURES
Software components and the UML (C14)
Component infrastructures (C15)
Project I Discussion: The Chronobot
and presentation on Chronobot.
To do the project, please use chronobot web service.
Project II Discussion: Personal HealthCare System
Business components (C16)
Components and connectors (C17)
Exercise 4 (due dates)
An OPEN process for component-based development (C18)
SOFTWARE SYSTEMS
Software architecture (C20)
Software architecture design principles (C21)
COLLABORATION TECHNOLOGIES
Midterm Review
Midterm (see the calendar for dates)
Project I Discussion:
The generic project that all components must fit in.
(See examples of projects for class of 04 and
projects for class of 06)
Project II Discussion: How to design an ontology knowledge-base
THE MANAGEMENT OF COMPONENT-BASED SOFTWARE SYSTEMS
Measurement and metrics for software components (C23)
Configuration management (C29)
Week 10: (see the calendar for dates)
SERVICE ORIENTED ARCHITECTURE SOA AND WEB SERVICES
COMPONENT TECHNOLOGIES
CORBA Basic Concepts with Programming Example
and More Details (C31)
Project Milestone I to define messages for interface
Week 11: (see the calendar for dates)
Basic Concept of Slow Intelligence Systems
COM/COM+/.NET Basic Concepts (C32)
and Programming examples (C32a)
JavaBeans (C33)
(see http://www.jsptut.com/ for a JSP tutorial)
Week 12: (see the calendar for dates)
Project Milestone II to test your component
GNOME (C34)
Choosing between COM+, EJB, and CCM (C35)
Week 13: (see the calendar for dates)
Software agents (C36)
CONCLUSION
Summary (C41) and future of CBSE (C42)
Final Review
Week 14: (see the calendar for dates)
Project Demos and Presentations (see the calendar for dates) [Every group must give a live demo OR a presentation]
Final Exam (see the calendar for dates)
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)