発注したソフトウェアが要求事項を満たしていることをユーザが自ら確認するテストとして, 適切なものはどれか。
平成30年度 春期 ITパスポート試験 問46
This question's explanation and your answers so far.
問 46
- ア
正解 The correct answer is “ア Acceptance testing”. Acceptance testing is a test performed at the final stage of software development, in which the client—that is, the user side—takes the lead and confirms by themselves whether the delivered software has been built according to the contract and the requirements. It exactly matches the condition in the question, “the user themselves confirms that the ordered software satisfies the requirements”, so ア is appropriate. Unlike the various tests carried out by the developer side, its key feature is that the client and the user decide whether to accept the delivered product.
Incorrectイ
Integration testing combines multiple modules that have already passed unit testing, and the developer side confirms whether the interfaces and coordination between modules work correctly. It is carried out partway through the development process and is not a test in which the user confirms that the requirements are satisfied, so it is incorrect.
Incorrectウ
System testing is a test in which the developer side (the vendor side) comprehensively verifies whether the entire software, after integration is complete, operates according to specifications in terms of performance, functionality, load, and so on. It is not the acceptance process in which the user confirms by themselves, so it is incorrect.
Incorrectエ
Unit testing is a test in which the developer individually confirms whether each of the smallest-unit modules that make up a program works correctly. It is carried out at the earliest stage of development and has nothing to do with the user confirming the requirements, so it is incorrect.
- Keep in mind that acceptance testing is a test in which the client and the user take the lead to make the final confirmation of whether the delivered product satisfies the requirements and the contract.
- Organize and memorize the order of the test processes and who carries them out: unit testing → integration testing → system testing (up to here is the developer side) → acceptance testing (user side).