Document Type

Conference Proceeding

Publication Date



The term software engineering can be traced to the late 1960s in response to large-scale, software development problems. Since then it has evolved as a discipline, both within industry and the academy. There have been distinct educational successes: “Standard practice” has matured (and found its way into more textbooks),the ACM and IEEE Computer Society have published curriculum guidelines, computer science programs commonly offer at least one software engineering course, and software engineering degrees (undergraduate or graduate) are more common. However, software engineering still presents a challenge. The term itself has become contorted by companies (and society in general); software has become far more diverse (along with the environments in which software engineers work); industrial software processes are not easily replicated in the classroom; what students are expected to know (once they are employed) has expanded significantly; software tools change rapidly (affecting student expectations); and the discipline involves far more than “good program-ming” (or a large programming project). This talk describes these challenges – and suggestions for dealing with them – in light of my 30 years teaching software engineering in a university.



To view the content in your browser, please download Adobe Reader or, alternately,
you may Download the file to your hard drive.

NOTE: The latest versions of Adobe Reader do not support viewing PDF files within Firefox on Mac OS and if you are using a modern (Intel) Mac, there is no official plugin for viewing PDF files within the browser window.