Software process is an important concept in software development and considerable work is being undertaken in academia and industry on process issues, and particularly on process improvement. It is difficult to teach process concepts effectively in an undergraduate degree but we feel the issue is too important to be deferred to be learned in work experience and postgraduate degrees.Most undergraduate computing courses have a project component that attempts to convey some of the aspects of a 'real-life' development project but these can easily degenerate into (large-scale) programming exercises if the emphasis is on product and not the process particularly if students have not been exposed to process concepts before commencing the project.Many courses attempt to address process topics lifecycle, configuration management, etc. from a theoretical approach, but this serves little purpose without relevant hands-on experience within a realistic project context. Our experience indicates that when taught in parallel with a large-scale project it is often too little, too late.We are making the concepts of software process central to our software development teaching and assessment. In order to illustrate the applicability in practice of what we preach, we are applying process improvement concepts to the educational process it self. This paper reports on our experiences to date.
Index Terms:
Software Process, Software Engineering Education, Process Improvement, Education Process Improvement
Citation:
V.E. Veraart, S.L. Wright, "Software Engineering Education - Adding Process to Projects Theory, Practice and Experience," apsec, pp.148, Second Asia-Pacific Software Engineering Conference (APSEC'95), 1995