Skip to main content

6. Workflow

Development Process: From Design to Deployment

Our development process is streamlined to facilitate seamless transitions between stages, ensuring high-quality results while maintaining agility:

  1. Backlog: New tickets or tasks are created and placed here. This is a repository for all new ideas, bugs, and feature requests.

  2. Selected for Development: Team leads or project managers (PMs) sift through the backlog, select high-priority tasks, and assign them to the appropriate developers.

  3. In Progress: Once a developer starts working on a ticket, it is moved to this column. It's a clear indication that the task is currently being tackled.

  4. Dev Test: After completing the coding part, developers test their work. This stage is meant for internal testing and catching immediate issues.

  5. In PR (Pull Request): Once testing is done, the developer pushes their code and creates a PR. The ticket is then moved to this column.

  6. In QA: After the team lead merges the PR, the task enters the Quality Assurance phase. QA engineers will then ensure everything works as expected.

  7. Regression: If the QA team finds issues, the ticket is moved to the Regression column, and necessary corrections are made. Additional tickets detailing the problems may also be attached.

  8. Done: Once everything is tested and all issues are resolved, the ticket moves to this final column, marking the completion of the task.

Use of Project Management Tools

We use Jira for our project management needs. It's an integral tool that helps us track progress, manage tasks, and maintain a record of our development milestones. Our board is set up to mirror the workflow outlined above.

Code Review and Pull Requests

  1. Branch Creation: When working on a ticket, create a branch directly from Jira. Always branch from the staging branch.

  2. Pull Requests (PRs): After finishing your task, submit a PR on GitHub targeting the staging branch. It's crucial to ensure that your code is clean, well-commented, and follows our coding conventions.

  3. PR Review: After submitting a PR, notify Awais TANVEER by tagging him in our Skype group along with the PR link. He oversees code merges and server deployments.

  4. Branch Cleanup: Once your PR has been merged, delete the branch to keep our repository clean.

  5. Deployment: Remember that the staging branch corresponds to app.galileoprotocol.io (our daily, potentially unstable environment), while the development branch corresponds to demo.galileoprotocol.io (our stable environment). After thoroughly testing on staging, we merge changes to development.

Additional Tips

  • Always ensure that you're pulling the latest changes from staging before starting a new task. This will minimize merge conflicts and keep your local setup updated.
  • Keep your commits concise and relevant to your current ticket. It makes the review process smoother and helps in tracking changes.