Accessibility Skip to Global Navigation Skip to Local Navigation Skip to Content Skip to Search Skip to Site Map Menu

COSC345 Software Engineering

The development of large-scale, reliable, and maintainable software systems.

Paper title Software Engineering
Paper code COSC345
Subject Computer Science
EFTS 0.1500
Points 18 points
Teaching period Full Year
Domestic Tuition Fees (NZD) $1,080.30
International Tuition Fees (NZD) $4,858.95

^ Top of page

COSC 242
Schedule C
Arts and Music, Science
Computer Science Adviser
Teaching staff

Lecturers: Associate Professor Andrew Trotman

Paper Structure
Topics include:
  • Software specification
  • Software design
  • System design
  • Prototypes
  • System maintenance
  • Code reading and browsing
  • Software reuse
  • Project management
  • Human factors
  • Documentation
  • Standards for software and documentation
  • Verification and validation
  • Configuration management
  • Software evolution
Assignment work includes a major project completed in teams of four or five people to develop and implement a useful system, including all relevant documentation.

  • Four part assignment (software project) 40%
  • Final exam 60%
Teaching Arrangements
This is a full-year (two-semester) paper.
Two lectures per week and laboratory work.
Text books are not required for this paper, however, this book is recommended:
S. McConnell, Code Complete 2nd edition, Microsoft Press, 2004.
Course outline
View the course outline for COSC 345
Graduate Attributes Emphasised
Lifelong learning, Communication, Critical thinking, Information literacy, Teamwork.
View more information about Otago's graduate attributes.
Learning Outcomes
This paper will give students practice in:
  • Designing a software system
  • Planning the development
  • Carrying out the development using appropriate tools
  • Evaluating their work
Students will learn to use "good practices" including:
  • Version control
  • Static checking
  • Testing
  • Following industry or platform standards

^ Top of page


Full Year

Teaching method
This paper is taught On Campus
Learning management system


Stream Days Times Weeks
L1 Tuesday 16:00-16:50 9-12, 18-22
M1 Tuesday 16:00-16:50 28-34, 36-41


Stream Days Times Weeks
T1 Friday 09:00-09:50 9-12, 18-22
U1 Friday 09:00-09:50 28-34, 36-41