Best Practices Lesson One • Correctly identify the proper user. • Develop and maintain a quality relationship with the user and user groups. • Create and maintain a platform for communications in order to have a quality relationship with the users. • Demonstrate results and understand why it is important to do so. • Educate the users on the project management process and what their roles and responsibilities are within that process. • Consider user feedback and consensus. • Identify and recruit an evangelist. • Show why and how to conduct primary research. • Show respect for users. • And focus, focus, focus on real user needs. Lesson Two • Have a clear vision for the project that is easily understood. • Get executive commitment. • Make fast decision. • Have a decision pipeline. • Focus on executive sponsor process education. • Use measurements. Understand how and why you need to negotiate. • Have a well-thought-out plan to convince the executive sponsor you are on target and gain his or her support. • Understand the benefits of a kill switch and why every project should have one. • Finally, appreciate the merits of celebration – and never take it lightly. Lesson Three • Everyone involved must be on the same page in terms of the project’s business objectives. • Make sure stakeholders can recite the “elevator pitch,” a concise and comprehensible explanation of the business objectives delivered in 10 seconds or less. • Consider the big picture and how the project fits into the organization’s overall strategy. • Promote speed and understand how the clarity of business objectives can increase speed. • Have a yardstick (project measurements). • Make return on investment (ROI) a clear business objective. • Collaborate with team members to ensure a clear and concise message on business objectives. • Build the foundation for a peer review process. • Do you homework through basic and fundamental research and test the clarity and reliability of the business objectives. Lesson Four • Minimize scope to facilitate optimization. • Understand the merits of stepping-stones and the dangers of milestones. • Time is the enemy of all projects, so consider time boxing, which involves setting deadlines and a fixed amount of time in which to complete the project or steppingstones. • Examine the rules of engagement. • Manage expectations by minimizing and optimizing the scope. • Make use of a small medium, like an index card, to help optimize scope. • Use role models as guides for both good and bad behavior. • Assess the need of a requirement by its yield or gain. • Consider the risk of each requirement. • And finally, consider cost, risk, and gain as elements to optimizing scope. This point came out of an effort at a CHAOS University workshop to create a zoo, which is why it is named Panda Bear. Lesson Five • Use an iterative development style – it is the heart and soul of any agile process. • Collaborate with team members as part of the agile development process. • Follow up with rapid feedback, which promotes quickness and velocity – cornerstones of agile methods. • Recognize that the agile process instills better testing and code quality controls that conventional software development. • Consider the use of a Web-bad standard infrastructure as a key component to the agile style. • Ponder no new releases. • This is one of our more controversial subjects, for it knocks down one of the software industry’s biggest profit windmills. Organizations should go to a norelease policy and implement features and functions in a rapid pace on a standard infrastructure. Lesson Six • Projects must follow project management fundamentals. • Keep track of all project management details – project managers need to plan for the changes or functions required to arrive at a goal. • Project leaders should possess basic project management skills. • Project managers need leadership qualities to be effective leaders. • Make and maintain connections, as they are important to the success of a project. • Promote both an individual and collective sense of ownership among the team – the sense of pride and accomplishment that comes with ownership will contribute to the success of a project. • Recognize that members of a project team are inclined to have a stronger commitment to the team if they feel their participation and contributions are valued. • Understand the business. • Be able to pass judgment on issues under consideration and reach a firm decision. • And finally, experienced project managers increase the odds of success. Lesson Seven • Create and maintain accurate estimates and develop a more systematic approach toward project estimating and costing. • Know that projects are marathons, so prepare for the long run. • Look at ways to make your project more financially attractive. Consider working with a project budget and understand how companies manage their information technology money. • Know the elusive financial break-even point and how that point changes as the project moves forward. • Manage change; failure to do so is almost always a major contributor to project failure. • Use incentives to finish the project as a way to improve success and reduce failures. • Don’t be afraid to kill a project and take your lumps and losses. • Recognize the benefits of pruning or re-factoring your code – cutting our unused or meaningless code. • And finally, create a functional pipeline. Lesson Eight • Examine the matter of competency and what you need to consider in evaluating the competency of your staff and the team. • Place workers with skills in jobs that will most benefit the project. • Use incentives as a tool to motivate achievement of project goals or significant stepping-stones. • Look at team building and keeping the team together. • Establish staff development and training programs. • Make use of mentors and mentoring to improve the skills and competency of staff members and the team. • Consider the role of “chemistry” among team members and how it can affect the project in both positive and negative ways. • Learn what you can do when the chemistry does not work and you have an exceptionally difficult team member. Lesson Nine • A formal methodology must have a problem statement to ensure that everyone is solving the same business problem. • Establish a formal process for gathering and maintaining requirements. • Develop a detailed project plan. • Understand that one missed small detail can cause big problems that could lead to project failure – the “butterfly effect.” • Consider the use of analogies to improve communication between users and developers. Maintain a formal methodology to support interaction between stakeholders. • This point includes a case study on how a formal methodology improved the results in hospital intensive care units. Consider the concept of the Project Management Office (PMO). • Integrate formal peer reviews into your formal process. • And finally, employ a flexible formal process to improve the success rate.