UML Package Diagram
Note
In Object Oriented Software you define interacting classes and sometimes they are related, In video games you have several classes for Combat, movement, and/or dialogue but they are all related to the Player.
A Package groups together software elements that are related either by data, classes or user tasks.
Packages define namespaces for the elements it contains, that is, a Package is named and can organize the named elements of your software into a separate scope.
An element can be uniquely identified in the system by a fully qualified name, based on it's own name and the package that it is in.
Package diagrams are helpful to technical designers as they give a high level look over the system and it shows packages and the dependencies between them, you can create the diagram to organize your completed system into packages or related packageable elements.
Packageable elements can be data, Classes, or even other Packages.
Below is an example of a Package Diagram for a simple video game system:
You can create a package diagram at any stage of development, they adapt and change with the latest version of your software.
Think of package diagrams as another tool in your repertoire for understanding and describing the system you are designing.
When you show a system visually, flaws and inconsistencies become easier to spot.