We're going to build a game, the main characters of which are...zombies! But no need to be scared of them, we'll have lots of fun creating and playing this game. So, how shall we go about creating our zombie game? As we discussed in previous units, the software development process includes specifying the program requirements, designing and implementing our program as well as testing and documentation, among other steps. This process can be followed in a linear form where each phase is finalized before moving to the next one. This means for instance completing all the coding you need to do before testing your program. This approach is called the Waterfall Approach, as the development flows downwards from one phase to another without ever going back, just like a waterfall. There are more approaches to software development which are more flexible than the waterfall model, allowing you to revisit, correct and enrich previous phases. In this course, we've encouraged you to follow an incremental approach where we develop a basic program version, which we keep modifying by adding more functionality and details until we reach the complete program desired. Throughout this process, we may even decide to revisit our requirements and design. After which, we'll move, once again, to the next phases of the software development process. Good. Now that we've seen what the incremental approach is, let's create our zombie game incrementally. We begin with our requirements. What is our game about and what do we want it to do? Talking with our friends and taking some inspiration from the popular game Plants vs. Zombies, we're thinking about a game that is simple to play, is fun, surprises us. Keeps the score. Has cute characters. Has different levels. Includes rewards or elements that help. Has sounds. And has clear instructions. We have an interesting list of requirements. We can create a game in which zombies try to enter our house, but we can prevent them from doing this and make them go away. If they do manage to enter our house, the game ends. As an additional element, we can have some flowers in the garden that help stop the zombies but only for a few seconds. So when a zombie touches a flower, it halts for a short time. And after that, it starts once again moving towards our house.To address the surprise requirement that we saw earlier, every now and then, the zombies come in large groups like a real invasion, and we have to hurry to make them all go. So, our game could be defined like this.