It may take serious effort to determine if an application has significant unexpected or hidden functionality, and it would indicate deeper problems in the software development process. If the functionality isn't necessary to the purpose of the application, it should be removed, as it may have unknown impacts or dependencies that were not taken into account by the designer or the customer. If not removed, design information will be needed to determine added testing needs or regression testing needs. Management should be made aware of any significant added risks as a result of the unexpected functionality. If the functionality only effects areas such as minor improvements in the user interface, for example, it may not be a significant risk.
That functionality need to be discussed within the team (QA and Development) to measure the impact on the application and also indicating the risk. if there is not enough time left then better to remove the function and declare it has enhancement for the future release.
Validating the functionality of the application with respect to the client business requirements is called functionality testing During functionality testing we are validating the oral functionality of the application that include major functionality
In this case, functionality of the application means 1.behavioral coverages 2.input domain coverages 3.calculation coverages 4.error handling coverages 5.back end coverages 6.service level coverages by following this above coverages test engineers can go for validating all customer business requirements.
a tester job is to test according to the requirement.A Traceability Matrix is created to map requirement to test cases.. 1)if there is no requirement,then a tester is not going to write any test cases for that functionality. 2)if the requirement is missing which is mandatory for the customer,then its a bug and it is the BA-BUSINESS ANALYST who have not taken the requirement or the customer have not mentioned about the requirement...so in this case there will be lot of rework where the requirement,design,codes required to be changed and tested.. 3)if the application is already developed then we should remove that application if its not a major application or lot of rework needs to be done...