Development of a Requirements Classification Scheme for Automated Support of Software Development
DOI:
https://doi.org/10.7152/acro.v1i1.12474Abstract
Computer hardware technology has advanced to the point where it is feasible to develop software systems that exceed one million lines of code. Software engineering, the discipline concerned with developing these systems, typically includes the following phases in the software development cycle: requirements phase, design phase, implementation phase, test phase and the installation and checkout phase [IEEE, 1983]. This paper is concerned with a classification scheme to support knowledge-based analysis of software requirements. Because requirements in these large systems can become quite numerous and complex, it is a very difficult task to analyze them in order to identify potential problems, i.e., problems that may arise in later phases, such as incompleteness, conflict, ambiguity, and absence of testability. Current software productivity tools such as CASE (Computer-Aided Software Engineering), executable requirements languages, prototyping tools, and test harnesses provide much assistance in later phases of software development, but not much for the requirements phase. It is well-known in software engineering that the most costly and profound software errors are likely to occur at the requirements definition phase, early in the software development cycle. The productivity tools mentioned earlier either work from code which has been developed for the system. or work with user requirements statements which have been translated into a restricted, formal language. There are several problems with translating user requirements into a formal language very early in the project First, it is difficult for the user to understand requirements as they have been translated and interpreted by the systems analyst. Second, the systems analyst may have made wrong assumptions or interpretations in the process of translation. Finally, formal languages do not have any provision for ambiguity, and early in the requirements phase, ambiguities may exist, to be worked out as more is learned about the system.Downloads
Published
1990-10-06
Issue
Section
Papers
License
Authors who publish with this journal agree to the following terms:- Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
- Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
- Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See The Effect of Open Access).