Knowledge-based systems application to reduce risk in software requirements

  • James D. Palmer
  • Margaret Myers
Reasoning Techniques Under Uncertainty
Part of the Lecture Notes in Computer Science book series (LNCS, volume 313)


The development of complex large scale software systems begins with the elicitation and explication of requirements definitions between users and software systems engineers. Errors at this phase may account for 35 to 75 percent of the errors that will occur in software development. The development of requirements is probably flawed through failure in the processes of critical thinking on the part of the user and the design team. This leads to volatility in requirements in the form of imprecision, multiplicity, and conflict in quality goals. There exists a substantial need to provide a means for verification and validation (V&V) of requirements, particularly those factors that relate system characteristics to functionality factors. Risk related to these factors must be resolved if the error rate is to be reduced. Functionality goals have been classified and relationships established, a conflict matrix has been prepared, and a rule-set to apply the inference model has been constructed. The results of this work, on development of a knowledge-based system to resolve questions of risk in software requirements, show that substantial improvement in risk reduction is feasible by application of a rule-based system to reduce requirements volatility.


Critical Thinking Inference Model Software Requirement Quality Goal Quality Framework 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Selected Bibliography

  1. Balzer, R., "A 15 Year Perspective on Automatic Programming," IEEE Transactions on Software Engineering, Vol.11, No.11, November 1987.Google Scholar
  2. Beam, W.R., Palmer, J.D., and Sage, A.P., "Systems Engineering for Software Productivity," IEEE Transactions on Systems, Man, and Cybernetics, Vol 17, No.2, March/April 1987.Google Scholar
  3. Charette, R.N., Software Engineering Environments: Concepts and Technology, McGraw Hill Book Co., 1986.Google Scholar
  4. Cohen, P.R., Heuristic Reasoning About Uncertainty: An Artificial Intelligence Approach, Pitman, 1985.Google Scholar
  5. Cooke, N.M., and McDonald, J.E., "A Formal Methodology for Acquiring and Representing Expert Knowledge," Proceedings of the IEEE, October 1986.Google Scholar
  6. Dressel, P and Mayhew, L.B. General Education: Exploration in Evaluation, Final Report of the Cooperative Study of Evaluation of General Education, American Council on Education, Washington, D.C., 1954Google Scholar
  7. Kandel, Abraham, Fuzzy Mathematical Techniques with Applications, Addison-Wesley Publishing Co., 1985.Google Scholar
  8. Palmer, J.D., "Uncertainty and Probabilistic Inference in Software Requirements Definitions," to appear in Large Scale Systems, 1988.Google Scholar
  9. Pressman, R.S., Software Engineering: A Practioner's Approach, McGraw Hill Book Co., 1982.Google Scholar
  10. Stephanou, H., and Sage, A.P., "Perspectives on Imperfect Information Processing," IEEE Transactions on Systems, Man, and Cybernetics, Vol.17, No.5, September 1987.Google Scholar
  11. Watson, G. and Glasser, E.M., Critical Thinking Appraisal Manual, Harcourt, Brace, and World, New York, 1964.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • James D. Palmer
    • 1
  • Margaret Myers
    • 1
  1. 1.School of Information Technology and EngineeringGeorge Mason UniversityFairfax

Personalised recommendations