The walk of shame

April 29, 2008 at 12:26 am | Posted in Project Management | 1 Comment
Tags:

Yes we have all been there.
Scenario:
You put your project plan together, made the proposal, it was accepted and the project was given the go ahead.
You estimated 5 days, starting Monday, for a particular phase to be completed.
Wednesday comes around and it is becoming abundantly clear that you are not going to reach the deadline.
After some soul searching it is decided to go cap-in-hand back to the key stakeholders and ask for more time. I remember the first time I had to do this. I dubbed it my ‘walk of shame’ as I made my way down the corridor. It was my first big project and I was so confident.
We had crossed all the T’s and dotted all the I’s and yet here I was, about to admit failure (in my eyes) before the group that so confidently had entrusted me with managing this project.
Well I’m older and wiser now, and I thought that I would offer a seasoned perspective that some of you may find helpful.

It Happens!
First of all you need to get into your head that this stuff happens. Despite all our best efforts, things change! Sometimes it’s our fault and other times it is the result of something outside of our control.
Usually (as in my case) the estimations were incorrect, and this occured because there was not sufficient requirements  gathering at the outset. remember – you can’t ask too many questions!
Sometimes a key resource is pulled off the project for one reason or another and this can set all your expectations back by weeks or even months.

People Understand!
Remember that in most cases, we are all human, we have a mortgage, a job, a car and a mother-in-law. We are all trying to get through the day and do the best we can. I have found that if we communicate clearly people will usually understand. Yes there is going to be the one argumentative, type A, grumpy pants – there always is. Just deal with it – and Always be honest! Accept blame where it is due and commit to move ahead and bring things back in line.

Don’t take it personally!
Wow this was a big one fo rme. Once it sunk in I felt much better. Remember that you are a professional. Absorb the moment, deal with it, learn from it, and move on.

Communicate!
I have found that regular communication (even a once a day email) helps to position people’s expectations, and lessen the blow when you eventually knock on their door. People are usually open to most things, just try and lessen the surprise by keeping them in the loop.

Never overpromise! 
Guys, this is the most important thing – and I am talking from experience here. Be honest. Always be realistic and don’t be afraid to say “No” it can be a PM’s best tool.

How to cost a project

April 28, 2008 at 2:53 am | Posted in Project Management, SDLC | 1 Comment
Tags: , ,

If you have been asked to estimate the cost of a project, the best way to arrive at a reasonable figure is to breakdown the project into its SDLC components.
SDLC milestones may vary but a general breakdown is as follows:
1) Analyse
2) Design
3) Develop
4) Test
5) Deploy
6) Maintain

Like I said, these are just a high level breakdown but they are a good place to start.
Let’s examine each phase in depth.

Analysis
This step usually involves the Business Analysts. Each BA has their own way of doing what they do, but it sometimes involves USE CASES and other analytical techniques to achieve a reasonable understanding of the client’s requirements.
Design
This task usually involves a software architect, who liaises with the BA team to gain an understanding of the solution requirements.
Development
This phase is usually led by a Lead Developer who takes the architect’s plans and converts them into a product.
Testing
Depending on the type of organisation you are dealing with, this will either be a specialised person / department or it may involve one or more developers from the development team.
Deployment
This part of the project involves the OPS or IT departments as it normally requires infrastructure assests such as servers etc.
Maintenance
On going bug reportng etc ….

(Please note that very seldom, and in fact never in my experience, does the SDLC actually flow from top to bottom in a linear fashion. There are usually several loops between development and testing etc This topic is on costing and not the SDLC)

When costing a project one needs to start with the following procedure:

  • Hold a ‘Vision and Scope’ meeting with representatives from each of the SDLC teams. In this meeting a high level understanding will be reached as to the expected outcomes of the project.
    Each member will go back to their teams with an outline of the expectations, and be required to gather estimates as far as resources, timelines etc
  • When the project team next meet, all figures are made public and the team members substantiate their estimates under the scrutiny of the other team members.
  • Once a concensus has been reached the Project Manager will draw up a cost estimation based on the outcome of these meetings.

Obviously costing is only one aspect of the PM cycle, and this particular example is based on the ‘Delphi Wideband Method’.

Stepping Out

April 3, 2008 at 1:26 am | Posted in Career, Development Management, Project Management | Leave a comment

Many developers seem to think that they are limited in their career options once they finally reach the point when they no longer wish to be directly involved in the coding process. I too reached this point in my career, and after some soul searching I basically decided that there were 4 paths that I could follow:

Architect
This is usually the logical choice for those who still wish to maintain some technical involvement but move into a higher visibility level on the corporate ladder. The majority of architects arrived in their current position by slogging it out as a senior developer or technical lead for some development house ( that’s me 🙂 ) and as such have a really good understanding of the coalface technicalities of designing a solution.

Project Manager
Again, senior developers usually have a decent understanding of the SDLC and as such would have some valuable insight into costing and effort estimates. However one needs a lot more exposure to resource juggling and considerations of resources outside of the development team.
In my experience developers can be quite insulated from clients, BA’s and even the entire testing process. A PM will be involved with all these stakeholders and it is a really good idea for any developer wanting to step out to gain as much exposure as possible to these facets.

Development Manager
Heading up a team or teams of developers at various client sites is another option that a ‘retired’ coder could follow.

The obvious skill that needs developing in this area is ‘contract negotiation’. As a developer you will likely never  have been exposed to this aspect of the project. There are areas of the SDLC where a PM and DM’s roles may overlap but I see the DM as more a solid line reporting path and the PM as a dotted line. A DM will need to be more involved in H.R. issues and not many people enjoy this aspect of the job description.

Complete Career Shift
This is pretty self explanatory, but if you want to use your technical expertise then perhaps you could be a technical writer for a local magazine or website – or you could write a book.
You could become a teacher / trainer of IT or even assist with technical documentation.

I would advise spending some time doing due dilligence to each of the choices by researching the domain knowledge within each discipline.
Architecture:
Spend some time researching the various architecture frameworks eg: Zachman, try and think of where you would use each one and spend some time trying to apply each framework to projects you may have been involved in.
Find out what the pro’s and con’s of each framework are and read as many case studies as you can on each one.

Project Management:
Research the various methodologies eg: PRINCE2 and try and apply them to projects that you have been involved in. Also, do some practice project costings to see how you would have done in estimating the budget for a particular project

Development Manager:
Get involved in ‘first contact’ scenarios when a project is proposed and a client is introduced.
Get some exposre to business law, contract etc and learn from those who have held the position in the past.

I am sure that there are many other options out but these are a few that came to mind as I pondered my own fate.

Create a free website or blog at WordPress.com.
Entries and comments feeds.