The University of Sheffield
Department of Computer Science

COM4525 Genesys

Summary

This module involves students working with real customers and solving genuine problems, using agile software engineering and lean startup practices. Students work in teams to develop web applications as part of Genesys, supported by staff from epiGenesys.

Session Academic Year 2021/22
Credits 45
Assessment
  • Breadth of Knowledge Test - Autumn
  • Team Project - Autumn
  • Breadth of Knowledge Test - Spring
  • Team Project - Spring
  • Involvement as a Customer in COM1001

This module has the explicit objective of developing teamwork skills. Participation in teamwork is mandatory and absence will result in deduction of marks and eventually loss of credits.

Lecturer(s)

Harriet Holman (module co-ordinator), Shuo Chen, Chris Hunt, Chris Murray, Andrew Stratton

Resources

Unconfirmed practical marks when available

Aims

This module aims to:

  • Give students experience of working in a team in a professional software engineering environment
  • Raise students' awareness, abilities and knowledge relating to the activities involved in the creation of a business model and the development of a software application
  • Provide students with experience of creating a business model and developing a software application for real customers, using agile software engineering and lean startup practices
  •  

Objectives

By the end of the module, students will be able to:
  • Create a business model for a software product using lean startup practices
  • Create a software product, as part of a team, using agile software engineering practices
  • Design a useful web application that demonstrates an awareness of accessibility and usability
  • Build a maintainable and robust web application through appropriate use of architecture and testing
  • Build a dependable web application through appropriate consideration of performance and security
  • Manage a team software project through appropriate use of planning and monitoring
  • Facilitate improvement of team behaviours by critically reflecting on individual and team performance 
Content

This module explores a variety of topics in agile software engineering and lean startup. These include automated testing, business models, customer research, project management, refactoring, retrospectives, risk management, user experience design and testing, and web application performance and security.

 

Restrictions

Only available to students on one of the following: COMU06 (core), COMU38 (approved), COMU40 (approved), COMU42 (core), COMU48 (approved if initial registration prior to 2018-19). COMU103 (approved), COMU118 (approved if initial registration prior to 2018-19), COMU119 (approved), GEEU20 (core), GEEU21 (core).

IP Exemption: This module is exempt from the University's Regulations relating to Intellectual Property which can be found at: https://www.sheffield.ac.uk/apse/apo/quality/policies-guidance/ip


Teaching Method

During the year students will work in teams to create and release a web application which provides value to real customers. In the first part of each semester training will be provided in a flipped classroom style. Students will study material in the online learning environment and attend training sessions, whilst also working on their team project. For the remainder of each semester students will continue to work on their project. Students are expected to be proactive in developing their knowledge and skills, using the training as a foundation and seeking guidance from their mentor as needed.

In both semesters students will act as customers in COM1001, where they will gain insight into the experience of customers during the development of a software application. Students will be expected to engage with this process and apply the understanding they gain to improve interactions with their Genesys customers.

 

Feedback

Students will meet regularly as a team with their mentor to discuss their progress and plans. The mentor will offer feedback and guidance, and encourage the students to be proactive in developing their knowledge and skills in appropriate areas. Student will be required to provide draft submissions for elements of their team project throughout each semester so that mentors are able to review these.

Students will hold regular retrospectives as a team where they will review their own practices and identify opportunities for improvement.

Following each breadth of knowledge test a score will be provided in the online learning environment.

Following each stage of the team project, students will be provided with both team and individual marks and feedback. Much of the feedback will relate to the performance of the team (which accounts for the majority of the assessment) rather than the individual. However, individual feedback will also be provided where issues are highlighted in peer reviews or where mentors have specific observations.

Recommended Reading
  • Programming Ruby 1.9 & 2.0, Dave Thomas, Pragmatic.
  • Agile Web Development with Rails 6, Sam Ruby and David Bryant Copeland, Pragmatic.
  • Agile Retrospectives, Esther Derby and Diana Larsen, Pragmatic.