53
56

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

要望、要求、要件の違いとか、基本設計、詳細設計の違いで迷わないようにするためのまとめ

Last updated at Posted at 2020-01-12

何のため?

  • たまたま「予定通り進まないプロジェクトの進め方」を読んでいたら、レストランの注文をうまくユーザーの要望・要求・仕様に例えていて分かりやすく、もう少し掘り下げて整理したいと思ったのと、システム開発の上流工程周辺(企画とか詳細設計含める)は工程やドキュメントの種類が多く自分自身よく混乱するので、改めて勉強して、まとめておくためです。
  • 主観も混ざっていますので、参考程度にしていただければと思います。

そもそもなぜ混乱しやすい?

  • 概ね下記のような理由だと考えています。
    • 同じような言葉が多い
      • 要望/要求/要件
      • 設計/仕様
      • 仕様書/定義書
    • 各組織の文化的な要素もあり、会社、メンバー、業務委託構造によって、各工程やドキュメントの呼び方が若干異なることがある。
      • 要求仕様書なのか、要求定義書なのか、要件仕様書なのか、要件定義書なのか、など
      • 機能仕様書、機能要件定義書、など

レストランの注文例

  • ちなみに「予定通り進まないプロジェクトの進め方」に記述されていた要望・要求・仕様にあたるレストランの注文工程を自分なりにまとめ、基本設計と詳細設計も加えると次のようになるかと思います。ここでの仕様は要件に書き換えています。
要望 要求 要件
レストランに来た理由
・なるべく早く空腹を満たしたい
・食事を楽しみたい
ホールスタッフと相談して、具体化した要求
・ボリューム感のあるメニュー
・デザートも
・卵アレルギーも考慮
オーダー
・あんかけチャーハン、人数分
・アレルギーの人には卵抜き
・アイスクリーム人数分

| 基本設計 | 詳細設計 |
|---|---|---|
| レシピ(材料、分量)、盛り付け | レシピ(調理方法、調理工程)、調理器具の種類

マイホーム作りの例

要望 要求 要件
家が欲しいと思った理由
・結婚するから
・子供がほしいから
住宅アドバイザーと相談して、具体化した要求
・家族で楽しく暮らすためにリビングを広めにしたい
・子供の成長に合わせて、用途を変えていける間取りにしたい
建築家に伝える内容
・各部屋の用途、天井の高さ、窓の数や種類、キッチンのスペック、など
基本設計 詳細設計
設計図、間取り、素材、など 工法、など

要望、要求、要件の違いとか

  • 上記例とか、諸々の文献・サイトから、要望、要求、要件、基本設計、詳細設計を次のようにまとめてみました。
  • 工程的には、要望・要求・要件が「要件定義」や「要件開発」と呼ばれるようです。
  • 要望は、企画書に含まれる内容にもなるかと思います。
要望 要求 要件
簡単に言うと ~したい (より具体的に)~したい ~が必要です、これでお願いします
※ベンダーに依頼する内容
アウトプット(内容) コンセプト
ユーザーニーズ
ビジネスニーズ
マーケティング
予算、スケジュール
優先度を考慮した要求
As-Isと比較したTo-Be
登場人物とそれぞれの立場での要求
要求の目的展開(手段と目的を分別)、目的から手段の再構築した要求
制約(予算、工数)を反映した要求
機能要件、UI/UX要件
非機能要件
※抜け、漏れ、曖昧性が無い要求
注意点 一般的に下記の問題が発生しやすい。
手段しか書かない、または目的と手段が区別されておらず、要望側で手段に対する知見が少ないことが多く、目的と手段が矛盾する
分野に対する知見が少なく、要求に対して考慮すべき内容が漏れてしまう。
とりあえずの優先度不明の要求を入れてしまう
左記リスクをヘッジするのが目的
この工程次第でプロジェクトの成功可否が決まることが多い
一般的にこれがベンダーに依頼する内容であり、責任分岐点となるため、ベンダーとの合意が必要
場合によっては、この工程も含めて依頼することもある
基本設計 詳細設計
簡単に言うと 要件を満たすために~と~を作る
ユーザーに見える部分(Input/output)について決める
※作り手・作り方・道具の都合も考慮する
基本設計で決められたものを作るために~のように作る、そのために~を使う
作り方、道具の説明、ユーザーに見えない部分について決める
※全て作り手の都合
アウトプット(内容) システム仕様
機能仕様
画面仕様
※howではなくwhatであり、基本設計なのに内容は「設計」とは言わない
アーキテクチャ設計
API設計
クラス設計
注意点 実装者に依頼する内容であり
実装者との合意が必要
--

用語定義の補足

  • 仕様と設計
    • いろんなサイトで説明されていて、仕様は「what、何を作るか」を定義したもの、設計は「how、どうやって作るか」を定義したもの、という認識でいいかと思います。
      • こちらのサイトがシンプルで分かりやすい
  • 仕様書と定義書
    • 例えば、要求仕様書と要求定義書は何が違うのか?
      • 一般的には、要求仕様書と要件定義書であって、要求定義書とはあまり言わない
      • ちなみに要件仕様書ともあまり言わない
      • 個人的には、定義書も仕様書も大差無く、前にかかってくる言葉で使い分けるもの、と解釈しています。

参考サイト・文献

53
56
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
53
56

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?