UTS: 48023 Programming Fundamentals - Engineering, UTS Handbook

Loading...
48023 Programming Fundamentals Warning: The information on this page is indicative. The subject outline for a particular session, location and mode of offering is the authoritative source of all information about the subject for that offering. Required texts, recommended texts and references in particular are likely to change. Students will be provided with a subject outline once they enrol in the subject. Subject handbook information prior to 2018 is available in the Archives. UTS: Engineering: Software Credit points: 6 cp Subject level: Undergraduate Result type: Grade and marks Anti-requisite(s): 31267 Programming Fundamentals AND 31465 Object-oriented Programming AND 31488 Programming Foundations AND 31508 Programming Fundamentals AND 37171 Programming for Informatics

Description This subject provides basic skills in Java programming and software design, with no assumed knowledge of programming. It covers the topics of object-oriented (OO) programming concepts, data flow, control flow, arrays, and the basics of sorting and searching algorithms. The subject teaches and illustrates a design process using a set of design notations and design rules, and shows how to develop a correct, readable and reusable solution from a problem specification.

Subject learning objectives (SLOs) Upon successful completion of this subject students should be able to: 1. Demonstrate a working knowledge of the basic constructs in the object-oriented language Java by being able to complete small programs. 2. Use the BlueJ programming environment to build simple software systems. 3. Design and code a software system that correctly implements a solution to a small problem defined by a specification, and follows specific design rules. 4. Comprehend and use basic program control constructs of sequence, selection and iteration. 5. Comprehend and use code that implements arrays and the basic sorting and searching algorithms.

Course intended learning outcomes (CILOs) This subject also contributes specifically to the development of the following faculty Course Intended Learning Outcomes (CILOs) and Engineers Australia (EA) Stage 1 competencies: Identify and apply relevant problem solving methodologies, which is linked to EA Stage 1 Competencies: 1.1, 2.1, 2.2, 2.3 (B.1) Design components, systems and/or processes to meet required specifications, which is linked to EA Stage 1 Competencies: 1.3, 1.6, 2.1, 2.2, 2.3 (B.2) Synthesise alternative/innovative solutions, concepts and procedures, which is linked to EA Stage 1 Competencies: 1.1, 3.3 (B.3) Implement and test solutions, which is linked to EA Stage 1 Competencies: 2.2, 2.3 (B.5) Apply abstraction, mathematics and/or discipline fundamentals to analysis, design and operation, which is linked to EA Stage 1 Competencies: 1.1, 1.2, 2.1, 2.2 (C.1)

