COMPX568-19A (HAM)

Programming for Industry

30 Points

Edit Header Content
Division of Health Engineering Computing & Science
School of Computing and Mathematical Sciences
Department of Computer Science

Staff

Edit Staff Content

Convenor(s)

Lecturer(s)

Administrator(s)

Placement Coordinator(s)

Tutor(s)

Student Representative(s)

Lab Technician(s)

Librarian(s)

: debby.dada@waikato.ac.nz

You can contact staff by:

  • Calling +64 7 838 4466 select option 1, then enter the extension.
  • Extensions starting with 4, 5, 9 or 3 can also be direct dialled:
    • For extensions starting with 4: dial +64 7 838 extension.
    • For extensions starting with 5: dial +64 7 858 extension.
    • For extensions starting with 9: dial +64 7 837 extension.
    • For extensions starting with 3: dial +64 7 2620 + the last 3 digits of the extension e.g. 3123 = +64 7 262 0123.
Edit Staff Content

Paper Description

Edit Paper Description Content
Further to what is stated in the introduction, this course makes up one half of the Post Graduate Certificate in Information Technologies (PGCertInfoTech), which is a custom-designed programme for students with an undergraduate degree in a non-IT related discipline. It is a taught programme that is taken full-time for one Semester at the University of Waikato. Students take highly practical, hands-on and lab-based courses that are exclusive to the programme. The courses are purposely developed to complement Students’ existing knowledge and skills from studying a non-IT degree, and equip students with foundational skills for a career in IT.
Edit Paper Description Content

Paper Structure

Edit Paper Structure Content

This course is taught for 13 weeks, full-time, in a lab. The first 2 weeks of the course focus provide an understanding of the basics of Java programming, with the next 8 weeks building upon this knowledge and introducing key programming concepts such as GUI design, multi-threading, and design patterns. The final 3 weeks of the course are spent developing a single large assignment drawing upon knowledge learned in both this and the Programming with Web Technologies course.

Looking at how each week breaks-down, in general the day will begin with a lecture on a particular topic, which is then followed by lab exercises for the remainder of the day to reinforce that knowledge. This lab time includes time for guided reading and reflection to allow Students to ask questions and develop their own answers. Students are expected to attend the lab 'full-time' from Monday and Tuesday, 9:00am to 5:00pm, with an allowance for lunch, morning, and afternoon tea breaks.

Fridays are different and are shared with the co-requisite course Programming with Web Technologies. Students are expected to attend the lab from 9:00am through till 5:00pm. The mornings will be spent doing a brief revision and a written theory test followed by a practical test. Friday afternoons will generally consist of two one-hour seminars: the first will be on an interesting/emergent computer science topic, while the second will be from an invited industry speaker.

The assigned lab for this course is G.B.04. This is a modern lab located in the basement level of G-Block. The lab includes individual computer workstations, white-board space for sketching ideas, and couches for comfortable reading. Meanwhile, the times and locations for seminars will be announced in advance each week as they might vary due to speaker availability.

Materials for this course, including the lecture notes and recordings, will be made available via Moodle. Moodle is also the preferred method for submission of assignments, portfolios, and other assessed documents. Other materials needed during the lab exercises, such as starting frameworks or media resources, will be made available on a network shared drive accessible from within the lab.

Edit Paper Structure Content

Learning Outcomes

Edit Learning Outcomes Content

Students who successfully complete the course should be able to:

  • Programming for Industry
    • Explain the philosophy of object-oriented design, including aspects such as encapsulation, inheritance and polymorphism.

    • Develop a small application in an object-oriented programming language consisting of multiple classes using features of the language appropriate to the problem.

    • Make design decisions, and improve designs, based on the principles of sound object-oriented design.

    • Communicate design knowledge using a modelling notation.

    • Use software tools to support software development activities.
    Linked to the following assessments:
Edit Learning Outcomes Content
Edit Learning Outcomes Content

Assessment

Edit Assessments Content

Assessment Components

Edit Assessments Content

The internal assessment/exam ratio (as stated in the University Calendar) is 100:0. There is no final exam. The final exam makes up 0% of the overall mark.

The internal assessment/exam ratio (as stated in the University Calendar) is 100:0 or 0:0, whichever is more favourable for the student. The final exam makes up either 0% or 0% of the overall mark.

Component DescriptionDue Date TimePercentage of overall markSubmission MethodCompulsory
1. Lab Completion (18 Labs)
20
2. Theory
Sum of All
20
  • Online: Submit through Moodle
3. Quiz
8 Mar 2019
No set time
-
  • Online: Submit through Moodle
4. Theory Test 1
29 Mar 2019
No set time
-
  • Online: Submit through Moodle
5. Theory Test 2
12 Apr 2019
No set time
-
  • Online: Submit through Moodle
6. Theory Test 3
17 May 2019
No set time
-
  • Online: Submit through Moodle
7. Theory Test 4
27 May 2019
No set time
-
  • Online: Submit through Moodle
8. Practical
Sum of All
30
  • Online: Submit through Moodle
9. Practical Test 1
-
  • Online: Submit through Moodle
10. Take-home Assignment
-
  • Online: Submit through Moodle
11. Practical Test 2
-
  • Online: Submit through Moodle
12. Project
Sum of All
30
  • Online: Submit through Moodle
13. Individual Report
-
  • Online: Submit through Moodle
14. Group Project
-
  • Online: Submit through Moodle
Assessment Total:     100    
Failing to complete a compulsory assessment component of a paper will result in an IC grade
Edit Assessments Content

Required and Recommended Readings

Edit Required Readings Content

Required Readings

Edit Required Readings Content
Denny, P. and Luxton-Reilly, A. (2009). Principles of Programming. Auckland University. [Accessible on Moodle]
Edit Required Readings Content

Recommended Readings

Edit Recommended Readings Content

Schildt, H. (2014). Java: The Complete Reference. McGraw-Hill Education; 9th edition.

Dale, N. and Lewis, J (2016). Computer Science Illuminated. Jones & Bartlett Learning; 6th edition.

Edit Recommended Readings Content

Online Support

Edit Online Support Content
Online support will be available via Moodle forums, although Students are expected to raise most questions during lab times.
Edit Online Support Content

Workload

Edit Workload Content
The workload for this course, when combined with the co-requisite Programming with Web Technologies course, is expected to be 37.5 to 46 hours per week (effectively full-time). Contact time, in lab, will make up most of this time---although some out-of-class time for personal study is expected. Students can expect to commit 300 hours to this course in total over the semester (so a grand total of 600 hours when taken in combination with Programming with Web Technologies).
Edit Workload Content

Linkages to Other Papers

Edit Linkages Content

Prerequisite(s)

Corequisite(s)

Corequisite papers: COMPX569

Equivalent(s)

Restriction(s)

Restricted papers: COMP568

Edit Linkages Content