Chapter 8 – Configuration Management Tools

This chapter presents an introduction to common configuration management tools and discusses their potential applications. Many of the currently available tools are designed specifically for software development. Some, such as issue tracking tools and document management tools, have relevance in a wider range of CM applications, including TMS. Please note that the International Council on Systems Engineering (INCOSE) maintains a listing of major CM tools and contact information at the following Web URL: http://www.incose.org/tools/ieee1220tax/configurationmgt.html [Link no longer active]

Implementation Guidance

When considering the selection of a tool, an agency should consider its level of "ownership" of the various TMS components. Lower levels of ownership, as is the case for an agency that has purchased a license for a commercial-off-the-shelf signal control package, often require minimal tools for CM assistance. High levels of ownership, such as when an agency has supported the development and maintenance of a completely custom application, require full support from CM tools.

Furthermore, keep in mind that CM tools are merely tools, which often require significant training of agency staff in order to realize their benefits. Agencies must realize that the purchase of a tool is but the first step in using it to support a CM program.

Commonly used CM support tools are described in this chapter. But, specific tools available on the market are not described because of the rapidly changing industry. Readers are advised to use links from the INCOSE Web site to learn more about specific tools.

Issue Tracking Tools

Issue tracking tools (ITTs) are among the most commonly used tools for CM program support. These tools support decision makers in tracking changes as they progress from approval to completion. Most commercial ITTs have features that will automatically generate e-mails to relevant personnel based on the status of a change. One of the most important characteristics of these tools is that they provide administrators the ability to assign changes to various personnel and then track the changes. Some options that are included in many of the tools provide the ability to assign priority to change orders, the ability to customize what is reported in the status reports, and auditing features to ensure that changes are executed as prescribed.

Currently, most TMSs that have a CM program use some sort of issue tracking tool. Some agencies use COTS products while others maintain custom developed, Web-based ITTs. In some cases, simple spreadsheets are used to track the status of changes. Regardless of what type is chosen, ITTs are among the most beneficial tools for a successful CM program.

Document Management Tools

Document management tools can be very supportive of CM programs. With projects often having hundreds of documents in both paper and electronic form, archiving these documents and making them easy to locate and access once archived is extremely important. Software tools that accomplish this task have the potential to shorten project length, save money, and prevent confusion for those involved in the project.

Other document management applications use templates and custom forms to shorten document production time. Items such as a letterhead or an entire technical form may be created, stored, and used again. For CM programs that contain significant documentation or that must adhere to strict standards, applications such as these would be very useful.

Currently, there is little use of these types of systems, although some transportation agencies report that they electronically store drawings and specifications for hardware using a document management tool.

Process-Based Configuration Management Tools

Process-based configuration management tools are intended to facilitate the software development and modification processes. These tools act as a central location for all information regarding such effort and seek to minimize confusion among participants about the tasks that they are expected to achieve. Popular applications in this field will document and log software modifications or additions to the system to facilitate backtracking and increase knowledge of the total process. Many programs allow the users to manipulate groups of changes across releases and platforms, automating what can be a painstaking process manually. Software code can be modified on a cross-application basis, rather than on a file-by-file basis. The primary benefit of the process-based variety of tools is the organization that they provide for software modification, greatly reducing confusion among participants and producing a savings of time and money.

These tools can benefit change control similarly as the version control tools or merging tools discussed next. A particularly important aspect of these types of tools is the change log they generate. CM professionals cited change logs as being extremely useful in the event of a major system change or integration.

Configuration Management and Version Control Tools

An important consideration in a CM program is that there will be more than one version of many software applications—representing different baselines for these system elements at various stages of the system life cycle. Version control tools assist the user in resolving the differences in the software applications relevant to their system. Version control tools often prevent or manage concurrent access to the same code files to facilitate concurrent development. Much like merge tools discussed next, version control tools compare two versions and then automatically present to the user a report detailing the major differences, such as changes, additions, removals, moves, and renames. A primary benefit of version control software is that most applications will only save the changes between versions rather than both versions in their entirety, resulting in great savings of memory. Often, these programs allow managers to generate reports for various software developers, informing them of the status of their work or asking them to modify a specific piece of software. The tools have customized interface, which allow for ease of reporting and status accounting.

