Skip to Main Content

Content

Course Tabs

Overview

Course Prescription

An introduction to software development, including processes, best practices, tools and quality assurance techniques such as testing.

Course Overview

COMPSCI 235 introduces basic tools, approaches, and methodologies in software development. The course is good preparation for third-year study in software development, in-depth database, and web development courses. It is intended to strengthen the toolset of students regarding practical software development, thus deepening what is learned in COMPSCI 230 and preparing for the Software specialisation in Computer Science. It is strongly suggested but not required to take COMPSCI 235 after finishing COMPSCI 230.

The main focus of COMPSCI 235 is on software design methodologies to structure the process of developing software, common design patterns used for abstraction and data hiding, using tools like application frameworks, integrated development environments for programming and debugging or version control and bug tracking for management, as well as quality assurance techniques such as testing at different levels of the development process. Central to the course will be a practical assignment, where students learn to apply some of the important methodologies and gain hands-on experience. The course will be taught using the Python programming language.

COMPSCI 235 serves as a stepping stone for courses like COMPSCI 331, Large-Scale Software Development, or COMPSCI 335, but also prepares for software projects or capstone projects. Skills learned in this course are sought for in industry in roles like software developer or software engineer.

Key Topics

  • Agile software development
  • Software design and architectural patterns
  • Software testing
  • Web-based application architectures
  • Integrated development environments
  • Source and version control tools
  • Continuous integration and build tools
  • Requirements gathering and elicitation
  • Software design patterns
  • Database design and implementation
  • A Python-based middleware framework (e.g., Flask)

Workload Expectations

This course is a standard 15-point course and students are expected to spend 10 hours per week involved in each 15-point course that they are enrolled in.

For this course, per week, you can expect: 

  • 2-3 hours of lectures
  • 2 hour of lab work
  • 1 hour of reading and thinking about the content 
  • 5-6 hours of work on assignments

Course Prerequisites, Corequisites and Restrictions

Prerequisite
Restriction

Locations and Semesters Offered

LocationSemester
City

Teaching and Learning

Campus Experience

Attendance is required at scheduled activities including labs to receive credit for components of the course.
Lectures will be available as recordings. Other learning activities including labs will not be available as recordings.
Attendance on campus is required for the exam.
The activities for the course are scheduled as a standard weekly timetable.

Learning Resources

Taught courses use a learning and collaboration tool called Canvas to provide students with learning materials including reading lists and lecture recordings (where available). Please remember that the recording of any class on a personal device requires the permission of the instructor.

Additional Information on Learning Resources

All course material and additional resources will be made available via Canvas. There is no required textbook for this course.

Copyright

The content and delivery of content in this course are protected by copyright. Material belonging to others may have been used in this course and copied by and solely for the educational purposes of the University under license.


You may copy the course content for the purposes of private study or research, but you may not upload onto any third-party site, make a further copy or sell, alter or further reproduce or distribute any part of the course content to another person.

Learning Continuity

In the event of an unexpected disruption, we undertake to maintain the continuity and standard of teaching and learning in all your courses throughout the year. If there are unexpected disruptions the University has contingency plans to ensure that access to your course continues and course assessment continues to meet the principles of the University’s assessment policy. Some adjustments may need to be made in emergencies. You will be kept fully informed by your course co-ordinator/director, and if disruption occurs you should refer to the university website for information about how to proceed.

Academic Integrity

The University of Auckland will not tolerate cheating, or assisting others to cheat, and views cheating in coursework as a serious academic offence. The work that a student submits for grading must be the student's own work, reflecting their learning. Where work from other sources is used, it must be properly acknowledged and referenced. This requirement also applies to sources on the internet. A student's assessed work may be reviewed for potential plagiarism or other forms of academic misconduct, using computerised detection mechanisms.

Similarly, research students must meet the University’s expectations of good research practice. This requires:

  • Honesty - in all aspects of research work
  • Accountability - in the conduct of research
  • Professional courtesy and fairness – in working with others
  • Good stewardship – on behalf of others
  • Transparency – of research process and presentation of results
  • Clarity - communication to be understandable, explainable and accessible

