Endevor is an integrated set of management tools for automating, controlling, and monitoring the mainframe software development lifecycle. Endevor is used to maintain software applications and track their versions.
In Endevor, source code and related code objects are known as Elements. An Element is a partitioned data set member, a CA Panvalet, CA Librarian, sequential data set, or USS file that has been placed under the control of CA 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 Endevor freeform language, with English-like statements, that is used for the batch execution of Endevor.
An Endevor Environment is a phase of the life cycle through which a software change migrates.
Examples: Test, Production.
Endevor is made up of Environments, Stages, and the following,
Endevor automates and controls the movement of software through your software lifecycle. A standard 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.
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, Endevor can 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
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.
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
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.
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.
If you have any doubts or queries related to this chapter, get them clarified from our Mainframe experts on ibmmainframer Community!