Retrieved from https://studentshare.org/information-technology/1482639-systematic-literature-review
https://studentshare.org/information-technology/1482639-systematic-literature-review.
Non-functional requirements (NFRs) reduce the risk of software developmental failures. Despite the importance of non-functional requirements, a lot of software engineers are more focused on functional requirements (FRs) than NFRs. To learn more about the different perceptions of IT managers on the safety, performance, and non-functional security requirements of a software system in different cultural environments, a one-on-one research interview with a couple of IT managers who are currently working in two different companies was conducted.
Although IT managers do acknowledge the importance of NFRs, each one of them has a different approach and ideas on how IT managers can effectively increase the safety, security, and overall performance of the software. To be able to create and develop a useful software system, it is necessary to identify what the customers want, analyze how to create software requirements, specify the software requirements, establish and manage the software requirements, verify and validate the systems’ requirements, maintain the usability and reliability of the system, and finally document the process among others (Leffingwell and Widrig, 2003, p. 69). Despite undergoing the long and tedious process, there are still quite a lot of cases wherein software engineers would end up finding errors in the system requirement specifications.
As mentioned by Firesmith (2007, p. 18), the common errors in the system requirements include: “ambiguous, not cohesive, incomplete, inconsistent, incorrect, out-of-date, .irrelevant to the system being build, lacking in necessary metadata such as priority and status, untraced, in a form that is unusable to the requirements many stakeholders, unverifiable, and unvalidatable”.Aside from causing bottlenecks in the software developmental process, unnecessary errors in the software requirements can be very costly on the part of the software developers.
Through proper management, systems engineering, and goal modeling, some of these problems can be easily prevented. For instance, aside from increasing fault tolerance and improving its survivability, goal modeling has been considered a significant part of software engineering because it provides a higher assurance that the software system will be safe and secure (Wirsing, Knapp and Balsamo, 2004; p. 327).
...Download file to see next pages Read More