1. Poor
requirements-
If requirements are unclear, incomplete, too general, or not testable, there
will be problems
2. Unrealistic
schedule-if
too much work is crammed in too little time, problems are inevitable
3. Inadequate testing- no
one will know whether or not the program is any good until the customer
complains or system crash
4. Featuritis-requests to pile on new
features after the development is underway; extremely most common
5. Miscommunication- if developers don’t
know what’s needed or customer’s have erroneous expectations, problems are
guaranteed
Testing purpose and objectives:
1. Finding the defects which
may get created by the programmer while developing the software and prevent the
defects
2. To make sure that the end
result meets the business and user requirements
3. To ensure that it
satisfies the BRS (Business requirement specification) and SRS (System
requirement specification)
4. To gain the confidence of
the customers by providing them a quality product
Software testing makes
sure that the testing is being done properly and hence the system is ready for
use. Good coverage means that the testing has been done to cover the various
areas like the functionality of the application, compatibility of the
application with OS, hardware and different types of browsers, performance
testing to test the performance of the application and load testing to make
sure that the system is reliable and should not crash or there should not any
blocking issues
Software
testing is necessary because we all make mistakes. Some of those mistakes are
unimportant, but some of them are expensive or dangerous.
1. It is essential since it
makes sure of the customer’s reliability and their satisfaction with the application.
2. Loss of money-this can
include losing the customers
3. Loss of time
4. Damage to business
reputation
5. The cost of fixing the
bugs is larger if testing is not done in early stage & bugs found in later
stages
6. As it's not possible
makes it software application is defect free, but testing will be necessary