What is Endevor
Endevoris an integrated set of management tools for automating, controlling, and monitoring the mainframe software development lifecycle.
Endevoris used to maintain software applications and track their versions.
Endevorruns under z/OS, within:
- The TSO/ISPF environment and in batch processing mode. The product provides the following ISPF menu-driven interfaces:
- The ISPF panel interface(sometimes referred to as theclassic interface)— All software development and product administration tasks can be performed from the ISPF panels. The panels provide access to interactive (foreground mode) and non-interactive (batch mode) processing. Batch JCL streams can also be written using the standard ISPF editor and submitted from TSO ISPF.
- The Quick Edit option—This interface simplifies access to the most commonly usedEndevordevelopment features, by providing access to all these features on one panel.
- The optional Eclipse-Based UI runs in the Eclipse environment.
- The optional Integration for the Natural Environment runs in Software AG’s Natural Application Development Platform.
- A customer-written API program.
Endevor, source code and related code objects are known as Elements. An Element is a partitioned data set member, a
Librarian, sequential data set, or USS file that has been placed under the control of
Endevor. An Element is the smallest object for which the product provides control.
During the software development lifecycle, the user performs Element actions on Elements such as Add, Update, Move, Delete, Signout, and so on. These functions can be performed in foreground or batch mode. Many functions can be executed in foreground, but submitted for batch processing. All JCL batch functions are described using the Software Control Language (SCL). SCL is the
Endevorfreeform language, with English-like statements, that is used for the batch execution of
The product is highly customizable and must be configured to meet the needs of your site. However, a typical software lifecycle, which supports standard and emergency change procedures, is described next.
Typical Software Lifecycle
Endevorautomates and controls the movement of software through your software lifecycle. A typical software lifecycle consists of the following Stages:
Development— Applications are developed here.
Test— Applications are unit tested here.
Quality Assurance— Applications are system tested here.
Emergency— Fixes are applied to production code here.
Production— Production applications are stored here.
Endevormanages typical change procedures that involve the following activities:
- Retrieving Elements from production to a development library
- Making changes to Elements
- Adding or updating Elements into the test stage
- Moving Elements to QA
- Moving Elements back into production
The following graphic shows where the typical change procedures occur in a software lifecycle.
In this lifecycle, new or existing code is developed in the Development library. After the code has been unit tested by the application developer, the code is added to the test Stage for unit testing. When the code is ready for system testing, it is moved to the quality assurance Stage. Finally, when the code is ready to be used by customers, the code is moved to the production Stage. Any fixes are applied to production code in the emergency Stage.
When fixes must be applied to production code,
Endevorcan manage the following emergency operations:
- Retrieving elements from production
- Making changes to elements
- Adding or updating elements into the emergency Stage
- Moving elements to production
The following graphic shows emergency change procedures in a software lifecycle.
In this lifecycle, production code is retrieved from the production Stage and is added back to the emergency Stage. After the fixes are applied to the code in the emergency Stage, the code is moved back to the production Stage.
If your site requires approvals to move your software code changes through the lifecycle, Packages, which are used to group Element actions, must be used to perform the moves.
Role-Based Users of
Application developers, quality control engineers, and managers (development managers, quality control managers, product and project managers, and production control managers) benefit from using the product in the following ways:
- Application developers use Element actions to develop, manage, and control software changes. For example, based on an approved change order, a developer uses the Retrieve Elements action to retrieve an Element from the production Stage to a development library. After changing the source code, the developer uses the Add Elements action to add the Element to the testing Stage. Finally, the developer can use the Generate Elements action to create an executable form of an Element.
- Development, quality control, and source control managers use Element actions to approve and move Elements through the Stages in the software lifecycle. For example, after all functional testing has been performed on source code, a quality control manager can create a Package to promote all of the code comprising a specific piece of software functionality to the production Stage.