非機能要求グレードを読んだよ!
こんにちは、インフラエンジニアの竹西です。
寒さも本格的になってきましたね。
私はようやくこたつ布団を買いました!
わくわくで受け取ったら実は注文したのが敷布団だけで悲しい思いをしてしまいましたが。。。
さて、気を取り直して今回は個人的に「非機能要求グレード2018」を読んだのでまとめていきたいと思います。
はじめに
私たちインフラエンジニアがシステム構築を行うときに直面するのが非機能要件です。
ただ非機能要件と言われてもどのように定義するか、、というのが昔からの悩みですよね。多分。。
そこでぜひ手引きとして活用したいと考えているのが「非機能要求グレード 2018」です。
2018年に改定されており、当時皆さんの周りで話題になったりしたのではないでしょうか。
非機能要件と非機能要求とは
まず非機能要件と非機能要求の違いは何でしょうか。
本記事では以下を参考に考察していきます。
- 非機能要件
wikipedia より出典非機能要件(Non-functional requirement)とは、システム設計や情報システム開発上の要求分析において、要件、システム要件といった機能面以外の全般を指す。
- 非機能要求
IPA 8年ぶりの改訂、「非機能要求グレード2018」を公開 より出典「非機能要求とは、ハードウェア、OS、ミドルウェア、データベースといった「システム基盤」の強度や品質に関する要求、ユーザインタフェースの操作性やソフトウェアの品質など「アプリケーション」 に対する要求などをいいます。」
上記のようにかなり近しい言葉で記されています。
個人的な解釈にはなってしまいますが、
非機能要求とはシステムの性能やセキュリティ、拡張性など機能要件以外で必要な
インフラ(システム基盤全体)に対する要求であり非機能要求に上がる項目は案件によって整理しまとめあげ
非機能要件として定義できるというイメージを持っています。
非機能要求グレード 2018とは
先ほど述べた非機能要求はユーザ/ベンダを問わずステークホルダの認識の祖語や抜け漏れといった問題があると
非機能要件としての役割が担えなくなってしまいます。
ですがこういった問題は起こりうるものであり
それらの問題を低減させるべく指標となるように作成されたツール群が「非機能要求グレード 2018」です。
「非機能要求グレード 2018」は下記の複数のドキュメントからなっています。
【非機能要求グレード2018】
- 利用ガイド(利用編)…非機能要求グレードの利用方法の解説
- 利用ガイド(解説編)…非機能要求グレードの背景の解説
- グレード表…3つの典型モデルシステムとそれに対応する主な非機能要求項目の要求レベル
- 項目一覧…非機能要求項目の一覧表
- 樹系図…非機能要求項目を6つの大項目ごとに階層的に示した図
- 活用シート…グレードと項目一覧をまとめたもので、プロジェクトに応じてカスタマイズ可
- 利用ガイド(活用編)…利用シーンに応じた事例により、非機能要求グレードを活用するヒントを提供
簡易利用説明
利用説明といっても、「非機能要求グレード 2018」のダウンロードページなどにも記載されていますし
具体的な使用方法などは「非機能要求グレード 2018 利用ガイド」をよんでもらうのが一番ですが以下に簡単に使用法を記載します。
簡潔にイメージをつかんでいただく一助となればと思い記載します。
非機能要求グレードはシステム全体の大枠から詳細を詰めるように段階的に検討することを想定されており
各ツールを利用して段階的にシステムに求められる項目(必須項目>重要項目>非重要項目)を洗い出すことができます。
項目はさらに対応レベルを定義することができます。
レベル分けをすることで実現難易度やコスト感などをステークホルダで認識しやすくする目的があります。
非機能要求するにあたり、以下の順で定義を進めていくイメージです。
実施事項 | 使用ドキュメント | 利用イメージ |
①モデルシステムの選定 | モデルシステムシート(グレード表) | 構築するシステムに最も近いモデルシステムから全体の概要をつかむ。 また[非機能要求グレードの6大項目]から要求の分類から要求の差分を確認する |
②重要項目のレベル決定 | 樹形図、グレード表 | 選択レベルを参考に具体的に要求レベルを決定する。この時、樹形図を使用して俯瞰的に項目がどの位置に存在するか確認し検討順位も確認しておく。 |
③重要項目以外のレベル決定 | 項目一覧 | 項目一覧を用いて、非機能要求の全項目について要求レベルを決定する。 |
[利用イメージ図]
[非機能要求グレードの6大項目]
[モデルシステムシート 抜粋]
[樹形図 抜粋]
[グレード表 抜粋]
[項目一覧 抜粋]
所感
「非機能要求グレード 2018」は全体を俯瞰し、詳細項目を詰めていくという、要件定義(それ以外でも重要ですが)を行う上での考え方を手助けしてくれます。
この考え方は当たり前と思ってしまいますが思いのほか難しいですよね。
個人的な経験としては設計段階などで詳細を気にしすぎるあまり俯瞰してみることができず、大前提が抜けていることを作成途中で気づいて仕切り直したりよくしてしまいます。
そういった考えを整理するガイドにもなってくれますし、ほかにもステークホルダで合意をとる際に客観的な指標になってくれたり考慮漏れがないか確認できたり大変便利なツールです。
でも非機能要求グレードとはあくまでも指標でありガイドラインです。
記載されている項目だけを埋めればいいとは決してならないでしょう。
当然、案件によっては詳細が異なっていたり記載されていない項目を考慮することもあるはず。
そういったことを意識することで私のような経験の浅いエンジニアでも
一本芯の通った非機能要件(非機能要求)ができるんだと自分に言い聞かせて活用していきたいです。
さいごに
今回は、非機能要求グレードを紹介させていただきました。
思った通りうまくまとめきれなかった感じが満載ですが、読んでいただいた方が非機能要求グレードに興味をもっていただけると嬉しいです。
それでは、ここまで読んでいただきありがとうございました!!