Skip to content

Tag: sequence diagram

基本編(2) 動きを表現するシーケンス図

UMLシーケンス図を、モデリングツール astah*でサンプル図を描きながら解説します。 [スクリプト] モデリングしてますか? 今日は、シーケンス図をやってみたいと思います。 シーケンス図は、複数のオブジェクトが協力して、1つのゴールを達成する、そのような振る舞いを表現した図です。例として、このような携帯のアプリを考えてみます。 携帯に、こんな情報(右図)を入力して登録ボタンを押すと、それがサーバーに送信されて、ユーザー登録が行われる。そんな一連のアクションを、シーケンス図で表現してみたいと思います。 シーケンス図には、2通り描き方があって、1つは、ラフに登場するオブジェクトを描いていく方法と、もう1つは、クラス図を前提として、そのクラスの参加する振る舞いを描いていく。この2種類があります。 今日はその両方のやり方で、やってみたいと思います。 実際に、描くシーケンス図は、このようになります(右図)。 ユーザーが3つの情報を入力して、登録ボタンを押すと、アプリがサーバーに登録を行う、このようなモデルです。 では、実際のastahで見てもらいましょう。どうぞ。 ラフな”シーケンス図を描いてみる ここでは、ラフなイメージのシーケンス図を描きます。 まず、ライフラインを1つ選んで描いていきます。ここに、ライフラインの種類を選ぶ事ができます。 1つ選んで、ここでは利用者という名前にしましょう。 もう1つ、アプリを代表するライフラインを作ります。「アプリ」と入れます。 次に、利用者が、そのアプリに対して何を操作するかをメッセージを使って描いていきます。 ここでメッセージを選ぶ事も出来ますが、astahではこのバーを引っ張る事によって、描き入れる事ができます。 ここでは、名前を入力するので「名前」と入れます。 次にもう1つ描いてみましょう。 名前の他にも、利用者が入力するものとして「呼び名」というものを入れてみましょう。 「呼び名」と「名前」をアプリに設定します。 それから、例えば「アバター」というのも、ここに入れてみましょう。利用者が、アプリに対して「名前」と「呼び名」と「アバター」を設定した後、この3つの情報を入れて「了解」というボタンを押すとします。 もう1つのライフラインを追加します。 そうすると次に、この情報で、「アプリ」が「サーバー」に向かって、情報を「ユーザー設定」という風に、「サーバー」に対して呼び出します。ここではリターンのシーケンスも入れたいので、リターンメッセージを追加して、これで一通りできました。 利用者が、アプリに対して、入力したものがサーバーに送られた、そんな図が、1つ描けました。 先にクラス図を描いてから、シーケンス図を作成する 次に、最初からクラス図がある場合、これらのクラスが参加するシーケンス図を描いていきたいと思います。 ここに「利用者」、それから「アプリの画面」、「サーバー」、3つのクラスを用意しています。この3つからシーケンス図を描いていきましょう。 […]