To help you get started here’s ten (self evident) truths :
I. Know your goal
It may sound obvious, but if you don’t have an end-point in mind you’ll never get there. You should be able to clearly state the goal of your project in a single sentence. If you can’t, your chance of achieving it is slim.
II. Know your team
Your team is the most important resource you have available and their enthusiastic contribution will make or break your project. Look after them and make sure the team operates as a unit and not as a collection of individuals. Communications are vital! Invest time in promoting trust and ensuring that everyone knows what they have to contribute to the bigger picture. Dish out reward as well as criticism, provide superior working conditions and lead by example.
III. Know your stakeholders
Spend time with your stakeholders. Stakeholders either contribute expert knowledge offer their political or commercial endorsement which will be essential to success. Shake hands and kiss babies as necessary and grease the wheels of the bureaucratic machine so that your project has the smoothest ride possible.
IV. Spend time on planning and design
A traditional mistake is to leap before you are ready. When you’re under pressure to deliver, the temptation is to ‘get the ball rolling’. The ball is big and heavy and it’s very, very difficult to change its direction once it gets moving. So spend some time deciding exactly how you’re going to solve your problem in the most efficient and elegant way.
V. Promise low and deliver high
Try and deliver happy surprises and not unpleasant ones. By promising low (understating your goals) and delivering high (delivering more than your promised) you :
- Build confidence in yourself, the project and the team
- Buy yourself contingency in the event that something goes wrong
- Generate a positive and receptive atmosphere
Consider : if everything goes right you will finish early everyone will be happy; if something goes wrong you might still finish on time ; if things goes really badly you might still not deliver what you anticipated but it will still be better than if you over-promised!
VI. Iterate! Increment! Evolve!
Most problems worth solving are too big to swallow in one lump. Any serious project will require some kind of decomposition of the problem in order to solve it. You must pay close attention to how each piece fits the overall solution. Without a systematic approach you end up with a hundred different solutions instead of one big one.
VII. Stay on track
You have an end goal in mind. You need to work methodically towards the goal and provide leadership (make decisions). This applies whether you’re a senior project manager with a team of 20 or you’re a lone web developer. Learn to use tools like schedules and budgets to stay on track. Consistency is what separates professionals from amateurs.
VIII. Manage change
We live in a changing world. As your project progresses the temptation to deviate from the plan will become irresistible. Stakeholders will come up with new and ‘interesting’ ideas, your team will bolt down all kinds of rat holes and your original goal will have all the permanence of a snowflake in quicksand. Scope creep or drift is a major source of project failure and you need to manage or control changes if you want to succeed.
This doesn’t imply that there should be single, immutable plan which is written down and all other ideas must be stifled. You need to build a flexible approach that absorbs changes as they arise. It’s a happy medium you’re striving for – if you are too flexible your project will meander like a horse without a rider and if you are too rigid your project will shatter like a pane of glass the first time a stakeholder tosses you a new requirement.
IX. Test Early, Test Often
Projects involve creative disciplines burdened with assumptions and mistakes. Sure you can do a lot of valuable work to prevent mistakes being introduced, but to err is human and some of errors will make it into your finished product. Testing is the best way to find and eliminate errors.
X. Keep an open mind!
Be flexible! The desired outcome is the delivery of the finished project to a customer who is satisfied with the result. Any means necessary can be used to achieve this and every rule listed above can be broken in the right circumstances, for the right reasons.
Don’t get locked into an ideology if the circumstances dictate otherwise.
Don’t get blinded by methodology.
Follow your head.
Focus on delivering the project and use all the tools and people available to you. Keep an eye on the schedule and adjust your expectations and your plan to suit the conditions. Deliver the finished product, promote its use, celebrate your success and then move on to the next project.
Nick Jenkins is an IT manager with 10 years experience in software development, project management and software testing. He’s worked in various fields of IT development in Australia, Britain and the USA and occasionally he learned something along the way. Now he lives on the banks of the Swan River in Perth, Western Australia, and he publishes the odd guide to help aspiring IT professionals. Nick’s website can be found at www.nickjenkins.net.