skip to main content
article
Free Access

Estimating understandability of software documents

Published:01 July 1996Publication History
Skip Abstract Section

Abstract

Software developers and maintainers need to read and understand source programs and other kinds of software documents in their work. Understandability of software documents is thus important. This paper introduces a method for estimating the understandability of software documents. The method is based on a language theory according to which every software document is considered to contain a language of its own, which is a set of symbols. The understandability of documents written according to different documentation practices can be compared using the rules of the language theory. The method and the language theory are presented by using source programs with different naming styles as example documents. The method can, at least theoretically, be applied to any kind of document. It can also be used to explain the benefits of some well-known software design methods.

References

  1. Bennett, K., Cornelius, B., Munro, M., and Robson, D. Software Maintenance. In: McDermid, J. A. (ed.) Software Engineer's Reference Book, Butterworth-Heinemann, Oxford, England, 1991, chapter 20, 18 pages.Google ScholarGoogle Scholar
  2. Carter, B. On Choosing Identifiers. ACM SIGPLAN Notices, Vol. 17, No. 5. May 1982. pp. 54-59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Coad, P. and Yourdon. E. Object Oriented Analysis. Prentice-Hall, Englewood Cliffs. New Jersey, 1990. 223 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Curtis, B., Krasner. H., and Iscoe. N. A Field Study of Software Design Process for Large Systems. Communications of the ACM. Vol. 31, No. 11. November 1988. pp. 1268-1287. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Fenton. N. How Effective are Software Engineering Methods? Journal of Systems and Software, Vol. 22. No. 2. 1993. pp. 141-146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Fromkin, V. and Rodman, R. An Introduction to Language, Fourth Edition. Holt. Rinehart and Winston. New York, 1988, 460 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Hall, W. E. and Zweben. S. H. The Cloze Procedure and Software Comprehensibility Measurement. IEEE Transactions on Software Engineering, Vol. SE-12. No. 5, 1986, pp. 608-623. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Ibrahim, A. M. Acronyms Observed. IEEE Transactions on Professional Communication, Vol. 32, No. 1, 1989. pp. 27- 28.Google ScholarGoogle ScholarCross RefCross Ref
  9. Keller, D. A. Guide to Natural Naming. ACM SIGPLAN Notices, Vol. 25, No. 5, May 1990, pp. 95-102. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Laitinen, K. and Seppänen, V. Principles for Naming Program Elements, A Practical Approach to Raise Informativity of Programming. In: Part I of Proceedings of InfoJapan'90 International Conference, Information Processing Society of Japan, 1990, pp. 79-86.Google ScholarGoogle Scholar
  11. Laitinen, K. and Mukari, T. DNN-Disciplined Natural Naming. A Method for Systematic Name Creation in Software Development. In: Proceedings of 25th Hawaii International Conference on System Sciences, Vol. II: Software Technology, IEEE Computer Society Press. Los Alamitos. California, 1992. pp. 91-100.Google ScholarGoogle Scholar
  12. Laitinen, K. Document Classification for Software Quality Systems. ACM SIGSOFT Software Engineering Notes, Vol. 17, No. 4, Oct. 1992, pp. 32-39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Logsdon, D. and Logsdon, T. The Curse of the Acronym. In: Proceedings of the International Professional Communications Conference. IEEE. 1986. pp. 145-152.Google ScholarGoogle Scholar
  14. Page-Jones, M. The Practical Guide to Structured Systems Desing, Second Edition, Prentice Hall. Englewood Cliffs, 1988. 249 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. ReaGeniX. ReaGeniX: Real-Time Application Generator-User's Manual, VTT Electronix, Oulu, Finland. 1994, 32 pages.Google ScholarGoogle Scholar
  16. Sheppard, S. B., Curtis, B., Milliman, P., and Love, T. Modern Coding Practices and Programmer Performance. Computer, Vol. 12. No. 12. 1979. pp. 41-49.Google ScholarGoogle Scholar
  17. Shneiderman, B. Software Psychology, Human Factors in Computer and Information Systems. Winthrop Publishers. Cambridge. Massachusetts. 1980. 320 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Teasley, B. E. The Effects of Naming Style and Expertise on Program Comprehension. International Journal of Human-Computer Studies, Vol. 40. No. 5, 1994. pp. 757-770. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Weiser, M. and Shneiderman, B. Human Factors of Computer Programming. In: Handbook of Human Factors. Salvendys, G. (editor), John Wiley and Sons, New York. 1987, pp. 1398-1415.Google ScholarGoogle Scholar
  20. Weissman, L. M. A Methodology for Studying the Psychological Complexity of Computer Programs. PhD-Thesis. Department of Computer Science, University of Toronto, 1974, 231 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Welsh, J. and Han, J. Software Documents: Concepts and Tools. Software - Concepts and Tools, Vol. 15, No. 1, 1994, pp. 12-25.Google ScholarGoogle Scholar
  22. Wittgenstein, L. Philosophical investigations, Basil Blackwell, Oxford, 1953, 250 pages.Google ScholarGoogle Scholar
  23. Yngve, V. H. Linguistics as a Science. Indiana University Press, Indianapolis, 1986, 120 pages.Google ScholarGoogle Scholar
  24. Yourdon, E. Modern Structured Analysis. Prentice-Hall, Englewood Cliffs, New Jersey, 1989, 717 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Estimating understandability of software documents

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGSOFT Software Engineering Notes
        ACM SIGSOFT Software Engineering Notes  Volume 21, Issue 4
        July 1996
        100 pages
        ISSN:0163-5948
        DOI:10.1145/232069
        Issue’s Table of Contents

        Copyright © 1996 Author

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 July 1996

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader