Every project or task has an own life cycle divided on some stages. These stages show us where the project is (its progress) and how fast it will be done. Our article will be interesting for projects managers, especially if they manage several projects at the same time.
How do you think, is it difficult to keep an eye on every scheduled task, inform your development team about tasks priorities, keep clients up to date and what scheme should be used for such work process? In our company, we use JIRA to aid project management and help tracking and monitoring processes. Of course, depending on your needs you can use different systems, for example Basecamp, Redmine, YouTrack, Asana or even Trello.
JIRA itself has a lot of benefits for project managers: ability to set up various dashboards, assign priorities for the tasks depending on their urgency, add estimates and set deadlines.
But let’s get back to the life cycle of the project, and below we describe how it goes in our company. We are starting from the very beginning:
When clients send us a new project, sometimes before scheduling the development they want to know how much it will cost. If that is the case, Project Manager discusses the tasks with the client and after clarifying all the details schedules it in JIRA with the Waiting for Estimate status. Then, any of the developers can check the task and add an estimate. If the task is difficult, it is better to discuss the required hours with the team members and, basing on the work experience, give a quote.
Sometimes it is likely that you could meet an unexpected issue during the development and then have to spend the additional time on solving it. In this case, we provide our clients with the “from … to … hours” kind of estimate that would cover both optimistic and pessimistic scenarios.
Once the estimate and deadline are approved by client, the task is moved to Story Queue. Every developer can see all tasks with their priorities and already approved estimates on the general board and can take a new task from the Story Queue column.
After choosing the task, its status should be changed to In Development progress, so other team members will see that this task is already taken and manager will send to the client update that we have already started the progress.
Waiting for Clarification
Sometimes, we need to clarify some additional questions when the task is already in the development progress, in this case the task should sit in the special status while we wait for the client’s response.
Waiting for Testing
As soon as all development work is done, the next task’s status will be Waiting for Testing. QA team should carefully check the result in different browsers, for the desktop and mobile versions, run automated tests if there are any, and then confirm that there are no issues found. Only after that, they pass the task to further step.
This part means that we have finished with the task on the local environment and deploy outcome to the development store and then, after one more testing stage, to the live store.
Only after all this cycle, the project manager sends the finished and tested project to the client. And in JIRA, it is labeled as Waiting for Clarification until we receive the client’s feedback.
We can Resolve task only after our client confirms that the project is completed and no additional changes are required. Otherwise, we will have to go back to the task board and send the task to the Story Queue status for the additional fixes or modification.
So, summing these steps up, such workflow is very convenient for the developers and a project manager. And, no doubts that when project manager sees all tasks on the dashboard with their progresses and priorities, he or she can control the deadlines and keep the clients informed about results and work progress more efficiently.
Thanks for reading. Please share your experience managing Magento projects in the comments and also feel free to check the presentation of our CEO on the Magento Project Management topic from Meet Magento Poland below: