SWEN221 (2021) - Software Development
This course develops a deeper understanding of object- oriented programming and associated practices. The focus is on programming techniques at the micro scale. Topics include: inheritance, polymorphism, genericity, error handling, testing and debugging. A sequence of short assignments will develop the key ideas and practices; rigour in testing will be developed through (automated) assessment of programme correctness.
Course learning objectives
Students who pass this course should be able to:
- Implement, test, and debug object-oriented programs using all the facilities of the Java programming language, including exceptions, generics, assertions, and concurrency; (3(b),3(c),3(f))
- Appreciate the range of programming techniques available, the strengths and weaknesses of particular techniques, and be able to choose and apply an appropriate programming technique to a given problem; (3(b),3(f))
- Understand the range of programming tools available, their different strengths and weaknesses, and be able to choose the appropriate tools for a software development task; (3(b),3(f))
- Use appropriate programming tools, such as development environments, test harnesses, frameworks, and libraries. (3(b),3(f))
The course is primarily offered in-person, but there will also be a remote option and there will be online alternatives for all the components of the course for students who cannot attend in-person.
Students taking this course remotely must have access to a computer with camera and microphone and a reliable high speed internet connection that will support real-time video plus audio connections and screen sharing. Students must be able to use Zoom; other communication applications may also be used. A mobile phone connection only is not considered sufficient. The comuputer must be adequate to support the programming required by the course: almost any modern windows, macintosh, or unix laptop or desktop computer will be sufficient, but an Android or IOS tablet will not.
If the assessment of the course includes tests, the tests will generally be run in-person on the Kelburn campus. There will be a remote option for students who cannot attend in-person and who have a strong justification (for example, being enrolled from overseas). The remote test option may use the ProctorU system for online supervision of the tests. ProctorU requires installation of monitoring software on your computer which also uses your camera and microphone, and monitors your test-taking in real-time. Students who will need to use the remote test option must contact the course coordinator in the first two weeks to get permission and make arrangements.
Withdrawal from Course
Withdrawal dates and process:
This course will be offered in-person and online. For students in Wellington, there will be a combination of in-person components and web/internet based resources. It will also be possible to take the course entirely online for those who cannot attend on campus, with all the components provided in-person also made available online.
During the trimester there will be three lectures per week.
Student feedback on University courses may be found at: http://www.cad.vuw.ac.nz/feedback/feedback_display.php
Dates (trimester, teaching & break dates)
- Teaching: 22 February 2021 - 28 May 2021
- Break: 05 April 2021 - 18 April 2021
- Study period: 31 May 2021 - 03 June 2021
- Exam period: 04 June 2021 - 19 June 2021
Each student is required to complete a weekly lab exercise. Lab times will be announced during the first lecture, and students will sign up to a lab session using MyAllocator.
Set Texts and Recommended Readings
There are no required texts for this offering.
Mandatory Course Requirements
In addition to achieving an overall pass mark of at least 50%, students must:
- Achieve at least 40% for the three tests.
- Make a reasonable attempt at 3 / 4 of the Assignments.
- Complete 8 / 10 of the weekly lab exercises.
If you believe that exceptional circumstances may prevent you from meeting the mandatory course requirements, contact the Course Coordinator for advice as soon as possible.
This course will be assessed through the following:
|Assessment Item||Due Date or Test Date||CLO(s)||Percentage|
|Labs (10)||Due Weekly||CLO: 1,2,3,4||10%|
|Assignments (4)||Due Start of Weeks 5, 7, 9 and 11.||CLO: 1,2,3,4||20%|
|Web Assessment||Due end of Week 12.||CLO: 1,2||10%|
|Tests (3)||Due Week 7 and Week 10, and during exam period.||CLO: 1,2,3||60%|
For the LABS. Any lab submitted after the deadline (normally 23:59 on Fridays) will not be marked and will get 0 marks. There are no "late days" for labs.
For the ASSIGNMENTS. Any assignment submitted up to 24 hours after the deadline will be penalised by 20%, and any assignment submitted between 24 and 48 hours after the deadline will be penalised by 40%. Any assignment submitted 48 hours or more after the deadline will not be marked and will get 0 marks.
LATE DAYS POLICY (for Assignments). Each student will have three "late days" which you may choose to use for any assignment or assignments during the course. There will be no penalty applied for these late days. You do not need to apply for these, instead any late days you have left will be automatically applied to assignments that you submit late.
Individual extensions will only be granted in exceptional personal circumstances, and should be negotiated with the course coordinator before the deadline whenever possible. Documentation (eg, medical certificate) may be required.
Submission & Return
All work is submitted through the ECS submission system, accessible through the course web pages. Marks and comments will be returned through the ECS marking system, also available through the course web pages.
Assignments and labs will be marked primarily on how accurately the given problem is implemented (i.e. correctness), as measured by the number of passing tests. For assignments, marks will also be available for the quality of code produced (i.e. style).
The total workload for SWEN 221 is 150 hours. In order to maintain satisfactory progress in SWEN 221, you should plan to spend an average of 10 hours per week on this course.
Communication of Additional Information
All online material for this course can be accessed at https://ecs.wgtn.ac.nz/Courses/SWEN221_2021T1/
Links to General Course Information
- Academic Integrity and Plagiarism: https://www.wgtn.ac.nz/students/study/exams/integrity-plagiarism
- Academic Progress: https://www.wgtn.ac.nz/students/study/progress/academic-progess (including restrictions and non-engagement)
- Dates and deadlines: https://www.wgtn.ac.nz/students/study/dates
- Grades: https://www.wgtn.ac.nz/students/study/progress/grades
- Special passes: Refer to the Assessment Handbook, at https://www.wgtn.ac.nz/documents/policy/staff-policy/assessment-handbook.pdf
- Statutes and policies, e.g. Student Conduct Statute: https://www.wgtn.ac.nz/about/governance/strategy
- Student support: https://www.wgtn.ac.nz/students/support
- Students with disabilities: https://www.wgtn.ac.nz/st_services/disability/
- Student Charter: https://www.wgtn.ac.nz/learning-teaching/learning-partnerships/student-charter
- Terms and Conditions: https://www.wgtn.ac.nz/study/apply-enrol/terms-conditions/student-contract
- Turnitin: http://www.cad.vuw.ac.nz/wiki/index.php/Turnitin
- University structure: https://www.wgtn.ac.nz/about/governance/structure
- VUWSA: http://www.vuwsa.org.nz
Offering CRN: 18318
Prerequisites: COMP 103
Duration: 22 February 2021 - 20 June 2021
Starts: Trimester 1