Step II. Break Down the Project and Gather Resources
Last updated
Last updated
Once the scope of the project has been defined, we have to break the project down into smaller, achievable subtasks. To figure out where to start, rewind back to the assignments from CS 1110 or 2110. Function skeletons were provided with function names, parameters, variables, return types and descriptions. In addition to function skeletons, test files were given to test whether the functions return the expected output under all corner cases. With the general direction and scope determined in the first step, hold frequent meetings to lay out the user inputs and the resulting outputs. Note that these initial meetings are different from sprint meetings, which will be introduced later in Step III.
Take for example a COVID tracker project that takes in an address in NYC and returns COVID risk level of that address as shown in Figure 12. With the given input and output, determine the intermediate steps to take the given input and return the desired output. In the case of Figure 14, Google Maps API would be used to pass the input address and return an associated NYC district. The returned NYC district would then be used as an input to search through the NYC Health database to figure out the COVID statistics such as positive cases and vaccination rates. With the given COVID statistics, there should be an algorithm that calculates the approximate level of safety of that district. All these intermediate steps can be coded into a valid function to reach the desired output. Likewise, divide up the project into smaller subtasks and convert them into necessary functions.
Another important aspect of Agile project management is knowledge sharing. Surveys show that all organizations practice knowledge sharing as an essential part of their Agile methodology [9]. After the team establishes a general understanding and direction of the project, each team member should contribute several documents, websites, or articles relevant to the project. Sharing knowledge will place the entire team on the same page and thus will reduce the development phase [9]. Microsoft Teams provides a Files tab as shown on Figure 15 and will serve as a knowledge management system.