Teaching and learning strategies This subject is taught using a combination of lectures, tutorials, labs and assessments. The subject is taught progressively. The assessments are available progressively so that students can learn at their own pace. Additional Information The subject content is presented in four face-to-face hours each week: two hours of “live” lecture, and two hours of combined tutorial and laboratory class (i.e. the class listed as “cmp” in the student’s timetable). Note: Students are expected to commit additional study time outside of class time. The university regards a 6 credit point subject as requiring 5-8 hours of study per week, in addition to the four hours of class time. The teaching and learning strategy of this subject is based on the Keller Plan: Keller, F. S. (1966) A personal course in psychology. In R. Ulrich, T. Stachnik, and J. Mabry (Eds.), Control of human behavior. Glenview, Ill.: Scott, Foresman, Inc. 91-93. Keller, F. S. (1968). “Good-bye teacher”. Journal of Applied Behavior Analysis, 1, 79-89. Keller described five features of his plan: (1) The go-at-your-own-pace feature, which permits a student to move through the course at a speed commensurate with the student’s ability and/or other demands upon the student's time, such as assessment deadlines in other subjects, paid-work, family commitments, and illness. Students should note, however, that the go-at-your-own-pace feature is aimed at alleviating the effect of brief acute periods of other demands; it is not designed to cater for long chronic periods of other demands. Students are warned against adopting a speed that is so persistently slow that they do not complete the required pass/fail assessment items before the end of the teaching session. (2) All assessment items form part of a sequence. A student may only attempt a new assessment item after passing the preceding assessment item in the sequence. This is the reason why a student does not receive marks for a later assessment item when the student has not completed an earlier assessment item. It is not in the best interests of students to attempt assessment items out of sequence, as the student is unlikely to be adequately prepared for the subsequent assessment item. If a student does manage to complete a later assessment item, it is likely that either (1) the student did so by consuming an inordinate amount of their own time, or (2) the student received outside assistance that compromised the student’s learning. The enforcement of a sequence of assessments also better utilises the scarce face-to-face tutoring resources; when a tutor helps a student with a particular assessment item, the tutor can safely assume that a student has completed the prerequisite material. Also, feedback on earlier assessments helps the students improve and deepen their knowledge in order to attempt and prepare for later assessment items. (3) The use of live lectures and demonstrations as vehicles of motivation, rather than sources of subject content knowledge. Students will prepare for most live lectures by watching YouTube videos. (Any such lecture pre-viewing will be specified in UTSOnline, and/or communicated by broadcast email, in the week leading up to the live lecture.) Lecture sessions will consist of a live lecture supplemented by opportunities for students to complete provided exercises to develop their understanding and skills. Students may work together on those exercises, and the lecturer will be available to assist and answer questions. (4) The use of written materials and web-enabled communication to allow each student to proceed at their own rate. (5) Repeated testing, immediate scoring, and one-on-one tutoring, which also enhances the personal-social aspect of the educational process. This is facilitated in two ways. In the first hour (approximately) of each two-hour lab session, students do lab tests under closed book exam conditions. In that time period, students may receive immediate, repeated automatic testing and scoring, by uploading their test answers to the PLATE system (see details in the assessment section). In the second hour, a student may seek help from a tutor on the assessment item(s) that they could not complete during the previous hour, or on the assessment item that the student will attempt in their next lab. In that second hour, students may also ask any questions related to the subject content, not just questions related to specific assessment items. However, students will only make good use of this aspect of the Keller Plan if they use the tutors in the second hour of lab sessions. Students are welcome to seek out a tutor’s help in the second hour of any lab session, not just the lab session in which they are enrolled.

Content (topics) 1. The BlueJ environment. 2. Data Flow: assignment; input, output; numeric expressions, and calculations. 3. OO Programming: class; object; constructor; visibility modifiers; local variables. 4. Control Flow: selection and repetition. 5. Data Structures and Basic Algorithms: arrays; sorting and searching. 6. Design notations, processes, and rules.

Assessment Assessment task 1: Pass / fail mastery tests conducted in weekly tutorial / labs Intent:

The purpose of these tests is to establish that a student has acquired the minimum knowledge and programming skills required to pass this subject.

Objective(s):

This assessment task addresses the following subject learning objectives (SLOs): 1, 2, 3, 4 and 5 This assessment task contributes to the development of the following course intended learning outcomes (CILOs): B.1, B.2 and B.5

Type:

Quiz/test

Groupwork:

Individual

Weight:

50%

Length:

In each weekly two hour lab session, a portion of the first hour will be devoted to mastery tests.

Criteria linkages:

Criteria

Weight (%)

SLOs

CILOs

Correctness of the answer

20

1, 2, 3, 4, 5

B.1

Application of Methodology

20

1, 2, 3, 4, 5

B.1

Correctness of design/implementation

20

1, 2, 3, 4, 5

B.2

Functionality of design

20

1, 2, 3, 4, 5

B.2

Functionality and correctness of design

20

1, 2, 3, 4, 5

B.5

SLOs: subject learning objectives CILOs: course intended learning outcomes

Assessment task 2: Assignment Intent:

The purpose of this assessment task is to provide students with the opportunity to show they can apply the basic skills and knowledge of programming in a context where it is not made explicit exactly which basic skills and knowledge need to be used.

Objective(s): This assessment task addresses the following subject learning objectives (SLOs): 1, 2, 3 and 4 This assessment task contributes to the development of the following course intended learning outcomes (CILOs): B.1, B.2, B.5 and C.1 Type:

Quiz/test

Groupwork:

Individual

Weight:

30%

Criteria linkages:

