Note: This unit is an archived version! See Overview tab for delivered versions.

INFO1103: Introduction to Programming (2017 - Semester 2)

Download UoS Outline

Unit: INFO1103: Introduction to Programming (6 CP)
Mode: Normal-Day
On Offer: Yes
Level: Junior
Faculty/School: School of Computer Science
Unit Coordinator/s: Dr Takatsuka, Masahiro
Session options: Semester 1, Semester 2
Versions for this Unit:
Campus: Camperdown/Darlington
Pre-Requisites: None.
Brief Handbook Description: Programming in a legible, maintainable, reusable way is essential to solve complex problems in the pervasive computing environments. This unit will equip students with foundation of programming concepts that are common to widely used programming languages. The "fundamentals-first & objects-later" strategy is used to progressively guide this introductory unit from necessary and important building blocks of programming to the object-oriented approach. Java, one of the most popular programming languages, is used in this unit. It provides interdisciplinary approaches, applications and examples to support students from broad backgrounds such as science, engineering, and mathematics.
Assumed Knowledge: None.
Lecturer/s: Dr Takatsuka, Masahiro
Timetable: INFO1103 Timetable
Time Commitment:
# Activity Name Hours per Week Sessions per Week Weeks per Semester
1 Lecture 1.00 2 13
2 Laboratory 2.00 1 13
3 Independent Study 8.00 13

Attributes listed here represent the key course goals (see Course Map tab) designated for this unit. The list below describes how these attributes are developed through practice in the unit. See Learning Outcomes and Assessment tabs for details of how these attributes are assessed.

Attribute Development Method Attribute Developed
Algorithm-based approach to problem solving Design (Level 1)
Basic programming and use of algorithms Engineering/IT Specialisation (Level 1)
Problem solving will require locating and using information effectively and efficiently. Information Seeking (Level 1)
Lab work will encourage collaboration, team work and communication. Communication (Level 1)

For explanation of attributes and levels see Engineering & IT Graduate Outcomes Table.

Learning outcomes are the key abilities and knowledge that will be assessed in this unit. They are listed according to the course goal supported by each. See Assessment Tab for details how each outcome is assessed.

Engineering/IT Specialisation (Level 1)
1. Ability to read, understand and trace Java code
2. Basic experience of testing and debugging for basic Java programs
3. Understanding of the concepts of inheritance, polymorphism and interfaces.
4. Understanding of basic Java programming
5. Understanding of the fundamental concepts of object oriented programming
6. Ability to understand, modify and add functionality to Java programs
7. Ability to convert simple pseudo-code into Java code
8. Experience using the Java collections framework
Assessment Methods:
# Name Group Weight Due Week Outcomes
1 Participation in practical programming tasks No 10.00 Multiple Weeks 1, 2, 3, 4, 5, 6, 7, 8,
2 Quiz No 20.00 Multiple Weeks 1, 2, 4, 5, 6, 7,
3 Lab Skills No 10.00 Multiple Weeks 1, 2, 3, 4, 5, 6, 7, 8,
4 Final Exam No 60.00 Exam Period 1, 2, 3, 4, 5, 6, 7, 8,
Assessment Description: Quiz: Practical quizzes worth 5% each: Q1 in Week 3, Q2 in Week 4, Q3 in Week 6.

Lab Skills: Lab Performance. The best 10 lab assessments (by tutors).

Final Exam: Final exam
Grading:
Grade Type Description
Standards Based Assessment Final grades in this unit are awarded at levels of HD for High Distinction, DI (previously D) for Distinction, CR for Credit, PS (previously P) for Pass and FA (previously F) for Fail as defined by University of Sydney Assessment Policy. Details of the Assessment Policy are available on the Policies website at http://sydney.edu.au/policies . Standards for grades in individual assessment tasks and the summative method for obtaining a final mark in the unit will be set out in a marking guide supplied by the unit coordinator.
Minimum Pass Requirement It is a policy of the School of Computer Science that in order to pass this unit, a student must achieve at least 40% in the written examination. For subjects without a final exam, the 40% minimum requirement applies to the corresponding major assessment component specified by the lecturer. A student must also achieve an overall final mark of 50 or more. Any student not meeting these requirements may be given a maximum final mark of no more than 45 regardless of their average.
Policies & Procedures: IMPORTANT: School policy relating to Academic Dishonesty and Plagiarism.

