A serves as a training mechanism for users
B aids in building system test plans and scenarios
C aids in determining the feasibility and usefulness of the system before high development costs are incurred
D allows users and developers to experiment with the software and develop an understanding of how the system might work
E all of the above