Download presentation
Presentation is loading. Please wait.
1
The Need for Packages How do you break down a large system into smaller systems? Structured methods use functional decomposition Functions represent something that the system did Data was structured separately from functions Object oriented analysis requires a grouping mechanism for classes.
2
Packages If the class diagram become large, it will be quite difficult to use for an overview of the system. In such cases it might be necessary to create a high-level view of the system, using some kind of partitioning or clustering scheme. Clustering can be done after the initial model is produced to facilitate presentation and further work, or beforehand to allow for division of work between workgroups from the outset. UML calls these clusters packages and provides a modeling notation called the package diagram.
3
Packages Package can be applied to any model element – not just classes. Dependencies provide the key relationship between packages
4
Dependency One class relies on the specification of another class Using – One class uses the services (operations, methods) of another class Delegation – One class delegates part of its responsibilities to another class The art of large scale design involves minimizing dependencies.
5
Packages
6
Dependency A dependency between two packages exists if any dependency exists between any two classes in the packages. Dependencies are not transitive: if package A depends on B and package B depends on C then package A does not depend on C. Similar to semantics of Java import behavior but not that of the C/C++ includes behavior.
7
Physical Diagrams Deployment diagram Shows the physical relationships among software and hardware components in the delivered system. Shows how components and objects are routed and move around in a distributed system Contains nodes – some kind of computational unit Connections among nodes show the communication paths over which the system will interact.
8
Physical Diagrams Component diagram Shows the various components in a system and their dependencies. A component is a physical module of code. A component is often the same as a package. But could be different, since components represent the physical packaging of code Dependencies show how changes to one component may cause other components to change. Communication Compilation
9
Combining the physical diagrams
10
When to use Physical Diagrams Whenever physical information is shown separate from the associated logical information. At least one diagram should be drawn that shows nodes and major components. Use pictorial icons (stereotypes) for servers, PCs, and databases to make the diagram easier to understand.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.