アジャイルモデリング(AM)
公式サイト
モデリング成果物>ユーザインターフェースフロー図

ユーザインターフェースフロー図の概要

by Scott W. Ambler, Copyright 2003

ユーザインターフェースプロトタイプはユーザインターフェース (以降、UIと略) について考えるには非常に有効な方法です。しかし、残念ながらUIの詳細という泥沼に簡単にはまり込んでしまい、全体を見渡せなくなることもよくあります。その結果、システムのUI内の高いレベルでの関係や相互作用を見落とすことが多くなります。UIフロー図 (ストーリーボード、インターフェースフロー図、ウィンドウナビゲーション図、コンテキストナビゲーションマップとも呼ばれます) を使うことで、主UI要素間の高いレベルの関係をモデリングできます。

図1は、大学システムの初期のUIフロー図です。長方形は、主UI要素を表すもので、インスタンスやオブジェクトと同じようにモデリングされています。矢印は、主UI要素間のフローを表し、アクティビティ図の遷移と同じようにモデリングされています。たとえば、「デスクトップ」からは、「学生アイコン」を使って「学生検索」に移ります。移った後は、デスクトップに戻ることもできますし(戻ることは必ず想定されています)、「学生プロフィール」画面に移ることもできます。

 

図1. UIフロー図

一般にUIフロー図は、次の2つのうちどちらかの目的で使われます。1つめは、1つのユースケースで定義されたユーザとソフトウェアとの相互作用をモデリングするためです。たとえばユースケースでは、いくつかの画面を参照し、それらがどのように使われるかを示すことができます。この情報をもとに、1つのユースケースの振る舞いの側面を表したUIフロー図を作成することができます。2つめは、図1のように、アプリケーションのUIの概要を高いレベルで捕らえることができます。この概要は、事実上、複数のユースケースから見つかる振る舞いの側面をすべて組み合わせたものであり、できあがったものはUIのアーキテクチャビューと呼ばれます(Constantine and Lockwood 1999)。私はこの高いレベルの概要を表す方法(アーキテクチャアプローチとも呼ばれます)を好んで使いますが、それは、この方法によってシステムの完全なUIを理解できるからです。

UIフロー図はシステムのインターフェースを大雑把に表したものなので、システムがどう動くべきかをひと目で理解することができます。その結果、アプリケーションのUIのフロー全体を検証できるようになります。一例を考えてみると、フローは道理に合っているでしょうか? 私はあまり自信がありません。なぜ「ゼミ詳細」から「教授情報」に移れないのでしょうか? ゼミの情報を見ているときに、そのゼミの講師の情報を見たくなることはありませんか? さらに、UIフロー図を使って、UIが使いやすいかどうかを判断することができます。箱やそれを結ぶ線が多いとしたら、システムが大きすぎて学んだり理解したりできないというサインかもしれません。

残念ながら、UMLではこの種のダイアグラムをまだサポートしていません。これまで、私はUMLのコラボレーション/コミュニケーション図を少し変更して使っていましたが、UMLアクティビティ図や、ときにはUMLステートチャート図に手を入れるよう提案している人もいました。その結果できたものはどれも、表記法はいくらか異なっているものの、大体図1に似たものでした。UMLがまだすべて揃って完成していないために、私たちは、UMLが避けようとしていたまさにその状態、つまり、開発対象のソフトウェアをモデリングするのに異なる表記法を使うという状態に陥っています。私は、いずれOMG (Object Management Group) がUIフローモデリングのためのプロファイルを定義してくれることを望んでいます。実際のところ、読者がOMGにそのような要望を記したメールを書いてくれると本当にありがたいと思っています。

 

 

注: この成果物の説明は『The Object Primer 3rd Edition: Agile Modeling Driven Development with UML 2』より抜粋しました。本ではより詳しく説明しています。


推奨文献

その他の文献

アジャイルモデリング(AM)について詳しく知るにはこの本をお薦めします。

 アジャイルモデリング

 

Let Us Help (以下、北米での話ですのでご注意ください)

Ronin International, Inc. continues to help numerous organizations to learn about and hopefully adopt agile techniques and philosophies.  We offer both consulting and training offerings.  In addition we host several sites - Agile Modeling, Agile Database Techniques, UML Modeling Style Guidelines, Enterprise Unified Process (EUP) - that you may find of value.

You might find several of my books to be of interest, including The Object Primer, Agile Modeling, The Elements of UML Style, and Agile Database Techniques.

For more information please contact Michael Vizdos at 866-AT-RONIN (U.S. number) or via e-mail (michael.vizdos@ronin-intl.com).

 

visits since November 17, 2003.