Skip to content

2. Project Timelines

Abbey Jackson edited this page Jun 10, 2017 · 1 revision

CodeDoesGood projects go through the following stages. The first few steps differ slightly whether they are a client project or a CodeDoesGood community generated idea.

The entire project flow could be anywhere from 6-18 months. The longer than expected / standard times are due to every step of the process being completed by volunteers who do not have more than 5-10 hours to devote per week. Additionally CodeDoesGood has a primary focus on education in the tech industry which means most people doing most steps will be learners. Learners take longer to complete tasks, there is then a feedback stage where a more experienced developer looks over the work, gives feedback, requests changes, and ultimately approves it.

  1. Client Acquisition or Idea Approval
  2. Client Discovery Phase or Ideation
  3. Project Specification Document written
  4. Project Specification Document approved
  5. If client project, client contract signed
  6. Design
  7. Marketing plan developed
  8. Project Staffed
  9. Project development
  10. Project release and marketing executed if applicable

Please see Job Descriptions for information about who is responsible for each step.

Each step is described below.

Client Acquisition and Idea Approval

These can take any amount of time and should not be considered when thinking about the time line. Client acquisition is literally going from initial contact from a potential client to acquiring them as an actual client and getting them started with the client discovery phase. This can be quick or it can be a long process as the client may have many questions and need additional information. Ideas must be generated and thought out before they can be approved.

Client Discovery Phase or Ideation

The client discovery phase is the time spent with a client talking about their idea, their needs, the costs, etc. This is the process we follow to help them flesh out the future product. Ideation is a similar concept except it is done by the person with the idea with or without other CodeDoesGood volunteers and may not follow a set process. This phase can not be estimated. It could take a couple weeks or it could take several months depending on the time inputted by the client or the person with the idea.

Specification Document

Once the discovery or ideation phase is complete a specification document must be written. The specification document can take a month or in some cases even longer to be completed. Specification documents are extremely thorough documentation of the product to be developed. The intention is that once this document is written a designer should be able to design the project without further question and once that is done developers should be able to use the document and the design to develop without any further questions.

Design

Design can take anywhere from a few weeks to a couple months depending on who is doing the design.

Marketing Plan

The marketing plan does not affect the timeline as it can be done at the same time as other tasks.

Project Staffing

Project staffing should not affect the timeline as it can be determined during the design phase. The goal should be for the project to be staffed by the time design is complete. In fact if a project is staffed before the design phase is complete the projects can begin work by getting the team members acquainted with each other, setting up their template project, and if desired created project architecture design documents.

Note: Project teams should not be assembled until design is only a couple weeks away. The reason for this is because if we assemble a project team and then they have to sit and wait for 2 months there is a high chance of losing project members to other commitments.

Project Development

CodeDoesGood projects should be small, however our volunteers may only be putting in 5-10 hours each per week and most projects will have only Hatchlings doing the actual development work. In addition to development there will also be time spent on code review, feedback, and addressing that code review through refactoring. We can also expect to find bugs which need to be addressed as the Hatchlings are learning and may not be aware of things more experienced developers would by default not have issues with. Finally most Hatchlings will be learning testing and we can expect that to significantly slow them down. Expect development to take from several months up to even a year.