클래스 다이어그램은 시스템 또는 서브시스템의 청사진입니다. 클래스 다이어그램을 사용하여 시스템을 구성하는 오브젝트를 모델링하고, 오브젝트 간의 관계를 표시하며, 오브젝트가 수행하는 일과 제공하는 서비스에 대해 설명할 수 있습니다.
클래스 다이어그램은 시스템 디자인의 여러 단계에서 유용합니다. 분석 단계에서 클래스 다이어그램은 문제 도메인의 요구사항을 이해하고 컴포넌트를 식별하는 데 도움이 될 수 있습니다. 객체 지향 소프트웨어 프로젝트에서는, 프로젝트의 초기 단계 중에 작성하는 클래스 다이어그램이 코드를 쓸 때 실제 소프트웨어 클래스 및 오브젝트로 종종 변환되는 클래스를 포함합니다. 나중에, 이전 분석 및 개념 모델을 시스템의 특정 파트, 사용자 인터페이스, 논리 구현 등을 표시하는 클래스 다이어그램으로 정제할 수 있습니다. 그러면 클래스 다이어그램이 시스템의 작동 방식, 여러 레벨의 시스템 컴포넌트 간 관계 및 이 컴포넌트를 구현하도록 계획하는 방법에 대해 정확히 설명하는 스냅샷이 됩니다.
클래스 다이어그램을 사용하여 모델의 구조적 기능을 시각화 및 지정하고 문서화할 수 있습니다. 예를 들어, 개발 주기의 분석 및 디자인 단계(phase) 중 클래스 다이어그램을 작성하여 다음 기능을 수행할 수 있습니다.
소프트웨어 개발 주기의 구현 단계(Phase) 중에는 클래스 다이어그램을 사용하여 모델을 코드로 변환하고 코드를 모델로 변환할 수 있습니다.
다음 그림은 단순 클래스 다이어그램의 예제입니다. 이 다이어그램은 장바구니를 표시하는 클래스가 고객, 구매 주문 및 할인 항목을 표시하는 클래스와 관련되는 방식을 보여줍니다.

다음 주제는 클래스 다이어그램의 모델 요소에 대해 설명합니다.