An Introduction to UML COMS 103 section 4 11 January, 1999
Overview What do programmers do? Why is design important? What are the challenges of design? An introduction to UML
What do programmers do? Assess the existing situation Understand the problem Understand the customer’s vision Create a model of a solution Design the details of the solution Implement the solution Support and maintain the solution
Why is design important? A crucial link to the customer. A map for development and implementation efforts. Change costs increase throughout the software lifecycle. Good design prevents coding errors.
Why is design so difficult? Looking for the forest Even simple design can be difficult to describe. Communication with other team members can be complex. What we need: a standard way of capturing object-oriented software designs. The current answer: UML
An Introduction to UML Unified Modeling Language A graphical method of representing classes and their inter-relationships. Design-support tools for UML are available
Showing a class in UML ClassName variables methods
Relationships between classes Associations - either class can exist without the other. Dependency - a client and a supplier Aggregate - existence-dependant relationship
Association Department Employee WorksFor 1 N
Dependency Department Employee WorksFor 1 N Schedule
Aggregate Employee Dependant 1 N