Software Requirements Engineering: An Overview
Daniel Jitnah, Jun Han, Phillip M Steele · 2007
Software requirements engineering can be considered as the process by which the features of software systems as perceived by the user are established. Software systems are destined to be embedded into organisational settings, which impose constraints on performance and operational characteristics. Determining how the software should behave within those constraints requires a thorough understanding of the software functionalities, its attributes, the complexity of the interaction between them, and its interaction with the user environment. The primary source of information is the user (organisation). However it is often the case that users inadequately elicit software requirements and in a form inappropriate to the software developers. Software requirements have to be established by an iterative refinement process of elicitation, analysis, modelling and representation. An important but intractable issue is that of knowledge representation and management, and specially domain knowledge. ...