The old saying "practice makes perfect" has been proven to be true in many fields when training new people to master the skills needed for a particular domain. It is even truer for software engineering education. Software engineering, by and large, is the application of engineering to software. Unlike other disciplines in the computer sciences, only by coupling theory and practice can students (who usually lack real-world working experience) understand some of the abstract concepts and principles taught in software engineering courses. This paper summarizes our experience in teaching software engineering courses in two different universities using a practice-oriented approach that guides students through learning the different, and yet abstract, aspects of the software engineering process.
展开▼