CSAR for Librarian
1 Introduction
The Rational Developer for Series z (RDz) has been proved as a powerful tool for supporting host developers within their daily work. They can easily access datasets located on the host and have with LPEX a powerful editor to modify sources, including features like syntax-highlighting, autocompletion, outline-views and more to make things easier. Hence, the quality of code increases while less time is spent. Also the number of compiles to get error-free code decreases.
The life-cycle of software products is managed by using software-configuration-management-Systems (SCM-Systems), which support versioning of source-code as well as building software-releases based on a certain versions and maturity levels. Therefore, before editing a piece of code the source has to be transferred ("checked out") to an area accessible for RDz. In most cases this will be a PDS. After work is done, the source is stored back to the SCM-system and is automatically labeled with a new version number ("check in").
Figure 1: A PDS used as temporary container for sources
Besides SCM-Systems provided by IBM like ClearCase or SCLM, which are already integrated into RDz by appropriate PlugIns, many customers use SCM-systems provided by other vendors. These systems almost never provide an adequate integration into Eclipse / RDz. Therefore, another way of communication between RDz and the SCM-system had to be established. This is exactly, what CARMA (Common Access Repository Manager) was invented for. CARMA provides a communication layer which can be used to call actions and receive the result. The actual execution is coded in a customer-provided piece of code, the so called Repository Access Manager (RAM). As long as the implemented action takes care of handling the parameters and return values according to CARMA's interface-definition, there are no restrictions how to implement the functionality. Therefore, it is possible to call the provided SCM-systems-APIs directly as well as to use REXXs handling the actual call. The latter is a good choice if existing REXXs should be reused. The resulting call-hierarchies are shown in Figure 2.
On client side CARMA provides a standard PlugIn for selecting actions, entering parameter-values and receiving the results. Furthermore a well-designed JAVA-model is available, which makes the development of own PlugIns possible. Hence, a more user-friendly way of interaction and a seamless integration into the RDz-workbench can be achieved.
The introduction of CARMA was a big step for integrating arbitrary systems. Nevertheless, developing the PlugIn and the RAM was still some work to do, and many works was done anew with every implementation done. The way to access the SCM-Systems differ from customer to customer, even if the same SCM-system is used, but a basic set of actions is always used. The idea of CSAR (CARMA Standard Access Repository) is to provide this basic functionality and all the associated CARMA-components including the RAM and a configurable PlugIn.
The supported functionality of CSAR contains:
A Search-Dialog providing the usual search-criteria like element-name (with wildcards), CCID, SYSTEM, SUBSYSTEM , TYPE or STAGE
A configurable result view
A set of actions to check out elements into a PDS, to check in members back into Endevor, to start the build and to compare elements with each other as well as with the current work-file
With these actions it is possible to provide elements in a way that the user can use the whole RDz-functionality to do his changes and also respect the element's life-cycle
The RAM is preconfigured, compiled and fully functional. All the customer has to do is to fill in his personal code into the delivered REXXs, which then are called by the RAM for the associated action. Communication is handled by using a predefined set of ISPF-variables which are accessible within the REXX.
2 CSAR
The following sections give an overview to the CSAR-PlugIn and the provided functionality.
2.1 The Search Dialog
Usually, the first action performed by a user who wants to change a piece of code is to search Endevor for the wanted element. CSAR provides a special search dialog which enables the user to fill in his search parameters and perform the search. If for certain fields are predefined values available, a combo-box offers the selectable values for a field.
The CSAR-Search is implemented as an Eclipse search and therefore uses the Eclipse-way to handle the search and to present the results in the search-result view. It is also possible to run the search in background or rerun it again later.
2.2 Actions
The following actions are provided for accessing the Endevor elements:
CSAR->PDS
copies an Element from Endevor to a working-dataset-member
PDS->CSAR
stores a working-dataset-member into Endevor
Generate
initiates the build-process defined for this element within Endevor
Compare
compares to elements marked in the search result
Compare with working-dataset
compares an element with the currently checked out member
Configure
this action provides the possibility to configure the search-result-view, e. g. to remove columns or change their order.
All these actions are accessible from the context menu showing up when the right mouse button is pressed.
3. Conclusion
The CARMA Standard Access Repository (CSAR) provides an "out-of-the-box" solution for customers searching for a very basic integration of their Endevor system into RDz. It offers actions for copying elements from Endevor into a PDS, so the full functionality of RDz is accessible to the developers, but also functions to store PDS-members back to Endevor, hence supporting the software-product´s life-cycle. Compare-actions offer a convenient way to keep track of changes or find similarities in different elements.
Implementation of CSAR is easy, as all necessary components are delivered and only the "final call" has to be built in into the associated Skeleton-REXX. Therefore, a running installation can be achieved quite fast. Preferences and a host based configuration-file allow the easy customization of CSAR to the customers need.
CSAR is the perfect solution for all customers looking for an easy way to integrate their Endevor-system.
© Q Group AG 2008. All rights reserved. Copying (also in parts) only with permission of Q Group.