In assessing a piece of submitted work, the School of IT may reproduce it entirely, may provide a copy to another member of faculty, and/or to an external plagiarism checking service or in-house computer program and may also maintain a copy of the assignment for future checking purposes and/or allow an external service to do so.

Other policies

See the policies page of the faculty website at http://sydney.edu.au/engineering/student-policies/ for information regarding university policies and local provisions and procedures within the Faculty of Engineering and Information Technologies.
Prescribed Text/s: Note: Students are expected to have a personal copy of all books listed.
Note on Resources: There is a prescribed text for this unit. Others are highly recommended.

The text is used to provide extra support for reading and practice and its exercises are an excellent way to study for this unit.

Each chapter also has a graphics supplement, which is not required material but it is intended that they will provide a suitable challenge for students looking to stretch themselves.

Note that the "Weeks" referred to in this Schedule are those of the official university semester calendar https://web.timetable.usyd.edu.au/calendar.jsp

Week Description
Week 1 Lab: Programming basics
Lecture: Introduction to the unit, fundamental concepts, first program
Week 2 Lecture: Variables and Types
Lab: Numerical, Boolean and String variables; expressions
Week 3 Lecture: Control Flow 1: Branching (IF and WHILE)
Lab: Branching and Loops
Week 4 Lecture: Control Flow 2: iteration (FOR), Arrays
Lab: Loops and the Design Process
Week 5 Lab: Arrays and Objects
Lecture: Methods
Week 6 Lab: Methods and Exceptions
Lecture: Exceptions, File input/output
Week 7 Lecture: Classes and Objects
Lab: Files and Classes
Week 8 Lecture: Classes and methods, testing
Lab: More on classes
Week 9 Lecture: Design problems with Classes and Methods
Lab: Testing and Multi-class Programs
Week 10 Lecture: Programming idioms, inheritance
Lab: Using classes
Week 11 Lab: Idioms and Inheritance
Lecture: Collections, Recursion
Week 12 Lecture: Inheritance, Multidimensional arrays
Lab: Collections and recursion
Week 13 Lecture: Revision and Examination overview
Lab: Revision
Exam Period Assessment Due: Final Exam

Course Relations

The following is a list of courses which have added this Unit to their structure.

