SENG301-23S1 (C) Semester One 2023

Software Engineering II

15 points

Start Date: Monday, 20 February 2023
End Date: Sunday, 25 June 2023
Withdrawal Dates
Last Day to withdraw from this course:
  • Without financial penalty (full fee refund): Sunday, 5 March 2023
  • Without academic penalty (including no fee refund): Sunday, 14 May 2023


SENG301 builds on the material introduced in SENG201 (Introduction to Software Engineering) and is intended as a companion course to SENG302 (Software Engineering Group Project). The focus is on quality and how to model, measure and maintain it as project size and complexity scale up.

Covid-19 Update: Please refer to the course page on AKO | Learn for all information about your course, including lectures, labs, tutorials and assessments.

Software Engineering II touches to advanced topics of software engineering including software development processes, team-based work, ethics, software quality, resilience engineering, software design and modelling. Students will learn about the principles behind software development processes (i.e. classical and Agile-based methods), software quality assurance through (automated) testing and deployment techniques as well as software design recipes.

Active participation into the lectures and tutorials is expected to achieve good grades into the course. Lectures will contain regular activities to put into practice the theoretical content covered in lectures. Labs will feature extensive use of novel development technologies to write, debug, test and deploy software.

Learning Outcomes

  • Describe, model, and understand software engineering processes.
  • Select and enact appropriate processes for particular software development environments.
  • Apply a range of software engineering techniques to develop, deploy and evolve large software systems.
  • Function effectively in a professional software development environment.
  • Think about ethical issues in software engineering
  • Learn, use and evaluate a range of software development tools.
  • Synthesise new software designs.
  • Recognise and correct design flaws in software.
  • Understand and model the quality of software products and processes.
  • Use software metrics to understand and improve large software systems and the processes used to develop them.
  • Communicate effectively, in written and oral forms, knowledge and professional opinion.


Recommended Preparation

Timetable 2023

Students must attend one activity from each section.

Lecture A
Activity Day Time Location Weeks
01 Monday 14:00 - 15:00 Rehua 102
20 Feb - 2 Apr
24 Apr - 4 Jun
Lecture B
Activity Day Time Location Weeks
01 Wednesday 12:00 - 13:00 Rehua 005
20 Feb - 2 Apr
24 Apr - 4 Jun
Computer Lab A
Activity Day Time Location Weeks
01 Thursday 10:00 - 12:00 Jack Erskine 136 Lab 4 (23/2, 16/3-30/3, 27/4, 11/5-1/6)
Ernest Rutherford 141 (2/3-4/5)
20 Feb - 2 Apr
24 Apr - 4 Jun
02 Thursday 08:00 - 10:00 Jack Erskine 136 Lab 4 (23/2, 16/3-30/3, 27/4, 11/5-1/6)
Jack Erskine 111 (2/3-4/5)
20 Feb - 2 Apr
24 Apr - 4 Jun
03 Thursday 14:00 - 16:00 Jack Erskine 136 Lab 4 (23/2, 16/3-30/3, 27/4, 11/5-1/6)
F1 Lectorial (2/3-4/5)
20 Feb - 2 Apr
24 Apr - 4 Jun

Course Coordinator

Fabian Gilson


Assessment Due Date Percentage  Description
Software Development Tutorial 10% Week 3 - Tutorial during lab time, participation is compulsory
Mid-year Quiz 5% Week 6 - Quiz test on additional material from course
Software Testing 10% Week 7 - Acceptance testing assignment (coding)
Software Design 25% Week 12 - Design principles assignment (coding)
Final Exam 50% Examination on lecture material

2022 Covid-19 Update: Please refer to the course page on AKO | Learn for all information about your course, including lectures, labs, tutorials and assessments.

Textbooks / Resources

Required Texts

Gamma, Erich; Design patterns : elements of reusable object-oriented software ; Addison-Wesley, 1995.

Goldstein, Ilan; Scrum shortcuts without cutting corners : agile tactics, tools & tips ; Addison-Wesley, 2014.

Recommended Reading

Fenton, Norman E. , Pfleeger, Shari Lawrence; Software metrics : a rigorous and practical approach ; 2nd ed; International Thomson Computer Press ; PWS Publishing, 1997.

Fowler, Martin , Beck, Kent; Refactoring : improving the design of existing code ; Addison-Wesley, 1999.

Pressman, Roger S. , Maxim, Bruce R; Software engineering : a practitioner's approach ; Eighth edition; McGraw-Hill Education, 2015.


There are several important documents available online about departmental regulations, policies and guidelines at the following site. We expect all students to be familiar with these.

Notices about this class will be posted to the class forum in the Learn system.

COSC students will also be made members of a class called “CSSE Notices”, where general notices will be posted that apply to all classes (such as information about building access or job opportunities).

Additional Course Outline Information

Grade moderation

The Computer Science department's grading policy states that in order to pass a course you must meet two requirements:
1. You must achieve an average grade of at least 50% over all assessment items.
2. You must achieve an average mark of at least 45% on invigilated assessment items.

If you satisfy both these criteria, your grade will be determined by the following University-wide scale for converting marks to grades: an average mark of 50% is sufficient for a C- grade, an average mark of 55% earns a C grade, 60% earns a C+ grade and so forth. However if you do not satisfy both the passing criteria you will be given either a D or E grade depending on marks. Marks are sometimes scaled to achieve consistency between courses from year to year.

Students may apply for special consideration if their performance in an assessment is affected by extenuating circumstances beyond their control.

Applications for special consideration should be submitted via the Examinations Office website within five days of the assessment.

Where an extension may be granted for an assessment, this will be decided by direct application to the Department and an application to the Examinations Office may not be required.

Special consideration is not available for items worth less than 10% of the course.

Students prevented by extenuating circumstances from completing the course after the final date for withdrawing, may apply for special consideration for late discontinuation of the course. Applications must be submitted to the Examinations Office within five days of the end of the main examination period for the semester.

Indicative Fees

Domestic fee $1,030.00

International fee $5,750.00

* All fees are inclusive of NZ GST or any equivalent overseas tax, and do not include any programme level discount or additional course-related expenses.

Minimum enrolments

This course will not be offered if fewer than 10 people apply to enrol.

For further information see Computer Science and Software Engineering .

All SENG301 Occurrences

  • SENG301-23S1 (C) Semester One 2023