[an error occurred while processing this directive]
[an error occurred while processing this directive] This unit develops the students' ability to design, implement and maintain moderately complex, realistically-sized programs. It builds upon the basic programming techniques introduced in FIT1002, FIT1008 and offers the first introduction to the implementation of more complex real-world programs. Examples of such systems include compilers and interpreters, simulations, visualisation tools, drawing packages, database systems, and graphical games. The unit can offer students the opportunity to get acquainted with a second programming language within the procedural-object oriented paradigm, such as C++, Python or one of their cousins.
The unit bridges between core programming knowledge and the large-scale software engineering context. It will emphasise the implementation and use of intermediate to advanced data structures (such as search trees, hash structures, graphs and graph algorithms etc.) and the embedding into an actual computing system (i.e. interacting with the O/S, networking components etc).
2 hrs lectures/week, 3 hr laboratory/week
You are expected to spend 12 hours per week during semester on this unit.
This includes 2 hours per week of lectures, 3 hours per week of labs, and an average of 7 hours per week of project work, private study, and exam revision.
Substantial parts of the project work must be completed in pairs. Students will need to schedule time to meet with their project partners outside scheduled classes.
Robert Merkel
Examination (3 hours): 50%; In-semester assessment: 50%
Assessment Task | Value | Due Date |
---|---|---|
Vision statement (pairs) | 5% | 23 March 2012 |
Spiking exercises (pairs) | 5% | Demonstration in Week 6 Lab, report due 6 April 2012 |
Design document (pairs) | 10% | Friday 20 April 2012 |
Iteration 1 (pairs) | 10% | Demonstration in Week 10 Lab, code and documentation Wednesday 9 May 2012 |
Iteration 2 (pairs) | 10% | Demonstration in Week 12 Lab, code and documentation due Friday 18 May 2012 |
Final report (individual) | 10% | Friday 18 May 2012 |
Examination 1 | 50% | 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
Rearrangement of some of the lecture material has been conducted to ensure that students are introduced to necessary concepts before encountering them in assignments.
One assignment has been eliminated as it added to workload and did not add significantly to learning outcomes.
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp
Students will be provided with a VMWare virtual machine image, which contains a full development environment for the lab and project work they will be expected to complete through the semester. Students can download VMWare Player for Linux, Mac OS X and Windows at no charge.
If they wish can also install a Java development environment, the Eclipse Java IDE, and the Android SDK at no cost on their own computer directly, but no support will be provided for this.
Students with Android smartphones may, if they wish, use these to test and debug the software developed throughout the unit. This, however, is not necessary, as sufficient smartphones have been purchased for the purpose, and a limited number will be available for students to borrow overnight.
Burnette, Ed. (2008). Hello, Android (3rd edition): Introducing Google's Mobile Development Platform. (3) No Starch Press (ISBN: 978-1-93435-656-2).
Kent Beck; Cynthia Andres; Erich Gamma. (). Extreme Programming explained. (2) Addison-Wesley Professional (ISBN: 978-0321278654).
Students should refer to the unit website for details about the exam.
Week | Activities | Assessment |
---|---|---|
0 | Register for lab classes | No formal assessment or activities are undertaken in week 0 |
1 | Introduction to agile development | |
2 | Gathering requirements - an Agile approach | |
3 | GUI Frameworks - with reference to Android | |
4 | Distributed applications | Vision statement (pairs) due Friday 23 March 2012 |
5 | Design and modeling | |
6 | Design and modeling II - user interfaces | Spiking exercises (pairs), demonstration in Week 6 Lab, report due 6 April 2012 |
7 | Software engineering tools | |
8 | Software project lifecycles | Design document (pairs) due Friday 20 April 2012 |
9 | Development practices - test-driven development, pair programming | |
10 | Computer science in the real world - performance issues | Iteration 1 (pairs) demonstration in Week 10 Lab, code and documentation due Wednesday 9 May 2012 |
11 | Into the wild - releasing your software | |
12 | Summary and guest lecture | Iteration 2 (pairs) demonstration in Week 12 Lab, code and documentation due Friday 18 May 2012; Final report (individual) due Friday 18 May 2012 |
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)
Students are expected to attend lectures and lab classes.
While lab exercises will not be marked, many of the labs will be used for project work in pairs, including assessment. As such, students will need to attend these.
Students will identify a project partner to work with by week 3, who is enrolled in the same lab class. Students will work with their partner for subsequent in-semester assessment unless there are exceptional circumstances.
This assignment will be completed in pairs. Pairs are expected to share the workload and will usually receive the same mark. Individual contributions will be documented, and if workloads are not appropriately shared over the semester marks will be adjusted accordingly.
There will be multiple spikes. Some may be conducted by only one member of project pairs, some will be conducted by both members. Spiking reports will be assessed individually.
The assignment will be assessed as a pair. Students will document their individual contributions to the assignment. Generally, students will receive the same mark, unless there are significant discrepancies over the semester in contributions to the pair project work.
The assignment will be assessed as a pair. Students will document their individual contributions to the assignment. Generally, students will receive the same mark, unless there are significant discrepancies over the semester in contributions to the pair project work.
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).
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.
No resubmission of assignments will be permitted.
Code based on algorithms or information from third-party sources (such as books or websites) must acknowledge these sources in comments, in sufficient detail for markers to find and check these sources.
Where third party material is used in written assignments, they should be cited. Students may use any of the referencing methods described in the Monash University Library's tutorial on referencing to do so:
http://guides.lib.monash.edu/content.php?pid=88267&sid=656564
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: