Survey of software engineering education

This study summarizes the software engineering course offerings of nearly one hundred universities responding to a recent survey. Information to determine the current state of software engineering education is tabulated and analyzed in order to support curriculum development and to determine deficiencies and future needs.Characteristics of the institutions are used to compare relative numbers, types and academic levels of course offerings. A history of course startups provides insight into the growth and direction of new classes. Instructor background is examined to determine current and future faculty support needs. Similarly, the use and availability of textbooks, automated tools, and other teaching materials are investigated for cours support requirements. Information on course format and project organization provides additional understanding of the structure of current software engineering courses.

[1]  Bertrand Meyer,et al.  On Formalism in Specifications , 1985, IEEE Software.

[2]  Michael Fagan Design and Code Inspections to Reduce Errors in Program Development , 1976, IBM Syst. J..

[3]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[4]  Edward Nash Yourdon Classics in Software Engineering , 1979 .

[5]  Walter F. Tichy,et al.  Implementation and evaluation of a revision control system , 1982 .

[6]  Marilyn M. Mantai The Effect of Programming Team Structures on Programming Tasks , 1981, Commun. ACM.

[7]  Brian W. Kernighan The Unix System and Software Reusability , 1984, IEEE Transactions on Software Engineering.

[8]  Chris Gane,et al.  Structured Systems Analysis: Tools and Techniques , 1977 .

[9]  Ben Shneiderman,et al.  Human Factors Experiments in Designing Interactive Systems , 1979, Computer.

[10]  Ruth E. Davis Logic Programming and Prolog: A Tutorial , 1985, IEEE Software.

[11]  Scott N. Woodfield An Experiment on Unit Increase in Problem Complexity , 1979, IEEE Transactions on Software Engineering.

[12]  Glenford J. Myers,et al.  Software Reliability: Principles and Practices , 1976 .

[13]  Douglas T. Ross,et al.  Applications and Extensions of SADT , 1985, Computer.

[14]  Kuo-Chung Tai Program Testing Complexity and Test Criteria , 1980, IEEE Transactions on Software Engineering.

[15]  Richard E. Fairley,et al.  Software engineering concepts , 1985, McGraw-Hill series in software engineering and technology.

[16]  Edsger W. Dijkstra,et al.  The humble programmer , 1972, CACM.

[17]  David Chapman A program testing assistant , 1982, CACM.

[18]  Marvin V. Zelkowitz,et al.  Principles of software engineering and design , 1979 .

[19]  Gerald M. Weinberg,et al.  Psychology of computer programming , 1971 .

[20]  Peter Freeman,et al.  Software engineering education: a survey , 1984, SGCS.

[21]  B. Curtis,et al.  Measurement and experimentation in software engineering , 1980, Proceedings of the IEEE.

[22]  John C. Cherniavsky,et al.  Validation, Verification, and Testing of Computer Software , 1982, CSUR.

[23]  Algirdas Avizienis,et al.  The N-Version Approach to Fault-Tolerant Software , 1985, IEEE Transactions on Software Engineering.

[24]  Michael W. Evans,et al.  Principles of productive software management , 1983 .

[25]  Lowell Jay Arthur,et al.  Measuring Programmer Productivity and Software Quality , 1985 .

[26]  Glenn D. Bergland,et al.  A Guided Tour of Program Design Methodologies , 1981, Computer.

[27]  Leland L. Beck,et al.  A Survey of Software Engineering Practice: Tools, Methods, and Results , 1983, IEEE Transactions on Software Engineering.

[28]  Glenford J. Myers,et al.  Composite/structured design , 1978 .

[29]  Daniel P. Friedman,et al.  Coordinated computing: tools and techniques for distributed software , 1984 .

[30]  Siba N. Mohanty,et al.  Software cost estimation: Present and future , 1981, Softw. Pract. Exp..

[31]  A. A.J. Hoffman A survey of software engineering courses , 1978, SIGCSE '78.

[32]  W. Buxton Human-Computer Interaction , 1988, Springer Berlin Heidelberg.

[33]  Nathan H. Petschenik Practical Priorities in System Testing , 1985, IEEE Software.

[34]  William A. Wulf,et al.  Trends in the Design and Implementation of Programming Languages , 1980, Computer.

[35]  Brad J. Cox Message/Object Programming: An Evolutionary Change in Programming Technology , 1984, IEEE Software.

[36]  Gruia-Catalin Roman,et al.  A taxonomy of current issues in requirements engineering , 1985, Computer.

[37]  Elliot B. Koffman,et al.  Recommended curriculum for CS1, 1984 , 1984, CACM.

[38]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[39]  Robert L. Glass,et al.  Real-Time Software , 1983 .

[40]  David Lorge Parnas,et al.  Software aspects of strategic defense systems , 1985, CACM.

[41]  Edsger W. Dijkstra,et al.  Structured programming , 1972, A.P.I.C. Studies in data processing.

[42]  H. E. Dunsmore,et al.  Software engineering metrics and models , 1986 .

[43]  C. V. Ramamoorthy,et al.  Software Reliability—Status and Perspectives , 1982, IEEE Transactions on Software Engineering.

[44]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[45]  Ron Weber,et al.  Some factors affecting program repair maintenance: an empirical study , 1983, CACM.

[46]  John D. Musa,et al.  Software reliability measurement , 1984, J. Syst. Softw..

[47]  Billy G. Claybrook A Specification Method for Specifying Data and Procedural Abstractions , 1982, IEEE Transactions on Software Engineering.

[48]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[49]  Edsger W. Dijkstra,et al.  Go To Statement Considered Harmful , 2022, Software Pioneers.

[50]  Richard H. Austing,et al.  Recommendations for the Undergraduate Program in Computer Science , 1978 .

[51]  Martin L. Shooman,et al.  Software Engineering: Design, Reliability, and Management , 1983 .

[52]  Ray Turner Software engineering methodology , 1984 .

[53]  Richard C. Waters The Programmer's Apprentice: A Session with KBEmacs , 1985, IEEE Transactions on Software Engineering.

[54]  Mary Shaw,et al.  Abstraction Techniques in Modern Programming Languages , 1984, IEEE Software.

[55]  WeberRon,et al.  Some factors affecting program repair maintenance , 1983 .

[56]  Verne C. Fryklund,et al.  What systems analysis? , 1981, Nature.