Effective Capacity Planning
Developing a comprehensive capacity plan can be a daunting challenge at the outset and requires dedication and commitment to maintain it on an ongoing basis. The following 10 tips can help ease some of the challenge and increase your likelihood of an effective, successful program.
1: Start Small
Many a capacity planning effort fails after a few months because it encompassed too broad a scope too early on. This is especially true for shops that have had no previous experience in this area. In these instances it's wise to start with just a few of the most critical resourcessay, processors or bandwidthand to gradually expand the program as more experience is gained.
2: Speak the Language of Your Customers
When requesting workload forecasts from your developers and especially your end-user customers, discuss these in terms that the developers and customers understand. For example, rather than asking for estimated increases in processor utilization, inquire as to how many additional concurrent users are expected to be using the application, or how many of a specific type of transaction are likely to be executed during peak periods.
3: Consider Future Platforms
When evaluating tools to be used for capacity planning, keep in mind new architectures that your shop may be considering, and select packages that can be used on both current and future platforms. Some tools that appear well suited for your existing platforms may have little or no applicability to planned architectures. This consideration should extend not just to servers, but to disk arrays, tape equipment, desktop workstations, and network hardware.
4: Share Plans with Suppliers
If you plan to use your capacity planning products across multiple platforms, it's important to inform your software suppliers of your plans. During these discussions, make sure that add-on expensesthe costs for drivers, agents, installation time and labor, copies of licenses, updated maintenance agreements, and the likeare all identified and agreed upon up front. Reductions in the costs for license renewals and maintenance agreements can often be negotiated based on all of the other additional expenses.
5: Anticipate Nonlinear Cost Ratios
One of my esteemed college professors was fond of saying that indeed we live in a nonlinear world. This is certainly the case when it comes to capacity upgrades. Some upgrades will be linear in the sense that doubling the amount of a planned increase in processors, memory, channels, or disk volumes will double the cost of the upgrade. But if the upgrade approaches the maximum number of cards, chips, or slots that a device can hold, a relatively modest increase in capacity may end up costing an immodest amount for additional hardware. This is sometimes referred to as the knee of the curve, where the previous linear relationship between cost and capacity suddenly accelerates into exponential increases.
6: Plan for Occasional Workload Reductions
A forecasted change in workload may not always cause an increase in the capacity required. Departmental mergers, staff reductions, and productivity gains may result in some production workloads being reduced. Similarly, development workloads may decrease as major projects become deployed. While increases in needed capacity are clearly more likely, reductions are possible. A good guideline to use when questioning users about future workloads is to emphasize changes, not just increases.
7: Prepare for the Turnover of Personnel
One of the events that undermine a capacity planning effort early on is when the individual most responsible for and most knowledgeable about the overall program leaves the company. Regardless of the preventive measures taken, there is no guarantee that attrition will not occur. But several actions can mitigate the impact.
One action to take is to carefully interview and select an individual who in your best judgment appears unlikely to leave your firm anytime soon. Another tack is to ensure that the process is thoroughly documented. If resources are available, training a backup person is another way to mitigate turnover. Finally, in extreme cases an employment contract may be used to sustain ongoing employment of a key individual.
8: Strive to Continually Improve the Process
One of the best ways to continually improve the effectiveness of the capacity planning process is to set a goal to expand and improve at least one part of the process with each new version of the plan. Possible enhancements could include the addition of new platforms, centralized printers, or remote locations. A new version of the plan should be created at least once a year and preferably every six months.
9: Institute a Formal Capacity Planning Program
Some shops initiate a capacity planning program in a very informal manner in order to simply get something started. There's nothing wrong with this approach if the intent is merely to overcome inaction and to start the ball rolling. This can also help raise awareness of the need to evolve this initial effort into a formal capacity planning program.
The one major drawback to this method is that all too often shops that start out with this approach never progress beyond it. At some point soon after initiating a capacity planning effort, a formal process needs to be put in place. Over the years I have developed 10 cardinal rules to follow in developing a formal, robust capacity planning process. These rules are described in the May 17, 2002 InformIT article "The Ten Cardinal Rules of Capacity Planning."
10: Market the Lesser-Known Benefits of Capacity Planning
In addition to being able to predict when, how much, and what type of additional hardware resources will be needed, a comprehensive capacity planning program offers four lesser-known benefits that should be marketed to infrastructure managers and IT executives. These benefits can improve an infrastructure by doing the following:
Strengthening relationships with developers and end users. The process of identifying and meeting with key users to discuss anticipated workloads usually strengthens the relationships between IT infrastructure staff and end-user customers. Communication, negotiation, and a sense of joint ownership can all combine to nurture a healthy professional relationship between IT and its customers.
Improving communications with suppliers. Suppliers are not unlike other support groups, in that they generally don't enjoy last-minute surprises. Involving key suppliers and support staffs with your capacity plans can promote effective communications among these groups. It can also make their jobs easier in meeting deadlines, reducing costs, and offering additional alternatives for capacity upgrades.
Encouraging collaboration with other infrastructure groups. A comprehensive capacity plan by necessity will involve multiple support groups. Network services, technical support, database administration, operations, desktop support, and even facilities may all play a role in capacity planning. For the plan to be thorough and effective, all these various groups must support and collaborate with each other.
Promoting a culture of strategic planning as opposed to tactical firefighting. By definition, capacity planning is a strategic activity. To do it properly, you must look forward and focus on the plans of the future instead of the problems of the present. One of the most significant benefits of developing an overall and ongoing capacity planning program is the institutionalizing of a strategic planning culture.