Some time ago I’ve asked my advisor, Piotr Grobelny, Project Manager, what in his opinion are the symptoms of software project management issues.
Here is his list:
- The people involved in project don’t understand the project objectives
- The communication between them is disrupted.
- Appears lack of crucial competences or human resources.
- The stakeholders and project leaders are surprisingly silent.
- The motivation and engagement are decreased and the people are frustrated.
- The risks become current problems.
- No one knows if the project is still necessary
Piotr also said that
consider project as a planned stream of undertakings that lead us to achieve certain goal in defined time and budget. Nevertheless, we build the house in waterfall methodology or develop the software in Scrum there are symptoms that should worry us
Some points on this list are more human-dependent, some are less. It is hard to divide them to first or second category, because the borderline depends on several factors, like organisation culture and so on.
A lot of time I spent on creating a tool, called GetBadges, that can help with project management. I’m a CEO and a Project Owner too, and I agree with Piotr’s list. I’m also a software developer, so I can detect some failures from development side.
I want to show, in which areas in GetBadges can be helpful and can support project management.
Sometimes, the people involved in a project don’t understand the project objectives. The developers are not engaged enough in the project and they underestimate the values of good software development practices.
Maybe they are unclear? Without setting an Objective Key Results we shouldn’t expecting the team can be doing their job well. The Stakeholder KPIs should be comparable with teammates KPIs. In a project development level we can set up it as well! Software project management KPIs should be aligned with best software development practices.
Symptoms of lack of KPSs in these areas are:
- Big commits
Yes. Your commit shouldn’t have a tons of code, until you include a library or set up an initial commit, which is a topic for another discussion. Nevertheless the main goal is usually the smaller the better.
- A few tasks closed
Closing task is a main velocity measurement. Number of closed task depends on developer but velocity should be comparable with their past periods. Also it is not good when one team is not closing any tasks in a week and when one person work on one task for months.
- No code reviews
Never underestimate a second pair of eye on your code.
- No Continuous Integration tool
When your code build failed is a good reason to fix it before the deployment.
- Lack of tests
Developer should test the code often but even if you have a dedicated QA in your team, developers should write an automatics tests themselves. When your project grow nobody knows when and what will crash.
- No production bugs monitoring.
Some bugs are hard to detect, when they have occurred once, or are not user-visible, for example they are triggered by an API call.
Talk with your team, setup a proper tools like Circle CI, Jenkins. Start using Pull Requests in your code repository like GitHub. When you create your game in GetBadges, the platform demands from you to start using these tools and giving you extra reward for using them properly.
“Projects at a glance”
How I can check in one second what are my software project management issues? How to avoid them?
For my team I want to have these KPIs:
We want to promote closing tickets, we want also to doing code reviews and want to avoid build failures. Simple, isn’t it?
The hardest way is how to get this from my team and engage it to doing it themselves. If they are disciplined, it can’t be hard. But if they are not?
To help with this, you can use a smart tool I’ve mentioned previously. GetBadges really help to do it smart and simple.
The main mission is: KILL THE MONSTER!
Stay with me, I’ll explain it in a minute 🙂 Now:
- Create and setup the game: connect your tools, an issue tracker, a code repository and continuous integration will do. And invite your teammates because the game is based on cooperation
- Provide your KPIs: as the monster attributes. The monster is a trigger your teammate fight with them.
The only way to win is through KPSs, as every event will be matched against your list of KPSs and give user some points to fight the monster.
When you project doing well, monster losses his Health Points (HP) like this:
When something going wrong, like you have too many reopened tickets, builds failed, production errors, bugs reported, monster can gain HP:
As you see monster was healed. Who want to heal these creatures? 😉
Child’s play? Too easy? Raise your hand if you have never got sucked into a simple game!