My Projects Never Failed!!!
I have implemented a lot of systems over the years. Some projects took a week and some took years to finish. I worked on some projects alone and but others involved large teams, sometimes more than 10 developers. All my projects went into production. Most of them met their deadline and satisfied the user's requirements. Some missed their deadlines because of unforeseen developments and the scope of some of the projects differed from their original scope because the company or the users changed their minds. But as long as a project goes into production, I consider it to be successful!!!!! So who is coming up with all these reports of "failed" projects? Who is it that is "failing"?
Who says "failed"?
For example, I used to work for an HMO
The HMO database had information for all the doctors, however a lot of the doctors were working in a group and the users wanted to know which doctor belonged to which group. So I created a Group table and a table to link the Group and the Doctor table together. I changed the doctor input screen so the users could put the Group there.
My manager was satisfied with my work and he told me to put the project into production. When the users saw it, they were very upset. They thought the IT department would group the doctors together. Instead, they had to enter the data themselves to group the doctors!
I could have used the doctor's address and tried to group the doctors together that way. However, my manager said that the implementation matched the specification. It did not say that the IT department had to group the doctors together; it just said to create a system so the users could group the doctor together. He said the project was completed successfully and refused to do anything anymore. Until the day I left the company, no one put anything in the Group table!!! The users absolutely refused to fill in the blank to identify the doctor's group.
I call this project a success.
And for example, I once worked for a telecommunication company
It decided to open a branch in England. In the US the system was written in COBOL and used VSAM files running on an IBM mainframe. The VP of the IT department decided to re-write the whole system using ADABAS and run it in a UNIX system. They hired a consulting company and studied the existing system. The consultants created the database schema and the project scope. The consulting company said it would take a year and a fixed amount of money to finish the project.
The project was divided into four groups online GUI interface, call rating, accounting, and, customer billing. Each group had three consultants and one internal company employee so it would be easy to transfer the knowledge once the consultants were gone. I was one of the internal employees working on the project.
Since the consulting company took care of everything, we did not hire a DBA and the senior consultants created the database. There was a project leader from the consulting company who basically did nothing I could see but write a status report to my company each week. He never ever talked to us so far as I knew, so I have no idea how he wrote the report.
Eight months into the one-year project, and it was only half completed. The consulting company asked for more money and time. My company was furious. The next thing I knew, all the consultants were gone.
Eventually the company hired a few local contractors who knew ADABAS, we cut the scope of the project to a minimum, and managed to finish the main portion of the project. We put it into production and sent it to England. Our management was satisfied with the result. Did this project fail? I count it a success.
For another example, I once worked for a software development company
This software development company developed education software for higher education. (e.g., college registration, student admission, etc.) One day our department received a piece of paper from the vice president who said these were the specifications for a new application report. No kidding, just one piece of paper!!! That piece of paper looked like a report, it had a lot of fields for example: percentage of students admitted versus enrolled in the college, percentage of classes dropped by students after the first week of school started, percentage of students who applied to the college (increase or decrease) this year versus previous year, and so forth. The vice president said he thought the report should be done in a month.
After extensive research, we found that in order to get the data required for the report from the user's transaction system, we needed to build a Data Warehouse. We also needed to build the Meta data and the GUI interface on the web so the users could query and get the report they wanted. We wrote up the scope and timeline and gave to the vice president. He was stunned but still he told us to go ahead and begin work on the project.
This was 1992 and at that time the data warehouse concept was still very new and there were not many BI tools. We used Oracle to build the data warehouse using a star schema. We had to build at least 10 dimension tables and at least 4 to 5 fact tables. We used PL/SQL to do the ELT (Extract-Load-Transform) process and we built the web pages so users could enter data into the Meta data tables.
We also had to build a web interface so the users could choose which dimension and which measure they wanted used in the report. The application would then dynamically generate the report on the web page either in a table format or in a graphical format (line chart, histogram). We used PL/SQL and Java to build the web interface. It took 12 of us (a project manager, a DBA, a business analyst, and nine developers) 2 years to finish the project. All this on a project that the VP originally thought would take a month!
I thought the product was very intuitive and easy-to-use for that time period. I considered the project to be successful and was proud of it, but the company had a hard time selling the product. I think the market was simply not ready for data warehousing at that time. Did this project fail? I don't think the developers failed.
If a Project Fails - Who is it that Failed?
All projects should come from upper management. Management commitment and support is very important. They have to agree to provide adequate resources for the projects, including involve high level business users to provide good business knowledge. The management has to provide a clear and long term vision. If that vision is absent or doesn't match reality, who is it that has failed?
If the project is a big project, a project leader should be assigned and that person should be on top of every aspect of the project. All the project responsibility should be clearly assigned. We all know that. And we all know that the project scope must be defined, the delivery date has got to be realistic, and the project should provide long term benefits to the company, either internally or externally. If not, and if these requirements are not met, who is it that has failed?
In the telecommunication project, there were no high level business users involved in the project; the scope was defined by a consulting company that did not understand the daily business of the company. They wrote the scope of the project based what they found in the existing system. It was easy for the consulting company to underestimate the complexity of the system and miscalculate the delivery date. So who failed?
In the data warehouse project, a VP's piece of paper was the specification. Who knew how he got the paper? I don't even know that the VP wrote it. Building the data warehouse was probably not part of the company's long term goals and the fact that the market was not ready for it was probably not what the VP wanted. Maybe the VP agreed to do the project because it was his idea (his paper), or maybe data warehouses were his vision. So who failed?
There was clearly a communication failure at the most basic level in the HMO project example. If there had been a meeting between IT and the users to clarify the specifications, then it would be clear what the users wanted and what IT could and should provide. Communication failed and I am sure that as a result, the HMO users felt, at least to some extent, that the project had failed. So who failed, when the people who need to talk to each other don't?
Not Me, Boss? Not My Job?
Someone once said (or should have):
Whether a project is a success or a failure depends upon who you are. If you were a user, the HMO project might have been considered a failure. If you were upper management, the telecommunication project and data warehouse projects would probably have been considered failures. But they are not failures from my point of view because I didn't fail; I did my job as well as I could to the very end when the product was placed into production.
I am not responsible for and have no control over the work environment, the teams to which I am assigned, or the leaders and managers who are appointed by management to direct me. How can I feel responsible for the failure of projects due to causes over which I have no control?
I put in 100% and work very hard on all my projects. I test the systems as thoroughly as possible. If the project meets the deadline and the users are satisfied with the results, obviously, I and everyone else would consider the project to be successful.
But, if the project cannot meet the deadline or the user requirements due to something out of my control, I can still say it is a successful project because I have done my best.