The importance of Requirements Engineering (RE) has been well recognized by the research community in the last decade. There is no doubt to say that requirements phase is the foundation of the entire Software Development Life Cycle (SDLC) on which the entire software is built. With the proper management of various activities falling under requirements phase, a project can deliver the right solution within the time and budget. Requirement elicitation, requirement specification, and requirement validation are the important stages to assure the quality of requirement documentations. Out of these, elicitation is the first major activity, which requires proper attention by Requirement Engineers and other related stakeholders. Literature reveals various elicitation techniques, which can be used for the purpose depending upon the nature of project/s. In this paper, an attempt is made to cover all the major elicitation techniques along with their significant aspects at one place. Such a review would enable the concerned stakeholders to understand and select the most appropriate technique to be used for their project/s.
There is no doubt to say that researchers have made significant contributions by developing numerous tools and techniques of various Requirements Engineering (RE) processes but at the same time, the field still demands further research to come up with the novel solutions for many ongoing issues. Some of the key challenges in RE may be the issues in describing the system limit, issues in understanding among the different groups affected by the improvement of a given system, and challenges in dealing with the explosive nature of requirements. These challenges may lead to poor requirements and the termination of system progress, or else the disappointing or inefficient result of a system, which increases high maintenance costs or suffers from frequent changes. RE can be decomposed into various subphases: requirements elicitation, specification, documentation and validation. Through proper requirements elicitation, RE process can be upgraded, resulting in enriched system requirements and possibly a much better system. Keeping in view the importance of the area, major elicitation techniques have already been identified in one of our previous papers. This paper is an extension of our previous work and here, an attempt is made to identify and describe the recurring issues and challenges in various requirements elicitation techniques.
People attack software deliberately to steal highly sensitive as well as personal information with the sole intention of carrying out well-funded, destructive and unethical goals that could harm individuals, nations or the whole world. Available technological controls could be implemented to tighten access and minimize persistent threats but the complete solution of secure software could only be provided by changing the behavior of the people involved. This can be achieved through effective security awareness techniques implemented by individuals because they are, in most cases, the first target for gaining access into the system. This paper highlights the utility of security awareness with the help of recent published work for building more secure software. In addition, areas that need further investigations are identified in the paper.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.