This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Software Engineering in the Academy
May 2001 (vol. 34 no. 5)
pp. 28-35

The lack of a universally accepted definition of software engineering makes teaching the discipline a challenge. A textbook definition of the term might read something like this: "the body of methods, tools, and techniques intended to produce quality software."

Rather than emphasizing quality alone, we could distinguish software engineering from programming by defining it as follows: "the development of possibly large systems intended for use in production environments, over a possibly long period, worked on by possibly many people, and possibly undergoing many changes." In this definition, "development" includes management, maintenance, validation, documentation, and so forth.

Given the shortage of qualified personnel and the ongoing search for excellent developers, educational institutions must strive to train students who will, upon graduation, take their place in the top tier. By teaching them fundamental thought leavened with practical experience, these establishments can help prepare these students for a long-term professional growth that synchronizes smoothly with the discipline's progress-- for, while technology evolves, the concepts remain.

Citation:
Bertrand Meyer, "Software Engineering in the Academy," Computer, vol. 34, no. 5, pp. 28-35, May 2001, doi:10.1109/2.920608
Usage of this product signifies your acceptance of the Terms of Use.