ロバストネス (コンピュータ)
一般に、考えられる入力と入力の組み合わせが膨大な量であるため、考えられる障害のすべてのポイントを網羅する堅牢なシステムを構築することは困難である.。 すべての入力と入力の組み合わせはテストに時間がかかりすぎるため、開発者はすべてのケースを網羅的に実行できない。代わりに、開発者はケースの一般化を試みる。 たとえば、いくつかの整数値を入力する場合、入力は負の数、ゼロ、正の数の場合がある。これらの数値でソフトウェアをテストする場合、開発者はすべての実数のセットを3つの数値に一般化する。これはより効率的で管理しやすい方法だが、失敗することもある。テストケースの一般化は、失敗、具体的には無効なユーザー入力による失敗に対処するための1つの手法の例である。システムは通常、ネットワークからの切断など、他の理由でも失敗する可能性がある。
とにかく、システムが複雑化しても、発生したエラーを適切に処理する必要がある。成功したシステムについての多くの事例がある。最も堅牢なシステムのいくつかは進化させて、新しい状況に簡単に適応させることができる。