Task: Select and Acquire Tools |
|
Purpose
The purpose of this task is to:
-
Select standard tools to fit the needs of projects across the enterprise.
-
Acquire the tools for the enterprise.
-
(Optionally) Develop special tools internally to support special needs, provide additional automation of tedious or
error-prone tasks, and provide better integration between tools.
|
Relationships
Roles | Primary Performer:
| Additional Performers:
|
Inputs | Mandatory:
| Optional:
|
Outputs |
|
Main Description
Many of the steps in a defined process can only be efficiently carried on with the proper tool support. Tools
need to be selected that fit the particular needs of an organization, based mostly on specific tasks or work products
necessary for the process.
Sometimes special tools have to be developed internally to support special needs, provide additional automation of
tedious or error-prone tasks, and provide better integration between tools. This tool development may proceed with a
lighter weight delivery process than the one used for developing the product.
Selecting and acquiring the tools is done in hand-in-hand with the definition and implementation of processes in the
organization.
|
Steps
Identify needs and constraints
Identify what the needs for tool support are, and what the constraints are, by looking at the following:
-
The delivery process. What tool support is required to effectively work. For example, if the organization decides
to employ an iterative delivery process, it is necessary to automate the tests, since you will be testing several
times during the project.
-
Operational objectives. How can tool support help you meet these objectives?
-
Host (or development) platform(s).
-
Target platform(s).
-
The programming language(s) to be used.
-
Existing tools. Evaluate any existing and proven tools and decide whether they can continue to be used.
-
The distribution of the development organization. Is the organization physically distributed? Development tools
generally support a physically distributed organization differently.
-
The size of development efforts.
-
Budget and time constraints.
The Development Organization Assessment provides some good
input for this step.
|
Collect information about tools
Collect information about the candidate tools and their vendors. Some of this information is data that can be collected
from the vendor, or from independent reviews.
See Template: Tool Information for a simple method of documenting tool information
as it is collected.
|
Compare tools
To combine the factors and select the best tools is not a trivial issue. Compare tool features, functions, cost and
vendor information. See Template: Tool Comparison.
|
Select tools
Select the tools that best fulfill your needs, and can fit within your constraints. Do not fall into the trap of
comparing features and functions only. The other criteria are equally, or more important. Unless the choice of tool is
obvious, we recommend that you test the tool (or tools) that you have found to best suit your needs, before you decide
to acquire it.
If there are any doubts about the tool, the best is always to test the tool. You can also try to find other companies
that are using the tool, and ask them if they can evaluate the tool. You can also ask for reference customers from the
vendors; other customers who are using the tool. There is also information available on the Internet, where for example
online magazines publish their reviews.
Once you have made the choice, stick to it. To change tool in the middle of a project or capability improvement
program is often very costly.
Document your specific tool recommendations in the recommendations section of the Artifact: Development Organization Assessment. This will be a
refinement of high level recommendations for tools documented during the organizational assessment.
|
Acquire tools
To acquire tools is a non-trivial issue, which involves legal matters as well as financial matters. Tool acquisition is
not covered in any detail here. The following areas should be considered:
-
Installation. How much assistance do they offer to set up the tools?
-
Support. What kind of support do the vendor offer? Many tool vendors offer several grades of support to choose
from. The more you pay the better support you get.
-
Vendor commitment. How committed is the vendor to you as a new customer? If you run into problems with the tool,
what kind of help can they offer? In what time-frame and to what cost?
-
Influence. What influence will you have on the future of the tool? How will your need be prioritized?
-
Maintenance. How does the vendor handle bugs in the tool? Are there planned "service pack" releases?
-
Training. What training do they offer? What is the availability of training courses?
-
Product future. Is there a plan that describes the future evolvement of the tool?
-
Licensing. Should you buy one site license for all project members, or should you buy one tool per individual? Some
tools offer "floating" licenses, which sets a limit to the number of concurrent users in an organization.
|
|
Key Considerations
Tools are only as good as the process they automate. And, they are useful only in the hands of skilled people. When
teams do not have the proper training to make the best use of tools, projects are often hindered rather than helped.
Consider adoption and deployment issues carefully when selecting tools for capability improvement. Ensure cost does not
outweigh the benefits.
|
Licensed Materials - Property of IBM
© Copyright IBM Corp. 1987, 2012. All Rights Reserved.
|
|