skip to main content
10.5555/369274.369298guideproceedingsArticle/Chapter ViewAbstractPublication PagesccscConference Proceedingsconference-collections
Article
Free Access

Software engineering throughout a traditional computer science curriculum

Published:13 October 2000Publication History

ABSTRACT

As software engineering (SE) is becoming increasingly important as a discipline for computing professionals, so is it becoming an increasing emphasis in undergraduate computing education. The curricular revisions described here represent an attempt to incorporate SE principles throughout an undergraduate curriculum in Computer Science (CS). The emphasis here, however, is not one of wholesale overhaul into a SE program, possibly to the detriment of other strengths in the previous curriculum. Rather this is a non-radical augmentation and change of focus in certain aspects of a strong, but somewhat traditional CS curriculum.

References

  1. Behforooz, Ali and Hudson, Frederick J., Software Engineering Fundamentals, Oxford University Press, New York, 1996. Google ScholarGoogle Scholar
  2. Booch, Grady, "The Future of Software," Opening Address of the Fifth Annual CCSC Rocky Mountain Conference, October 17-18, 1996.Google ScholarGoogle Scholar
  3. Brooks, Frederick, "No Silver Bullet -- Essence and Accident in Software Engineering," in The Mythical Man-Month: Essays on Software Engineering (Anniversary edition), Addison-Wesley Publishing Company, New York, 1995.Google ScholarGoogle Scholar
  4. Dawson-Howe, Kenneth M., "Organization of Final Year Projects," SIGCSE Bulletin, Vol. 28, no. 3, September 1996, p. 2. Google ScholarGoogle Scholar
  5. Denning, Peter J. et al., "Computing as a Discipline," Communications of the ACM, Vol. 32, no. 1, January 1989, p. 9. Google ScholarGoogle Scholar
  6. Gibbs, Norman, "The SEI Education Program: The Challenge of Teaching Future Software Engineers," Communications of the ACM, Vol. 32, no. 5, May 1989, p. 594. Google ScholarGoogle Scholar
  7. Miles, Gail, "One Approach for Teaching Software Engineering Across the Undergraduate Computer Science Curriculum," Computer Science Education, Vol. 1, no. 1, 1988, p. 53.Google ScholarGoogle Scholar
  8. Miller, Keith, "Integrating Computer Ethics into the Computer Science Curriculum," Computer Science Education, Vol. 1, no. 1, 1988, p. 37.Google ScholarGoogle Scholar
  9. Myers, J. Paul, Jr., "Need Assessment in Computer Science Curriculum Development," The Journal of Computing in Small Colleges, Vol. 14, no. 4, May 1999.Google ScholarGoogle Scholar
  10. Pierce, Margaret Anne and Henry, John W., "Computer Ethics and Social Issues Case Analysis: An Environmental Algorithm," SIGCSE Bulletin, Vol. 28, no.4, December 1996, p. 50. Google ScholarGoogle Scholar
  11. Poole, Bernard john, "Undergraduate Software Engineering: The Fruits of Experience," SIGCSE Bulletin, Vol. 23, no. 2, June 1991, p.15. Google ScholarGoogle Scholar
  12. Pressman, Roger, Software Engineering: A Practitioner's Approach (3rd edition), Instructor's Manual, McGraw-Hill, New York, 1992. Google ScholarGoogle Scholar
  13. Sommerville, Ian, Software Engineering (5th ed.), Addison-Wesley Publishing Company, New York, 1995. Google ScholarGoogle Scholar
  14. Song, Ki-Sang, "Teaching Software Engineering Through Real-Life Projects to Bridge School and Industry," SIGCSE Bulletin, Vol. 28, no.4, December 1996, p. 59. Google ScholarGoogle Scholar
  15. Tucker, Allen B. et al., "Computing Curricula 1991: A Summary of the ACM/IEEE-CS Joint Curriculum Task Force Report," Communications of the ACM, Vol. 34, no. 6, June 1991, p. 68. Google ScholarGoogle Scholar

Index Terms

  1. Software engineering throughout a traditional computer science curriculum

      Recommendations

      Reviews

      William J. Hankley

      This paper begins with a discussion of the need for software engineering principles within computing curricula, such as Miles’ statement [1] that “... teaching a course in software engineering is insufficient. Software engineering techniques must be promoted across the curriculum.” What is not addressed is that these statements presume that the computer science program is oriented towards applied computing rather than pure science. The paper then describes how the computer science curriculum at Trinity University was reorganized to increase focus on software engineering. The key changes are: include SE focus within CS1 and CS2 courses, add a fundamentals of SE course in junior year, add a capstone, one year, team software engineering project course and add one hour professional seminars in sophomore through senior years. The beginning courses cover some aspects of design for small systems, the junior course covers design for large systems, and the seminars cover other issues of design, ethics, and software businesses. I agree that an effective senior project course requires the prior course in software engineering concepts. It should be noted that the curriculum does allow students to select a two semester senior thesis rather than the software project. Finally, the revised curriculum had been in place for two years. Myers notes that it is difficult to quantitatively assess effectiveness of the changes, other than that the faculty were pleased. Online Computing Reviews Service

      Access critical reviews of Computing literature here

      Become a reviewer for Computing Reviews.

      Comments

      Login options

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

      Sign in
      • Published in

        cover image Guide Proceedings
        Proceedings of the second annual CCSC on Computing in Small Colleges Northwestern conference
        October 2000
        118 pages

        Publisher

        Consortium for Computing Sciences in Colleges

        Evansville, IN, United States

        Publication History

        • Published: 13 October 2000

        Qualifiers

        • Article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader