「真の要求を見極めろ!」:teamB リクワイアメント:要求定義 1)要求定義における悩み 顧客側の問題 社内規定、セキュリティ 要件変更等による方針 レベルでの変更発生 決定者/相対が不明確 クライアント多忙による 要求決定の遅れ 要求変更が多い あまりにも期間が短い 曖昧/未確定/ 設計に落とせない要求 ユーザが真に行いたいことは何か? ・いかに早く要件を定義し、納期/コスト/品質のバラ ンスを取り、顧客が納得のいく見積りを行うか ・前例のない要件に対するリスクを如何に回避す べきか 要求定義を行う上流SE の人材不足 受注側の問題 CMU2005海外エンジニアリングワークショップ参加報告書 講義内容が ヒントになる?? 運用フェーズを視野に入 れた要求定義がなされ ない 1 「真の要求を見極めろ!」:teamB リクワイアメント:要求定義 2)要求定義に関するヒント われわれの悩みは、システム構築プロジェクトが本質的に抱えている問題である。(アメリカでも同じこと) ⇒ 顧客要求事項は曖昧な表現が多い ⇒ プロジェクトは要件が膨らみ、納期が遅れ、予算が超過することが多い。 予め「リスクを見越して」計画を立てるべき ※ただし発生率の低そうなリスクは考慮に入れなくてもよい 「どこに要件の不確実性(リスク)があるか」 「システムを取り巻く環境や市場は今後どの様に変化するか」 <具体的な解決方法例> 【初期の段階でステークホルダ参画】 初期段階でステークホルダを関与させることにより、”サプライズ”を回避 し、ステークホルダー間の意見調整をする。 【早期情報共有】 前例のない要件については、特殊な要求である旨理解してもらい、協 業での対応を依頼する、前例のある要件に、可能な限り近づくよう変 更してもらう 【機能要求と非機能要求】 要求には機能要求と非機能要求があり、非機能要求は事前に想定 することが難しい。 *非機能要求の例:コスト削減(金額に見合った要件の削減)、 :機能追加が容易に行えるシステム構成の確保 :進捗報告、テスト範囲報告 【プロトタイプ】 不確実な要求に対するリスクを回避するには、早い段階でプロトタイプ などを活用し、実際に動く形でユーザに見せることが有効。 【モデリング】 要求を明確化する表現方法として、ユースケースなどのモデリングが有 効である。 【メタファー】 パワーポイントなどを使用して、視覚的に顧客に訴える CMU2005海外エンジニアリングワークショップ参加報告書 これ重要だと思うんですが、 解決方法例ではないの で。。困り中 一問一答式で なんだか木を見て森を見ずになって しまっているかんじ。。。 2 「真の要求を見極めろ!」:teamB リクワイアメント:要求定義 2)学んだこと ~具体的 HowTo システム構築プロジェクトが本質的に抱えている問題である。(アメリカでも同じこと) われわれの悩み = 顧客要求事項は曖昧な表現が多い = プロジェクトは要件が膨らみ、納期が遅れ、予算が超過することが多い。 ●非機能的要求に対しては・・・ ・機能的要求: ・ユーザー側要求 要求事項 ・システム作成側要求 ・非機能的要求:予測困難、非システム的、後続フェーズにて問題が拡大化する <解決案>ステークホルダー(エンドユーザー/決済者/テスター/品質管理チーム等)を早期に参画させ、 要求が発生した際に即座に対応出来るよう、要求に答えるための仕掛けや仕組みを確立 ●前例のない要求に対しては・・・ *ユーザーに、特殊な要求である旨理解してもらい、協業での対応を依頼する *前例のある要件に、可能な限り近づくよう変更してもらう *要件を細分化し、一部ずつ実現して行く *開発するシステムに関係する者全てを登場させる関係図(MAP)を作成する うーんこれもつまらないですね (要求定義のセクションまとめただけですね) ●要求定義のポイントは・・・ *曖昧な要求を早期に明確にする(パワーポイントなどを使用して視覚的に顧客に訴える、プロトタイプを提供し確認依頼するなど) *実現の厳しい要件に対する妥協点を探る *ステークホルダー間の意見調整をする ●長期プロジェクトに対しては・・・ *常に先を見越すことが必要である。 CMU2005海外エンジニアリングワークショップ参加報告書 3 「真の要求を見極めろ!」:teamB リクワイアメント:要求定義 2)学んだこと ~要件定義で重要な考え方 ●Abstruct (抽象化) システム構築の結果は以下のサイクルを繰り返すことにより、もたらされる。 *1 *2 *3 *4 観察(Observe) 方向性の定義(Oriented) 決定(Decide) 実行(Action) これらの概念を取り込んで構成できると 面白いものになるのでは? 特に抽象化は設計プロセスすべてを通して 当てはめることのできる概念と思い 個人的に面白く感じた部分です。 ただ、Abstructに関して私と川上さんの理解は 共通していたのですが、神谷さんの解釈と 違っていたようです。(@菊Discuss) レポートからの情報だけでは足りないので一度 レジュメを見直す必要があります。。 抽象化とは、重要な部分のみを引っ張り出し、そこから詳細に落とすことであり、 レイヤー構造から成立している。的を得た的確な抽象化は(RDBの概念など)はパワフルな概念となり、 コンセプトとして理解されやすい。的を得た的確な抽象化のためには、充分対象物を理解することが必要である。 ●イノベーション 要件定義にもイノベーションが必要!(とおもう) 顧客価値を上げるイノベーションを行うプロセスとして、以下が重要である。 *1 人間について勉強・理解する *2 ゴールを設定する(何ができればよいか、何をすべきか) *3 ゴールを達成するための方法を考え、その中でどれがベストかを考える *1 成功する(儲かる)イノベーションのためには、技術面よりもまず顧客価値を考えることが重要である。 *2 限られた情報に基づき意志決定を行う場合、ツールはあくまで意思決定の支援のために利用するものである。 *3 イノベーションのプロセスにおいて、目的を定めるためには、顧客(消費者)の観察が重要である。 「観察する」というプロセスの位置付けと重要性は、情報システム構築における要件定義においても同様である。 CMU2005海外エンジニアリングワークショップ参加報告書 4 「真の要求を見極めろ!」:teamB リクワイアメント:要求定義 3)要求定義に関する提言 前ページの ・アブストラクト ・イノベーション の概念を持ってくる・・・とか <私見> (講義から得たものではないですが) 要件定義におけるポイントは、「目的」を明確にし、早期の段階でシェアすること。 これは河合さんが、ラージケーススタディで学んだこと、としてあげていました。 CMU2005海外エンジニアリングワークショップ参加報告書 5
© Copyright 2024 ExpyDoc