SENG302-19W (C) Whole Year 2019

Software Engineering Group Project

30 points
18 Feb 2019 - 10 Nov 2019

Description

The Software Engineering group project gives students in-depth experience in developing software applications in groups. Participants work in groups to develop a complex real application. At the end of this course you will have practiced the skills required to be a Software Engineer in the real world, including gaining the required skills to be able to develop complex applications, dealing with vague (and often conflicting) customer requirements, working under pressure and being a valuable member of a software development team.

This course provides an opportunity to experience first-hand the joys and sorrows of working together as a team to develop a large, complex software application. At the end of the course you will have a deeper appreciation of what it takes to be a Software Engineer in the real world, not to mention gaining the required skills to be able to develop complex applications, deal with vague (and often conflicting) customer requirements, work under pressure and be a valuable member of a team.

This year’s project will be based on an agile software methodology called SCRUM. During the year you will develop your software in several “sprints” (typically of a few weeks in duration) that will allow the requirements to unfold in a flexible manner along the way, but (hopefully!) with  sufficient structure that you will be confident of your progress to the final awesome product.

The course will focus heavily on “learning-by-doing”: don’t expect too many formal lectures, but do expect to teach each other through presenting your experiences, discuss (and critique) others’ ideas and overall to get stuck in, immerse yourself and have a lot of fun along the way.

Learning Outcomes

  • SENG302 builds on the material introduced in COSC224/COSC263/SENG201 and is intended as a companion course to SENG301 Software Engineering II. It is aimed at students who have a strong background in both object-oriented design and Java. History tells us that students who lack the expected background are likely to perform poorly individually and as team members. If you have any queries about your suitability for SENG302 then please discuss them with course staff.

    Students who achieve a good grade in SENG302 should be able to:
  • Demonstrate a working knowledge of up-to-date software development tools and environments
  • Function effectively in a professional software development environment
  • Demonstrate the skills needed to participate in and manage large group projects
  • Develop an awareness of the risks posed by large software development projects and practice in techniques for mitigating this risk
  • Display communication, negotiation and teamwork skills in order to function effectively in team member roles
  • Assess and evaluate performance of individuals and teams
  • Communicate knowledge and professional opinion effectively in written and oral forms

Pre-requisites

SENG201. RP: COSC110 OR COSC101, ENCE260, COSC368, COSC265.

Restrictions

COSC325, COSC314

Co-requisites

Recommended Preparation

COSC110 OR COSC101, ENCE260, COSC368, COSC265.

Timetable 2019

Students must attend one activity from each section.

Lecture A
Activity Day Time Location Weeks
01-P1 Friday 13:00 - 15:00 Rehua 005 15 Jul - 25 Aug
9 Sep - 20 Oct
01-P2 Friday 15:00 - 17:00 Ernest Rutherford 140 18 Feb - 7 Apr
29 Apr - 2 Jun
Computer Lab A
Activity Day Time Location Weeks
01-P1 Friday 13:00 - 15:00 Erskine 133, 134 18 Feb - 7 Apr
29 Apr - 2 Jun
01-P2 Friday 15:00 - 17:00 Erskine 133, 134 15 Jul - 25 Aug
9 Sep - 20 Oct
Workshop A
Activity Day Time Location Weeks
01 Monday 09:00 - 11:00 Ernest Rutherford 140 18 Feb - 7 Apr
29 Apr - 2 Jun
15 Jul - 25 Aug
9 Sep - 6 Oct
14 Oct - 20 Oct
Workshop B
Activity Day Time Location Weeks
01 Thursday 13:00 - 17:00 Rehua 005 (21/2-4/4, 2/5-30/5)
Rehua 102 (18/7-22/8, 12/9-3/10, 17/10)
18 Feb - 7 Apr
29 Apr - 2 Jun
15 Jul - 25 Aug
9 Sep - 6 Oct
14 Oct - 20 Oct
Workshop C
Activity Day Time Location Weeks
01 Friday 09:00 - 17:00 Otakaro 146 L1 7 Oct - 13 Oct

Timetable Note

