SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

リレーションシップ駆動要件分析による実践的な要件定義手法

要件の精度を向上させる

リレーションシップ駆動要件分析による実践的な要件定義手法(5)

機能からデータのつながりを捉える

 「要件のツボ」では機能にデータを結びつけてCRUD表を作成します。図3にあるように機能ごとにアクセスするデータをドラッグ&ドロップで対応づけ、その後でCRUDの設定を行います。一連の設定が終了したら今度はデータごとのつながりを見ます(図2)。

 このように機能とデータの関係づけは機能中心で行い、その結果をデータ中心で捉えることで、CRUD表の作成から活用までをスムーズに進められるように工夫しています。

図3 要件のツボCRUD機能
図3 要件のツボCRUD機能

 CRUD分析はデータのライフサイクルをCRUDの4つのアクセスで表現し、そのライフサイクルから機能の妥当性を検証するものです。しかし、CRUD分析にあまり時間をかけることはできませんので、データのライフサイクルの確認は重要なものに限定するなどメリハリが必要です。

要件を検証する

情報の関係性から検証する

 前述した通り「RDRA」の各モデルの関係(図1参照)にはもともと意味があります。本来関係づけられるはずのものが、関係づけられていない場合は整合が取れていない可能性があります。そこで関係づけされていないものを探しその定義を再度見直すことで、要件の精度を向上させることができます。

 例えばアクターに結びつく要求がない場合は、そのアクターの要求をヒアリングすることを忘れている可能性があります。またユースケースに結びつく画面・帳票がない場合は、画面帳票の洗い出しが不十分である可能性があります。これらの関係は全て機械的に検出することができるので、警告に従って関係を見直すことで問題に気づき適切な要件へと洗練化できます。

 「要件のツボ」ではあらかじめ11個のチェックポイントが用意されているので、それらのチェックポイントを順次確認し定義した内容を振り返り、もし関連付けが漏れている場合はその場で関連づけることができます。

項目レベルの検証

 画面の数が増えてくると画面内の各項目がデータ上に本当にもれなく定義されているか不安になります。このような時に簡単に対応関係をチェックできる手段があると助かります。

 画面・帳票モデルには画面の項目、イベントデータモデルには受け渡されるデータ項目、そしてデータモデルにもデータ項目があります。この3つのモデルは各々に項目を持つことができます。そして各々の項目には関係があるのでその対応関係を調べることで、項目レベルの精度を向上させることができます。

 画面にある項目が関係するデータ上にない場合は、データ項目が抜けていることが予想されます。同じくイベントデータの項目がデータ項目にない場合も同じです。逆にデータにある項目が画面・帳票、イベントデータに表れない場合はそれらの項目が抜けている、あるいはデータ項目が無駄である可能性があります。このように項目の名前を突き合わせるだけで、項目の精度を向上させることができます。単純に名前で対応させる方式は厳密ではありませんが、手間をかけずに精度を上げるためには有効な手段です。

図4 項目レベルの突き合わせ
図4 項目レベルの突き合わせ

 要件定義の粒度はプロジェクトによって様々です。粒度を表す尺度として項目レベルまでの洗い出しを行うか否かがあります。この検証はあくまでも項目レベルまで洗い出したときに行う検証です。

次のページ
要求を使って要件定義に方向性を与える

この記事は参考になりましたか?

リレーションシップ駆動要件分析による実践的な要件定義手法連載記事一覧

もっと読む

この記事の著者

神崎 善司(カンザキ ゼンジ)

(株)バリューソース代表大手SIerにおいて大小10システム以上のプロジェクトリーダを勤め、20年ほど前に独立。2002年から5年間(株)豆蔵での社員も兼任しながら要件定義などの上流工程のコンサルティングを行う。2008年に要件定義手法「リレーションシップ駆動要件分析(RDRA)」を開発し現在はその...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5903 2011/05/13 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー