<< Return to documentation overview
This is a guide to the development lifecycle of the project for TP 2022/2023. It is a living document and will be updated as the project progresses. The original version with Jenkins auto-building, Sonatype Nexus can be found here.
Whether you are working on a new feature or fixing a bug, you are probably working with a Jira issue. Each issue has its own lifecycle with its own stages: TO DO
, IN PROGRESS
, TEST
and DONE
. Each issue has also multiple attributes, the most important ones being:
- ID: Unique identifier in the format
AS-<number>
. - Assignee: The person responsible for the issue.
- Handler: Person currently working on the issue. This is usually the same as Assignee, but it can be a tester as well.
Anytime you move an issue to a different lifecycle stage (apart from TO DO
->IN PROGRESS
), you should comment it in the issue itself.
For example: If you finish your work and move the issue from IN PROGRESS
to TEST
, please attach a link to your pull request.
When you start working on an issue, you should assign it to yourself. This lets other people know that you are working on the issue, and it prevents other people from working on the issue at the same time. The steps are as follows:
- Choose an issue you want to work on from the
TO DO
column in Jira. - Change the
Assignee
andHandler
to yourself. - Move the issue from the
TO DO
column to theIN PROGRESS
column. - Create a new branch from the
master
branch (or whatever our main branch will be). The name of the branch should be in the formatissue-<Jira ID>
, e.g.issue-123
forissue-123
. - Work on your issue.
Once you are satisfied with your work, you can do the following:
- Create a pull request on GitHub. Do not forget to specify a reviewer, who will take a look at your code.
- Move the issue from the
IN PROGRESS
column to theDONE
column. - Change the
Handler
to the reviewer specified in the pull request.
If you have been assigned as a reviewer, you are supposed to test you colleague's solution. You should not only test, whether the code is functional, but also if it makes sense/is readable.
- Review the code.
- If there is something wrong:
- Document the mistakes and request changes. Feel free to suggest changes yourself.
- Change the
Handler
to the original assignee in Jira. - Return the issue back to the
TO DO
column.
- If everything is fine:
- Merge the pull request.
- Delete the branch.
- Move the issue to the
DONE
column.