Cutting Project Costs & Exceeding Expectations – A Simple Seven Step Solution
By ExecutiveBrief Staff
Think it’s impossible to strike a balance between cutting costs and exceeding expectations on a software development project? It’s easier than you may think.
Two experts in their field, Ilya Bogorad1 and Michael Garman2, offer their perspective on the fundamentals of a clear, simple, pragmatic approach to developing the business and financial guidelines incorporated in a step-by-step disciplined project plan, ultimately designed to increase the probability of success for your next software project.
The experts propose seven key steps to consider when approaching your new software development initiative from a business and financial perspective. Following these seven steps results in more effectively managed software projects by aligning business and financial values with the development process, which may lead to greater customer satisfaction and profitability.
Step #1: Determine the Business Value to Ensure the Project’s Ultimate Success
It is important to deliver concrete business value with the software project. This expected value must be established at the outset and tied to concrete metrics. Once the plan to achieve these specific results is determined, it should be incorporated as part of the fundamental guidelines against which project decisions are made throughout the execution of each step of the process. At this point, Bogorad suggests, organizations must ask themselves: Are we still delivering all of these benefits by taking this path?
Today, the best alternative should be considered in light of such variables as the economic environment, market conditions, and the capacity of the organization to observe and to manage through change. It is important that new software fits in and is compatible with the rest of the project portfolio.
Step #2: Gain Executive Support and Reliable Project Governance
Once the project is initiated, it is essential to gain the support of the executive team, which can help in ensuring that the priority of the undertaking is well-understood and appreciated across the organization. “Software development involves a substantial amount of interaction with business subject-matter experts whose time may be in high demand,” Bogorad asserts. “Without such high-level endorsement, the project team may find it challenging to obtain a warranted amount of attention from them.”
During the life of the project, there often will be times when strategic decisions in respect to the future direction of the project will need to be made. This is where proper project governance is essential so that either the project sponsor or the steering committee can make and approve such decisions. As Bogorad notes, “Failure to do so results in derailed projects and cost overruns.”
Step #3: Consider the Financials and Benchmark Your Performance
Garman notes that saving money on software development projects, once those projects are in progress, requires a keen understanding of both your true costs and whether those costs are high to begin with. The only purely objective way to determine this is to measure your own performance and compare it against other companies with similar environments. “Benchmarking your company’s performance during certain phases of the software development life cycle will uncover inefficiencies that then can be addressed and improved upon,” says Garman. “Such improvement efforts will result in gains in the areas of productivity, quality, and cycle time…all factors affecting the overall cost of the project.”
According to Garman, a fundamental way in which companies can improve the cost of software development over the course of a fiscal year is to have the proper mechanisms in place to ensure the sequence of these projects are carried out in such a way that corresponds to the priorities of the business. Doing so will uncover inconsistencies with business and financial objectives on projects that otherwise would have been launched, ultimately resulting in cost savings by preventing or stopping an invaluable or detrimental pursuit.
Step #4: Avoid Futile Software Proliferation to Drive Down Costs and Increase IT Effectiveness
It is important to avoid using solutions to satisfy the requirement of a specific line of business or organization within the enterprise. “Software proliferation has a negative effect on virtually all IT processes, and these effects are always felt by the businesses they support,” Garman says. This results in the maintenance and support of the computing environment becoming more complex and the requirement of dedicating resources to support multiple applications that perform the same overall business functions. This added complexity negatively affects the business by:
- Reducing IT responsiveness to issue resolution;
- Causing delays in development project delivery;
- Reducing overall delivery quality due to increased complexity and resource consumption;
- Increasing overall IT cost of operations.
Garman believes companies are beginning to understand the magnitude of this problem and respond by initiating formal application portfolio management programs designed to get software proliferation under control. These programs inventory the enterprise’s total portfolio of applications, measure the costs associated with supporting these applications, and assess their alignment with business and IT strategies. Once such programs are carried out and the inefficiencies are uncovered, the organization can respond by consolidating, eliminating, and enhancing applications when and where appropriate. “This can be the single most significant contributor to driving IT costs down and driving IT effectiveness up.”
Step #5: Evaluate Consultants for Synergy and “Fit”
A consulting team may be either supplementing client resources or integrating their finished product into the testing and validation processes used at the client. “The client must ensure that the vendor has the necessary experience to integrate with their processes, procedures, and standards,” Garman says. “Their effectiveness is determined based on how effectively they can assimilate their processes with those of the client. This is the area where clients should focus their questions and challenges when evaluating their prospective software development partners,” he adds.
Step #6: Consider Technology Risks that May Limit Progress or Success
There can be considerable potential technology risks in software development, and it is crucial for the organization to monitor and mitigate them in a timely manner. “Technology contains bugs,” says Bogorad. “If they are found, address the issue immediately; seek resolution with the vendor, brainstorm alternatives, and engage the assistance of experts outside of the organization.”
Some business leaders may have a tendency to foist upon the project team “the latest and greatest,” strictly driving selections based on business considerations alone with little regard to such technical aspects as scalability, fitting with the existing infrastructure, or appropriateness for the specific task or project. These leaders must understand that due to the mix of operating systems, software components, and hardware platforms that are often unique to each software development project, it is inevitable that there will be instances where some element may not work properly and it is therefore necessary to consider potential technology risks that may inhibit the progress or success of the initiative at hand.
Step #7: The Path to Success
The Internet is rife with debates on why one development methodology is better than another. A variety of factors must be considered during the decision-making process, such as the culture of the organization, project goals and priorities, staff allocation, and the preferences of the key stakeholders. Despite the methodology established, what is critical is all involved must adhere to the guidelines designed to ensure success for your organization.
When embarking on any initiative in the high-paced and often unpredictable environment of software development, there are critical considerations and fundamental guidelines that can be incorporated to contribute to ensuring the success of your project. Well-qualified project leadership who can execute on a disciplined plan, a project team fitted with the necessary tools and resources for carrying out the individual project tasks of the initiative while also acting as a cohesive unit, effective communication with and support of stakeholders, and efficient management of risk, time scope, and budget are all part of the foundation of a solid approach to developing practical guidelines for a software development initiative that will lead the organization and team on the path to project success.
1 Ilya Bogorad, principal of Bizvortex Consulting Group, Canada, has firsthand experience with managing large projects and believes that the elements that lead to many poor outcomes could be avoided well before they are initiated. Bogorad has been quoted in BusinessWeek and Harvard Business Publishing and serves on the ICT Advisory Committee at the Toronto Board of Trade.
2 Michael Garman is a lead consultant for Compass America, Inc. Garman has extensive experience in helping IT organizations to successfully improve their performance and has over 22 years of experience in software delivery ERP implementations, large-scale project/program management, and IT management.
© ExecutiveBrief 2008. All rights reserved.
ExecutiveBrief, the technology management resource for business leaders, offering proven tips, techniques, and action plans that companies can use to better manage people, processes and tools – the keys to improving their business performance. For more information please visit: http://www.executivebrief.com.