Realizing Productivity Gains of Over 1000%

By Alex Barros

Realizing Productivity

QAT ReFactor is a plug-in for CA Gen that provides sophisticated Action Diagram view substitution between unlike Entities, Work Sets and their Attributes. Individual action diagrams, complete call chains or the entire model can be targeted for the ReFactor operation. The ReFactor operations even allow attributes with unlike domains to be matched and substituted in the Action Diagrams.

As one of its strengths as a model-based tool, CA Gen keeps in synch all its objects across the development cycle. If a change is made to an attribute size or domain on a data model, this change is automatically applied to all other objects using this attribute (procedures, action blocks, etc…).

Unfortunately, when it comes to replacing references inside a code base, CA Gen falls short on offering a more robust solution that would allow a true refactoring process. It is possible to replace a certain reference to an attribute (using the “substitute view” feature), but only in one action block at a time and only with a view of the same attribute. Those limitations are significant when changes need to be performed on several action blocks or when a certain attribute needs to be replaced with a different one across multiple CABs. The amount of time spent on those activities by developers could range from hours to days.

QAT ReFactor is a CA Gen plug-in that was developed to address those issues. From a single user interface, developers can select which action blocks to be affected by the change or, if desired, select the entire model. The next step is to define source and destination for the change. At this point, it is possible to select Entity Types or Work Sets. Once the “from” and “to” targets are selected, a list of all the attributes from the source entity or work set is displayed on a grid, and the developer selects which ones to match to attributes on the destination entity type. For entities that have many attributes, there is an AutoMatch feature that will automatically match attributes based on their whole names or a substring defined by the user. If a source attribute does not have a corresponding destination that could be used for the match, a new one that mirrors the source can be created on-the-fly.

After all the matching is completed, one click of a button starts the refactor process, replacing all the references of the source attributes with references to the destination attributes. Along this process, all the view matching is preserved, and the non-used view that results from the process is automatically deleted.
One major CA Gen client recently measured productivity gained by using QAT Refactor versus changing references manually, and the results were astonishing. For the same set of action blocks and entity types, QAT ReFactor finished the process in 3 minutes, while the manual process took around 100 minutes.

QAT ReFactor

QAT ReFactor User Interface

For more information, please visit QAT ReFactor.