# Project Lifecycle

Our projects may range in size, complexity, and duration, but this is our current general framework for the lifecycle of a project.

# Potential Client Discovered and Qualified

  • The sales process moves into the Account Manager's hands as soon as we've confirmed a possible project fit.

# Creation of Initial Project Brief

  • In initial conversations, the Account Manager sketches a preliminary project brief (located in templates/project-brief.md) including...
    • Major stakeholders
    • Initial client goals/pain points
    • Existing technologies and potential technical requirements

# Discovery Proposal contract generated and signed

  • At this point, the Account Manager hands over the Initial Project Brief to the Project Manager and reviews the project details with them up to that point.
  • The Project Manager will use this to plan and execute the Discovery

# Discovery Phase (generates a technical architecture plan and an estimate)

  • Project Kickoff Call
    • Introductions: meet the team!
    • SoW Review: let’s talk about what we're doing
    • Goal Review: hear more from our client about their long-term goals
    • Reporting: briefly touch on how we track our time and communicate project progress
    • Technical Kickoff: allows time for any Q&A about our options.
    • Strategy Questions: discuss the non-technical portion of this process from persona interviewees to what analytical access is required
    • Any Other Business: if time, we can review any related technical questions, the upcoming analysis methodology, review ADA requirements, or other topics as needed
  • Initial technical Q&A with all interested stakeholders
  • Identification of the client’s pain points:
    • Stakeholder Interviews
    • Back and forth of creative ideas and possible technical solutions
    • Creation of User Personas
    • Internal shakedown of personas (flow diagramming, journey mapping)
    • Interface brainstorming with client (interactive sketching, UI prototyping)
    • Presentation of User Personas to client for feedback and acceptance

# Project Plan/Estimation → Revision of Project Brief (generates a project schedule, developer resource plan, and infrastructure|hosting plan)

  • Once the Project Brief has been revised, it is handed back to the Account Manager
  • The Account Manager leads crafting of the proposal and the full contract.

# Full Project Contract Signing

# Project Kickoff (with all Tandem development team members and Account Manager, Client’s Product Owner, and any other vested client stakeholders)

  • Setting Sprint Cadence (weekly/semi-monthly/etc)
  • Scheduling daily internal standups, end-of-sprint client demo, and internal sprint retrospective
  • Verification of agreed-upon milestones (checkpoints) along with Product Owner
  • Creating ZenHub Project, Kanban board, and backlog of epics and issues
  • Setting up Client communication (including clients on Slack/Github, being transparent but not overloading the client with unnecessary information)
  • Post-meeting follow-up with Product Owner for ZenHub training

# Sprint Planning

  • Estimating a sufficient number of issues in the backlog
  • Creating and filling up a (typical two-week) sprint (Dev Team + Product Owner)
  • Sprint kickoff

# Day-to-Day Development

  • Morning Standups
  • Afternoon Check-in(s) via Slack
  • Issue management (start a ticket, work it till it’s ready, create pull request, await QA, make sure Technical Lead is aware and that the PR does not go stale)

# Internal Sprint Retrospectives

  • Happen every two weeks, immediately after a client show-and-tell demo
  • Should occur before a new sprint planning session

# Transition into long-term support (begins approx halfway through a project)

  • Creating estimate
  • Resource allocation in light of all other active projects
  • Contract negotiation and execution

# Project Retrospective

  • Internal, with all Tandem dev team members who worked on the project
  • External, with Client’s Product Owner, and possibly other interested stakeholders