Home > Articles

  • Print
  • + Share This
This chapter is from the book

Setting Requirements: Who, Where, What, and Why

To make the business case for the SFDC project, you’ll need to identify and prioritize requirements at an overview level. Even though the details of many individual requirements can’t be known until several weeks or even months after the project go-ahead, you will need to have enough information to scope the cost and assess the benefits. You can’t sell the project to management without identifying specific, concrete pain points and potential advantages.

The first step in requirements setting is to identify who will (and who won’t) need to use the future SFDC system. It’s easy to say “everybody,” but that decision can mean big implementation, training, and ongoing costs. Worse, it means trying to make “everybody” happy, even if those people aren’t critical users. In most companies, only a few departments directly touch the customer every day, so many people won’t need direct access to the SFDC system. It’s far better to have a narrow list of users, at least initially.

Create a spreadsheet with a list of user names, including the user’s organization, job title, location, contact information, and expected SFDC interactions. From this list of users, group together the people who are expected to have similar SFDC interactions. Each of these types of user represents an actor (sometimes called a persona) in the system. For each of these archetypal actors, create a one-page description that provides overview information about them: location, educational level, job title, job responsibilities, preferences, habits, language, and so on. Almost any SFDC implementation will involve at least four actors, but this number will multiply quickly in large companies. To keep the number of actors to a reasonable level (more than 10 can be unmanageable), you’ll probably need to generalize across similar actors. Descriptions of actors should cover their general role and goals in using the system: how often (and how long) they are expected to be on the system, what they are trying to achieve, which parts of the system they use, what they need to avoid, and what they expect in terms of usability (for example, users might need to do their job on a laptop while they’re on the road).

Later in the project, team members will want to interview representative actors to get detailed requirements and feedback on the system. For now, however, these one-page summaries help provide some reality and context to the planning process. It’s a good idea to give each actor a nickname and include a small photo on the description page to make the user seem more real. Log on to the Salesforce.com Secrets of Success book Web site (www.SFDC-secrets.com) to download a template Actor document.

Going beyond the list of people who will actually touch the system, it’s important to create a list of people who will have an indirect dependence on the system. These individuals may never log in, but they will depend on some report or data flow that comes from the system. You don’t really need to create a full persona description for these individuals (or roles), but it is important to understand which requirements they have for the system (e.g., a distribution center manager who might need the system to be fully operational on Saturdays, even if no users are logged in to it).

Get management involved early in the decisions regarding “how far do we want to go”—not the detailed requirements, but the general objective. Identify the executive champion, and engage that person in the process (see Chapters 4 and 5 for more on this topic). Use the SFA Maturity Model Level descriptions from Chapter 5 to guide this decision, which will provide an overall “scoping” of the project investment. Also go through the SFA Maturity Model questions in Chapter 5 to understand your organizational readiness, and note which actors are part of particularly advanced or immature organizations. In your project planning, avoid over-reaching! It kills both budgets and the likelihood of project success.

Once the objective and the actors are settled, identify the scenarios (also called use cases or user stories) for each of the ways the actors will use SFDC. For example, actors in order operations will be entering and reviewing orders all day long, but they may also need to approve exceptional discounts or other special cases every day or so. Given that this approval process involves different thinking and actions from ordinary orders, approvals must be described in a different scenario. The same person may need to do sales forecast reports to support executives, again requiring a different scenario. These scenario write-ups should briefly describe what the actors are trying to achieve, the data they need to see and modify, the approvals they need to proceed, and the other actors or business processes they need to interact with. Make sure to note whether the scenario requires direct access to the system, or whether the situation could be handled through indirect means such as interacting with another application (e.g., the accounting system) or viewing a Web page, spreadsheet, or report. Log in to www.SFDC-Secrets.com to see an example scenario.

From the scenarios, the team needs to distill a set of system requirements. In many cases, the scenarios will have overlapping needs that are stated from different perspectives. A key step is to identify and consolidate the near-duplicate requirements, and to map them to the features provided by SFDC and related systems. For example, one sales scenario is to create a quote for an opportunity. This is fairly similar to the sales operations’ scenario of updating a quote as well as to the sales manager’s scenario of reviewing and approving a quote. All these scenarios are the requirement to edit opportunity, forecast, and quote information in real time (with the proper access controls to protect privileged information). This requirement maps to stock features in SFDC’s Enterprise edition, but adds the requirement to integrate quote approval with the accounting system. It’s a smart idea to create a correspondence table showing which scenarios need each requirement. Check www.SFDC-secrets.com for an example of this kind of mapping.

Many users (particularly executives) don’t really think in terms of discrete requirements. Instead, they simply visualize what they need to make a decision or take an action. For this reason, it’s a good idea to do mock-ups of a few reports, forms, approval screens, and dashboards (using Excel, PowerPoint, or even pen and paper) and do a “day in the life” walk-through of people’s jobs to get them thinking. Creating these mock-ups can very rapidly elucidate hidden—and difficult—requirements. You’ll be surprised how often a user will say, “Of course, I have to be able to see the customer’s order history to make my decision...” To make sure you’re being realistic, run through a couple of the exercises described in Chapter 2.2

Resist the temptation to speak in terms of product feature lists. Each requirement should be stated in terms of the business need (i.e., a step in a business process with a measurable result) rather than as a technical description (how the feature works). Each requirement description should be as brief as possible, and each should be stored in a separate document. (If your company is really into paper, the requirements document should be placed in a three-ring binder, with individual pages being inserted or updated on at least a monthly basis.)

In addition to user-driven features, make sure to cover “taken for granted” system characteristics in your requirements documents: system availability (e.g., 7 A.M.–10 P.M. EST five days a week), system response times (1 second during operating hours), administrative response times (e.g., 1 hour during operating hours, 4 hours on weekends), thresholds for data error (e.g., zero defects in records A, B, and C, but 4% in all other records), international language support, multi-currency support, unusual fiscal periods, and other “environmental items” that you discover from your requirements gathering.

In a large company with complex business processes, the scenarios and requirements will multiply quickly: their sheer number will soon be overwhelming. The best way to handle this issue is to create a short overview spreadsheet that organizes and summarizes the requirements in a hierarchical fashion and helps the team visualize them from a “top-down” perspective. This high-level spreadsheet should not provide the details of any one requirement, but rather should show how the requirements fit together to form the big picture of the project. (Check out www.SFDC-secrets.com for an example requirements overview spreadsheet.) The requirements spreadsheet needs to make it obvious to team members (and executives) the reasons why each line item is there, its scope, its schedule, its cost, its sponsor, and the line item(s) it could be traded off against.

  • + Share This
  • 🔖 Save To Your Account