In: Computer Science
Please identify each property/requirement as a functional or non-functional.
For every non-functional property/requirement, please add a remark to explain why.
Ticket Booking System
Property/Requirement
F: Functional
NF: Non-functional
1 The system must perform the backup on a daily basis and weekly basis.
2 The users must be allowed to pick a web browser of their choice.
3 Users can call to book tickets.
4 The system must complete the request for booking a ticket in less than 5
seconds.
5 The system must be able to support at least 50 concurrent users.
6 Every user must either have or create an account before booking tickets.
7 The payment made by the user must be verified.
8 The system must generate daily report in pdf or MS Excel format.
9 Users must not be allowed to share their information with each other.
10 All programs of the system must be implemented in Java.
Solution : First, let's discuss what is Functional and Non-Functional requirements while designing a software system.
(A) Functional requirements : Functional requirements are those requirements which describes what a software system should / must do. Or we can say that the Functional requirements describe or represent the functionalities, and behavior of the software system.
(B) Non-functional requirements : Non-functional requirements generally refer to the constraints which are applied to the system for performing functional requirements. i.e., The non-functional requirements generally evaluate or elaborate on the performance behavior or characteristic of the software system. Or we can say that Non-functional requirements apply the constraints under which the software systems have to work.
Now, let's identify each property/requirement as a functional or non-functional :
1. The system must perform the backup on a daily basis and weekly basis : Functional ( because this is a necessary step which a software system should / must do )
2. The users must be allowed to pick a web browser of their choice : Functional ( because this is a necessary step which a software system should / must do )
3. Users can call to book tickets : Functional ( because this is a necessary step which a software system should / must do )
4. The system must complete the request for booking a ticket in less than 5 seconds : Non-functional ( because this is a necessary constraint under which the software system have to work )
5. The system must be able to support at least 50 concurrent users : Non-functional ( because this is a necessary constraint under which the software system have to work )
6. Every user must either have or create an account before booking tickets : Functional ( because this is a necessary step which a software system should / must do )
7. The payment made by the user must be verified : Functional ( because this is a necessary step which a software system should / must do )
8. The system must generate daily report in pdf or MS Excel format : Functional ( because this is a necessary step which a software system should / must do )
9. Users must not be allowed to share their information with each other : Functional ( because this is a necessary step which a software system should / must do )
10. All programs of the system must be implemented in Java : Non-functional ( because this is a necessary constraint under which the software system have to work )