Please consult the UC web site for the latest information about the times and locations of SENG302 activities (the CSSE department is not responsible for this).

Please note the scheduled times change between semester one and semester two. All sessions listed under lectures and labs must be attended.

You should ensure that you do not arrange other activities in the scheduled SENG302 session times. Activities which contribute to the assessment profile (described in a later section) are associated with each type of session and attendance should be regarded as compulsory.
•   Some of the scheduled times will be used for sprint planning and review meetings. Some sessions are a time when your group can all get together for meetings and other activities.
•  Class presentations will take place in some lecture times
•  Few of the session times will be used to introduce you to important material about the SCRUM process and the tool set you will use. It would be unwise to miss these sessions. As the year proceeds, a few sessions will also be used to address common technical issues (e.g. estimation, testing strategies . . .) on a workshop basis where content is driven by issues raised by students.
• A schedule for SENG302 will be published on Learn in term 1 and updated during the year. This will tell you exactly which type of activity is occurring on a particular day.

Writing software is a serious business! In addition to attending scheduled SENG302 sessions you will be expected to devote significant additional time each week to the project. As a rough guide, the workload for courses can be estimated at 10 hours per credit point so you will be expected to log no less than 300 hours on your project over the year.

Assessment

The assessment approach used in SENG302 differs significantly from that of other CSSE courses.
There are no tests or exams, or even conventional assignments. Instead, your performance is  monitored throughout the course and the assessment team will consider your portfolio of achievements when determining your final grade. Students who do well in SENG302 demonstrate continual improvement in their technical and teamwork skills throughout the year. Individual programming skills are not sufficient to earn a good grade.

You will work as part of a team throughout the year on a substantial software development project, and assessment will be an ongoing process that gauges the quality of your individual contributions to the software product and to the engineering processes and practices of your team.

You will be assessed individually, but the success of your team will significantly influence your personal results.

You will be required to make regular submissions and presentations to the assessors and to the whole class. Your written materials and oral reports will be assessed regularly throughout the year to provide you with feedback on your progress, and to provide the assessors with an overall picture of your year’s work, from which your final grade will be derived. Much of the feedback you receive during the year will be qualitative—think coaching rather than test marks—and is intended as the basis for ongoing interactions you will have with course staff.

Notes

There are several important documents available online about departmental regulations, policies and guidelines at the following site. We expect all students to be familiar with these.

Notices about this class will be posted to the class forum in the Learn system.

COSC students will also be made members of a class called “CSSE Notices”, where general notices will be posted that apply to all classes (such as information about building access or job opportunities).

Additional Course Outline Information

Grade moderation

The Computer Science department's grading policy states that in order to pass a course you must meet two requirements:
1. You must achieve an average grade of at least 50% over all assessment items.
2. You must achieve an average mark of at least 45% on invigilated assessment items.
If you satisfy both these criteria, your grade will be determined by the following University- wide scale for converting marks to grades: an average mark of 50% is sufficient for a C- grade, an average mark of 55% earns a C grade, 60% earns a B- grade and so forth. However if you do not satisfy both the passing criteria you will be given either a D or E grade depending on marks. Marks are sometimes scaled to achieve consistency between courses from year to year.

Students may apply for special consideration if their performance in an assessment is affected by extenuating circumstances beyond their control.

Applications for special consideration should be submitted via the Examinations Office website within five days of the assessment.

Where an extension may be granted for an assessment, this will be decided by direct application to the Department and an application to the Examinations Office may not be required.

Special consideration is not available for items worth less than 10% of the course.

Students prevented by extenuating circumstances from completing the course after the final date for withdrawing, may apply for special consideration for late discontinuation of the course. Applications must be submitted to the Examinations Office within five days of the end of the main examination period for the semester.

Indicative Fees

Domestic fee $1,911.00

International fee $10,500.00

* Fees include New Zealand GST and do not include any programme level discount or additional course related expenses.

Minimum enrolments

This course will not be offered if fewer than 10 people apply to enrol.

For further information see Computer Science and Software Engineering.

All SENG302 Occurrences

  • SENG302-19W (C) Whole Year 2019