The various kinds of requirements are categorized as follows:
- Must-have requirements: These are requirements that must be present inside a system. If any are missing, their absence will affect a critical functionality in the system.
- Should-have requirements: These are requirements that, if present, will enhance the functionality of the application.
- Could-have requirements: These are requirements that are noncritical in nature. If they are missing, they won't have any impact on the application's functionality.
- Requirements wish list: These are requirements that the stakeholders might want to see in future updates of the application.