派生要件でのWordの「Shall」の使用は機能要件に従うべきではありません。機能要件を作成するとき、Wordの「必須」は派生要件が実行する必要がある機能を説明するために使用されます。
派生=システムが要件である
機能=システムは要件を実行する必要があります
それは私たちの先輩の一人によって送り返されました、それは間違っていて、それはすべての要件で使われるべきです。
私はここで間違っているのですか?すべての要件で使用する必要があります。それを裏付けるものを見つけることができませんでした。
RFC 2119 「要件レベルを示すためにRFCで使用するキーワード」は、要件に関するさまざまな単語の意味を詳しく説明しています。
このドキュメントのキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、 RFC 2119で説明されているように解釈されます。
このドキュメントから:
MUST
はREQUIRED
およびSHALL
と同等であり、定義が絶対的な要件であることを示します。MUST NOT
はSHALL NOT
と同等であり、仕様が完全に禁止されていることを示します。SHOULD
はRECOMMENDED
と同等です。これは、特定の要件を無視する正当な理由があることを意味しますが、その影響を考慮する必要があります。SHOULD NOT
およびNOT RECOMMENDED
は、特定の動作が許容可能または有用である可能性があることを意味しますが、その影響についても検討する必要があります。MAY
はOPTIONAL
を意味し、要件はtrulyオプションであることを意味します。オプションの要件を実装する場合と実装しない場合がある異なるシステムとの相互運用性を行う必要があります。このRFC SHOULD
に従って、内部ドキュメントと標準世界全体の間の通信の一貫性を確保するために実行してください。
shall
とmust
が別々のレベルのドキュメントに属しているという結論にどこで到達したかわからない。これは、私が知っているどのソースにも裏付けされていないかなり恣意的な違いです。
Shall
とmust
は字句的に同等です。必要なアクションです。
shall
を使用するかmust
を使用するかは、実際に書いている残りのドキュメントと、その特定の文の文法が何を意味するかによって異なります。
だから、はい、あなたは間違っています。しかし、shall
の代わりに常にmust
を使用することも間違っています。彼らは同じ程度の義務を表しています。
DO-178 または DO-254 ガイドラインの枠組みの中で作業している場合、これらには独自のrequirementsの独自の定義があり、- 派生要件。ただし、これらのガイドラインではどのWordを指定していません。 shall、should、mustは、要件の指定に使用する必要があります。
要件管理ツールが派生要件を自動的に指摘しない場合は、shallの代わりにmustを使用してこれらを機能要件と区別することは有益です。たとえば、派生要件の検証目的も満たされていることを示すため。これは、一見恣意的なドキュメント要件の理由として考えられます。
DO-178およびDO-254では、派生要件は実際にはnotがより高いレベルの要件から派生した要件を意味します。したがって、派生した要件は、本質的にトレーサビリティの新しいチェーンを開始します。
DO-178とDO-254はどちらも、アビオニクスソフトウェアと電子機器の開発に使用される商用ガイドライン文書であり、 www.rtca.org からのみ有料で入手できます。