Alpha testing is pre-release testing conducted at the developer's site by end user representatives or independent test team. It happens before beta testing (which is at users' own sites) and before general release. Option A incorrectly states post-release, option B is wrong (unit testing comes first), and option D describes beta testing.