7 – Project Brief


🎯 Learning Objectives

After this lesson you should be able to:

  • Apply the iterative development skills to your own work
  • Assign yourself roles within the group, according to Agile theory
  • Start to make independent progress on your games project
💬 Key Vocabulary

  • Interactive
  • Agile
  • Sprint
  • Scrum
  • Stakeholder
  • Project Management
  • Scrum Master
  • Milestone
  • User Experience
  • Iteration
  • Version Control
Last lesson, you…

  • Produced iterations of your game which added more features and improvements.
Today, you will…

  • Join up with other students into a group
  • Assign yourself roles within the group
  • Submit a project proposal
  • Start to make independent progress on your games project

📖 Starter Activity – Groups are great, rules are great, groups with rules are best.

From this point on, you’re going to be working more independently. There will be weekly badge tasks, but what they involve will be set by you as a group! You will get your badges according to how well you complete your tasks. In order for this to work, we need some ground rules about the group and how it will work. Read these rules now.

You’ve already learned a lot about Agile. It is what is known as an iterative development style. That means that rather than attempting to make the finished project in a single process, it is reached through a series of small, individual steps.

This only works because the team is accountable to someone called the product owner, who has the requirements for the project, and suggests to the team what they should work on next in order to reach the end goals that have been agreed on. The product owner also decides if the work done by the team at each stage meets the expected quality.

For the avoidance of doubt, the product owner will be your teacher.

The format of this project will follow the Agile model. Each sprint will last for a week – you will be doing one sprint per lesson, so wherever you see the word sprint written, see it also as lesson!

Each sprint starts with a short planning meeting called a stand up. Each member of the team explains in turn what they have worked on since the last stand-up. Team members are expected to work independently, using self motivation. The group agrees on targets, called milestones, that should be reached by the end of the sprint. Everyone is responsible for their own work, and can set their own tasks, as long as the group meets the milestones. Everyone can contribute ideas, and roles are flexible.

One member of the team, known as the scrum master, keeps the project running efficiently by organising the team. They ensure that every member of the team understands what they need to do, resolves issues between members of the team, and generally motivates the rest of the team. Although they are responsible for keeping the team on-schedule, they do not have any actual authority.

📖 Group Roles

Within your group, everyone should have a clearly-defined role. Here are some roles you can fill:

  • Developer – a developer is a programmer who is responsible for designing and creating the software code your project will use. The majority of your team should be developers. Professional developers may work solely on the user-facing (front-end) and behind-the-scenes (back-end) parts of the software, or they may choose to work on both at one (full-stack). There are advantages to both choices. In Agile, developers choose what aspects of the project they want to work on and when.
  • Artist – an artist is responsible for creating the assets used by the game. Artists may work exclusively on one aspect of the assets, or they may work on multiple. Examples are:
    • Visual artists who design characters, levels, lighting, and textures. These artists typically have a background in drawing, painting, graphic design, or 3D modelling. Their role is to make everything that the player will see.
    • Sound and music artists, who create suitable audio – the way a game sounds has a huge impact on how it feels to play. These artists might be musicians, producers, or just particularly skilled at making noises. Unlike early games relying on sound generation, modern games take their sound as seriously as the film industry, and many famous musicians, composers, and foley artists have their names in game credits.
    • Level and storyline artists, who work out how the game will play, and if it will follow a story or have a plot. This is perhaps one of the most broad groups of artists, as it includes puzzle and maze designers, professional story or script writers, as well as visual artists and developers.
  • Team Lead (max 1 per team) – the lead developer is responsible for managing their team. Whilst they may contribute to the project, they are also responsible for ensuring all team members are contributing their fair share and that those contributions are of the right quality. Lead Developers manage the overall codebase using a version-control system. Lead Artists manage the overall collection of assets. If you choose to split the group into multiple teams, each could have their own lead. With a team of one, that person is automatically the lead.
  • Scrum Master (1 per project) – the scrum master is responsible for the administrative aspects, such as how the project team will communicate, what intermediary deadlines and milestones exist, and keeping the project generally on track. They are also responsible for arranging the stand-ups and other team meetings, as well as providing evidence of what has been done by each team member. The scrum master may also have another role, as the role is not exclusive.
  • Product Owner – the product owner is responsible for providing project direction and high-level decision making. The team is accountable to the product owner, and must demonstrate what has been built at the end of each sprint. The product owner also supports the team as they work. For the purposes of this project, your teacher will be filling this role.

📖 Project Brief

You will be working on a this project as a group. Each person within the group will be expected to make a contribution of a similar proportion, quality, and level, although this does not necessarily mean that everyone in the group will be expected to do a similar quantity of programming, as there are other tasks which are key to a successful project.

The brief is as follows:

  • Using Pygame or a similar technology, develop a playable game (or comparable interactive program) with a clear set of rules.
  • It can be player vs player or for the more technically inclined, player vs computer.
  • The game should contain at least one of: artwork or audio produced by the group, a visual playing space, a scoring system appropriate to the game that enables a player to win.
  • Additional features such as menus, interactive sound, 3D graphics or even multiplayer could be considered.
  • If you aren’t particularly confident about your programming, you can keep working using either of the existing games and focus more on another area:
    • Visual artwork
    • Sound effects and music
    • Menus and score systems
    • Level / quest / story design
  • You will be assessed on the quality and originality of the work you produce, how well it is implemented, and also how well you have performed as a group, including your use of documentation and your time management.

📝 Activity 1 – Team Up!

Once you’re in your group, you need to allocate yourselves one of the roles explained above. As a group, you then need to produce and submit a short project proposal which outlines your plan in summary and your intended roles, and submit this for approval.

📝 Activity 2 – Get set, go!

In your group, set yourselves a milestone – what do you want to have done at the end of the lesson? Once you’ve agreed on this, start working! Give yourself enough time to discuss your progress at the end, and self-evaluate how well you met your goal.

💬 Summary

In this lesson, you…

  • Join up with other students into a group
  • Assign yourself roles within the group
  • Submit a project proposal
  • Start to make independent progress on your games project

In the next lesson, you will…

  • Review your progress so far, and decide what you will be working on next.

🏅 Badge it

🥈 Silver Badge

  • Made progress, but falling short of your milestones.
🥇 Gold Badge

  • Met your milestones for the week.
🥉 Platinum Badge

  • Exceeded your milestones for the week .