COSC 310 Software Engineering

Fall (Winter Term 1) 2007 - University of British Columbia Okanagan

Overview

The Software Engineering course in Fall 2007 was vastly improved (instructor rating 4.9 out of 5) from my first offering. The course notes were all re-done and the package flows significantly better. I dropped the textbook requirement for this course (same as databases) and focus entirely on the course notes. This was well received by students. The major improvement was adding more examples and practical uses of software engineering. We spend significantly more time on UML and testing with JUnit. The project and labs were focused on very practical applications. The result was a course that had reduced workload, but much better student engagement and learning outcomes. The course was viewed more favourably (4.6 versus 4.2) and all course objective metrics increased.

The lab assignments were designed to be mostly done in the 2 hour lab. They focus on UML, JUnit, and programming related aspects of software engineering. The labs were made to be less of a burden and were well liked by students.

The project involved adding features to UnityJDBC. This turned out to be a very good choice because students learned more about JDBC/databases while being exposed to a large, active development effort. The additional features added were well done and had various levels of difficulty. This will be a good project for next year now that there is more documentation (especially UML) and JUnit tests associated with UnityJDBC. Students selected groups of 3 to 4 which were a large enough size to allow for group communication without being too cumbersome.

The class was at 9:30-10:30 a.m. Mondays/Wednesdays/Fridays in Science 396 with a 2 hour lab on Wednesdays from 12:30 to 2:30 p.m.

On-line Resources

Student Performance

Of the 11 registered students who started the course, all got a B+ or above. The average GPA was 3.85. Despite hard marking on the midterm and final, the marks are high. This is due to the fact that the marks on the project and labs were very high (and well deserved). More importantly, the marks on both exams were also primarily A's. This implies the students were learning the key examinable material (UML, process models, testing). Since there is limited amount of content beyond these core concepts, average marks can only be reduced by devising very hard exam questions. Charts showing the mark breakdown are below.

Mark Breakdown Percentage Mark Breakdown

Comments

This course improved dramatically from the first offering. The next offering will go beyond the basics of software engineering which are well covered and learned by students.

Strengths of the Course

Weakness of the Course

Most Enjoyable Part of the Course


* Home Page * Go Back