Toolsmith
- Toolsmith
- the role that is played when a person
develops and maintains software
tools used on an
endeavor
As illustrated in the preceding figure, Toolsmith is part of the following inheritance hierarchy:
The typical role-specific responsibilities of a Toolsmith are to:
- Evaluate existing commercial-off-the-shelf (COTS) and in-house tools for use on the endeavor.
- Obtain, install, configure, and extend existing tools, whether COTS or in-house.
- Develop new software tools, when necessary.
- Ensure that these tools remain operational.
Toolsmiths typically inherit the
general role responsibilities from the
role method component.
To fulfill these responsibilities, toolsmiths typically
should have the following expertise, training, and
experience:
- Deep knowledge of popular commercial tools including how
to install and configure them.
- Deep knowledge of the endeavor’s process.
- Solid previous experience as a:
- Solid knowledge of human factors.
Toolsmiths typically perform the following
role-specific tasks in an iterative,
incremental, parallel, and time-boxed manner:
Toolsmiths typically inherit
common role tasks from the
role process component.
Toolsmiths typically perform these tasks as members of the
following teams:
As members of these teams, toolsmiths typically produce all
or part of the following work products:
- This role is useful even if no tools are to be produced
for the endeavor. Because most operating systems and tools
have defects that cause them to fail on a regular basis,
toolsmiths can save the development staff many hours by
keeping the development tools functioning properly.
- This role typically inherits the
common team guidelines from the
roles process component.