システムのセキュリティはどこまでやってもこれで完璧だということは考えられないようです。それはソフトウエアは人間が作るものであり、デジタルなものであるからと言われています。特に長期で使うシステムの場合、未来永劫セキュリティが今の技術で保てるという保証はまったくありません。そのため、システム開発においてセキュリティは現段階でのコストや開発期間に合わせて適切なものを選ぶということになります。
セキュリティ内容を決める作業は要求定義と外部設計の段階で行われます。要求定義は細かいことを決めることはほとんどなく、クライアントからの要望をまとめる作業ですが、セキュリティにおいてクライアントの協力が必要な案件については要求定義書で同意を取るといことになります。外部設計では要求定義書の内容なら実現可能なセキュリティ案を確定していきます。ハードウエアを利用するならこの段階で決まることが多いようです。
ソフトウエアでの実現の場合は概略のみの決定となります。システムのセキュリティは年々バージョンアップすることが求められる場合もありますが、要求定義書で指示されていない場合には外部設計の段階で指摘をする場合もありますが、追加機能なのか、保守案件なのかはこの段階で決めることが必要です。追加コストが必要になる場合、クライアントの了承を後から得られることは少ないため、遅くとも設計段階で確定させないと商談自体が危なくなることも多いようです