skip to main content
article
Free Access

Teaching a first course on data structures: a software engineering approach

Published:12 March 1994Publication History
Skip Abstract Section

Abstract

We discuss our experience with integrating three key ideas of software engineering into our data structures course: formal specifications, information hiding, and bottom up programming. The idea of formal specifications is fostered by the introduction of a simple formal notation, which students use to describe their data structures and to validate their implementation. The idea of data abstraction is fostered by separating, in the very design of our course, the usage of data structures from their implementation. Finally the idea of bottom up programming is fostered by showing students how complex systems can be designed one layer at a time, where each layer refers exclusively to the layer immediately below it.

References

  1. 1 Booeh, G. Software Engineering with Ada. Second edition. Benjamin Cummings, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 Denning, P.J, D.E. Comer, D. Cries, M.C. Mulder, A.B. Tucker, A.J. Turner, and P.R. Young. Computing as A Discipline. Comm. of the A CM, volume 32, number 1 (January 1989), pp 9-23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 Dijkstra, E.W. The Structure of the "THE" Multiprogramming System. Communications of the ACM, vol 11, number 5, May 1968, pp 341-346. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4 Parnas, D.L. On the Criteria to be Used in Decomposing Systems into Modules. Communications of the A CM. December 1972. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 Mili, A. et al. Towards Strnc~nred Specifying: Theory, Practice and Applications. Ellis Horwood T,td, 1989.Google ScholarGoogle Scholar
  6. 6 Mills, H.D, V.R. Basili, J.D. Cannon and D.G. Hamlet. Principles of Computer Programming: A Mathematical Approach. Boston, Ma: Allyn ~md Bacon, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 Turner, A.3. Computing Curricula 1991. Comm. of the A CM, vol 34, number 6, (June 1991), pp 69--84. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Teaching a first course on data structures: a software engineering approach

              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 SIGCSE Bulletin
                ACM SIGCSE Bulletin  Volume 26, Issue 1
                March 1994
                410 pages
                ISSN:0097-8418
                DOI:10.1145/191033
                Issue’s Table of Contents
                • cover image ACM Conferences
                  SIGCSE '94: Proceedings of the twenty-fifth SIGCSE symposium on Computer science education
                  March 1994
                  414 pages
                  ISBN:0897916468
                  DOI:10.1145/191029

                Copyright © 1994 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 12 March 1994

                Check for updates

                Qualifiers

                • article
              • Article Metrics

                • Downloads (Last 12 months)14
                • Downloads (Last 6 weeks)7

                Other Metrics

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!