Course Title: Java Programming Studio

Part A: Course Overview

Course Title: Java Programming Studio

Credit Points: 24.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC3056

RMIT University Vietnam

Undergraduate

175H Computing Technologies

Face-to-Face

Viet3 2023,
Viet1 2024,
Viet2 2024

COSC3057

RMIT Vietnam Hanoi Campus

Undergraduate

175H Computing Technologies

Face-to-Face

Viet3 2023,
Viet1 2024

Flexible Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC2803

City Campus

Undergraduate

171H School of Science

Face-to-Face

UGRDFlex21 (PBC1),

UGRDFlex21 (ZZZZ)

COSC2803

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex22 (F2S1),

UGRDFlex22 (F4S1)

COSC2803

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex23 (F2S1),

UGRDFlex23 (F4S1)

COSC2803

City Campus

Undergraduate

175H Computing Technologies

Face-to-Face

UGRDFlex24 (STEM),

UGRDFlex24 (STME)

Course Coordinator: Halil Ali

Course Coordinator Phone: -

Course Coordinator Email: halil.ali@rmit.edu.au

Course Coordinator Location: -

Course Coordinator Availability: by appointment


Pre-requisite Courses and Assumed Knowledge and Capabilities

Required Concurrent Study
You should undertake 054079 COSC2801 - Java Programming Bootcamp at the same time as this course as it contains areas of knowledge and skills which are implemented together in practice.

Alternatively, you may be able to demonstrate the required skills and knowledge before you start this course.

Contact your course coordinator if you think you may be eligible for recognition of prior learning.

Assumed Knowledge
Successful completion of 054081 COSC2803 Java Programming Studio requires that students have a proficiency in the Java Programming language as gained before the commencement of this course, or as gained in the co-requisite course. This proficiency includes the following skills and concepts:

  • Foundations of programming:
    • Basic control structures: sequence, selection, and iteration
    • Common data types: integer, floating-point, string, etc.
    • Basic data structures: arrays
    • Methods and Functions
  • Foundations of Object Orientated programming: 
    • Classes
    • Objects


Course Description

Java 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 Java Programming Studio students explore how to build software, through learning how to build a simple fully functional data-driven website. Students learn about fundamental concepts in User-Centred Design (UX/UI) and Database System that explore the front-end-to-back-end of software development. Students integrate theory and practice across these concepts together in the Studio Project. In a studio-long project, students put into practice the theoretical concepts through your programming skills to make a fully functional website.

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

This course contributes to Program Learning Outcomes (PLOs) for the following programs:

BP094 Bachelor of Computer Science
BP096 Bachelor of Software Engineering
BP162 Bachelor of Information Technology
BP340 Bachelor of Data Science
BP355 Bachelor of Cyber Security
BP347 Bachelor of Computer Science (Professional)
BP348 Bachelor of Data Science (Professional)
BP356 Bachelor of Cyber Security (Professional)

For more information on the program learning outcomes for your program, please see the program guide.  

Upon completion of this course, you will have achieved the following learning outcomes:

Knowledge
Apply a broad and coherent set of knowledge and skills for developing information technology solutions for contemporary societal challenges.

Problem Solving
Apply systematic problem solving and decision-making methodologies to identify, design and implement information technology solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects

Cognitive and Technical Skills
Critically analyse and evaluate user requirements and design systems employing software development tools, techniques and emerging technologies.

Communication
Communicate effectively with diverse audiences, employing a range of communication methods in interactions.to both computing and non-computing personnel.

Collaboration
Demonstrate effective teamwork and collaboration by using tools and practices to manage and meet project deliverables.

Responsibility and Accountability
Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing information technology solutions.


Upon successful completion of this course, you will be able to:

  1. Apply pre-requisite and co-requisite knowledge of foundational programming skills to design and develop small-to-medium-scale software programs in the Java programming language;
  2. 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;
  3. Apply sound database design methodologies, such as conceptual modelling and normalisation to design and build a database back-end for an application;
  4. Apply SQL as a programming language, directly and embedded in Java programs,  to define database schemas, update database contents and to extract data from databases for specific users’ information needs;
  5. Demonstrate effective team participation, peer review, management and communication through relevant industry tools and practices, such as version control system;
  6. 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 are delivered in a blended mode featuring 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

You will make extensive use of computer laboratories and relevant software provided by the School. RMIT will provide you with resources and tools for learning in this course through myRMIT Studies Course.

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

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 the skills gained from the Programming Bootcamp in developing an application over the duration of the studio through the team based competitive review and studio project. You will individually demonstrate through the other assessment tasks, which will provide regular feedback on your individual progression.

This course has no hurdle requirements.

Assessment Task 1: Competitive Review. Initial Design of small to medium sized application (teamwork).
Weighting: 10% 
Investigate existing websites and mobile application that address a “social challenge". Conduct an informed survey to study the user perspective and identify shortcomings of the existing services from the user perspective.
This task supports CLOs: 2 and 5.

Assessment Task 2: 50% Studio Project. Small to medium sized software application (teamwork).
Weighting: 50%
Studio Project: Design, prototype and build a small to medium sized application in teams. The project is divided into multiple milestones that cover: (1) the development of the end-to-end web application. (2) review and redevelopment of the studio project from user feedback and survey.
This task supports CLOs: 1 - 6.

Assessment Task 3: Studio Portfolio.
Weighting: 20%
An individual compilation of weekly studio activities including completed workshop exercises, results from studio discussions, and answers to set questions.
This task supports CLOs: 2 and 4.

Assessment Task 4: (20%) Programming and User Centred Design Challenge.
Individual formative knowledge and programming skills challenge of concepts in user-centred design and database systems held as a timed assessment during workshops or as scheduled.
This task supports CLOs: 2 - 4.

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.