1) Functional requirements.
1. The phrase "functional requirements of a system" describes the functionality of a system functionality of any system depends on the purpose of its manufacturing to a greater extent and on the other hand, the people using it and also the organization developing it to quite lesser extent hence, it describes the detailed scenario of system functionality.
2. As said, the functionality of a given system depends on the purpose of its manufacturing to a greater extent, hence, this scenario can be easily visualized by predicting an example system development.
3. Hence, in this aspect let us consider an "on-line pizza ordering system".
4. In this example, the system should be capable of providing three major functional requirements.
5. It should be easily browsable.
6. The users should be capable of making the right selection of the type of pizza.
7. At the end of the order, the users should be provided with a unique id.
8. These functional requirements can also be considered under the user requirements specifications.
9. The above requirements only provide abstract information through which it can be further elaborated as,
10. The system can provide facilities to users to include the type of ingredients in the pizza.
11. It should facilitate users to provide his/her credit card numbers in the most secured manner.
12. The system should accept users' place of delivery in the form of his/her house address, their street numbers or road numbers, etc.
13. It is often an observed software engineering practice that, the inappropriate supply of requirements leads to unpredictable errors which have often troubled the end-users who are using the system.
14. One of the reasons for such error-prone applications would be the omission of essential requirements for the sake of the developer's own interest.
15. Hence, while supplying the functional requirements one has to remember two aspects completeness and consistency.
16. These two phases through look quite similar, but hey do have different meaning completeness when considered along with functional requirements specifications reflect that this specification includes all the requirements essential for developing a given application.
2) Non-functional requirements.
1. As the name describes, these are the requirements that are not directly concerned with the specific function delivered by the system. These are constraints on the services or functions offered by the system. They often apply to the system as a whole. For example.Reliability, Performance, etc.
2.therefore, they are more critical than functional requirements.
3. For example, a user tries to adjust when a system doesn't meet his specific needs but failing to meet a non-functional requirement can let him not to use the system.
4. Also while dealing with nonfunctional requirements of a system one has to remember that it not only deals with the end product or the system but also its process of manufacturing.
5. There are many reasons for the outcome of nonfunctional requirements, these are listed below,
1.Budget constraints.
2. Inadequate user needs.
3.Needs for interpretability with other software or hardware systems.
4.Due to safety regulations or privacy legislation.
5.Strong organizational policies.
