Part A: Course Overview
Course Title: Python Programming Studio
Credit Points: 24.00
Flexible Terms
Course Code |
Campus |
Career |
School |
Learning Mode |
Teaching Period(s) |
COSC3106 |
City Campus |
Undergraduate |
175H Computing Technologies |
Face-to-Face |
UGRDFlex25 (STEM) |
Course Coordinator: Kylie McColl
Course Coordinator Phone: -
Course Coordinator Email: kylie.mccoll@rmit.edu.au
Course Coordinator Location: 12.10.41
Course Coordinator Availability: contact via email
Pre-requisite Courses and Assumed Knowledge and Capabilities
Recommended Prior Study
It is recommended to have satisfactorily completed the following course/s before you commence this course:
If you have completed prior studies at RMIT or another institution that developed the skills and knowledge covered in the above course/s you may be eligible to apply for credit transfer.
Alternatively, if you have prior relevant work experience that developed the skills and knowledge covered in the above course/s you may be eligible for recognition of prior learning.
Please follow the link for further information on how to apply for credit for prior study or experience.
Course Description
Python Programming Studio is a studio-based course that focuses on the acquisition and development of fundamental technical and professional skills for computing. The studio-based approach provides an authentic problem setting. Theory and practice are blended in the application of learning centred on development.
In Python Programming Studio, you will explore how to build software, through learning how to build a simple fully functional data-driven website. You will learn about fundamental concepts in User-Centred Design (UX/UI) and Database Systems Design that explore the front-end-to-back-end of software development. You will integrate theory and practice across these concepts together in the Studio Project.
This course includes a work integrated learning experience in which your knowledge and skills will be applied and assessed in a real or simulated workplace context and where feedback from industry and/ or community is integral to your experience.
Objectives/Learning Outcomes/Capability Development
Program Learning Outcomes
This course contributes to the program learning outcomes for the following program(s):
BP349 - Bachelor of Information Technology (Professional)
BP355 - Bachelor of Cyber Security
BP356 - Bachelor of Cyber Security (Professional)
BP340P23 - Bachelor of Data Science
BP348 - Bachelor of Data Science (Professional)
PLO 1 Knowledge - Apply a broad and coherent set of knowledge and skills for developing data-driven solutions for contemporary societal challenges
PLO 2 Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement data-driven solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects
PLO 3 Cognitive and Technical Skill - Critically analyse and evaluate user requirements and design data-driven solutions, employing data science development tools, techniques and emerging technologies
PLO 4 Communication - Communicate effectively with diverse audiences, employing a range of communication methods in interactions.to both computing and non-computing personnel
PLO 5 Collaboration and Teamwork - Demonstrate effective teamwork and collaboration by using tools and practices to manage and meet project deliverables.
PLO 6 Responsibility and Accountability - Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing data-driven solutions.
For more information on the program learning outcomes for your program, please see the program guide.
Upon successful completion of this course, you will be able to:
- Apply foundational programming skills to design and develop small-to-medium-scale software programs using the Python programming language;
- Apply core principles of user-centred design to analyse and design user interfaces with good usability that consider human needs, capabilities, usability and user experience goals.
- Apply sound database design methodologies, such as conceptual modelling and normalisation to design and build a database;
- Apply SQL as a programming language, directly and embedded in Python programs, to define database schemas, update database contents and to extract data from databases for specific users’ information needs;
- Demonstrate effective team participation, peer feedback, management and communication through relevant industry tools and practices, such as version control system;
- Demonstrate adherence to appropriate standards and professional practice.
Overview of Learning Activities
You will explore the course material through a sequence of hands-on workshops each week. Workshops feature online interactive resources, practical exercises, activities, and discussions. The workshops depend on preparation material including written text, video content, and preparation exercises which you are expected to read and complete before attending the workshops. The workshops are supplemented by personal feedback opportunities and a weekly online Q&A live event.
You will need to spend significant time on learner-directed study and activities. This includes time spent completing the preparation material, completing the studio project and assessments, participating in the online course discussion channels, and conducting individual review, study, and reflection of the course content. Your learner-directed study will be designed by the instructors to reinforce concepts and develop practical skills across a variety of problem types.
Overview of Learning Resources
RMIT will provide you with resources and tools for learning in this course through myRMIT Studies Course. You will make extensive use of a provided online learning environment, which features curated interactive learning materials and a programming environment. You will be required to have your own personal laptop (BYOD) in order to access this environment in and outside of class. You will be able to access course information and learning materials through Canvas.
There are services available to support your learning through the University Library. The Library provides guides on academic referencing and subject specialist help as well as a range of study support services. For further information, please visit the Library page on the RMIT University website and the myRMIT student portal.
Overview of Assessment
Note: This course has no hurdle requirements.
The assessment for the programming studio places an emphasis on the workshop studio-model of the course. Through the assessments you will explore the front-end to back-end concepts of software development. You will apply software development skills including Python programming, databases, user-centred design and user interface design. You will be required to complete both individual assessments and group-based assessments.
Assessment Tasks
Assessment Task 1: Databases.
Weighting: 15%
This task supports: CLOs 3, 6.
Assessment Task 2: Workshop Standups.
Weighting: 10%
This task supports CLOs: 1 - 6.
Assessment Task 3: Studio Project.
Weighting: 50%
This task supports CLOs: 1 - 6.
Assessment Task 4: Programming.
Weighting: 10%
This task supports CLOs: 3 - 4.
Assessment Task 5: User-centred Design.
Weighting: 15%
This task supports CLOs: 2, 6.
If you have a long-term medical condition and/or disability it may be possible to negotiate to vary aspects of the learning or assessment methods. You can contact the program coordinator or Equitable Learning Services if you would like to find out more.