クライアントサーバモデル
かつてのネットワークでは、メインフレームと呼ばれる大型コンピュータに接続された端末から利用者が操作する形態が中心であった。当時の端末は文字の入力受付と表示を行なうのみの貧弱な処理能力しかなかったため、あらゆる計算はメインフレームによって集中的に処理されていた。
その後、UNIXワークステーションなど表示能力と処理能力の高いコンピュータを多数配置することがコスト的に容易な時代になった。その結果、特定の役割を集中的に担当するコンピュータ(サーバ)と、利用者の操作するコンピュータ(クライアント)に役割を分け、これらが相互にネットワークで接続されるクライアントサーバモデルが一般化した。このモデルでは、クライアントがサーバに「要求」を送信し、サーバがそれに「応答」を返す形で処理が行われる。
クライアントサーバモデル以外のネットワークアーキテクチャとしては、ピア・ツー・ピアモデルも広く利用されている。これは、クライアントやサーバといった役割を固定化せず、ネットワークに参加するコンピュータ(ノード)が場合によってどちらとしても働くというものである。
サーバとクライアントのやり取りを記述するためには、UMLのシーケンス図が利用できる。
例えば、World Wide Web (Web) 上のオンラインストアを利用する場合、オンラインストアの利用者が使っているコンピュータやWebブラウザがクライアントに相当し、オンラインストアのデータベース管理システムやWebサーバがサーバに相当する。Webブラウザがウェブページを表示する要求を送ると、サーバは必要な情報からウェブページのデータを動的に生成し、これを応答として返す。これを受信したクライアント側のWebブラウザがページを表示することで、利用者がそのウェブページを閲覧・利用することができる。