Criteria

Weight (%)

SLOs

CILOs

Correctness of the answer

17

1, 2, 3, 4

B.1

Application of Methodology

17

1, 2, 3, 4

B.1

Correctness of design/implementation

17

1, 2, 3, 4

B.2

Functionality of design

17

1, 2, 3, 4

B.2

Functionality and correctness of design

17

1, 2, 3, 4

B.5

Application of theory

15

1, 2, 3, 4

C.1

SLOs: subject learning objectives CILOs: course intended learning outcomes

Assessment task 3: Additional lab exercises conducted in weekly tutorial / labs Intent:

The purpose of these tests is to (1) deepen the minimum knowledge and programming skills required to pass this subject and (2) broaden the students grasp of those skills and concepts by presenting further case studies.

Objective(s): This assessment task addresses the following subject learning objectives (SLOs): 1, 2, 3, 4 and 5 This assessment task contributes to the development of the following course intended learning outcomes (CILOs): B.1, B.2, B.3, B.5 and C.1 Type:

Project

Groupwork:

Individual

Weight:

20%

Length:

In each weekly two hour lab session, a portion of the first hour will be devoted to both the mastery tests and these lab exercises.

Criteria linkages:

Criteria

Weight (%)

SLOs

CILOs

Correctness of the answer

14

1, 2, 3, 4, 5

B.1

Application of Methodology

14

1, 2, 3, 4, 5

B.1

Correctness of design/implementation

14

1, 2, 3, 4, 5

B.2

Functionality of design

14

1, 2, 3, 4, 5

B.2

Creativity of the solution

14

1, 2, 3, 4, 5

B.3

Functionality and correctness of design

14

1, 2, 3, 4, 5

B.3, B.5

Application of theory

16

1, 2, 3, 4, 5

C.1

SLOs: subject learning objectives CILOs: course intended learning outcomes

Minimum requirements To score a passing mark/grade, a student must successfully complete all of the pass/fail lab tests (Assessment task 1), under close book exam conditions. Students who do not meet this minimum requirement but achieve an overall mark of 50% or greater will fail the subject and receive their overall mark with an "X" (fail) grade.

Required texts Nielsen, F. (2009) Concise and practical introduction to programming algorithms in java. Parsons, D (2012), Foundational Java. These electronic book are downloadable from the UTS library. These books may be downloaded for free by any enrolled UTS student. While these texts will provide useful supplementary reading to issues discussed in lectures, the lectures, laboratories and tutorials will NOT follow these books closely.

