140 likes | 299 Views
Teaching Object-Oriented Systems Analysis and Design with UML. Robert V. Stumpf rvstumpf@csupomona.edu Lavette C. Teague lcteague@csupomona.edu Computer Information Systems Department California State Polytechnic University, Pomona Pomona, California 91768, USA. 1. OUTLINE.
E N D
Teaching Object-OrientedSystems Analysis and Design with UML Robert V. Stumpfrvstumpf@csupomona.edu Lavette C. Teague lcteague@csupomona.edu Computer Information Systems DepartmentCalifornia State Polytechnic University, PomonaPomona, California 91768, USA
1. OUTLINE • Fundamental concepts of object-oriented analysis. • Fundamental concepts of object-oriented design. • Teaching strategies. • Significant literature. • Conclusions. By Robert Stumpf
FUNDAMENTAL CONCEPTS OF OBJECT-ORIENTED ANALYSIS • 2.1 How Object-Oriented Analysis Is Like Structured Analysis • Event Analysis. • Distinction Between Logical and Physical Models. • Distinction Between Analysis and Design. By Robert Stumpf
FUNDAMENTAL CONCEPTS OF OBJECT-ORIENTED ANALYSIS • 2.2 How Object-Oriented Analysis Differs from Structured Analysis • Use Cases for Requirements Specification. • System Sequence Diagrams for Interaction between the System and Its Environment. • Contracts for the Specification of System Operations. By Robert Stumpf
FUNDAMENTAL CONCEPTS OF OBJECT-ORIENTED DESIGN • 3.1 How Object-Oriented Design Is Like Structured Design • Layered System Architecture. • Coupling and Cohesion as Design Criteria. • Specification of Operations as a function. By Robert Stumpf
FUNDAMENTAL CONCEPTS OF OBJECT-ORIENTED DESIGN • 3.2 How Object-Oriented Design Differs from Structured Design • Objects as the Units of Program Structure. • Peer-to-Peer vs. Hierarchical Communication. • The Use of Design Patterns. By Robert Stumpf
TEACHING STRATEGIES • 4.1 Teaching Strategies for Analysis • Capture the Content of the Inputs in the Expanded Use Case Narratives. • Construct the Domain Model One Use at a Time. • Express the Contracts in Terms of the Domain Model. • Make Java programming a prerequisite. By Robert Stumpf
TEACHING STRATEGIES • 4.2 Teaching Strategies for Design • Use Patterns to Produce the Collaboration Diagrams One Use Case at a Time: • Façade, • Expert, • Creator. • Create the Sequence Diagram from the Collaboration Diagrams. • Create the Class Diagram from the Sequence Diagram. By Robert Stumpf
SIGNIFICANT LITERATURE • 5.1 Classics of Structured Analysis and Design: • McMenamin (1985) • Yourdon (1989) • Page-Jones (1980) • Page-Jones (1988) • Teory (1986) By Robert Stumpf
SIGNIFICANT LITERATURE • 5.2 The Object Paradigm: • Taylor (1998) • 5.3 UML: • Fowler (2004) • Rumbaugh (2005) By Robert Stumpf
SIGNIFICANT LITERATURE • 5.4 Textbooks for Object-Oriented Systems Analysis and Design: • Dennis (2005) • Larman (2005) • George (2004) • Stumpf (2005) • More Advanced Treatments: • Page-Jones (2000) • Pooley (1999) • Richter (1999) By Robert Stumpf
CONCLUSIONS • Teaching object-oriented systems analysis and design with UML is perhaps not as difficult as some IS faculty fear. • Students should work with one use case at a time when building UML models. • Developing design models requires a basic understanding of object-oriented software. By Robert Stumpf
CONCLUSIONS • While industry has moved to object-oriented software development, information systems faculty have been slow to incorporate object-oriented analysis and design into the curriculum. • Doing so would improve the currency of IS faculty and students and enhance the marketability of IS graduates. By Robert Stumpf
Questions • Thank you, • Robert V. Stumpf rvstumpf@csupomona.edu • Lavette C. Teague lcteague@csupomona.edu • Computer Information Systems DepartmentCalifornia State Polytechnic University, PomonaPomona, California 91768, USA By Robert Stumpf