System testing validates the fully integrated software product by evaluating end-to-end system specifications. The software is developed in units and interfaced with other software and hardware to create a complete computer system. Regression testing confirms that new modifications have not caused new bugs and that old bugs have not reappeared from added modules over time.