Recommended texts The following books are conveniently available from the UTS library as an electronic resource, but (unlike the "essential" books by Nielsen and Parsons) these books are not downloadable as a single PDF (but some are downloadable chapter-by-chapter)): Cadenhead, "Sams teach yourself Java 2 in 24 hours". (But you won't learn Java in 24 hours.) Deitel, "Java for programmers". Fain, "Java programming 24-hour trainer". (But you won't learn Java in 24 hours, and this book may be too advanced for many 48023 students.) Garrido, "Object-oriented programming from problem solving to Java". This book is probably too advanced for most 48023 students. It may, however, suit people who have already programmed in another language. Greanier, "Java foundations" Lemay, "Sams teach yourself Java 2 in 21 days". (But you won't learn Java in 21 days.) Levenick, "Simply Java: an introduction to Java programming" McCormack, "Java getting down to business". Poo, "Object-oriented programming and Java". This complete book is available for download, but it is probably too advanced for most 48023 students. It may, however, suit people who have already programmed in another language. Russell, "Java programming for the absolute beginner" Sanchez, "Java programming for engineers" Other recommended books that are only available from the library in hard copy are: Wu, Thomas, An Introduction to Object-Oriented Programming with Java (5th edition), McGraw-Hill. This book has been the essential text in recent semesters and is highly recommended. All editions are useful and several copies are in the library. Schildt, Herbert. (Latest edition). Java: The Complete Reference. McGraw-Hill. This book is a readable but thorough reference book for Java 2. Students should continue to find it useful in any Java-based programming subject that they do after this subject. Also, copies are available in the UTS library. Gaddis, T. Starting out with Java: Early Objects, Addison Wesley. Copies are available in the UTS library Gaddis, T. Starting out with Java: From Control Structures through Objects, Addison Wesley. Copies are available in the UTS library

References The following web sites may be useful as references: http://www.docs.oracle.com/javase/7/docs/api/ http://www.oracle.com/technetwork/java/codeconv-138413.html http://download.oracle.com/javase/tutorial/index.html http://www.leepoint.net/notes-java http://www.bluej.org http://www.bluej.org/doc/documentation.html Also, googling the two words "java" and "tutorial" may locate useful web sites. Furthermore, for help on a specific topic about java, google "java" and "tutorial" plus the topic name (e.g. java tutorial while loop). The following website lists Introductory Java textbooks that are free and downloadable: http://freecomputerbooks.com/Introduction-to-Programming-Using-JAVA.html Note: The subject coordinator cannot vouch for the usefulness of any of the books listed on the above website. The following books are available as hardcopy only from the UTS library: Anderson, "Java illuminated : an active learning approach" CITY CAMPUS 005.133 ANDJ Barnes, "Object oriented programming with Java: an introduction" LRS 005.133 BARN Barnes, "Objects first with Java: a practical introduction using Blue J" LRS and CITY CAMPUS 005.117 BARN Bell, "Java for students" LRS 005.133 BELL Bishop, "Java gently for engineers and scientists" LRS 005.133 BISH Bishop, "Java gently" LRS 005.133 JAVY Brinch Hansen, "Programming for everyone in Java" LRS 005.133 BRIN Burd, "Beginning programming with Java for dummies" LRS 005.133 BURD Burd, "Java for dummies" CITY CAMPUS 005.2762 BURD Cadenhead, "Sams teach yourself Java 2 in 24 hours". CITY CAMPUS 005.133 CADE (Also available as an electronic resource, but the whole book is not downloadable as a single PDF.) (And you won't learn Java in 24 hours.) Deitel, "Java : how to program". LRS 005.133 DEIE Deitel, "Java, late objects version: how to program" CITY CAMPUS 005.133 DEIP Deitel, "The complete Java training course". LRS 005.133 DEIT Farrell, "Java programming" CITY CAMPUS and LRS 005.133 FARR Grover,"Programming with Java: a multimedia approach" LRS 006.76 GROV Horstmann, "Big Java". (All editions useful.) LRS 005.133 HORS Horstmann, "Computing concepts with Java essentials". (All editions useful.) LRS 005.133 HORT Horstmann, "Core Java". (Conveniently available as an electronic resource, but probably too advanced for 48023 students.) Horstmann, "Java concepts" CITY CAMPUS 005.133 HORN Horstmann, "Java for Everyone" CITY CAMPUS 005.133 HORJ Horstmann, "Java for Everyone: late objects" CITY CAMPUS 005.133 HORS Kolling, "Introduction to programming with Greenfoot" CITY CAMPUS 794.81526 KOLL Lemay, "Sams teach yourself Java 2 in 21 days". LRS 005.133 LEMY (Also available as an electronic resource, but the whole book is not downloadable as a single PDF.) (And you won't learn Java in 21 days.) Levenick, "Simply Java: an introduction to Java programming". LRS 005.133 LEVE (Also available as an electronic resource, but the whole book is not downloadable as a single PDF.) Lewis, "Java foundations" CITY CAMPUS 005.133 LEWJ (Also available as an electronic resource, but the whole book is not downloadable as a single PDF.) Lewis, "Java software solutions: foundations of program design" CITY CAMPUS 005.133 LEWS Lewis, "Java: a complete course" LRS 005.2762 LEWI Mcintosh, "Talk Java to me: the interactive click, listen, and learn guide to Java programming" LRS 005.133 JAMC Mueller, "Java eLearning kit for dummies" CITY CAMPUS 005.133 MUEL Parsons, "Introductory Java". LRS 005.71262 PARS (ED.2) Reges, "Building Java programs: a back to basics approach". CITY CAMPUS 005.133 REGS (ED.2) Savitch, "Absolute Java". (All editions useful.) Pearson/Addison-Wesley, c2006. LRS 005.133 Savitch,"Java: an introduction to computer science and programming". LRS 005.133 SAVI Savitch,"Java: an introduction to problem solving & programming". CITY CAMPUS 005.133 SAVI Schildt, "Java programming: a comprehensive introduction" CITY CAMPUS 005.133 SCHI Schildt, "Java: a beginner's guide" CITY CAMPUS 005.13 SCHI Wu, "A comprehensive introduction to object-oriented programming with Java" CITY CAMPUS 005.117 WUCT

Other resources At least once a week, students are required to login and read notices on the University's standard web-based course management system, UTSOnline: https://online.uts.edu.au/ All subject material including lecture, tutorial and laboratory notes, and the assignment specifications will be posted on UTSOnline. Students unfamiliar with UTSOnline should ask for a demonstration in their scheduled lab session. Students are also required to check their UTS email account at least once a week. U:PASS UTS Peer Assisted Study Success is a voluntary “study session” where you will be studying the subject with other students in a group. It is led by a student who has previously achieved a distinction or high distinction in the subject area, and who has a good WAM. Leaders will prepare activities for you to work on in groups based on the content you are learning in lectures and tutorials. It’s really relaxed, friendly, and informal. Because the leader is a student just like you, they understand what it’s like to study the subject and how to do well, and they can pass those tips along to you. Students also say it’s a great way to meet new people and a “guaranteed study hour”. You can sign up for U:PASS sessions via U:PASS website http://tinyurl.com/upass2017 Note that sign up is not open until week 2, as it’s voluntary and only students who want to go should sign up. If you have any questions or concerns about U:PASS, please contact Georgina at [email protected], or check out the website.

© Copyright UTS - CRICOS Provider No: 00099F - 10 December 2017 1:25 PM The page is authorised by Director, Institute for Interactive Media and Learning Send comments to APO Disclaimer | Privacy | Copyright | Accessibility | Web policy | UTS homepage

Loading...

UTS: 48023 Programming Fundamentals - Engineering, UTS Handbook

48023 Programming Fundamentals Warning: The information on this page is indicative. The subject outline for a particular session, location and mode of...

59KB Sizes 10 Downloads 25 Views

Recommend Documents

UTS: 76022 Insurance Law - Law, UTS Handbook
Dec 3, 2017 - In this subject, students examine the law and regulation of all facets of insurance in Australia – inclu

UTS: Calendar 2005 - UTS: Handbook - University of Technology
2005. UTS: DISCLAIMER. This publication contains information which was current at 23 January 2005. Changes in circumstan

Uts Nursing Handbook 2013 - WordPress.com
caters to the broad spectrum of courses and subjects at the universities, TAFEs and law, communications, marketing, medi

Business - Summer @ UTS - Summer at UTS
Have you thought about your Summer plans yet? The UTS business School will be hosting 50 subjects during Summer which ar

UTS Sosiologi Pendidikan - Scribd
UTS Sosiologi Pendidikan - Download as Word Doc (.doc / .docx), PDF File (.pdf), Text File (.txt) or read online.

Kiwausahaan UTS Semester
search Kumpulan Soal Dan Jawaban Prakarya/ Kiwausahaan UTS Semester I Kelas XI/11 2014/2015.

A Jewish - UTS ePRESS
promoting this view of Serbian history, both local and Diaspora nationalists were ...... between Croatian Serbs and Croa

Saia Uts Caracas - seterms.com
Saia Trucking: 1,000+: 3.92: 0.28. Saia Freight: 1,000+: 29.55: 0.12. Saia Psm: 1,000+: 0: 0.0. Uft Saia: 1,000+: 4: 0.0

Interactive Harvard UTS Referencing Guide - UTS Library - University
through the PDF. This document is an interactive PDF and is designed to help you reference quickly and simply. This docu

Unhappy Families - UTS ePRESS
Mar 1, 2011 - The task of doing a cultural politics of feeling attests not only to the ... the topics of history and the