FIT3038 - Software engineering project
6 points, SCA Band 2, 0.125 EFTSL
Undergraduate Faculty of Information Technology
Leader(s): Dr Peter Tischer (Clayton); Mr Loke Kar Seng (Malaysia)
Offered
Not offered in 2009
Synopsis
This unit is intended to provide students with practical experience relating to the construction of software according to software engineering principles. Students are expected to undertake the design and implementation of a program. All aspects of the software engineering process will be covered including requirements analysis, specification, design, coding, testing and maintenance. Students will generally work in a group, and interaction with that group will be an integral part of the project. As a rough guide, this subject should require about one hundred and fifty hours of effort from the student during the semester.
Objectives
At the completion of this unit, students will be able to:
- understand the main phases of the development of a software system, in particular, analysis and design;
- understand the aim of analysis and requirements engineering (requirements elicitation, identification and negotiation);
- communicate the results of analysis in documents;
- understand the principles of good software design;
- compare and evaluate different design choices based on the requirements of the software system;
- communicate the details of a design in documents which can be used to direct an implementation team;
- implement software according to specifications;
- integrate a software testing program into the implementation plan for a software system;
- understand the demands that the requirements for software maintenance place on a software system;
- understand and put into practice a process for analysing problems in a methodical manner;
- understand aspects of project management including scheduling, risk analysis and contingency planning;
- understand how to work in a group environment;
- identify and communicate effectively the main components of an analysis, design, implementation progress reports and so on.
At the completion of this unit, students will have attitudes that allow them to:
- adopt a methodical approach to developing large software systems;
- recognise the importance of a thorough analysis phase;
- understand the need to avoid errors of omission by constructing and consulting checklists;
- adopt a critical approach to evaluating potential solution;
- appreciate the potential difficulties in working in a group setting;
- communicate effectively by putting themselves in the position of the intended audience of the communication.
At the completion of this unit, students will be able to:
- undertake an analysis of the requirements of a software system;
- identify and evaluate potential designs which meet the requirements of a software system;
- produce appropriate documentation for communicating requirements and design decisions;
- produce an implementation plan which uses program testing as an integral part of the implementation phase.
Assessment
Continous assessment: 50%
Final assessment: 50%
Contact hours
4 x contact hrs/week
Prerequisites
CSE3308 or CSC3080 or FIT3077
Prohibitions
CSE3302, CSC3020