Real-world software engineering: A spiral approach to a project-oriented course

  • Donald Gotterbarn
  • Robert Riser
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 750)


A one-semester course cannot adequately cover the software development process and still provide meaningful project experience. We have developed and implemented a tightly- coupled two-semester undergraduate course which presents, in a spiral form, theory and practice, product and process. Coordinating the increase in depth of the lectures as topics are revisited repeatedly, with increasingly demanding projects, constitutes our spiral approach. Three projects differ in size, complexity, team structure, artifacts provided and delivered, and development methodologies. The projects are carefully choreographed to provide varied team experiences and allow each student to function in a variety of roles and responsibilities. The project framework provides a series of passes through the software development process, each pass adding to a body of common student experiences to which subsequent passes can refer. By the middle of the first semester students, individually and in teams, have begun accumulating their own “war stories”; some positive, some negative. This personalized knowledge provides a solid base for more advanced concepts and classroom discussion.


Software Engineering Software Development Process Maintenance Task Configuration Management Extended Project 
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.


  1. [Adams 93]
    E. Adams, “Experiences in Teaching a Project-Intensive Software Design Course,” Proceedings of the First Annual Rocky Mountain Small College Computing Conference, volume 8, number 4, March 1993, pp. 112–121.Google Scholar
  2. [ANSI/MIL-STD-1815a, 1983]
    ANSI, American National Standard reference manual for the Ada programming language, ANSI, New York, New York, 1983.Google Scholar
  3. [AST 90]
    School of Applied Science and Technology Language Skills Handbook, East Tennessee State University, 1990.Google Scholar
  4. [Benjamin 1991]
    G. Benjamin, Ada Minimanual, to Accompany Appleby:Programming Languages, McGraw-Hill, Inc,New York, N.Y., 1991Google Scholar
  5. [Booch 93]
    G. Booch, Software Engineering with Ada, Benjamin/Cummings Publishers, Menlo Park, CA, Forthcoming.Google Scholar
  6. [Brooks 82]
    F. Brooks, The Mythical Man Month, Addison-Wesley, Reading, MA, 1982.Google Scholar
  7. [Bruegge 91]
    B. Bruegge, J. Cheng, and M. Shaw, “A Software Engineering Project Course with a Real Client,” CMU/SEI-91-EM-4.Google Scholar
  8. [Callis 91]
    F.W. Callis and D.L. Trantina, “A Controlled Software Maintenance Project,” Software Engineering Education, SEI Conference 1991, Pittsburgh, PA, October 7–8, 1991, Springer-Verlag, New York, NY, pp. 25–32.Google Scholar
  9. [Deimel 90]
    L.E. Deimel and J.F. Neveda, “Reading Computer Programs: Instructor's Guide and Exercises,” CMU/SEI-90-EM-3.Google Scholar
  10. [Deimel 91]
    L.E. Deimel, “Scenes from Software Inspections,” CMU/SEI-91-5.Google Scholar
  11. [Engle 89]
    C.B.Engle, G. Ford, and T. Korson, “Software Maintenance Exercises for a Software Engineering Project Course,” CMU/SEI-89-EM-1.Google Scholar
  12. [Ford 87]
    G. Ford, N. Gibbs, and J. Tomayko, “Software Engineering Education: An Interim Report from the Software Engineering Institute,” SEI-87-TR-8.Google Scholar
  13. [Herro 88]
    John Herro, The Interactive Ada-Tutor, Software Innovations Technology, 1083 Mandarin Drive N.E., Palm Bay FL. 32905-4706Google Scholar
  14. [Humphrey 88]
    W. S. Humphrey, “Characterizing the Software Process: A Maturity Framework,” IEEE Software, March 1988, pp. 73–79.Google Scholar
  15. [NASA 86]
    NASA Sfw-DID-41, “Lessons Learned Document Data Item Description.”Google Scholar
  16. [Shaw 91]
    M. Shaw and J. Tomayko, “Models for Undergraduate Project Courses in Software Engineering,” Software Engineering Education, SEI Conference 1991, Pittsburgh, PA, October 7–8, 1991, Springer-Verlag, New York, NY, pp. 25–32.Google Scholar
  17. [SPC 91]
    Software Productivity Consortium, Ada Quality and Style: Guideline for Professional Programmers, Software Productivity Consortium, Herndon, Virginia, 1991.Google Scholar
  18. [Stoecklin 93]
    S. Stoecklin, Ada Laboratory Exercises, funded by a Darpa Grant 1993.Google Scholar
  19. [Stuckenbruck 81]
    L.C. Stuckenbruck, A Decade of Project Management, Project Management Institute, 1981.Google Scholar
  20. [Tomayko 91]
    J.E.Tomayko, “Teaching Software Development in a Studio Environment,” SIGCSE Bulletin, volume 23, number 1, March 1991, pp. 300–303.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Donald Gotterbarn
    • 1
  • Robert Riser
    • 1
  1. 1.East Tennessee State UniversityJohnson City

Personalised recommendations