Functional Requirements must include information about
Who will perform the function?
the admin can delete any user.
the student will submit the paper online on a university CMS
the student can check his result by entering his rollno.
the user can add a friend
the user can remove the friends
Who will perform the function on what?
the user can upload a profile picture
the user can send a message
the user can read a message
the user can delete a message
the user can add a watermark on any page.
What function will perform?
the librarian can search for a book
the student can add courses
What will be the input?
the user can login after matching his email address and password.
How it will process?
The teacher can add final term marks in CMS if mid-term marks are already published.
What will be the output?
the student can see his result in a text on the result page after submitting the rollno.
How to get functional and non-requirements from a case study?
Suppose you are working as a freelancer and you open fiver.com. Here, you will see that clients are interested to hire a person to complete their project but they are unable to send you a complete list of functional requirements. They just send you a scenario-based case and you need to study it and to understand it and finally to write the functional requirements according to the given case.
Example of What client wants?
Hi, My wordpress website is running slow, especially when browsed from IOS devices. Some plugins need an update, pictures are slow in loading and proper optimization for the speed is needed. It’s not a complicated website, just a portfolio of my work. I need someone to look at it and fix the issues above. Thank you.
Now, we need to understand and write functional requirements from this given case study. If we can understand this case study better, we can convince our client to hire us.
Now, let’s try to collect functional requirements from this case study.
Functional Requirement 1:The website must be optimized for speed.
Functional Requirement 2: All pictures must be optimized.
Functional Requirement 3: All expired plugins must be updated
Common mistakes of students while writing the functional requirements
Question received from one of my readers
I saw your video regarding “How to write functional requirements”, so can you please help me with this? This question came up in my paper so I want to confirm if I wrote it correctly or wrong. The case study says “To set up a profile, the user will enter a name, email, and mobile number”So according to this case study, I wrote functional requirements as:“The user shall be able to enter his name”“The user shall be able to enter his email, (constraint) the email must include @ and . (dot)”“The user shall be able to enter his mobile number, (constraint) entry must be numbered”So are these requirements with their constraints correct? Since the case study did not mention the @ sign, dot, or numbers. So do we write it in the functional requirements or not? Because logically, an email can not exist without @ and a number can not exist without a number. Tell me to know this please, I would be very grateful! Jazakallah Khair!
In the Case study, the customer does not show any interest to mention the special constraints, so as a software engineer, we can imagine that a programmer has enough knowledge to guess that person’s name is in characters, email must have @ sign. Similarly mobile numbers as integers.
So there is no need to mention the requirements about constraints of the given requirements. It’s a very understood thing for a programmer or a software engineer.
So, we can write this functional requirement as below;
The user will enter a valid name, email, and mobile number to signup and create a profile.