Most vendors want to accommodate client needs. For some, it's a cultural issue: "Customer care" is a mantra. For others, its a matter of economics. "They can't continue to bill maintenance if they don't support the product," says Wagner. While vendors do realize that client-driven product enhancements are a core function of development, the challenge sometimes lies in getting vendors to incorporate modifications in the way users conceive of them. According to Konrad Underkofler, who once worked for IBM as a MAPICS developer and is now IS Director for Hoshizaki America, "There is no guarantee that once they include your request it's going to function the way you envisioned it."
With suggestions pouring in from the user community juxtaposed against the finite resources available to execute them, vendors need to have solid policies and procedures in place to do triage, because if they don't, the productivity tools upon which their livelihood is based become bloated and clumsy. A factor that weighs heavily in the decision on what modifications to make, how to make them, or whether to make any modifications at all often depends on where the product is in its life cycle. Software packages for the iSeries and all of its prior iterations have long life cycles compared to software packages for other platforms because, for the most part, they have never been forced into obsolescence by major operating system changes. HP's current direction, for example, is to convert its midrange hardware users from HP-UX to UNIX.
Like most blessings, this one is mixed: Changing mature software is far trickier than adding features to new products that have been developed with better technology. Older applications that have been changed many times by many hands are more likely to become unstable. For mature products, rather than add new functionality, software developers are more compelled to keep in step with new operating system releases and perform other such compulsory changes, contending that in a mature product, all the functionality that a user would need is already built in. Business Computer Design's manager of technical support, Marcel Sarrasin, asserts that changes to mature products are weighed against how much disruption is involved. "With ProGen, it depends on whether it's going to change our files completely. ProGen is such a mature and complete product that we seldom get requests from users; our own creative team primarily drives enhancements. In contrast, Nexus is a new product, and people are thinking of new things all the time; we are in a permanent development cycle," he says. BCD has lots of experience supporting customers, having sold more than 20,000 copies of their tools to iSeries shops and its predecessors since 1976.
Overall, top-shelf vendors handle these kinds of things well. According to Original Software's head of development, Stuart Bishop, "We get requests for many things and look at every one of them. Whatever stage in the product life cycle your product is in, it's important to listen to your customers." Original Software is a company that writes software testing solutions for several platforms, including the iSeries. TestBench for iSeries, which was launched in 1997, is in an early-to-mid PLC stage. Client-driven enhancements have to peacefully coexist with those promoted by the software vendor to produce a result that satisfies all users. Bishop explains, "We have a strategic vision of where we want this product to go in the long term, and we have a plan of what we think the major enhancements should be to drive our strategic platform forward." When doing the final plan on a new release, he says, "Our policy is to include as many customer-directed enhancements as we can. We go through the list, and we get our product specialists involved because they are out in the field and see the products being used." Bishop adds, "It's very important to understand what the request is for. Sometimes customers do not seem clear on what they are asking for, perhaps because they are not sure what it is they really want."
To get it right, says Bishop, it's imperative for his product specialists to clearly understand the customer's needs. Asking lots of questions up front is key. Then, "Once we understand the requirement, we log it in our system with a small description of the enhancement," says Bishop. Original has an internally developed iSeries-based customer support system that allows technicians to log and track enhancement requests.
Though enhancement suggestions most are most often conveyed to technical support specialists in the course of daily business, most companies have honed formal procedures for handling client enhancement requests that include surveys, database tools, statistical software, secured client extranets, and more. BCD for example, has evolved multiple forums to gather customer input. Sarrasin says, "Every time someone calls in for support, we send them an email and ask what they thought of support. We also ask a few questions about the product--what enhancements they would like to see. That's where we get a lot of enhancement requests." Like many vendors, BCD logs requests that come to them through support calls and via email. He agrees that it's important for the customer to clearly understand what he wants. "Sometimes, if we have a customer on the telephone, we brainstorm with them. We say, 'OK, here are three ways to do that. Which one do you like best?' " Phil Catlin, Application Architect for Formica Corporation, says, "One vendor periodically sends us a list of 20 or 30 potential modifications for inclusion in the next release. We rate these features with points; there are only 100 points to allocate. If you give one enhancement all 100 of your points, it really gets their attention."
At times, customers have urgent needs that can't wait, and vendors are sometimes asked to conjure up new code in days, not months. Sarrasin says, "It's all customer-driven, and developers are flexible. Catapult is a good example; it's in a competitive product class." Sarrasin adds that, depending on the extent of the modification, they can occasionally have new code available for their customers in as little as a week. BCD customers can download these changes from the company's Web site.
- Know exactly what you want and write it down.
- What you want should make sense in the larger scope of the vendor's strategic plan for the product. Formica's Catlin says, "We don't ask vendors for things that will only benefit Formica. Lots of times, we get source with the product and make these modifications ourselves."
- Unless there is a problem, your time frame should be realistic.
- If you haven't yet purchased the product but are ready to, Hoshizaki's Underkofler says, "When you purchase the product, agree to a list of enhancements after you do a thorough examination of the product. If it's 80% good when you initially look at it, put the changes in the contract."