[an error occurred while processing this directive]
[an error occurred while processing this directive]This unit introduces students to core problem-solving, analytical skills, and methodologies useful for developing flexible, robust, and maintainable software. In doing this it covers a range of conceptual levels, from high level algorithms and data-structures, down to abstract machine models and simple assembly language programming. Topics include data structures; algorithms; object-oriented design and programming; and abstract machines.
3 hrs lectures/wk, 3 hrs laboratories/wk, 1 hr tutorial/wk
Students will be expected to spend a total of 12 hours per week during semester on this unit as follows:
CSE1303, CSC1030, FIT1007, FIT1015
FIT1002 or equivalent and FIT1029 or equivalent
Maria Garcia De La Banda
Consultation hours: 11am to 1pm on Mondays at the open area of level 1 in building 63, near the lift
Maria Garcia De La Banda
Examination (3 hours): 70%; In-semester assessment: 30%
Assessment Task | Value | Due Date |
---|---|---|
Mid Semester Test (1 hour) | 10% | Monday 2 April 2012 |
Pracs (1 and 1/2 hours each) | 20% | Weekly except in Week 7 when the Mid-Semester Test is held |
Examination 1 | 70% | To be advised |
Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through SETU, Student Evaluation of Teacher and Unit. The University's student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.
For more information on Monash's educational strategy, and on student evaluations, see:
http://www.monash.edu.au/about/monash-directions/directions.html
http://www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html
As a result of student feedback, this semester we will try to add quizes to each week and provide recorded "mini-lectures" for some of the concepts that students seem to have more difficulties understand.
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp
Please check with your lecturer before purchasing any Required Resources. Prescribed texts are available for you to borrow in the library, and prescribed software is available in student labs.
Eclipse Platform. One of the two recommended platforms. It can be downloaded from http://www.eclipse.org/downloads/
NetBeans IDE. The other recommended platform. It can be downloaded fro http://netbeans.org/downloads/
Java Development Kit, Version j2sdk-1_5_0_06 or later, Sun Microsystems, Inc. You should download the freeware version. You have no need for the fuller facilities provided in JCreatorPro, and would have to pay for it as well.
The MIPS R2000 simulator SPIM S20 (with its new interface QtSpim).
This, and all the other above, are included as part of the Standard Operating Environment used in Faculty computer Labs.
Week | Activities | Assessment |
---|---|---|
0 | Register for tutorials, pracs and lectures | No formal assessment or activities are undertaken in week 0 |
1 | Lectures on Revision of BigO and List (arrays). Tute & Prac. | Prac 1 |
2 | Lectures on List Sorting & Stacks and Queues (arrays). Tute & Prac. | Prac 2 |
3 | Lectures on Lists, Stacks and Queues (linked nodes). Tute & Prac | Prac 3 |
4 | Lectures on Object Oriented Basics. Tute & Prac. | Prac 4 |
5 | Lectures on Advanced Object Oriented. Tute & Prac. | Prac 5 |
6 | Lectures on Recursion and Recursive Sorts. Tute & Prac. | Prac 6 |
7 | Lectures on Binary Trees. Tute & Mid Semester Test. No Prac. | Mid Semester Test, Monday, 2 April 2012 |
8 | Lectures on Priority Queues and Heaps. Tute & Prac. | Prac 7 |
9 | Lectures on Hash Tables & Number representation. Tute & Prac. | Prac 8 |
10 | Lectures on Computer Systems & MIPS. Tute & Prac | Prac 9 |
11 | Lectures on MIPS execution of selection and iteration. Tute & Prac. | Prac 10 |
12 | Lectures on MIPS function call/return. Tute & Prac | Prac 11 |
SWOT VAC | No formal assessment is undertaken SWOT VAC | |
Examination period | LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/ academic/education/assessment/ assessment-in-coursework-policy.html |
*Unit Schedule details will be maintained and communicated to you via your MUSO (Blackboard or Moodle) learning system.
Faculty Policy - Unit Assessment Hurdles (http://www.infotech.monash.edu.au/resources/staff/edgov/policies/assessment-examinations/unit-assessment-hurdles.html)
There are four hurdles in this unit:
Students who do not meet all these hurdles can get a maximum of 49N for the unit.
Students must actively participate in at least 7 out of the 12 tutorials. Active participation includes contributing opinions to a discussion, providing an answer to some question/exercise, or posing a unit-related question.
This test will evaluate your understanding of the material provided during the first few weeks of semester, your capability to code simple algorithms given a clear specification, and to analyse the behaviour and complexity of simple fragments of code.
It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz).
Please submit your work via Moodle at the time in which you are marked (and, thus, before you leave the lab). You can access Moodle via links in the my.monash portal.
Submission must be made by the due date otherwise penalties will be enforced.
You must negotiate any extensions formally with your campus unit leader via the in-semester special consideration process: http://www.infotech.monash.edu.au/resources/student/equity/special-consideration.html.
Monash has educational policies, procedures and guidelines, which are designed to ensure that staff and students are aware of the University's academic standards, and to provide advice on how they might uphold them.
You can find Monash's Education Policies at:
http://policy.monash.edu.au/policy-bank/academic/education/index.html
Key educational policies include:
The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at www.monash.edu.au/students. For Sunway see http://www.monash.edu.my/Student-services, and for South Africa see http://www.monash.ac.za/current/
The Monash University Library provides a range of services and resources that enable you to save time and be more effective in your learning and research. Go to http://www.lib.monash.edu.au or the library tab in my.monash portal for more information. At Sunway, visit the Library and Learning Commons at http://www.lib.monash.edu.my/. At South Africa visit http://www.lib.monash.ac.za/.
Academic support services may be available for students who have a disability or medical condition. Registration with the Disability Liaison Unit is required. Further information is available as follows:
(1) Data Structures and Algorithms in Java. Robert Lafore, SAMS. This book provides a very simple approach to understanding data structures and algorithms. While the book uses Java to illustrate the implementation, its focus is on the actual data structures and algorithms, rather than on Java, which is very useful for first year students. Very basic and simple.
(2) Data Structures and Algorithms in Java. Adam Drozdek, Brooks/Cole. More advanced but still appropriate for average and high-end students.
(3) Algorithms in Java. Robert Sedgewick. Parts 1-4. This book is a more in-depth book and assumes a strong mathematical background from the reader. It is recommended for advanced students who want to learn more about the complexity of the algorithms and data structures used.
(4) Data Structures and Algorithm Analysis in Java. Third Edition. Mark Allen Weiss. This is one of the books you will also use in FIT2004. It contains very clear discussions of the algorithms and data-structures, but it assumes knowledge of a difficult Java construct (Generics).Very recommended if you can get pass that.
(4) The Java Programming Language. Fourth Edition. Ken Arnold, James Gosling and David Holmes. Prentice Hall. This book is useful for students who have questions about the Java language. The reason for using the fourth edition is because it is the earliest edition that includes parametric polymorphism (called Generics in Java).