AND MATHEMATICAL SCIENCES
ITECH3501/ITECH6501 Principles of Software Engineering
1. In which development situations would it be unnecessary or even detrimental to define requirements?
Some of non-functional requirements are not necessary for some development situation. Sometimes team has to develop some small functionality, for example some update or additional function, etc. In this case follow to all non-functional requirements bring excess price and time spending.
2. What are the most frequent types of requirement errors and why are they critical for the final product?
According to TechRepublic.com’ article, there are 5 most frequent types of requirement problems: • Usually customers do not know what they exactly want • Requirements alter during all project lifecycle
• Customers do not understand real timelines
• Communication problem between customers, engineers and project managers • Development teams do not understand customer company politics. (TechRepublic.com, 2007) All of these problems may result of wrong requirements gathering, of course it will be a result of serious errors in requirements. The errors are causes of extra costs or even a project failure.
3. What are non-functional requirements and how do they relate to functional requirements?
“A non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with functional requirements that define specific behavior or functions… Non-functional requirements are often called qualities of a system” (Wikipedia, 2013).
There are 49 examples of non-functional requirements:
Accessibility, Audit and control, Availability, Backup, Capacity, Certification, Compliance,...