Numerous TMSs use version control tools, which are extremely helpful to the change control process, often allowing only one user to "check out" a version at a time. Once a user has made desired modifications, the user can compare it to the original version to determine and resolve incompatibilities. Such tools greatly simplify the process of software modification and versioning within a TMS.

Merging Tools

Merging tools are intended for software CM only. Merging tools are software applications intended to facilitate the merging of multiple sources of code into one final set of code. For a user attempting to merge two code sources into one final product, typical merging tools allow the user to view the two sources side by side. With point and click merging, the software typically will highlight differences between the two and ways that the merge would be incompatible. Once the differences and incompatibilities are identified, the user is provided with a variety of editing options to resolve them. Most merging tools employ arrows, linking lines, or other annotation to indicate relationships between the two sources, such as common objects or libraries. Some merging tools also allow the user to compare intentionally modified files with the ancestor file to ensure that the standards employed in the ancestor file are adhered to. These tools are intended to save programming time as they reduce the need for programmers to scrutinize thousands of lines of code to resolve important differences.

Merging tools are relevant for use in TMS change control of custom-developed application software. They aid the change control process by greatly reducing physical examination of source code and allowing programmers to more quickly establish new baselines.

Building Software

As its name implies, building software is intended to aid in the process of building software applications from a variety of components, and thus is intended for software CM only. Often, teams or several individual programmers work together to develop software, causing situations to arise in which the components are incompatible and will not produce functional software. Some building software provides graphical representations of relationships in the code in order to make it easier to understand. Building tools resolve or highlight missing references, build projects in the correct hierarchical order, maintain dependencies between multiple projects, and inform each involved participant when a project has been added to or removed from the application on which they are working. In order to navigate the code, detailed searches allow programmers to pinpoint that which they are looking for without spending significant time manually examining code.

Programming Environments with Versioning

Programming environment tools also is a software-specific CM tool. Such tools can be very useful during software modifications across software platforms. They provide a consistent feel and functionality across heterogeneous systems and across diverse languages. The major operations that can be carried out using a tool such as this are: design, coding, testing, debugging, and maintenance. Some of these tools will allow the user to set a benchmark for testing. After the benchmark has been set, every test from that point on is analyzed for improvements or regressions. The primary benefit of programming environment applications is that they allow programmers to use a common tool on many different projects, producing a savings of training time.

Programming environment tools can be invaluable to the change control process and can eliminate redundancy, a major source of inefficiency. Programming environments with versioning are among the most common tools currently used by transportation agencies to manage custom TMS software.

Infrastructure Relationship Management Tools

Infrastructure relationship management (IRM) tools constitute a relatively new category of CM support resources. They are designed to handle just about every facet of an information technology infrastructure and are suited well for use on ITSs. These tools minimize the effects of organizational change on a system by providing full documentation of items and their relationships to each other, providing up-to-date baselines for disaster recovery, and keeping accurate records of the changes to items and of the current system configuration. One of the primary benefits of these tools over more traditional CM tools is that they are meant to handle both physical and software infrastructure. Items such as cables, signs, gates, and so forth are easily integrated into the system and tracked like all other items. Typically, there is visual documentation of all infrastructures and the connectivity among parts described in detail for purposes of recovery.

These tools provide the ability to assign tasks, track the tasks, automatically generate reports, and change the status upon completion of these tasks. Often, IRM tools are broken into different categories, such as communications infrastructure, physical infrastructure, network infrastructure, and change tracking. Searches may be conducted to locate patterns. For example, if many parts are failing, a search may be performed to determine if a particular vendor or distributor is delivering a high number of faulty parts. This information could be used to inform the vendor or to alter purchase habits. IRM tools generate dozens of different reports based on the needs of the managers.

Miscellaneous Support Tools

To be successful a CM program also must be well supported by basic office supplies/tools, which may be taken for granted. The software-based CM tools described earlier require computer systems to run on. File cabinets and bookshelves must be available to store the large amount of documentation related to a CM program. Agencies are reminded to not neglect these "simple" tools while establishing a CM program.

While CM tools are currently used within many TMSs, some agencies are reluctant to invest in these products. Some of the reasons that were cited for the hesitance to accept tools include cost, fear of increased staff workload, need for lengthy training, and the fact that many of the organizations would need to use only a small portion of a tool's capabilities.

