Among other things a requirements specification needs to be complete, traceable, consistent and unambiguous.
Below are some of the requirements from the project part of the EDA216 (Database tecnology) course. Specify
some (3) of the possible problems with these as well as some (2) of the positive aspects with regards to a good
1) "The report must be well structured, complete, easy to understand well formulated etc."
2) "The computerized system must be flexible and be able to meet our demands on usability and reliability"
3) "In the prototype implementation the simulated production and delivery data found in appendices
A-B shall be used."
4) "Orders must be registered in the database. For planning purposes we must have a facility to see all orders that
are to be delivered."
5) "A pallet is considered to be produced when the pallet label is read at the entrance to the deepfreeze
storage. The pallet number, product name, and date and time of production is registered in
the database. The pallet number is unique."
6) "We must be able to trace each pallet. For instance, we need to see all information about a pallet
with a given number (the contents of the pallet, the location of the pallet, if the pallet is delivered
and in that case to whom, etc.). We must also see which pallets that contain a certain product, and
which pallets that have been produced during a certain time interval."
7) "You must show that the relations are normalized according to your chosen normal form (if a relation
“obviously” is in BCNF you may say so, provided that you justify your statement)."
8) [ The report must contain ... ] "A cover sheet with the name of the project, your names, education programs,
and e-mail addresses. You must check mail to the e-mail addresses regularly (use EFD or CS addresses, preferably).
Also give the date of submission and complete instructions for running your program."
9) "We need an interface to the collection of recepies where we can study and update recepies"
1 point each is awarded for any reasonable motivated correct answer. Some possible problems and positive things are
1) "Etc." implies further requirements making this requirement incomplete.
1) Is hard to verify since no method of verification is provided.
1) "well structured", "easy to understand" are very vague statements making the requirement ambiguous.
2) "Flexible" is very ambiguous as well as hard to verify.
User interface specifcations ( 4 and 9 ) are often ambiguous unless explicitly specificed.
Here the specification is very loose.
6) Is not complete, it gives one the impression that more options about what to list needs to be implemented
although no clues are given as to what exactly those other options are.
7) "obviously" is ambiguous and quite possible many things seems easy for the developer that any other might
find complex and hard to understand.
4) Here we actually have traceability for the requirement for listing all orders.
5) Seems rather bullet proof specifying when a pallet is regarded as produced, what that has to be
registered and that the pallet number has to be unique. Complete that is.
8) Although full of various requirements it is complete and easy to verify. No parts leave room for a different interpretion.
3) Complete and verifyable given useable data specified in the appendixes.
Use the following requirements and usage diagram, for the project mentioned above, to produce a crudo matrix.
Use this matrix to identify at least two missing operations.
Production and packaging
- When a pallet is produced the appropriate amount of raw materials shall be subtracted from the storrage.
- A produced pallet should be added to the storage and to the database system as well, complete with production date
and every other available piece of information.
- One should be able to inspect pallets containing a certain type of cookie as well as list all the available
information for a specific pallet.
- When a pallet is loaded onto the delivery truck it should be marked as delivered and the timestamp should be
- At any given time one should be able to see the amount of pallets containing a specific product that has been
produced during a specified time period.
- All pallets produced during a specificed time period shall be possible to mark as blocked. Only non-delivered
pallets may be blocked.
- One should be able to list the amount of raw materials in stock, the date of the latest delivery of raw materials
and the amount of raw materials delivered.
- The system should list the currently registered recepies as well as offer the ability to add new ones. No updates
to the recepies will be made during production.
Solution and recommendations for correction
The solution should consist of a crudo matrix and a reasonable motivation why a function is identified as missing.
A complete crudo matrix gives 3 points. An incomplete one, that lacks several functions, but at least shows some
basic understanding of the concept gives 1 point.
The two or more identified missing functions gives 1 point each up to a maximum total of 2 points.
example crudo matrix
Ie, for recepie Update, Delete and Overview is missing.
For materials Create, Delete and Overview is missing.
For the pallets Read and Delete is missing.
|fill up raw||.||U||.|