Reasons why system projects fail
Overview
3 keys to project success
- Top management support
- A sound methodology
- Solid technical leadership by someone who has successfully completed a similar project
Top Management Support
If theres no full commitment from top management, project will collapse. Project will not be successful if management doesnt think it is successful.
Development Methodology
Easy to see the result of a lack of attention to process after a system fails Doesnt matter what methodology at least there is SOME. What is important is keeping the project organised in some consistent and focused way and thinking through the process carfully at the outset. All gather same information but organise it differently
Technical Lead
Needs to be successful and lead the team. Level of control must be recognised and achnowledge by everyone involed within the project. Otherwise, each portion of the system may be constructed independently by a portion of the team and the pieces wont fit together at the end. Tech leads need to understand the busniess area and have had experience it it previously.
Interdependent Factors in Project Success
- Cost
- Quality
- Speed
- Risk
Not possible to have the best of all four. 2 of them are always possible to achieve successfully. Most important are rick and quality.
Data migration
Should be planned for early and should be considered as a separate prokect in its own right.
List of the Top 10 Ways to guarantee the Failure of a Systems Project
- Don't use a specific methodology because coding is all that is really important
- Create the project plan by working backwards from a drop-dead system completion date
- Set a realistic timetable. Forcing a deadline to drive the schedule will cause corners to be cut, increasing the risk of the project.
- Don't bother with a data model. Just build whatever tables you need
- Wont meet user requirements and needs if don't construct a data model
- Each data model should be directly under the control of the technical lead
- Should be audited until no more errors are uncovered
- Use a Technical Lead that has never built a similar system. Hiring such talent is too expensive
- Person in lead must be experienced
- Hire forty developers to make the coding go faster
- Build the system in Java, even though most of the development team still thinks that Java is coffee and you have no intention of ever deploying to the Web
- Three months before the system goes live, assign one junior developer to handle the data migration
- Data migration can consume up to 30% of the total project resources
- Skip the testing phase because the project is way behind schedule
- Users need to be involved to test the program
- Change the system to support critical new requirements discovered during final development
- Buy a commercial, off-the-shelf package and customise it ... a lot
Conclusion
- Don't cut corners, methodologically. In the long run, this results in system failure or an inadequate system that doesn't meet the users needs
- Audit each major deliverable and step along the way for accuracy and correctness
- Carefully monitor top management support for the project. Make sure that managers are aware of the progress of the team
- Secure the correct technical lead for the project