| Teaching Plan | Important Messages | Other SE Courses |
Pre-requisites : 308-534B
Focus and Objectives
Software engineering is not only about getting the desired software built by using the various development methods and tools. This endeavour also includes understanding the processes used to build and evolve a software system. Thus, the focus in this course is on the processes of software development, without reducing the importance of the software systems built using these processes.
The objectives here are to teach about the importance of software processes, and how they can be treated in a scientific manner to understand and improve them so that software systems can be built of high quality, on time and within budget.
Course content
This course shall overview software engineering principles across the software life-cycle. This will be followed by coverage of concepts in the field of software process, such as modelling, process programming and enactment, process assessment, and process improvement. A selected set of papers will then be covered, which all the students will have to read beforehand. Finally, there will be student presentations of selected topics in the field of software process.
Experience in software development (e.g., through a term-long team project) is expected.
Style
There will be an initial set of class lectures that will cover software engineering principles and software process concepts. The selected set of papers, which students will be expected to have read beforehand, will be the basis for a string of "question & answer" sessions. Students' responses will be graded. Finally, students (perhaps in teams of twos) will prepare class presentations which will also be graded.
Other Software Engineering Courses: