ソフトウェア要件仕様書 (SRS )とは、 開発 予定の ソフトウェアシステム の記述です。これは、ビジネス要件仕様書 (CONOPS)をモデルとしています。ソフトウェア要件仕様書には、 機能 要件と非機能要件 が明記されており、完璧なユーザーインタラクションを実現するためにソフトウェアがユーザーに提供しなければならない一連のユースケースが含まれる場合もあります。
ソフトウェア要件仕様書は、顧客と請負業者またはサプライヤーの間で、ソフトウェア製品がどのように機能すべきかについての合意の基礎を確立します(市場主導型プロジェクトでは、これらの役割はマーケティング部門と開発部門が担う場合があります)。ソフトウェア要件仕様書は、より具体的なシステム設計段階の前に要件を厳密に評価するものであり、その目的は後々の再設計を減らすことです。また、製品のコスト、リスク、スケジュールを見積もるための現実的な基礎を提供する必要があります。[ 1 ] 適切に使用すれば、ソフトウェア要件仕様書はソフトウェアプロジェクトの失敗を防ぐのに役立ちます。ソフトウェア要件仕様書には、プロジェクト開発に必要な十分要件と必要要件が記載されています。[ 2 ] 要件を導き出すには、開発者は開発中の製品を明確かつ徹底的に理解する必要があります。これは、ソフトウェア開発プロセス全体を通してプロジェクトチームと顧客との詳細かつ継続的なコミュニケーションを通じて達成されます。
SRSは契約の成果物 データ項目記述 [ 3 ] の1つである場合もあれば、組織が義務付けた他の形式のコンテンツを含む場合もある。
通常、SRSはテクニカルライター 、システムアーキテクト 、またはソフトウェアプログラマー によって作成されます。[ 4 ]
歴史 ソフトウェア要件仕様は、1975年には既にソフトウェア開発プロセスで使用されていました。[ 5 ]
ソフトウェア要求仕様の目的と内容は、1983 年にIEEE によって正式に定められました。この規格は 1984 年に IEEE-830-1984 として発行され、ANSI によって承認されました。[ 6 ] 1993 年と 1998 年に改訂され、国際規格に置き換えられました。[ 7 ] [ 8 ] この規格は、優れた SRS の基準と内容に関する推奨事項を提供することを目的としていました。要求エンジニアリングにおけるプロトタイピングの利点を認識し、構造の例といくつかのバリアントを提案しました。
ISO /IEC/IEEE 29148規格「システムおよびソフトウェアエンジニアリング - ライフサイクルプロセス - 要求エンジニアリング」は、2011年にIEEE 830に取って代わりました。[ 8 ]現在 の改訂版は2018年のものです。この規格は、要求品質基準、要求管理プロセス、ビジネス要求仕様(BRS)、およびステークホルダー要求仕様(StRS)も対象としているため、より広範です。[ 9 ] 若干変更された例の構造を提案しています。
要件の品質 要求事項は、システム設計とは無関係に、何が必要かということのみを厳密に規定するべきであり、ソフトウェアがどのようにそれを行うべきかを規定するべきではない。[ 9 ] したがって、個々の要求事項は、必要かつ適切で、曖昧さのないものでなければならない。さらに、要求事項のセットは、完全かつ一貫性があり、実現可能で、理解しやすいものでなければならない。
コードの臭い という概念に続いて、要求仕様における問題を説明するために要求の臭い という概念が提案されました。要求仕様では、要求が必ずしも間違っているわけではありませんが、問題となる可能性があります。[ 11 ] 要求の臭いの例としては、主観的な表現 、曖昧な副詞や形容詞 、最上級 、否定的な表現 などがあります。[ 11 ] 比較表現、検証不可能な用語、全体性を意味する用語も避けるべきです。[ 9 ]
参考文献 ↑ Bourque, P.; Fairley, RE (2014). "Guide to the Software Engineering Body of Knowledge (SWEBOK)" . IEEE Computer Society. 2014年12月28日のオリジナルからアーカイブ済み。 2014年 7月17日 取得 。 ↑ Pressman, Roger (2010). Software Engineering: A Practitioner's Approach . Boston: McGraw Hill. p. 123. ISBN 9780073375977 。↑ "DI-IPSC-81433A、データ項目記述ソフトウェア要件仕様書(SRS)" . everyspec.com. 1999-12-15 . 2013-04-04 に取得. ↑ Donn Le Vie, Jr. 「ソフトウェア要件仕様書(SRS)の作成」 2010年。 ↑ Ramamoorthy, CV; Ho, SF (1975-04-01). "大規模ソフトウェアの自動ソフトウェア評価システムによるテスト" . ACM SIGPLAN Notices . 10 (6): 382– 394. doi : 10.1145/390016.808461 . ISSN 0362-1340 . ↑ 「IEEE Standards Association - IEE-830-1984」 。IEEE Standards Association 。 2024年12月30日 取得。 ↑ 「IEEE Standards Association - IEEE 839-1993」 。IEEE Standards Association 。 2024年12月30日 取得。 1 2 "IEEE Standards Association IEEE 830-1998" . IEEE Standards Association . 2024-12-30 に取得. 1 2 3 4 "ISO/IEC/IEEE 29148:2018" . ISO . 2024-12-30 に取得. ↑ Stellman, Andrew & Greene, Jennifer (2005). Applied software project management . O'Reilly Media, Inc. p. 308. ISBN 978-0596009489 。1 2 Femmer, Henning; Méndez Fernández, Daniel; Wagner, Stefan; Eder, Sebastian (2017). "要求事項の臭いによる迅速な品質保証". Journal of Systems and Software . 123 : 190– 213. arXiv : 1611.08847 . doi : 10.1016/j.jss.2016.02.047 . S2CID 9602750 .
外部リンク IEEEソフトウェア要件仕様ガイド 。1984年。doi : 10.1109 / IEEESTD.1984.119205。ISBN 978-0-7381-4418-4 。 IEEEソフトウェア要件仕様に関する推奨実施基準 。 1994年。doi : 10.1109 /IEEESTD.1994.121431。ISBN 978-0-7381-4723-9 。IEEEソフトウェア要件仕様に関する推奨実施基準 。1998 年。doi : 10.1109 /IEEESTD.1998.88286。ISBN 978-0-7381-0332-7 . S2CID 8674647 . システムおよび ソフトウェアエンジニアリング -- ライフサイクルプロセス -- 要求工学。ISO/ IEC /IEEE 29148:2018(E)。2018年。pp. 1–94。doi : 10.1109 /IEEESTD.2011.6146379。ISBN 978-0-7381-6591-2 。 (「この規格は、IEEE 830-1998、IEEE 1233-1998、IEEE 1362-1998 を置き換えるものです -")レフィングウェル、ディーン;ウィドリグ、ドン(2003)。ソフトウェア要件の管理:ユースケースアプローチ (第2 版)。アディソン・ウェスリー。ISBN 978-0321122476 。 ゴッテスディナー、エレン(2009)。『ソフトウェア要件の記憶を呼び起こす手引き:ビジネスチームと技術チームが要件を開発・管理するのに役立つデスクトップガイド 』 アディソン・ウェスリー。ISBN 978-1576811146 。 ウィーガース、カール;ビーティ、ジョイ(2013)。ソフトウェア要件、第3版 。マイクロソフトプレス。ISBN 9780735679665 。 「IEEE SRS テンプレート - rick4470/IEEE-SRS-Tempate」 . GitHub . 2017年 12月27日 取得 . コスト削減につながるソフトウェア要件仕様書の書き方とは?
[ 1 ]
↑ Taaffe, Ed. "Mr" . thebridger . 2019-02-02 に取得.