エンドユーザ主導型アプリケーション開発技法における ユーザ

エンドユーザ主導型アプリケー
ション開発技法における
ユーザインターフェースを用いた
要求仕様の検証
明治大学大学院 理工学研究科 基礎理工学専攻
紺田直幸 石榑久嗣 中所武司
M-baseの目的と対象
 目的
業務の専門家による情報システムの構
築を実現
 対象
オフィスワーカ(業務の専門家)
中・小規模アプリケーション
M-baseによる要求仕様定義プロ
セス概要
 ステップ1:業務仕様の詳細化
 ステップ2:ドメインモデルの作成
(モデリングツールを利用)
 ステップ3:ユーザインターフェースの作成
(UIビルダを利用)
 ステップ4:シミュレーション実行による検証
(シミュレーションツールを利用)
共通問題への適用実験
 適用範囲
共通問題の(a)スケジュール決定から
投稿者への受領通知までに適用
(e)
 実験方法
プログラム委員長が共通問題をコンピュータ
化することを想定
プログラム委員長が業務の専門家として、情
報処理に詳しいSEと相談しながら要求仕様を
定義することで、アプリケーションを作成
本発表の概要
 前回ワークショップ
ステップ1:業務仕様の詳細化
ステップ2:ドメインモデルの作成
 今回の実験
ステップ2の補足
ステップ3:ユーザインターフェースの作成
ステップ2:ドメインモデルの作成
 モデリングツールを用いて「1業務1オブ
ジェクト」を原則としたドメインモデルを作成
 メタファベースのモデリング
対象業務の業務分割
コンポーネント抽出
メソッドの意味定義
ドメインモデルでの業務の流れ
業務(a)
業務(b)
業務(c)
メール発送
業務(d,
e)
スケジュール表オブジェクトとし
て独立
 スケジュールを保存するスケジュール表コ
ンポーネント
 ドメインモデル上に独立
CFP作成・プログラム委員就任以来の発送で
も使われるため
作成されたドメインモデル
ステップ3:
ユーザインターフェースの作成
 UIビルダによる自動生成
 カスタマイザによるカスタマイズ
 UIの遷移図の自動生成
UIビルダによる自動生成
 目的
エンドユーザの負担軽減のため自動生成
仕様変更があっても一から作成し直す必要が
ない
 利用方法
自動生成されたUIによる入力引数の確認
自動生成された段階で入力が可能
デバッグやシミュレーションで用いることが可能
自動生成されたUIの例
 シミュレーション時の
機能検証には十分
 アプリケーションとして
の使い勝手は問題
カスタマイザによるカスタマイズ
 カスタマイズの目的
– アプリケーションとしての使いやすさ向上
– 入力エラーの低減
カスタマイズされたUIの例
日付選択のため
のカレンダ(開始
日を選ぶと、スケ
ジュール案が下
に作成される)
スケジュール案
の細かい修正を
するためのスピン
バー
大きく日付を修正
したいときカレン
ダを呼び出す
UI遷移図の自動生成
 一般のアプリケーション作成におけるUIの
遷移図の役割
画面操作性の確認
エンドユーザの要求の早期発見
入力データの確認
 開発の早い段階で問題点や改善点を検出
エンドユーザ主導型開発におけ
るUI遷移図の利用
 自分がイメージしているアプリケーションと
の比較
 アプリケーション利用者の立場での機能の
確認
ドメインモデルとは異なる視点
 ドメインモデルを構築していく際、アプリ
ケーション内部の部分的検証が可能
例1:スケジュールからCFP配布
生成された遷移図(スケジュー
ルの決定)
スケジュールの決
定後、原案が自動
生成される
ステップ1で作成
された要求仕様は
満たしている
改善点・修正点
 スケジュール決定後の動作(の変更)
スケジュール決定後、すぐにCFP作成をする
とは限らない
「CFP作成」を続けて行うかどうか、選択でき
るように変更
 スケジュール決定後、スケジュールをレ
ビューする画面の追加
 追加に付随して発生したミスの修正
CFP作成後の結線の脱落
結線の脱落の発見
ここで「CFP作成」画面
に移るはずであるが、
終了してしまっている
原因の究明
ドメインモデル上では、正しく結線されている
コンポーネント内部のチェック
未結線部分の特定
「CFP作成」から
「必要項目の入力
終了」への結線が
されていない
修正する
正しく作成された遷移図
→期待通りの遷移図が作成された。
例2:委員選出から就任依頼
発送
生成された遷移図(委員名簿検
索)
変更点・改善点
 プログラム委員検索後、編集や削除に移
れるように、変更
 委員追加の処理を繰り返しできるように修
正
正しく生成された遷移図(委員名
簿検索)
おわりに
 UIを用いることで、要求仕様の洗練が可
能
– 入力データの確認
– 遷移図による実行の流れの確認、レビュー
 UIを用いることで、モデリングの誤りを発
見することが可能
– 結線の脱落の発見