System Documentation

Only available on StudyMode
  • Download(s) : 204
  • Published : October 26, 2010
Open Document
Text Preview
System Documentation – A Better way
Rahul Sarangdhar
Language Processing Group
Tata Consultancy Services
Hadapsar, Pune
Nitin Daptardar
Language Processing Group
Tata Consultancy Services
Hadapsar, Pune

In today’s competitive environment, business requirements keep changing at a very fast pace in order to meet the demands of the marketplace. Organizations are increasingly relying on their underlying software systems to stay ahead of competition, and hence need to adapt to the new requirements. These software systems contain the important know-how of the organization's business processes and rules. Investing in fresh requirements’ definition is not only a costly exercise, but also involves the risk of missing out some business rules or process information, leading to business losses. Reverse engineering to extract complete and accurate information embedded in the existing software systems is one of the major challenges faced by the businesses. A powerful reverse engineering tool can help in achieving this goal, to a great extent. Revine is a reverse engineering tool, developed in-house, that enables the automation of the reverse engineering documentation process, to a large extent. In this paper, we share our experiences of the large reverse engineering projects in TCS that benefited extensively by using Revine. These projects achieved productivity for system documentation that was up to three times in excess of what was achieved using a fully manual process.

Categories and Subject Descriptors
D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement – Documentation, reverse engineering

General Terms
Documentation, Design

Reverse Engineering, Information extraction, Tool-based methodology for System documentation, Program understanding


Agility is the buzzword in today’s world. Businesses want to adapt to the changing environment with least time and effort. Software systems form the backbone of a majority of large organizations, and it is therefore critical that these systems get transformed seamlessly. These software systems contain the important know-how of the organization’s business processes and are perhaps the only entity that holds complete and accurate information on all the critical business functions.

Enforcing change in these software systems is a multi-fold process. One has to understand the existing system, determine the scope of change, determine the impact on the existing system, carry out change and deploy the new system.

Understanding the existing system is a non-trivial task. Lots of factors contribute towards increasing the difficulty of this understanding; these include and are not limited to:

• Size and complexity

• Legacy technology/ programming languages used

• Scarcity of business domain expertise among the IT teams

• Lack of documentation

• Lack of structure due to patches applied

Thus, the IT teams face a huge challenge to cope up with the demands of the business and respond to the changing requirements.

The following sections elaborate various aspects of System understanding and documentation for Legacy systems, introduce a tool that facilitates in the process and present a few experiences that we have had within TCS that substantiate and illustrate a process that has significantly contributed towards achieving large productivity enhancements. We have illustrated System documentation for COBOL-based Mainframe systems in this paper.


System Documentation has many flavours and they are primarily driven by the context in which the system documentation exercise is undertaken. Documentation exercises are typically initiated during: • Re-engineering of applications to newer technologies • Reference for maintenance of the applications

• Replacing certain aspects of the...
tracking img