Almost all respondents who currently use tools for their CM activities say that, while it takes time for acceptance and training, in the long run the tools prove their worth. Although cost is certainly a factor when considering management tools, there is a wide range of products with a broad spectrum of prices. If used properly, the tools eventually save time and money and significantly aid in the organization of a TMS. As far as using only a portion of the tools' capabilities, agencies seeking a tool that will properly fit their system can choose from hundreds of CM tools available on the market.

Implementation Guidance Summary

  • An agency should carefully consider its level of system "ownership." Systems that require minimal CM activities do not warrant the purchase of high-end tools.
  • Agencies should survey currently available tools. The INCOSE Web site provides a convenient place to begin this effort: http://www.incose.org/tools/ieee1220tax/configurationmgt.html
  • Key issues to consider when choosing a CM tool include:
    • how many seats (licensed users) will need to be supported.
    • the need for a high skill level to effectively use tools. (PLANET estimates that it takes 6-12 months to become proficient with their software.)
    • including the use of the tool and the purchase of the tool in operations and maintenance contracts.
  • An agency should expect to spend 10 to 15 percent of original software cost on annual tool maintenance fees.
  • The case study of GDOT presented in the next section provides excellent guidance on the process an agency should follow in choosing a tool for a particular CM program.

Best Transportation Practices

When choosing a CM tool, attention must be given to how well a product fits the agency's needs. GDOT went through an extensive evaluation process in order to eliminate inappropriate products and find the system best suited for its agency. This process is described is this section.

Georgia NaviGAtor

In early 2000 GDOT hired a consultant to compare cable management tools and recommend one that would meet NaviGAtor's needs. The consultant first determined GDOT's requirements for a cable management tool (which could be categorized as an infrastructure relationship management tool as described in the previous section). Next, several manufacturers were contacted to find out whether or not their product would potentially meet these requirements. This initial query narrowed the field down to three contenders, which were further evaluated for their suitability to GDOT's needs.

GDOT first defined its requirements for a cable management tool (CMT):

  • Create/delete multiple entries.
  • Print a list of entries, vs. printing one entry at a time.
  • Customize the print layout (for aesthetic & functionality purposes).
  • Query items based on one, two, or even three parameters.
  • Print the results of screen-based queries.
  • Report printing flexibility.
  • Point-to-point tracking of cables or individual fibers or wires within the system.
  • Identify unused fiber or cable when given the beginning and ending points.
  • Display alternative routing for communication paths if beginning and ending points were identified.
  • Unlimited hardware device inventory system.
  • Ad-hoc queries and reports on any system element.
  • Linked CAD program that would allow the cable plant and other hardware items to be displayed graphically and plotted to hard copy if desired.
  • Graphics output using database information for object labeling.
  • The cable data and inventory information would be entered once and would be used by various software functions without the need for multiple entries of the same information.
  • Multiple security or access levels upon assignment by the administrator.
  • Formal and comprehensive training on all facets of the product.
  • Phase 1 beginner training and phase 2 advanced training desired.
  • Full documentation of the product for reference and training.
  • Local (Atlanta) technical support.

