ソフトウェアシステムの設計と開発を新たに始める場合、すべての構成要素が最終的にどのようにまとまるかを事前に予測するのは、多くのケースにおいて困難である。とは言うものの、統一モデリング言語(UML:Unified Modeling Language)という手法を開発者や設計者が採用することで、事前に全体像を把握してからプロセス全体の見通しをつけて必要なテクノロジを選択するという作業が、比較的簡単に行えるようになる。 基本的にUMLとは、その名称が示すとおり言語の一種である。この言語は適切なソフトウェア開発工程と併用することにより、ソフトウェアシステムの設計や仕様作成に関する支援システムとして機能する。こうしたプロセスは“モデリング”と呼ばれている。UMLを使うことで、設計者、開発者、管理者、テスタ、デザイナ、ユーザの間で基本情報の共有化が行われ、ソフトウェアモデルを抽象的な形態で構築すること