Process - Smart-Home-Automation/shass GitHub Wiki

Overview

We will follow an Agile project management process. Because we are so all over the world, we will use a Kanban approarch with Agile.

Agile is a structured and iterative approach to project management and product development. It recognizes the volatility of product development, and provides a methodology for self-organizing teams to respond to change without going off the rails. Today, agile is hardly a competitive advantage. No one has the luxury to develop a product for years or even months in a black box. This means itโ€™s more important than ever to get it right.

Kanban is all about visualizing your work, limiting work in progress, and maximizing efficiency(or flow). Kanban teams focus on reducing the time it takes to take a project(or user story) from start to finish. They do this by using a kanban board and continuously improving their flow of work.

Planning Sessions: Project Managers, Product Owners and Lead Developers will have a meeting. The primary focus of the planning sesion will be to:

  • Deside on the work that needs to be done
  • Prioritize the work.
  • Ensure the work is on the Backlog

Grooming Session: Leads and Developers will have a meeting to:

  • Break items that were put in the Backlog from the Planning Session.
  • Estimate effort

It is critical during the development of this project that we write great maintainable code following best practices. This will be a large open source project, and we will have others reading and add to our code as time goes on. Let's keep it clean and managable.

We can setup chat room on Discord or have Facebook Room meetings, or a combination of both when we have questions of just need to brainstorm on things.

We can rely on PR and branching to make sure we are checking each others code.

This is going to be a great open source project that I believe we will take pride in being a part of.