In: Computer Science
Consider the following requirement someone developed
for a particular system, and then answer the three questions at the
bottom.
"Students must be able to see a list of all subjects being offered in a given year and be able to select the ones that interest them so that they can enrol for the next year of study, and if they don’t do it before a particular date then they will have to miss out and try in another semester because the class might be too full, but pre-requisites have to be satisfied."
a) Is this requirement concise? Give reasons for your
answer.
b) Is this requirement atomic? Give reasons for your answer.
c) Is this requirement testable? Give reasons for your answer
"Students must be able to see a list of all subjects being offered in a given year and be able to select the ones that interest them so that they can enrol for the next year of study, and if they don’t do it before a particular date then they will have to miss out and try in another semester because the class might be too full, but pre-requisites have to be satisfied."
a) Is this requirement concise? Give reasons for your answer.
Answer: The above given requirement is not Precise and not concise, because the statement it self has more than 3 lines and it has many actions and predicates/constarints to full fill the selection of Subjects for the next Academic year. Here the requirement has the following activities:
i) List all the Subjects as per the BOS of Curriculam for next Academic year and make available to students in the registration form link
ii) Then Students have to give their options of selection of subject and submit through the registration form
iii) This Registration link is active once in each semester by specifying the Last date of receiving course registration
form
iv) During that deadline eligible students have to submit subject selection options
v) Remaining students have to wait until next semester for registration link active
vi) Check the Pre requesit for subject conformation of next academic year
So it is not concise one.
.b) Is this requirement atomic? Give reasons for your answer.
Answer: No, It is not atomic. Atomic means entire requirement activities must be satisfied in a single step and it is not divisible into smaller activities. But this requirement is elaborate one which needs Subject List to be shown to students, then Make link active for registration for a specific period of time, then Students have to give their options, then Admin office has to validate students eligibility(pre requesits), then accept valid options only.Then Repeat the same scenarion at next semester.
Atomic means a small and indivisible opeartion. So it is not
atomic
c) Is this requirement testable? Give reasons for your answer
Answer: Yes, this requirement is Testable. First Subjects will be validated, then Active status of Link will be enabled then Check boxs for Students to be tested to receive options,then options will be accepted on testing eligibity on students validation then prepare list of student responses recieved and tested against input constarints.
This requirement needs more test cases and test report can ge generated for each test case(constraint)