Answer the question
In order to leave comments, you need to log in
How to improve the development/testing/deployment process?
Good day!
Can you please tell us how to improve our processes?
There are several relatively small yii2 projects, one developer and one PM (me). Code on bitbacket, test environment (automatic deployment), production environment (manual deployment). Development tasks are set in WorkSection (command project and task management system).
There are several problems:
- it is difficult to track which features have been tested and which have not yet.
- it is difficult to track what exactly gets into the release.
- it is difficult to make a changelog to convey it to users later.
- we are going to take 1-2 more developers and it is necessary that the development / deployment process does not turn into a mess.
- no autotests at all
Tell me how to do it right? Maybe you need a task tracker like JIRA to integrate with bitbacket? Maybe some kind of CI system? What are the right steps?
Answer the question
In order to leave comments, you need to log in
There is no silver bullet, everything is individual, but in the general case, two systems are needed:
one - "from PM". It could be google docs for starters, or B24, or...
the second one is "from the developer": a tasktracker related to SUV (usually this is an issue in Github/Gitlab ).
The JIRA or TFS mentioned above is kind of like "2 in 1", but, in my experience, for small projects it's easier, more flexible, more reliable two separate systems than a cool corporate goofy combine.
Although, perhaps, there is still a "bullet" - Redmine , but he has a birth injury in the form of "made in Ruby"
> - it's hard to keep track of which features have been tested and which ones haven't yet.
> - it is difficult to track what exactly gets into the release.
> - it is difficult to make a changelog to convey it to users later.
> - we are going to take 1-2 more developers and it is necessary that the development / deployment process does not turn into a mess.
1. Be sure to start a task tracker.
2. Agreement on branch naming. The task ID is added to the end of the branch name.
- no autotests at all
> Run autotests.
www.fengoffice.com/web Task
queue
We 've been
using it for several years...
free and angry...
Well, GIT is a must for a developer For
two, it's not bad yet
done ... Well, or something like that ... And bring down all the tasks there .. There is a mobile version, so you can write tasks on the road ... I got an idea - I wrote it down ...
And you can see what has been done ...
From the minuses - no statistics ... But for two, IMHO is probably not needed ...
take the same Trello, create several columns in it in the Agile style: ToDo, In Development, Testing, ..., Release, Released (well, or another set to which you gradually evolve)
work with Git on GitFlow - this is a rather convenient methodology , which will put you in order both in the repository, both in the project and in the releases, in
short:
- create a task
- create a branch from develop for this task (feature / *)
- code, commit, enjoy life
- give the task along with the testing branch (here you can use Jenkins to raise the project in the test environment on some branch so as not to deploy it manually, or you can make Jenkins friends with Bitbuket and explain to him that you need to raise the project in the test environment in pull-request creation time (feature/* => develop)
- everything that has been tested can be merged back into develop; although you can not merge them, but wait for the day of release and then merge already tested features into develop
- from the develop branch you make a releast / * branch, run all regression testing on it, describe release notes
- finish the release, merge this branch into master and back in develop with installation not master tag with version number
https://trello.com/
https://habrahabr.ru/post/106912/
https://jenkins.io/
we use JIRA+Bitbucket
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question