The consultant then contacted the known CMT manufacturers (shown in table 8.1) for an initial query based on these requirements. (All tables and user statements that follow have been reproduced from TransCore's "Cable Management Tool Evaluation Report" and "PLANET Cable/Equipment Management Tool Evaluation" to GDOT.)

Table 8.1 — Manufacturers Evaluated
Company Name Product Name
Advanced Technology Corporation
5 Concourse Parkway
Suite 2800
Atlanta, GA 30328
ATC
Auto-Trol Technology
2180 West State Road 434
Longwood, FL 32779
KONFIG
Cablesoft Inc.
1501 W. Fountainhead Parkway
Suite 520
Tempe, AZ 85282
CRIMP for Windows
Fluke Corporation
6920 Seaway Blvd.
Everett, WA USA 98203
Cable Manager
IMAP
Walnut Creek CA
(800) 978-3430
IMAP CMS
IntegraTrak Inc.
12600 S.E. 38th St.
Suite 250
Bellevue , WA 98006
ITS Cable Management
ISI Infortext
1051 Perimeter Drive
Shaumburg, IL 60173
Infortel For Windows
Network Information Systems
MATSCH Systems
911 North Division
Grand Rapids, MI 49503
Matsch CFMS
Planet Associates, Inc.
485C Route 1 South
Suite 100
Iselin, NJ 08830
PLANET
RIT Technologies
900 Corporate Drive
Mahwah, NJ 07430
Enterprise 1
Telco Research
616 Marriott Drive
Nashville, TN 37214
TRU-Server PWA
Veramark Technologies
3750 Monroe Avenue
Pittsford, NY14534
TMS
*Please note that the information in this table was current as of early 2000 and may no longer be accurate.

This initial inquiry process narrowed the field down to three products. The consultant created the comparison matrix displayed in table 8.2, which includes cost, ease of learning/operation, and support. It is important to note that some elements of a software product are licensed by size, such as the elevation views for equipment racks; the licenses are sold in 50 rack modules for about $6000 per module plus maintenance. Furthermore, ownership also has a cost. For example, the maintenance charges for Planet are 17.5 percent of the purchase price for the first year. There is the possibility of buying forward on the maintenance (three or four years).

Table 8.2 — Supplier Comparison Matrix
Description Manufacturer #1 Manufacturer #2 Manufacturer #3
Cost for 20 concurrent users with unlimited connections No Value No Value No Value
Additional software required for desired configuration No Value No Value No Value
Cost for additional software No Value No Value No Value
Who supports additional software No Value No Value No Value
Yearly maintenance costs No Value No Value No Value
Maintenance percentage No Value No Value No Value
Training costs On-site (Atlanta)[1] No Value No Value No Value
Training costs Off-site No Value No Value No Value
Days of training for implementation personnel No Value No Value No Value
Days of training for users No Value No Value No Value
On-site implementation cost estimate per day No Value No Value No Value
40 hours of on-site consultation No Value No Value No Value
40 hours of off-site data manipulation No Value No Value No Value
Phone assistance charges during implementation No Value No Value No Value
Upgrade policy within version No Value No Value No Value
Customer support hours No Value No Value No Value
Toll free support phone No Value No Value No Value
Support calls limitation No Value No Value No Value
Assigned support specialist. No Value No Value No Value
Full-time support specialists on staff No Value No Value No Value
[1] All on-site activities require additional chargers for on-site personnel travel and expenses.

While such a matrix is helpful for a structural comparison, user statements sometimes offer a more in-depth impression of a product. During the evaluation process, user comments tended to focus on how intuitive a product was to learn and use; that is, how easy and understandable it was. This focus area included such features as the user interface (was it friendly?); ability to manipulate graphical representations of data; and accessibility of support. Attention to these details during the evaluation process increases operator efficiency and maximizes product utilization in the long run, as well as minimizes training expenses and the need for support. Remaining user comments focused on the functionality of the system with regard to GDOT's particular needs. This stage of the evaluation eliminated one of the three products, prompting the consultant to create a final product comparison chart (shown in table 8.3), in which the two finalists were rated according to their suitability to GDOT's context.

Table 8.3 — Final Product Comparisons
Evaluation Criteria Manufacturer #1 Manufacturer #2
On-Screen GUI usefulness No Value No Value
Ease of creating database objects No Value No Value
Efficient graphical drill down capability No Value No Value
Automated data entry No Value No Value
Print what is on the screen No Value No Value
Report printing flexibility No Value No Value
Ad-hoc queries and reports on any system element No Value No Value
Point-to-point tracking of cables or individual fibers or wires within the system No Value No Value
Identify unused fiber or cable when given the beginning and ending points (inspect conduit) No Value No Value
Graphic Circuit Tracing No Value No Value
Unlimited hardware device inventory system No Value No Value
Ability to display and print CAD graphics with network objects displayed and identified No Value No Value
Advanced CAD Graphics capability No Value No Value
Provide for the creation of physical objects that can be saved and duplicated throughout the network No Value No Value
Multiple security or access levels upon assignment by the administrator No Value No Value
Multi-user read write capabilities No Value No Value
Formal and comprehensive training available for different user levels No Value No Value
Full documentation of the product for reference and training No Value No Value
Technical support response No Value No Value
On-line help (in program) No Value No Value
Local (Atlanta) technical support No Value No Value
TOTAL No Value No Value
Table illustrates manufacturers' compliance to the TransCore-developed evaluation criteria. The evaluation criteria shown are both the original GDOT cable management requirements with additional requirements (shown in italics) developed during the evaluation process. The additional criteria are shown in italics. Each product is rated on a compliance scale of 0 through 3, with 0 equaling Non-Compliance, 1 = Minimal, 2 = Acceptable and 3 = Good.