Using iterative enhancement in undergraduate software engineering courses
暂无分享,去创建一个
Many software development courses include both instruction in formal and informal techniques and application of those techniques on a team project. In teaching such a course, a dilemma arises in trying to present material in sufficient detail before students must apply the material in their projects. The students are not comfortable with a technique before they must use it. If the project is moved later in the course, the students do not have enough time to tackle a problem that is big enough to require many of the software development techniques. There must be a better approach to teaching the course without separating the material into two courses or dividing the course over two terms.This paper describes an iterative approach. Let the students develop an initial pass at the project using the techniques they know. Then, have them apply the techniques learned in this class to later iterations. They develop a reasonably large project and apply the techniques appropriately. In addition, they have an opportunity to modify and maintain their documents as they complete the project. This paper describes the approach, experiences using it, and what modifications might be useful.
[1] Frederick P. Brooks,et al. No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .
[2] Victor R. Basili,et al. Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.