Project Delivery Workflow

Productsarrow-up-right are the solutions we build for our customers, including Knack apps, AMANDA apps, custom software, and data systems. We improve and extend our products over time so that they deliver continuous value to Austin Transportation as business needs evolve.

Projectsarrow-up-right are time-boxed endeavors. They accomplish a singular goal and have a defined completion date. Examples include:

Project Initiation

Oftentimes, our customers initiate a project by submitting a DTS service request that is notably large and/or important.

A DTS team member may also create a project when there is significant work to be done on an internal product—such as updating Austinmobility.ioarrow-up-right, a technical refactor of the Vision Zero Databasearrow-up-right, or migrating our CCTV image service from a local server to the cloudarrow-up-right.

In either case, we begin by verifying that all our DTS project prerequisites are met:

  • Dedicated product owner to support requirements gathering, user research, and user onboarding

  • Division Manager sponsor to champion the project at the executive level

  • A commitment from the customer to collaborate in DTS's iterative, user-centered development process

Then either create a new project index issuearrow-up-right or convert the existing issue to match the project index templatearrow-up-right. Either way, make sure that the 'Project Index' label is on the issue so that an evaluation record for the project is added to the DTS Portal and it appears on the website.

circle-info

Don't worry about building out a robust project index before scoping the request. Just make sure the name and description (the first 1-2 sentences) are good and that it has all the right labels. You can comment out the rest of the template to fill out when you have more information.

Move the issue to the "Needs Scoping" Zenhub pipeline.

Scoping

  • PM schedules an intake meeting. Ideally, this will include actual users as well as the workgroup manager.

  • Meet and take notes; photos/recording may also be helpful.

  • Add notes/photos/recording to Github issue.

  • If necessary, update issue description to ensure it clearly summarizes request.

Builder Huddle

circle-info

Sometimes we realize that the request isn't actually project-sized during the intake meeting or the builder huddle. No worries, we had a good opportunity to learn more about our customers' work. Might make sense to organize this work as an epic, once the time comes.

Product Sync

After assessing effort with the builders, it's time to assess value with the product team.

After the evaluation is complete, the Austinmobility.io script will pick them up and you will be able to see the project in relation to other projects in our backlog using the prioritization matrixarrow-up-right.

Move the index issue into the "Backlog" pipeline.

Prioritization

Google presentation used for Product Ops onboarding and TPW Executive communications.

Working docs

Activation

Once the time comes to work on the project:

  • Move the issue to the "In Progress" pipeline.

  • If you don't already have regular Sprint Reviews with the project's stakeholders, set up recurring meetings for the duration of the project so that you can demo work and get feedback.

  • Create a folder in the Projects/Products DTS Drive.

  • Create a Project: label in Githubarrow-up-right. Fill out the "Description" field and use the hex code #3D3D3D for "Color." Use this label for all issues moving forward so that they render on the projects' website page and are easy to surface on Zenhub/Github.

  • Fill out the rest of the project index including background, outcomes, timeline, etc. Add these headings to the issue:

  • Convert the project index issue into an epic and assign future issues to the epic moving forward. Zenhub allows you to nest epics or assign issues to multiple epics, so feel free to use that functionality if you find it helpful.

  • Ensure that everyone who has stake in the project, from potentially impacted staff to interested executives, is aware the project is moving forward. Invite stakeholders to come to sprint reviews and/or participate in user research. Ask them who else should be included.

  • Optionally, hold a kick-off meetingarrow-up-right with your stakeholders.

Delivery

circle-info

When you click the "New Issue" button in the upper righthand corner of most pages in Github, you'll find issue templates for bug reports, features, and enhancements. You have to scroll to the bottom of the page and click to the "Open a blank issue" link to get a plain issue. To skip all that, bookmark the direct link to the blank issue formarrow-up-right and add it to your browser bar.

Completion

A project is considered complete when the minimum viable product—captured in the "Scope and Deliverables" section of the issue's project index—is delivered to users.

circle-info

For complex projects, you might consider making an "Onboarding and Stabilization" epic in the project to capture any critical bugs documentation needs that surface during roll out and keeping the project open until those issues are addressed.

  • Often, there are still issues in the backlog that are not actually must-haves. Remove the project label, remove them from the epic, and review them the next time you meet with stakeholders so they can prioritize those against any of their other ongoing requests.

  • Retire the project label by adding "[Archive]" to the "Description" field and update the hex code to #B8B8B7.

  • Write a final update as a comment on the index issue and close the issue.

  • By default, completed projects show on "Complete" tab on the “Projects" pagearrow-up-right of the website, but you can apply the Archived Project label to prevent that. We like to curate this page to showcase our most compelling, impactful, and well-documented work.

Last updated