BIT101 Introduction to Programming

Unit outline

Important Update: Our aim is to provide you with an optimal learning experience, regardless of how this unit is delivered. Teaching will be delivered in line with the most current COVID Safe health guidelines.  This may include a mix of online and face-to-face.  Please check the learning management system for announcements and updates. Thank you for your flexibility and commitment to studying with Sydney Institute of Higher Education. 
Enrolment modes: Year 1, Semester 1
Credit point(s): 12.5
EFTSL value: 0.125
Prerequisite: Nil
Typical study commitment: Students will on average spend 10 hours per week over the teaching period undertaking the teaching, learning and assessment activities for this unit.
Scheduled learning activities: 4 timetabled hours per week, 6 personal study hours per week
Other resource requirements: Access to a Computer, Python, Google Chrome

Unit description 

This unit is aimed at introducing students to the subject of computer programming and enabling them to develop computer programs for problem solving at a basic level. The focus of the unit is to provide students with a robust understanding of the basic principles of programming and algorithmic thinking. Students will be able to reinterpret a general problem into a computer problem and use their understanding of the computer model to design and develop source code. The unit will discuss topics necessary for the students to be able to write, debug, and execute computer code to solve logical problems. Crucial concepts include defining data types, control flow, iteration, functions, and recursion. The teaching materials are designed to provide technical and theoretical knowledge that serve as a foundation for continued learning of presented areas.


Unit learning outcomes (ULO)   

 
On the successful completion of this units student will be able to:
ULO1 Describe how data are represented, manipulated, and stored in a computer.
ULO2 Demonstrate a fundamental understanding of software development methodologies, including modular design, pseudo code, flowcharting, structure charts, data types, control structures, functions, and arrays. 
ULO3 Apply computer programming concepts to new problems or situations.
ULO4 Demonstrate appropriate design, coding, testing, and documenting of computer programs that implement project specifications and requirements. 
ULO5 Develop projects that utilize logical algorithms from specifications and requirements statements. 
ULO6 Understand and use the fundamental concepts of data types, structured programming, and algorithmic design.

Topics to be included in the unit

1. Introduction to Computers
2. Introduction to Computer Programming
3. Python Basics
4. Conditional Statements
5. Repetition and Lists
6. Functions
7. Strings
8. Tuples, Comments, and Docstrings
9. Debugging
10. Testing
11. Python’s Interaction with External Files
12. Key Challenges in Python Programming

Assessment

Assessment Description Grading and weighting
(% total mark for unit)
Indicative due week 
Assessment 1: Class Participation 10% 12
Assessment 2: Individual Assignment 20% 10
Assessment 3: Group Assignment 30% 12
Assessment 4: Final Exam 40% Final exam week

The assessment due weeks provided may change. Your lecturer will clarify the exact assessment requirements, including the due date, at the start of the teaching period.