[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
Monash University

FIT3037 Software engineering - Semester 2, 2013

In this unit students will learn about many aspects of working with a large team on large projects to produce quality software products on time and within budget. The student will gain an appreciation of the tools and techniques used to develop software systems within a group context. Topics to be studied include: software development lifecycle models; sizing, estimation, planning and control of projects; functional specification and design of real-time systems; formal specification and design using Z; integration and testing strategies, configuration management; reuse and re-engineering.

Mode of Delivery

  • Gippsland (Day)
  • Gippsland (Off-campus)
  • South Africa (Day)

Contact Hours

2 hrs lectures/wk, 2 hrs tutorials/wk

Workload requirements

Students will be expected to spend a total of 12 hours per week during semester on this unit as follows:

For on-campus students, workload commitments are:

  • two-hour lecture and
  • two-hour tutorial (or laboratory) (requiring advance preparation)
  • and up to an additional 8 hours in some weeks for completing lab and project work, private study and revision.

Off-campus students generally do not attend lecture and tutorial sessions, however, you should plan to spend equivalent time working through the relevant resources and participating in discussion groups each week.

Unit Relationships


CSE2201, CSE2401, FIT2024, GCO3811



Chief Examiner

Campus Lecturer


Gour Karmakar

Consultation hours: Email for an appointment

South Africa

Stella Ouma



Gour Karmakar

South Africa

Stella Ouma

Academic Overview

Learning Outcomes

At the completion of this unit students will have:A knowledge and understanding of:
  • the continuing software crisis, problems encountered in the development of large software systems: poor quality, late delivery and budget overruns;
  • techniques used in software engineering to counter these problems;
  • the role of software lifecycle models in project control and planning;
  • different categories of software metrics;
  • software estimation methods;
  • methods for specifying real-time systems;
  • techniques and tools to support configuration management;
  • strategies for testing software;
  • the roles and responsibilites of project team members.
Developed the skills to:
  • apply techniques for scheduling and control of large projects;
  • construct and validate a software specification;
  • formal methods specification of software systems;
  • functionally design of software systems;
  • describe large software systems using appropriate language and technical sprecification techniques to suit the intended audience;
  • be aware that quality software is not a luxury but essential in solving the software crisis.

Unit Schedule

Week Activities Assessment
0   No formal assessment and activities are undertaken in Week 0
1 Introduction, Process models, metrics, requirements specifications  
2 Interface analysis and design  
3 Real-time Specification  
4 Formal methods introduction  
5 Formal Specification - Z  
6 System and Software Design Assignment 1 due 4 September 2013
7 Project and risk management  
8 Software Estimation  
9 Component-based development, Cleanroom Software Engineering  
10 Software Testing and Strategies  
11 Software configuration maintenance Assignment 2 due 16 October 2013
12 Software re-engineering  
  SWOT VAC No formal assessment is undertaken in SWOT VAC
  Examination period LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/

*Unit Schedule details will be maintained and communicated to you via your learning system.

Assessment Summary

Examination (3 hours): 55%; In-semester assessment: 45%

Assessment Task Value Due Date
Assignment 1: Real-time Specification 25% 4 September 2013
Assignment 2: Formal Specification - Z 20% 16 October 2013
Examination 1 55% To be advised

Teaching Approach

Lecture and tutorials or problem classes
This teaching and learning approach provides facilitated learning, practical exploration and peer learning.

Assessment Requirements

Assessment Policy

Faculty Policy - Unit Assessment Hurdles (http://www.infotech.monash.edu.au/resources/staff/edgov/policies/assessment-examinations/unit-assessment-hurdles.html)

Academic Integrity - Please see the Demystifying Citing and Referencing tutorial at http://lib.monash.edu/tutorials/citing/

Assessment Tasks


  • Assessment task 1
    Assignment 1: Real-time Specification
    The student will analyse a proposed real-time system and present a specification that describes the system operation and constraints of the system.
    Criteria for assessment:

    The full specification and criteria for the assignment will be available early in the semester from the Moodle site, a summary of the marking criteria is included here.

    The major criteria and the relevant percentages are:

    1. Presentation (5%). Looking for well-presented and laid out specification.
    2. ERD (10%). Looking for an entity relationship diagram that shows the basic relationships between the system to be developed and the other entities in the environment.
    3. DFD’s and CFD's (30%). Looking for a set of data and control flow diagrams that show the data and control flows around the system. The flows must be maintained between different levels with no overall gain or loss of information.
    4. PSPECS (15%). Each process at the lowest level MUST have a specification showing exactly what it does and how the data flowing through the process is manipulated.
    5. CSPECS (20%). Basic job of Control Specification is to show how events in CFD are handled and to synchronise process activation as required. Looking for logical and consistent specification to manage this task.
    6. Data Dictionary (10%). Need to include all names in dictionary, including process, data and control flow names.
    7. Coverage (10%). What percentage of the overall problem has been considered in this solution.
    Due date:
    4 September 2013
  • Assessment task 2
    Assignment 2: Formal Specification - Z
    The student will develop a formal specification in Z for an interesting but relatively simple proposed system. This will include the specification of a suitable state space and schemas to perform operations on that state space.
    Criteria for assessment:

    The full specification and criteria for the assignment will be available early in the semester from the Moodle site, a summary of the marking criteria is included here.

    The major criteria and the relevant percentages are:

    1.  Presentation and basic layout (5%). Looking for good layout, adherence to basic Z concepts and structures.
    2.  State Space Specification (15%). Looking for well defined structure for all the data to be stored. Predicates to hold these structures consistent. Types to be used consistently.
    3.  Initialisation Schema (10%). Must ensure initialisation cannot be re-run once data input and ensure that all data initialised.
    4.  Schema Calculus (10%). Looking for use of schema calculus to handle error conditions and make schemas less complex. Schema calculus to handle the majority of possible error conditions.
    5.  Defined Schemas (60%). Schemas defined in the assignment specification to be correctly written in Z with logical and consistent manipulation of the state space and local variables.
    Due date:
    16 October 2013


  • Examination 1
    3 hours
    Type (open/closed book):
    Closed book
    Electronic devices allowed in the exam:

Learning resources

Reading list

Sommerville, Ian. Software Engineering, 9th Edition, Addison-Wesley, 2010, ISBN-10: 0137035152 or ISBN-13: 978-0137035151.
Vliet, Hans Van. Software Engineering: Principles and Practice, 3rd Edition, John Wiley and Sons, 2008, ISBN-10: 0470031468 or ISBN-13: 978-0470031469.

Pfleeger, Shari Lawrence and Atlee, Joanne M. Software Engineering Theory and Practice, 4th Edition, Prentice-Hall, 2009, ISBN-10: 0136061699 or ISBN-13: 978-0136061694.

Monash Library Unit Reading List

Feedback to you

Types of feedback you can expect to receive in this unit are:
  • Graded assignments with comments
  • Solutions to tutes, labs and assignments

Extensions and penalties

Returning assignments

Assignment submission

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 note that it is your responsibility to retain copies of your assessments.

Online submission

If Electronic Submission has been approved for your unit, please submit your work via the learning system for this unit, which you can access via links in the my.monash portal.

Required Resources

Please check with your lecturer before purchasing any Required Resources. Limited copies of prescribed texts are available for you to borrow in the library, and prescribed software is available in student labs.

Prescribed text(s) and readings

Pressman R.S., Software Engineering: A Practitioners Approach, McGraw-Hill, 6th Edition, 2005, ISBN 007-123840-9 or 7th Edition, 2010, ISBN 978-007-126782-3.

Text books are available from the Monash University Book Shops. Availability from other suppliers cannot be assured. The Bookshop orders texts in specifically for this unit. You are advised to purchase your text book early.

Required software and/or hardware

You will need access to a computer with Word etc. for assignment preparation. A special Z font is available from the Moodle site for development of the Z formal methods specification in Assignment 1.

Computers with MS Office are available in Computer Labs.

Other Information


Graduate Attributes Policy

Student services

Monash University Library

Disability Liaison Unit

Students who have a disability or medical condition are welcome to contact the Disability Liaison Unit to discuss academic support services. Disability Liaison Officers (DLOs) visit all Victorian campuses on a regular basis.

Your feedback to Us

Previous Student Evaluations of this Unit

Previous student feedback has suggested having two assignments instead of three.

If you wish to view how previous students rated this unit, please go to

[an error occurred while processing this directive]