MMS3801 Commercial programming environments - Semester 1 , 2007 unit guide

Semester 1, 2007

Chief Examiner

Grace Rumantir


Berwick : Grace Rumantir


This unit will examine a range of contemporary programming environments and languages used in commercial application development. Comparative strengths and weaknesses will be examined with a view to selection of the most efficient tool for a given task. The syntax of MFC, along with Visual Studio, will be introduced to demonstrate the commercial development process.


Knowledge and Understanding
  • the range of commercial programming environments used in industry
  • the features to look for in a programming environment
  • reasons behind the development of programming tools
  • comparative strengths and weaknesses of a range of languages currently being used for commercial development
  • methods of concurrent development and revision control
Attitudes, Values and Beliefs
  • flexibility toward language and programming environment selection
  • acceptance of systematic and structured approaches to program development
  • confidence in understanding existing Microsoft Foundation Classes (MFC) code
Practical Skills
  • selection of a suitable programming environment and language for a given task
  • using the MFC to create and manage programming tasks
  • generating coding frameworks using UML


Before attempting this unit you must have satisfactorily completed MMS2803 and MMS2202, or equivalent.

Unit relationships

MMS3801 is a core unit in the programming stream of the Bachelor of Multimedia course. It is a prerequisite for MMS3802. Before attempting this unit you must have satisfactorily completed MMS2803 and MMS2202, or equivalent.

Texts and software

Required text(s)

R. M. Jones, Introduction to MFC Programming with Visual 'C++, Prentice-Hall, 2000. ISBN 0-13-016629-4

Textbook availability

Copies of the textbooks are available to purchase at the Berwick bookshop.  Three copies are available in the Berwick library.

Software requirements

Microsoft Studio .NET


Borland C++

Hardware requirements

Students may use the facilities available in the computing labs. Information about computer use for students is available from the ITS Student Resource Guide in the Monash University Handbook. You will need to allocate up to 6 hours per week for use of a computer, including time for newsgroups/discussion groups.

Recommended reading

H. Deitel and P. Deitel, C++ How to Program, 5th edition, Prentice-Hall, 2006. ISBN 0131857576

Library access

You may need to access the Monash library either personally to be able to satisfactorily complete the subject.  Be sure to obtain a copy of the Library Guide, and if necessary, the instructions for remote access from the library website.

Study resources

Study resources for MMS3801 are:

the MMS3801 website on MUSO where lecture slides, weekly tutorial requirements, assignment specifications, sample solutions and supplementary material will be posted.

Unit website

Structure and organisation

Week Topics References/Readings Key Dates
1 Introduction, programming language history
2 Commercial process, software engineering
3 CVS & shared development theories
4 Programming environments
5 Intro to C++, comparison with Java, memory allocation
6 C++, pointers, streams, data structures
Non teaching week
7 Intro to MFC Jones, ch. 1-3 Assignment 2 due on Thursday 11.00am
8 MFC: ‘handcrafted’ MFC windows programs Jones, ch. 4-8
9 MFC: using the AppWizard Jones, ch.9-13
10 MFC: Document/View architecture Jones, ch. 14
11 Microsoft .Net overview
12 EXAM REVISION Assignment 2 due on Thursday 11.00am


The timetable for on-campus classes for this unit can be viewed in Allocate+


Assessment weighting

Assessment for the unit consists of 2 assignments with a weighting of 60% and a two-hour examination with a weighting of 40%. Read this section VERY carefully.

Further details will be provided during the semester. Please ensure that you obtain a hard copy of your exam timetable when it is made available online via the My.Monash portal. You should check your exam timetable regularly (it is suggested well before and during the exam period for confirmation). Absenteeism at an exam due to misreading or forgetting your exam timetable is not valid grounds for a deferred examination or special consideration. Please do not take anyone else's advice on when your examination is scheduled - be sure to check for yourself in every case.

Assessment Policy

To pass this unit you must:

Get an overall score of 50%.

Your score for the unit will be calculated by:

1. If your assignment component is equal to 0%, then
Final grade = E / 2.5

2. If your examination component is equal to 0%, then
Final grade = A / 2.5

3. If both your examination and assignment components are greater than 0%, then
Final grade = (R*A*E) / (((R-1)*A)+E)
A = overall assignment percentage
E = examination percentage
R = 100 / assignment weight

Assessment Requirements

Assessment Due Date Weighting
Research report, to be completed individually 19 April 2006 30%
C++ and MFC development task 24 May 2006 30 %
Exam period (S1/07) starts on 07/06/07 40 %

Assignment specifications will be made available on the MMS3801 Unit Website.

Assignment Submission

Assignments will be submitted by paper submission to MMS3801 assignment box. Do not email submissions. The due date is the date by which the submission must be received/the date by which the the submission is to be posted.

Extensions and late submissions

Late submission of assignments

Assignments received after the due date will be subject to a penalty of 10% for each day the assignment is late (including the weekend).

This policy is strict because comments or guidance will be given on assignments as they are returned, and sample solutions may also be published and distributed, after assignment marking or with the returned assignment. 


It is your responsibility to structure your study program around assignment deadlines, family, work and other commitments. Factors such as normal work pressures, vacations, etc. are seldom regarded as appropriate reasons for granting extensions. 