Course Year(s) Offered
Bachelor of Computer Science and Technology 2015, 2016, 2017, 2025
Computer Engineering / Commerce 2010
Electrical Engineering / Arts 2011, 2012, 2013, 2014
Electrical Engineering / Commerce 2010, 2011, 2012, 2013, 2014
Electrical Engineering (Bioelectronics) / Arts 2011, 2012
Electrical Engineering (Bioelectronics) / Commerce 2011, 2012
Electrical Engineering (Bioelectronics) / Medical Science 2011, 2012
Electrical Engineering (Bioelectronics) / Science 2011, 2012
Electrical Engineering (Bioelectronics) / Law 2011, 2012
Electrical Engineering / Medical Science 2011, 2012, 2013, 2014
Electrical Engineering / Science 2011, 2012, 2013, 2014
Electrical Engineering (Computer) / Arts 2011, 2012, 2013, 2014
Electrical Engineering (Computer) / Commerce 2011, 2012, 2013, 2014
Electrical Engineering (Computer) / Medical Science 2011, 2013, 2014
Electrical Engineering (Computer) / Science 2011, 2012, 2013, 2014
Electrical Engineering (Computer) / Law 2011, 2012, 2013, 2014
Electrical Engineering (Power) / Arts 2011, 2012, 2013, 2014
Electrical Engineering (Power) / Commerce 2010, 2011, 2012, 2013, 2014
Electrical Engineering (Power) / Medical Science 2011, 2012, 2013, 2014
Electrical Engineering (Power) / Science 2011, 2012, 2013, 2014
Electrical Engineering (Power) / Law 2010, 2011, 2012, 2013, 2014
Electrical Engineering (Telecommunications) / Arts 2011, 2012, 2013, 2014
Electrical Engineering (Telecommunications) / Commerce 2011, 2012, 2013, 2014
Electrical Engineering (Telecommunications) / Medical Science 2011, 2012, 2013, 2014
Electrical Engineering (Telecommunications) / Science 2011, 2012, 2013, 2014
Electrical Engineering (Telecommunications) / Law 2014
Electrical Engineering 2015, 2016, 2017
Electrical / Arts (2022 and earlier) 2015, 2016, 2017
Electrical / Commerce 2015, 2016, 2017
Electrical / Project Management 2015, 2016, 2017
Electrical / Science 2015, 2016, 2017
Electrical / Law 2015, 2016, 2017
Electrical Engineering (mid-year) 2016, 2017
Software Engineering (mid-year) 2016, 2017
Software Engineering 2015, 2016, 2017
Software / Arts (2022 and earlier) 2015, 2016, 2017
Software / Commerce 2015, 2016, 2017
Software / Project Management 2015, 2016, 2017
Software / Science 2015, 2016, 2017
Software / Law 2015, 2016, 2017
Software Engineering / Arts 2011, 2012, 2013, 2014
Software Engineering / Commerce 2010, 2011, 2012, 2013, 2014
Software Engineering / Medical Science 2011, 2012, 2013, 2014
Software Engineering / Science 2011, 2012, 2013, 2014
Software Engineering / Law 2010, 2011, 2012, 2013, 2014
Flexible First Year (Stream B) / Arts 2013, 2014
Flexible First Year (Stream B) / Commerce 2011, 2012, 2013, 2014
Flexible First Year (Stream B) / Science 2012, 2013, 2014
Flexible First Year (Stream B) / Medical Science 2012, 2013, 2014
Aeronautical Engineering / Science 2011, 2012, 2013, 2014
Aeronautical Engineering (Space) / Science 2011, 2012, 2013, 2014
Biomedical Engineering / Science 2013, 2014
Chemical & Biomolecular Engineering / Science 2011, 2012, 2013, 2014
Civil Engineering / Science 2011, 2012, 2013, 2014
Aeronautical / Science 2015, 2016, 2017
Aeronautical (Space) / Science 2015
Biomedical Engineering (mid-year) 2016, 2017
Biomedical Engineering 2016, 2017
Biomedical /Science 2015, 2016, 2017
Chemical & Biomolecular / Science 2015
Civil / Science 2015
Mechanical / Science 2015, 2016, 2017
Mechanical (Space) / Science 2015
Mechatronic / Science 2015, 2016, 2017
Mechatronic (Space) / Science 2015
Mechanical Engineering (Biomedical) / Science 2011, 2012
Mechanical Engineering / Science 2011, 2012, 2013, 2014
Mechanical Engineering (Space) / Science 2011, 2012, 2013, 2014
Mechatronic Engineering / Science 2011, 2012, 2013, 2014
Mechatronic Engineering (Space) / Science 2011, 2012, 2013, 2014
Project Engineering and Management (Civil) / Science 2011
Flexible First Year (Stream A) / Science 2012, 2013, 2014

Course Goals

This unit contributes to the achievement of the following course goals:

Attribute Practiced Assessed
Design (Level 1) Yes 0%
Engineering/IT Specialisation (Level 1) Yes 100%
Information Seeking (Level 1) Yes 0%
Communication (Level 1) Yes 0%

These goals are selected from Engineering & IT Graduate Outcomes Table which defines overall goals for courses where this unit is primarily offered. See Engineering & IT Graduate Outcomes Table for details of the attributes and levels to be developed in the course as a whole. Percentage figures alongside each course goal provide a rough indication of their relative weighting in assessment for this unit. Note that not all goals are necessarily part of assessment. Some may be more about practice activity. See Learning outcomes for details of what is assessed in relation to each goal and Assessment for details of how the outcome is assessed. See Attributes for details of practice provided for each goal.