夏をいかがお過ごしでしょうか?もっぱらの主食を蕎麦とする日々が続いているおっくんです。
今回は、赤俊哉著『だまし絵を描かないための要件定義のセオリー』を紹介します。
基本情報
| 項目 | 内容 |
|---|---|
| タイトル | だまし絵を描かないための要件定義のセオリー |
| 著者 | 赤俊哉 |
| 発行所 | リックテレコム株式会社 |
| 発行日 | 2018年5月22日 |
| ISBN | 978-4-86594-068-8 |
| ページ数 | 276ページ |
| 価格 | 2,750円(税込) |
リックテレコム - だまし絵を描かないための── 要件定義のセオリー
きっかけ
最近、もっぱらの業務が実装よりも要件定義や設計にシフトしてきました。 特に、要件定義と設計はしているが、直接的な実装は担当者に持ってもらい、レビューを行うという形態の割合が増えています。 裏を返せば、自分がした要件定義と設計のツケを自分で払うよりも同僚に負ってもらう構造になってきており、今一度勉強しておこうというモチベーションがありました。
また、昨今の開発支援AIエージェントの活用にあたり、実装させる要件を明確に定義及び文章に起こせていることが、AIの効果的な活用にもつながると考えています。
本書で学べること
本書によって学べることは、タイトルにもある「だまし絵」を無意識にでも作ってしまうことへの注意と対策です。 だまし絵を仕込んでしまった要件定義により、後工程においてシステムに「からくり」を仕込むことになってしまいます。
本書では、だまし絵を意図せずとも仕込んでしまう要件定義を、決して容易なものではなく「ビジネス、業務、システムの無数色合いを『要件として明確化する』ことは困難な作業」だと説きます。
その困難極める要件定義を、できる限り少ない労力で立ち向かうための「術」を共有することを本書の目的として掲げています。
以下、本書の特徴となるような要素と、それぞれどのようなことが述べられているのかを紹介します。
そもそも要件定義とは何なのか?
本書で述べられる「一般的な理解としての『要件定義』」は、次のように紹介されています。
要求分析の結果をもとに、システムで実装すべき制約を明確にし、『要件』として確定すること
としています。 そのうえで、設計工程のインプットとして有効であること、つまり、設計が可能な状態であることが要求されます。
そのため、要件定義で行う作業は、「要求を基に『制約』を考慮し、現状分析を経て要件として明確化すること」です。 前提として、要件定義が可能なくらいに要求が明確であることが必要だと説いています。
アジャイルにおける要件定義
本書ではアジャイル型での要件定義についても、ウォーターフォール型でも基本的に行うべき作業は変わらず、開発手法ではなくプロジェクトの考え方や状況によるとしています。 ただし、個々の詳細な仕様まで要件として明確化することはアジャイルの精神に反することで、アジャイルを適用した意味を失います。 それでも、方向性、目的、概要は、早期に明確化する必要があるものとして述べられています。 アジャイルでは、要件定義・設計・実装、テストを同じメンバーが行うことが多いため、次工程に引き継ぐためのドキュメントが不要なだけとされていました。 すなわち、要件定義はアジャイルでも必要ということです。
要件定義の前にやっておくこと/要件定義でやるべきこと。
我々のエンジニアの前に『要件定義』がタスクとして積まれた時、そのタスクは実は要件定義以前の問題であるかもしれません。 本書では、「3章要件定義の前にやっておくべきこと」、「4章要件定義でやるべきこと」として、大きくページを割いて述べられています。
要件定義の前にやっておくべきこととしては、以下のようなことが挙げられています。
- システム化企画
- システム企画に基づく要求に基づくToBeモデルの策定・作成
- 現在のシステムの状態に基づくAsIsモデルの作成
- 業務分析
ToBeモデルは、これから作ろうとしているシステムについてのプロセスやデータの「あるべき姿」を元に作成されます。 AsIsモデルは、現状分析の結果作られるプロセスとデータの今の姿です。
そして、要件定義はこのToBeモデルとAsIsモデルと制約を踏まえ、新たなToBeモデルを作ることが本来行うべきことと紹介されています。 このToBeモデルはプロセスモデルとデータモデルから構成されますが、これを実際の業務レベルまで落とし込めると、要件定義を含む後工程が軽減されます。
この指摘については、現状の構造を読み違えると、実装の段階で大きく見直しがかかることから実体験からもそうであるように感じられます。
まとめ 振り返り
『要件定義』を具体的に学んだことは過去なかったように思います。 企業によって、事業形態や組織形態でも次第で非常にばらつきのある内容になってくるのだと思います。 非常に実践に近いところで学んだケース、理論から入ったケース、はたまた技を盗んだケースというのもあるかもしれません。
本書は、それらについての一定の指針を与えてくれるものと感じました。
関連書籍として、著者が同じ「ユーザー要求を正しく実装につなぐシステム設計のセオリー」という書籍もあります。 こちらも合わせて購入しているので、続けて読む中で上流工程の認識を全体で改めていきたいと思います。
採用情報
虎の穴ラボでは一緒に働く仲間を募集中です!
この記事を読んで、興味を持っていただけた方はぜひ弊社の採用情報をご覧ください。
toranoana-lab.co.jp