Class Diagram Example: Company Structure

Description:

This is a simple class diagram for company structure. This class diagram example shows the objects involved in forming a company structure and their inter-relationships, which involves Company, Department, Office, Employee and Headquarter.

Use this Class diagram template as a starting point to create your own, or click Create Blank to start from scratch.

What is Class Diagram?

Class diagrams provide a structural view of systems which capture the static structure of Object-Oriented systems, or how they are structured rather than how they behave. A class diagram supports architectural design and typically represent the basics of a Object Oriented system. It identifies what classes there are, how they interrelate and how they interact.

A class diagram carries different information depending on the phase of the development process and the level of detail being considered. For example, initially, class diagram reflect the problem domain, which is familiar to end-users. As development progresses, a class diagram moves towards the implementation domain, which is familiar to software developers.

How to draw Class Diagram?

The following guideline should be consider while developing a class diagram -

  • Use meaningful name for a class to describe the aspect of the system.
  • If you are involved in a large organization, it is better to refer to the glossary for existing class for reuse and to avoid it end up to be many variants for similar classes that serve the same purpose in the repository
  • Responsibility (attributes and methods) of each class should be clearly identified only in the detailed design phase and it is not necessary to do it in upfront.
  • Refine and elaborate your class model in just-in-time manner and do not rush every detail in the upfront.
  • You don't have to include all classes in one single class diagram, for example, include only the group of classes that participate in a use case scenarios and no others.
  • Reuse classes by use master view and auxiliary view among different class diagrams.
  • You can also avoid cross relationship link between classes by using auxiliary view of the same class to be appeared within the same class diagram.
  • Package related classes together to enforce software architecture and best practice such as MVC framework.

When to use Class Diagram?

As a sketch:

  • Perform visual modeling rather than lengthy textual description
  • Casually use for illustrate initially ideas develop without the need of upfront requirement documentation
  • Instant revise from code to class diagram to pinpoint a specific problem
  • Used it to visual model to get rough selective ideas just in time whenever needed

As a blueprint:

  • a complete design to be implemented
  • typically done with a proper UML modeling tools

As code engineering:

  • Perform model to code forward engineering
  • Perform code to model reverse engineering
  • Keep code and model in sync by performing round-trip engineering

As data engineering:

  • Design data modeling based on detailed class diagram
  • Reverse class or object wrapper base on database
  • Use database framework such as Hibernate ORM Framework

As Web API generation

  • Generate web API based on Class Diagram such as SWAGGER

Keen to try VP Online?

No limitations, no obligations, no cancellation fees.


Start a Free Trial