Evernym Team Process
Jira Tickets
How the Evernym team will deal with tickets in Jira:
Put a task into IN PROGRESS column
Make sure your understand the requirements and acceptance criteria (if there are any questions - ask @Richard Esplin / @alexander.shcherbakov / @Sergey Minaev)
Write a Plan of Attack (PoA) describing how you are going to implement the task or fix the issue. The PoA should also include description of tests (especially integration ones)
The PoA can be created as a comment in Jira ticket.
Sometimes the task is so big or essential that it's worth to create a PR with a Design (to design folder), or even a HIPE.
Send a link to the PoA to the team so that it is reviewed by other team members.
Do the implementation following Test Driven Development (TDD) and write sufficient amount of unit and integration tests.
Raise a PR. make sure the tests pass.
If there are a lot of changes expected - raise multiple PRs with small chunks.
Try to raise a PR as soon as possible for earlier review (for indy-node: use [Skip CI] prefix in PR name to not run tests if you are sure that this is a WIP and they will fail.
Add a comment to the ticket according to the template below
Move the ticket to the Code Review column
Send a link to the PR to the team, so that it's reviewed by other team members.
Once it's merged, the ticket goes to Validate column, and QA engineer performs the validation (writing system tests as needed)
Code Review Comment Template
When a ticket is moved to the Code Review phase, it needs a comment that follows a specific template. This is useful for:
Code Review
Those doing testing
Coming back to the issues/changes in future to understand what exactly have been done, how and when.
The template:
Problem reason/description:
- list of reasons
Changes:
- list of changes
PR:
- link to PR on github
Version:
- build number
Risk factors:
- ....
Risk:
- Low/Med/High
Covered with tests:
- Test ref on github
Recommendations for QA
- how to test
Daily Update
Every day we share an update message with the team covering:
What has been done today
What is planned for tomorrow
Whether you are on track with your tasks (Red, Yellow or Green status)
Any blockers/issues/comments