Software Engineering is a multifaceted and expanding topic. It aims to provide theories, methods and tools to tackle the complexity of software systems, from development to maintenance. Its complexity is made even more severe today by rapidadvancesin technology,the pervasivenessofsoftwareinallareasofsociety, and the globalization of software development. The continuous expansion of the ?eld presents the problem of how to keep up for practitioners. For educators, the key questions are how should software engineers be educated and what are the core topics and key technologies? Even looking only at the last decade, the tremendous changes that have taken place in the software engineering industry, and in the industrial world in general,raise many questions. What are the e?ects of: Outsourcing?Distributed softwaredevelopment?Opensource?Standardization?Softwarepatents?Mod- driven development? How should these developments change the way we teach softwareengineering?Shouldtextbooksbeupdated?Shouldsoftwareengineering play a di?erent role in the computer science curriculum, for example, be more pervasive? How are instructors in universities handling these issues? All these issues were discussed at the Software Education and Training s- sions at the International Conference on Software Engineering (ICSE 2005) by leading researchers, educators, and practitioners in software engineering, who presented their—sometimes controversial—views and insights on software en- neering education in the new millennium. In this volume we have collected some of the most representative and innovative approachesthat were presented at the workshop. The authors revised their papers based on discussions at the conf- ence and the comments they received from the reviews.
Lecture Notes in Computer Science Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen University of Dortmund, Germany Madhu Sudan Massachusetts Institute of Technology, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Moshe Y. Vardi Rice University, Houston, TX, USA Gerhard Weikum Max-Planck Institute of Computer Science, Saarbruecken, Germany 4309 Paola Inverardi Mehdi Jazayeri (Eds.) Software Engineering Education in the Modern Age Software Education and Training Sessions at the International Conference on Software Engineering, ICSE 2005 St. Louis, MO, USA, May 15-21, 2005 Revised Lectures 13 Volume Editors Paola Inverardi University of L’Aquila Computer Science Department 67010 L’Aquila, Italy E-mail:
[email protected] Mehdi Jazayeri University of Lugano and Technical University of Vienna E-mail:
[email protected] Library of Congress Control Number: 2006938014 CR Subject Classification (1998): K.3, K.4, D.2, J.1 LNCS Sublibrary: SL 2 – Programming and Software Engineering ISSN ISBN-10 ISBN-13 0302-9743 3-540-68203-1 Springer Berlin Heidelberg New York 978-3-540-68203-5 Springer Berlin Heidelberg New York This w