「ウォーターフォール・モデルなんて時代遅れだ」
と何年も前から言われつつも、日本のシステム開発の現場では未だポピュラーな開発手法の1つとして根強く生き残っています。
プロジェクトによって工程の定義に差はあるが、開発プロジェクトを時系列に、「要求定義」「外部設計(概要設計)」「内部設計(詳細設計)」「開発(プログラミング)」「テスト」「運用」などの作業工程(局面、フェーズ)にトップダウンで分割する。
全ての会社がそうとは言いませんが、基本的にシステムエンジニアはウォーターフォール・モデルの上流工程に行けば行くほど高収入になる傾向があります。「要件定義」や「外部設計」などを担当するスキルを持ったシステムエンジニアは有利です。
要件定義とは、システムやソフトウェアの開発において、実装すべき機能や満たすべき性能などのを明確にしていく作業のこと。いわゆる上流工程の一部で、実際の開発・実装作業を始める前に行う作業の一つである。
逆に言えば、システムエンジニアとして収入アップを狙うなら上流工程のスキル・ノウハウの獲得を目指すべき、とも言えます。
今回の記事では、上流工程の1つである「要件定義」を実践的に学習するためのおすすめ本「演習で身につく要件定義の実践テクニック」を紹介します。
この本が向いているのはどんな人?
- 要件定義を演習形式で学びたい人
- 今度仕事で要件定義を任されるので、予習しておきたい人
IT業界の転職ならマイナビエージェント×IT
概要
「演習で身につく要件定義の実践テクニック」は、
- 5ステップでわかる要件定義
- 要件定義のコミュニケーションスキル
- 要件定義の7つ道具
の3章から成り立っています。
筆者の25年以上の経験を踏まえ、具体的な案件(架空の案件)に沿って演習を解いていく形式なので理論先行にならず、実践的な内容となっています。情報処理試験の午後問題の勉強をする感覚に近いですね。
- 客の要求
- 発注者と受注者の関係性
- 営業や開発陣の経験値・スキル
などの要素が非常に事細かく設定されているため、要件定義の経験の浅い(あるいは未経験)の読者にもイメージがしやすく、サクサク読み進めることができます。・・・問題はそれなりに難しいので、サクサク解く、とはなかなか行きませんがw
第1章「5ステップでわかる要件定義」
第1章では、システム開発における要件定義がどういう役割を果たすのかを、
- 方針と実施計画の立案
- 現行業務と問題の把握
- 問題分析と課題の設定
- 課題解決策の立案
- システム要件の整理
という順で、演習を解く形で説明しています。
解説・解答が非常に丁寧に書かれているので、仮に自分で考えてもさっぱりわからなかったとしても、読み進めていくだけで理解を深めていけます。
第2章「要件定義のコミュニケーションスキル」
要件定義の流れがある程度わかったところで、第2章では要件定義における最重要のスキル「コミュニケーション」について書かれています。
IT業界に関連が薄い人からは、
「システムエンジニアとかプログラマとかってずっとパソコンに向かってプログラム作ってるんじゃないの?」
などと思われがちですが、実際はお客さんありきの仕事であり、コミュニケーションスキルを磨かずして仕事はできません。
本章ではコミュニケーションスキルを、
- ヒアリングスキル
- ミーティングスキル
- プレゼンテーションスキル
に分類しており、第1章と同じく「事例→演習→解答・解説」のフォーマットでコミュニケーションのポイントを学ぶことができます。
第3章「要件定義の7つ道具」
「要件定義の役割や流れ、そのために必要なスキルについてはなんとなくわかったけど、実際に業務を行う際はどうやって着手すればいいのか、とっかかりがわからない・・・」
という人のために、第3章では実戦的なツール(図や表)について解説しています。
- システム化方針を決定する際に便利な「ニーズ整理表」
- 対象業務の範囲と内容を整理するための「業務モデル」
- 重要な情報を効率よく集める「RAカード」
- 問題を視覚化して抜けや漏れを防ぐ「ロジックツリー」
等々、状況に応じてこれらのツールを利用します。
これにより、毎回同じようなことで悩む手間を省き、ムラの少ない要件定義を行えるようになることでしょう。
関連記事
システムエンジニア関連では他にもこんな記事を書いてます↓