For more information on the University’s expectations of academic integrity, please see the Academic Conduct section of the University policy hub.

Disclaimer

Elements of this outline may be subject to change. The latest information about taught courses is made available to enrolled students in Canvas.

Students may be asked to submit assessments digitally. The University reserves the right to conduct scheduled tests and examinations online or through the use of computers or other electronic devices. Where tests or examinations are conducted online remote invigilation arrangements may be used. In exceptional circumstances changes to elements of this course may be necessary at short notice. Students enrolled in this course will be informed of any such changes and the reasons for them, as soon as possible, through Canvas.


Assessment and Learning Outcomes

Additional Information on Assessment

Assessments are grouped into "practical" and "theoretical" components. Besides passing the overall course, both groups also have to be passed separately in order to complete the course. The "practical" component consists of the combined "Labs" and "Assignments" types, while the "theoretical" component consists of the combined "Exam" and "Test" components.

Special Requirements

The assignments are highly practically oriented and build upon each other, so students are required to get started by demonstrating their learning from the very beginning of the course.
Students are expected to read and study through external resources or reading lists on their own to supplement lecture materials.

Course Learning Outcomes

CLO #OutcomeProgramme Capability Link
1
2
3
4
5
6
7
8

Assessments

Assessment TypeAssessment PercentageAssessment Classification

Assessment to CLO Mapping

Assessment Type12345678

Student Feedback, Support and Charter

Student Feedback

Feedback on taught courses is gathered from students at the end of each semester through a tool called SET or Qualtrics. The lecturers and course co-ordinators will consider all feedback and respond with summaries and actions. Your feedback helps teachers to improve the course and its delivery for future students. In addition, class Representatives in each class can take feedback to the department and faculty staff-student consultative committees.

Additional Information on Student Feedback

Assignments will be simplified, providing clear expectations and timely feedback. Lab work to be aligned with the assignment content.  

Class representatives

Class representatives are students tasked with representing student issues to departments, faculties, and the wider university. If you have a complaint about this course, please contact your class rep who will know how to raise it in the right channels. See your departmental noticeboard for contact details for your class reps.

Tuākana

Tuākana is a multi-faceted programme for Māori and Pacific students providing topic specific tutorials, one-on-one sessions, test and exam preparation and more. Explore your options at Tuakana Learning Communities.

Additional Information on Tuākana

For more information and to find contact details for the CompSci 235 Tuākana coordinator, please see https://www.auckland.ac.nz/en/science/study-with-us/maori-and-pacific-at-the-faculty/tuakana-programme.html

Inclusive Learning

All students are asked to discuss any impairment related requirements privately, face to face and/or in written form with the course coordinator, lecturer or tutor.

Student Disability Services also provides support for students with a wide range of impairments, both visible and invisible, to succeed and excel at the University. For more information and contact details, please visit the Student Disability Services’ website.

Wellbeing

We all go through tough times during the semester, or see our friends struggling. There is lots of help out there - please see the Support Services page for information on support services in the University and the wider community.

Special Circumstances

If your ability to complete assessed work is affected by illness or other personal circumstances outside of your control, contact a member of teaching staff as soon as possible before the assessment is due. If your personal circumstances significantly affect your performance, or preparation, for an exam or eligible written test, refer to the University’s aegrotat or compassionate consideration page. This should be done as soon as possible and no later than seven days after the affected test or exam date.

Student Charter and Responsibilities

The Student Charter assumes and acknowledges that students are active participants in the learning process and that they have responsibilities to the institution and the international community of scholars. The University expects that students will act at all times in a way that demonstrates respect for the rights of other students and staff so that the learning environment is both safe and productive. For further information visit Student Charter.

Student Academic Complaints and Disputes

Students with concerns about teaching including how a course is delivered, the resources provided, or supervision arrangements, have the right to express their concerns and seek resolution. The university encourages informal resolution where possible, as this is quicker and less stressful. For information on the informal and formal complaints processes, please refer to the Student Academic Complaints Statute in the Student Policies and Guidelines section of the Policy Hub.