Red X iconGreen tick iconYellow tick icon

    Overview

    Tools that optimise the development of software; the software that builds software, and how it works; techniques for managing large-scale software projects. Programming languages and their roles in software development.

    Software development is a team activity and needs good support from the tools that you use. In this paper you will learn how to work in a team with a range of these tools in order to develop a larger piece of software.

    About this paper

    Paper title Software Development
    Subject Computer Science
    EFTS 0.1500
    Points 18 points
    Teaching period Semester 1 (On campus)
    Domestic Tuition Fees ( NZD ) $1,243.65
    International Tuition Fees Tuition Fees for international students are elsewhere on this website.
    Prerequisite
    COMP 160 or COMP 162
    Restriction
    COSC 241
    Recommended Preparation
    COMP 101
    Schedule C
    Arts and Music, Commerce, Science
    Eligibility

    Enrolments for this paper require departmental permission. View more information about departmental permission.

    Contact

    Computer Science Adviser

    Teaching staff

    Dr Daniel Alencar da Costa 

    Professor Tony Savarimuthu

    Paper Structure

    Topics covered will include:

    • Teamwork, ethics, and software development
    • Shell scripting and version control
    • Programming languages and software libraries
    • Build tools, automation, and continuous integration
    • Testing and debugging
    • Software licensing and open source

     

    Teaching Arrangements

    Two 1-hour lectures and two 2-hour laboratory sessions per week.

    Textbooks

    No set textbooks are required for this paper.

    Graduate Attributes Emphasised
    Lifelong learning, Communication, Critical thinking, Cultural understanding, Ethics, Information literacy, Self-motivation, Teamwork.
    View more information about Otago's graduate attributes.
    Learning Outcomes

    By completion of this paper students are expected to:

    • Be able to compare and contrast the strengths and weaknesses of some key, popular programming languages
    • Understand how software is transformed from human-readable source code into machine-readable, executable code
    • Demonstrate mastery of tools that optimise the reliability and efficiency of software development
    • Gain confidence in approaching unfamiliar programming language environments
    • Be able to manage a software development team producing a project
    Assessment details
    • Internal Assessment (group software project): 60%
    • Final examination: 40%

    Timetable

    Semester 1

    Location
    Dunedin
    Teaching method
    This paper is taught On Campus
    Learning management system
    Blackboard

    Computer Lab

    Stream Days Times Weeks
    Attend one stream from
    A1 Monday 12:00-13:50 9-16, 18-22
    Thursday 14:00-15:50 9-16, 18-22
    A2 Monday 16:00-17:50 9-16, 18-22
    Thursday 16:00-17:50 9-16, 18-22
    A3 Tuesday 13:00-14:50 9-16, 18-22
    Friday 16:00-17:50 9-15, 18-22

    Lecture

    Stream Days Times Weeks
    Attend
    A1 Monday 10:00-10:50 9-16, 18-22
    Wednesday 13:00-13:50 9-16, 18-22
    Back to top