- Forward


Packaging
for Detailed Design


Prof. David Bernstein
James Madison University

Computer Science Department
bernstdh@jmu.edu

Print

Overview
Back SMYC Forward
  • The Package Concept
  • Packages in UML
  • Identifying/Creating Packages
  • Example
Packaging
Back SMYC Forward
  • The Concept:
    • Group/organize components
  • The Rationale:
    • "Chunking"
    • Provide a higher-level view (abstraction)
    • Increase cohesion
    • Reduce coupling
    • Have an organizational role similar to directories/folders
Packages in UML
Back SMYC Forward
  • Packages define a namespace
    • Two packages can contain components with the same name
    • Package names can be prepended to class names (e.g., Plant::Leaf and Hierarchy::Leaf)
  • Every element belongs to a package
    • The highest level package is the root package
  • Packages can contain other packages
    • java::awt contains java::awt::event
Packages in UML (cont.)
Back SMYC Forward
  • Basic Notation:
    • package1
  • Dependencies:
    • package4
Packages in UML (cont.)
Back SMYC Forward
  • Imports:
    • Use a stereotyped dependency
    • package2
  • Global Packages:
    • package3
Identifying/Creating Packages
Back SMYC Forward
  • Components with a common purpose
  • Components that participate in the same use cases
  • Components that are strongly associated
An Example: Some Java Packages
Back SMYC Forward
javapackages
An Example: Packages in IVANA
Back SMYC Forward
ivana_packages1
An Example: Packages in IVANA (cont.)
Back SMYC Forward
ivana_packages2
There's Always More to Learn
Back -