Students requesting an extension must apply, using the standard SMS 'Extension Request', to their unit adviser before the due date. Extensions may be granted for medical or personal reasons supported by appropriate documentary evidence. Students will be provided with a reply slip documenting the extension, a copy of which should be submitted with the assignment or have their extension recorded via WebFace.

Grading of assessment

Assignments, and the unit, will be marked and allocated a grade according to the following scale:

Grade Percentage/description
HD High Distinction - very high levels of achievement, demonstrated knowledge and understanding, skills in application and high standards of work encompassing all aspects of the tasks.
In the 80+% range of marks for the assignment.
D Distinction - high levels of achievement, but not of the same standards. May have a weakness in one particular aspect, or overall standards may not be quite as high.
In the 70-79% range.
C Credit - sound pass displaying good knowledge or application skills, but some weaknesses in the quality, range or demonstration of understanding.
In the 60-69% range.
P Pass acceptable standard, showing an adequate basic knowledge, understanding or skills, but with definite limitations on the extent of such understanding or application. Some parts may be incomplete.
In the 50-59% range.
N Not satisfactory failure to meet the basic requirements of the assessment.
Below 50%.

Assignment return

We will aim to have assignment results made available to you within two weeks after assignment receipt.


Feedback to you

You will receive feedback on your work and progress in this unit. This feedback may be provided through your participation in tutorials and class discussions, as well as through your assignment submissions. It may come in the form of individual advice, marks and comments, or it may be provided as comment or reflection targeted at the group. It may be provided through personal interactions, such as interviews and on-line forums, or through other mechanisms such as on-line self-tests and publication of grade distributions.

Feedback from you

You will be asked to provide feedback to the Faculty through a Unit Evaluation survey at the end of the semester. You may also be asked to complete surveys to help teaching staff improve the unit and unit delivery. Your input to such surveys is very important to the faculty and the teaching staff in maintaining relevant and high quality learning experiences for our students.

And if you are having problems

It is essential that you take action immediately if you realise that you have a problem with your study. The semester is short, so we can help you best if you let us know as soon as problems arise. Regardless of whether the problem is related directly to your progress in the unit, if it is likely to interfere with your progress you should discuss it with your lecturer or a Community Service counsellor as soon as possible.

Unit improvements

More C++ exercises will be covered to improve the students mastery of the language for two reasons. First, this will be the first time most of the student learn the language.  Second, C++ programming skill will be useful for the students when they enter the workforce.

Plagiarism and cheating

Plagiarism and cheating are regarded as very serious offences. In cases where cheating  has been confirmed, students have been severely penalised, from losing all marks for an assignment, to facing disciplinary action at the Faculty level. While we would wish that all our students adhere to sound ethical conduct and honesty, I will ask you to acquaint yourself with Student Rights and Responsibilities and the Faculty regulations that apply to students detected cheating as these will be applied in all detected cases.

In this University, cheating means seeking to obtain an unfair advantage in any examination or any other written or practical work to be submitted or completed by a student for assessment. It includes the use, or attempted use, of any means to gain an unfair advantage for any assessable work in the unit, where the means is contrary to the instructions for such work. 

When you submit an individual assessment item, such as a program, a report, an essay, assignment or other piece of work, under your name you are understood to be stating that this is your own work. If a submission is identical with, or similar to, someone else's work, an assumption of cheating may arise. If you are planning on working with another student, it is acceptable to undertake research together, and discuss problems, but it is not acceptable to jointly develop or share solutions unless this is specified by your lecturer. 

Intentionally providing students with your solutions to assignments is classified as "assisting to cheat" and students who do this may be subject to disciplinary action. You should take reasonable care that your solution is not accidentally or deliberately obtained by other students. For example, do not leave copies of your work in progress on the hard drives of shared computers, and do not show your work to other students. If you believe this may have happened, please be sure to contact your lecturer as soon as possible.

Cheating also includes taking into an examination any material contrary to the regulations, including any bilingual dictionary, whether or not with the intention of using it to obtain an advantage.

Plagiarism involves the false representation of another person's ideas, or findings, as your own by either copying material or paraphrasing without citing sources. It is both professional and ethical to reference clearly the ideas and information that you have used from another writer. If the source is not identified, then you have plagiarised work of the other author. Plagiarism is a form of dishonesty that is insulting to the reader and grossly unfair to your student colleagues.


Communication methods

Students are encouraged to use the discussion page on MMS3801 Muso site to post questions related to the subject/assignment materials.


Notices related to the unit during the semester will be placed on the Notices Newsgroup in the Unit Website. Check this regularly. Failure to read the Notices newsgroup is not regarded as grounds for special consideration.

Consultation Times

The following are the consultation times for MMS3801. Make sure you use these consultation times effectively throughout the semester and not just in the week prior to the due date of an assignment.

Tuesday 1pm-3pm Room (903) 1124
Thursday 4pm-5pm Room (903) 1124

If direct communication with your unit adviser/lecturer or tutor outside of consultation periods is needed you may contact the lecturer and/or tutors at:

Dr Grace Rumantir
Phone +61 3 990 47268
Fax +61 3 8622 8999

All email communication to you from your lecturer will occur through your Monash student email address. Please ensure that you read it regularly, or forward your email to your main address. Also check that your contact information registered with the University is up to date in My.Monash.

Last updated: Feb 15, 2007