Home > Undergraduate > Professional Computing 3200 >  Project

  CITS3200 PROFESSIONAL COMPUTING
 
 

Roles in the CITS3200 Projects

The Team

Projects in CITS3200 are undertaken by groups, typically comprising 5-6 students enrolled in the unit. Projects are proposed by clients and it is the up to the Team to negotiate with the Client about details of the project, and then to complete as much of the project as possible in the time allowed within the unit. The Team will:
  • Interact with the Client as often as is necessary, but especially at the start (when the Epic/Scope of Work is being clarified) and at the end of each Sprint.
  • Complete as much of the project as they can and submit to the Client the agreed deliverables for each Sprint.
  • Complete a Project retrospective at the end of each Sprint, reflecting on the Project from the Team's point of view.
Above all, Team members are expected to act at all times as professionals.

Project Manager

The Project Manager will be elected by Team members, and it is expected that the role will be undertaken by at least 3 Team members over the course of the project. Task to be performed by the Project Manager include:
  • Arrange and chair Team meetings, and create sets of minutes summarising the meetings. The minutes will be sent to your Project Auditor (and, of course, Team members).
  • Collect the Booked Hours spreadsheets sent by Team members (and your own) and use these to update the Timesheet. The Timesheet and a zip or tar file containing the Booked Hours spreadsheets will be sent to your Project Auditor.
  • Arrange meeings with Mentors, for the weeks these are to occur.
  • If issues arise within the Team, the Project Manager should report these to the Unit Coordinator and Project Auditor.

Client

A Client will normally be from UWA, industry and the wider community, although clients can also come from within CSSE. Their role is to act as a client for the project group, set out what needs to be done, give domain-specific advice necessary for the project, work with the Team to develop the Epic (i.e. Scope of Work) and Acceptance Tests for the project, and to perform some marking. Tasks include:

  • Attend Client Coordination meetings
  • Devise one or more projects, each to be undertaken by a project Team
  • Write a preliminary Project Proposal
  • Meet each Team as often as dictated by the demands of the project
  • Provide domain-specific support and advice as required by the scope of the project
  • Agree and advise on the contents of some of Deliverables arising from Sprint 1, 2 and 3, e.g. the platform on which the project is to be delivered, e.g. Web-based, mobile app, etc.
  • Negotiate with each Team Acceptance Tests that they will document
  • Undertake Acceptance Tests after completion of Sprint 3
  • Mark parts of deliverables for Sprints 1, 2 and 3

The clients and the mentors are very busy professionals, with many years of experience, who are donating their time and talent. Teams must endeavour to accommodate clients' often very tight schedules as far as practical. If groups explain their constraints it will generally be possible to come to some agreement about meeting dates, times and venues. After all, everybody wants the projects to succeed!

Mentor

The Mentor will normally be someone with industrial software engineering experience. Their role is to mentor the teams about Software Process, working in teams, the overall deliverable process, post mortems and common techniques (e.g. specification, project planning, testing), but not technical detail about a specific project. Technical details of the project, its specification, and specific software techniques are not the within the Mentor's domain. The Mentor will also monitor the teams to check they are functioning adequately and to give advance warning of severe problems. Tasks include:

  • Meet the Team on four occasions for an hour
  • Give advice on standard techniques, e.g. project planning, testing
  • Give additional ad hoc advice by email (possibly)
  • Keep an attendance sheet

Auditor

The project Auditor is appointed by the Unit Co-ordinator to be the primary contact for the Team, week-to-week. The project Auditor will:
  • Meet with their Team(s) according the schedule outlined in the unit timetable.
  • At each meeting assess the leadership provided by the current Team Manager, and the professionalism displayed by Team members in working with the Team Manager and with each other.
  • At the end of each Sprint assess the quality of the individual reflections that relate to the end of that Sprint.
  • Audit the times claimed in the weekly BookedHours spreadsheets against materials lodged on GitHub.

Unit Co-ordinator

The Coordinator has responsibility for the running of the unit as a whole. This role is normally filled by an experienced academic. Sufficient documentation needs to be provided to maintain consistency between the various parties - Clients, Mentors and Teams. Most of the effort will be focused on the Team Project. Major tasks:
  • Coordinate all the Clients and Mentors for sufficient projects for the enrolment
  • Ensure that lecture timetable, mentors, and other resources are in place
  • Assemble and advertise the unit schedule for lectures, deliverables and marking
  • Maintain the unit homepage and unit outline and other documentation
  • Collate, grade and scale all marks as necessary
  • Enforce the deadlines
  • Allocate members to Teams
  • Mediate between Team members in extreme cases
  • Monitor all Team, Mentors and Clients
  • Resolve conflict and deal with appeals and requests for remarking
  • Give lectures as appropriate and organize experts to give other, relevant lectures. Process, Team working etc


Department of Computer Science & Software Engineering
The University of Western Australia


Last modified: July 26, 2018

Created by: Michael Wise
UWA