Advanced Software Engineering Project

Subject SWEN40001 (2015)

Note: This is an archived Handbook entry from 2015.

Credit Points: 25
Level: 4 (Undergraduate)
Dates & Locations:

This subject has the following teaching availabilities in 2015:

Year Long, Parkville - Taught on campus.
Pre-teaching Period Start not applicable
Teaching Period 02-Mar-2015 to 25-Oct-2015
Assessment Period End 20-Nov-2015
Last date to Self-Enrol 13-Mar-2015
Census Date 31-May-2015
Last date to Withdraw without fail 25-Sep-2015


Timetable can be viewed here. For information about these dates, click here.
Time Commitment: Contact Hours: 48 hours, comprising of one 2-hour tutorial and one 2-hour workshop per week. Students will be expected to spend up to 12 hours per week on the project
Total Time Commitment:

340 hours

Prerequisites:

One of the following:

Subject
Study Period Commencement:
Credit Points:
Not offered in 2015
12.50

OR

433-340 Software Engineering Project A

Corequisites:

None

Recommended Background Knowledge:

None

Non Allowed Subjects:

None

Core Participation Requirements:

For the purposes of considering request for Reasonable Adjustments under the Disability Standards for Education (Cwth 2005), and Student Support and Engagement Policy, academic requirements for this subject are articulated in the Subject Overview, Learning Outcomes, Assessment and Generic Skills sections of this entry.

It is University policy to take all reasonable steps to minimise the impact of disability upon academic study, and reasonable adjustments will be made to enhance a student's participation in the University's programs. Students who feel their disability may impact on meeting the requirements of this subject are encouraged to discuss this matter with a Faculty Student Adviser and Student Equity and Disability Support: http://services.unimelb.edu.au/disability

Coordinator

Dr Edmund Kazmierczak

Contact

email: edmundak@unimelb.edu.au

Subject Overview:

AIMS

This subject gives students in the Bachelor of Engineering (Software) their second experience in managing and delivering a software engineering project. Students will work in large teams to develop a non-trivial software system for an external client using advanced software engineering techniques. In this subject managing the quality built into the final product is extremely important and students will be expected develop and manage processes that achieve high levels of quality and dependability. Workshops are used to explore the application of advanced software engineering techniques to student projects and are drawn from topics in: analysis and modelling, product and project metrics, design and technologies, product testing and measurement and validation.

INDICATIVE CONTENT

Developing real-world software on time and under budget is a challenging task. Students will work in a team to solve a practical problem, applying sound engineering principles to the formulation and solution of their problem. Students will engage in the full software engineering life cycle from requirements engineering through to delivery, to develop a software solution for an external client.

Learning Outcomes:

INTENDED LEARNING OUTCOMES (ILO)

On completion of this subject the student is expected to:

  1. Be able to design analyse, implement, test and deliver real-world software systems
  2. Be able to design software engineering processes appropriate to a specific problem or set of non-functional requirements
  3. Be able to research, understand and apply cutting edge computing technology to the solution of complex problems in software engineering
  4. Be able to work with external stakeholders to develop quality requirements specifications
  5. Be able to effectively manage large teams utilising a variety of software engineering processes.

Assessment:

Each project team of 10 or more students is required to submit artefacts detailing their analysis and processes, not exceeding 40000 words, and including at least:

  • A project management component outlining the team's processes, reviewed in week 4
  • A document specifying the system to be built, submitted with respect to the timeline identified in item 1
  • An analysis and design component assessing the team’s ability to apply software engineering principles and techniques to the development of a software system, submitted with respect to the timeline identified in item 1
  • A test planning component assessing the team’s ability to apply software engineering knowledge of validation and verification, submitted with respect to the timeline identified in item 1
  • A final release of Software, submitted in week 22 that assesses the team’s ability to develop a non-trivial software system using software engineering principles and techniques.

Students will be assessed individually on their ability to make useful contributions to the project including the management of the project and the products that are produced by the project.

Each individual student’s mark will be made up of a number of criteria:

  1. The quality of their engineering work as demonstrated by the work that they produce and submit at the end of the project and a team-based oral presentation made at the end of the project, requiring approximately 30 - 35 hours of work (30%)
  2. Student's role and contribution to the management and governance of the project (30%)
  3. Teamwork and communication (30%)
  4. Quality assurance of peer work (10%)

All students are expected to participate in team meetings/workshops and contribute towards analysis and process related documentation, coding and other team activities. Each student is expected to spend around 220 hours during the year for project activities.

To pass the subject, students must obtain at least 50% overall.

Intended Learning Outcomes (ILOs) 1, 2, 3 and 4 are assessed by the student's contributions to artefacts 2, 3, 4, and 5.

ILO 5 is assessed by the student's contributions to artefacts 1 and 2.

Prescribed Texts:

None

Breadth Options:

This subject is not available as a breadth subject.

Fees Information: Subject EFTSL, Level, Discipline & Census Date
Generic Skills:

On completion of this subject students should have the following skills:

  • Ability to apply knowledge of science and software engineering fundamentals
  • Ability to undertake problem identification, formulation, and solution
  • Proficiency in software engineering design
  • Ability to conduct an engineering project
  • Ability to communicate effectively, with the engineering team and with the community at large
  • Ability to manage information and documentation
  • Capacity for creativity and innovation
  • Understanding of professional and ethical responsibilities, and commitment to them
  • Ability to function effectively as an individual and in multidisciplinary and multicultural teams as a team leader or manager as well as an effective team member
  • Capacity for lifelong learning and professional development.

Notes:

This subject is available to Software Engineering students only, for whom it is mandatory.

LEARNING AND TEACHING METHODS

The advanced software engineering project provides students with a realistic learning environment typically with an external client that wants to use the software. Teams are large and often consist of ten or more students.

Each student team is assigned a staff supervisor who acts as a mentor and guide throughout the project. Teams meet with their supervisor regularly to monitor progress and to discuss issues that arise during the project.

The subject comprises one lecture and one two-hour workshop per week. Lectures are used to coordinate the teams, deliver software engineering theory and practice relevant to the stage of the project reached, and to share experiences between the teams often in the form of short presentations. Workshops are used to discuss issues relevant to the team, and to help the team plan and manage their engineering processes.

The subject is administered through the Universities Learning Management System. Papers, tools and links to engineering processes and software engineering tools are available through the LMS. A standard development environment is provided that includes programming languages, libraries and development tools is provided to the students and is available on most engineering computers.

CAREERS / INDUSTRY LINKS

The software industry is expanding and along with it the demand for software engineers that are capable of the analytical and management skills beyond programming. The industry is also changing in the nature of the projects being undertaken with many software engineers now working in multidisciplinary project teams. The skills and experience gained in this subject are highly valued by employers and are often seen as a vital and necessary grounding for a career in software and technology related industries.

The subject aims to source projects from clients outside of the University where possible and thus seeks to expose students to the types of environments in which software engineering projects take place. Guest lectures by are also given to highlight aspects of industrial practice and to expose students to the practical aspects of software engineering.

Related Majors/Minors/Specialisations: B-ENG Software Engineering stream

Download PDF version.