状態図は、状態マシンを視覚的に表現した図です。この図には、オブジェクトの存在期間中、イベントに反応してそのオブジェクトが示す状態遷移のシーケンスと、それらのイベントに対するそのオブジェクトの反応を指定する動作が示されます。
状態図はシステムの動的ビューであり、特定のコンポーネントの状態がどのように変化するかを非常に詳細に表しています。状態とは、オブジェクトの特定の属性に関連付けられた値のことであり、属性の値が変化したときに発生するアクションまたは副作用のことです。
状態図が使用されるのは、開発者がリアルタイムプロセス制御アプリケーションや並行プロセスを含むサブシステムで作業を行う場合、あるいは、開発者が複数のユースケースにまたがるクラスの動作を表す必要がある場合です。