SirLib: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 1: Line 1:
'''SirLib''' is a change management system for User Language procedures residing in Model 204 procedure files.  It is a companion product to [[SirPro]], with <var class="product">SirPro</var> providing change-creation functions, and <var class="product">Sirlib</var> providing the functions the apply and back out changes.
'''SirLib''' is a change management system for User Language procedures residing in Model 204 procedure files.  It is a companion product to [[SirPro]], with <var class="product">SirPro</var> providing change-creation functions, and <var class="product">SirLib</var> providing the functions the apply and back out changes.


<var class="product">Sirlib</var> is part of the [[ULSPF | UL/SPF]] family of products from [[Sirius Software]].  As with all UL/SPF products, <var class="product">Sirlib</var> requires the installation of the [[Sirius Mods]], with a version equal to or higher than the <var class="product">Sirlib</var> version.
<var class="product">SirLib</var> is part of the [[ULSPF | UL/SPF]] family of products from [[Sirius Software]].  As with all UL/SPF products, <var class="product">SirLib</var> requires the installation of the [[Sirius Mods]], with a version equal to or higher than the <var class="product">SirLib</var> version.


==Overview==
==Overview==
<var class="product">Sirlib</var> runs as an APSY subsystem inside a Model 204 online, as does <var class="product">SirPro</var>, a package of productivity tools. Together they provide a complete, integrated User Language developers' environment. <var class="product">SirPro</var> provides the programmers' environment, and <var class="product">Sirlib</var> provides the management environment for applying and backing out updates.
<var class="product">SirLib</var> runs as an APSY subsystem inside a Model 204 online, as does <var class="product">SirPro</var>, a package of productivity tools. Together they provide a complete, integrated User Language developers' environment. <var class="product">SirPro</var> provides the programmers' environment, and <var class="product">SirLib</var> provides the management environment for applying and backing out updates.


There is some overlap in programmer and management activity in managed environments, and there is no reason why programmers cannot be responsible for performing <var class="product">Sirlib</var> functions. This document covers briefly the <var class="product">SirPro</var> functions related to managed changes. These functions are also covered in the SirPro User's Guide.  Configuration management functions typically fall into four categories:
There is some overlap in programmer and management activity in managed environments, and there is no reason why programmers cannot be responsible for performing <var class="product">SirLib</var> functions. This document covers briefly the <var class="product">SirPro</var> functions related to managed changes. These functions are also covered in the SirPro User's Guide.  Configuration management functions typically fall into four categories:


<ul>
<ul>
Line 15: Line 15:
</ul>
</ul>


<var class="product">Sirlib</var> provides specific functions for each facet of change control. Furthermore, SirLib
<var class="product">SirLib</var> provides specific functions for each facet of change control. Furthermore, SirLib
reduces the complexities of procedure distribution to such an extent that only a single,
reduces the complexities of procedure distribution to such an extent that only a single,
small procedure file needs to be distributed to production environment(s), no matter how
small procedure file needs to be distributed to production environment(s), no matter how
many applications run in that environment.
many applications run in that environment.


In addition, <var class="product">Sirlib</var> is designed to provide specific mechanisms to automate and simplify
In addition, <var class="product">SirLib</var> is designed to provide specific mechanisms to automate and simplify
programmers' tasks:
programmers' tasks:


<ul>
<ul>
<li><var class="product">Sirlib</var> prevents programmers overwriting each others' changes. In typical change
<li><var class="product">SirLib</var> prevents programmers overwriting each others' changes. In typical change
management systems, this involves a procedure lock. <var class="product">Sirlib</var> performs this function
management systems, this involves a procedure lock. <var class="product">SirLib</var> performs this function
without locking procedures.</li>
without locking procedures.</li>


<li><var class="product">Sirlib</var> allows developers to continue working in the manner they're used to. SirLib
<li><var class="product">SirLib</var> allows developers to continue working in the manner they're used to. SirLib
does not dictate a development method.</li>
does not dictate a development method.</li>


<li><var class="product">Sirlib</var> allows for quick fixes and fast backout of changes when introduced changes
<li><var class="product">SirLib</var> allows for quick fixes and fast backout of changes when introduced changes
cause production problems.</li>
cause production problems.</li>


Line 39: Line 39:


<li>Verification of change level (or status, release number, etc.) is available in all
<li>Verification of change level (or status, release number, etc.) is available in all
environments where <var class="product">Sirlib</var> runs, via both reports and optional internal procedure
environments where <var class="product">SirLib</var> runs, via both reports and optional internal procedure
comments.</li>
comments.</li>
</ul>
</ul>
Line 54: Line 54:
</ul>
</ul>


<var class="product">Sirlib</var> was designed to deal with all these change management issues and to work
<var class="product">SirLib</var> was designed to deal with all these change management issues and to work
under a wide range of Model 204 configurations. <var class="product">Sirlib</var> provides primarily a means to
under a wide range of Model 204 configurations. <var class="product">SirLib</var> provides primarily a means to
achieve a well-managed User Language environment: it doesn't dictate procedure
achieve a well-managed User Language environment: it doesn't dictate procedure
promotion schemes, and it doesn't force any project to manage its changes the same
promotion schemes, and it doesn't force any project to manage its changes the same
Line 62: Line 62:
and straightforward as possible.
and straightforward as possible.


In addition, <var class="product">Sirlib</var> allows multiple users to make updates to the same procedure at the
In addition, <var class="product">SirLib</var> allows multiple users to make updates to the same procedure at the
same time, and it eliminates the risk of programmers overwriting each others' changes.
same time, and it eliminates the risk of programmers overwriting each others' changes.
Essentially the granularity of an update is reduced to a section of a program, and
Essentially the granularity of an update is reduced to a section of a program, and
Line 70: Line 70:
A managed update refers to any change to a Model 204 procedure which is managed by
A managed update refers to any change to a Model 204 procedure which is managed by
the change management system. In this document, that means any change generated
the change management system. In this document, that means any change generated
using <var class="product">SirPro</var> and applied using <var class="product">Sirlib</var>. Managed updates may be small bug fixes, major
using <var class="product">SirPro</var> and applied using <var class="product">SirLib</var>. Managed updates may be small bug fixes, major
application enhancements, or additions and deletions of whole procedures. Managed
application enhancements, or additions and deletions of whole procedures. Managed
and unmanaged updates are made via the full screen interface to the Model 204 editor,
and unmanaged updates are made via the full screen interface to the Model 204 editor,
Line 80: Line 80:
scheme can be compromised. This is why Sirius recommends that you:
scheme can be compromised. This is why Sirius recommends that you:
1. Convert your managed files to PUBLIC with low (x'0221') privileges.
1. Convert your managed files to PUBLIC with low (x'0221') privileges.
2. Allocate the files to the <var class="product">Sirlib</var> subsystem.
2. Allocate the files to the <var class="product">SirLib</var> subsystem.
Then anyone can read the file, but only the change management system can update
Then anyone can read the file, but only the change management system can update
procedures in it.
procedures in it.

Revision as of 00:00, 30 October 2012

SirLib is a change management system for User Language procedures residing in Model 204 procedure files. It is a companion product to SirPro, with SirPro providing change-creation functions, and SirLib providing the functions the apply and back out changes.

SirLib is part of the UL/SPF family of products from Sirius Software. As with all UL/SPF products, SirLib requires the installation of the Sirius Mods, with a version equal to or higher than the SirLib version.

Overview

SirLib runs as an APSY subsystem inside a Model 204 online, as does SirPro, a package of productivity tools. Together they provide a complete, integrated User Language developers' environment. SirPro provides the programmers' environment, and SirLib provides the management environment for applying and backing out updates.

There is some overlap in programmer and management activity in managed environments, and there is no reason why programmers cannot be responsible for performing SirLib functions. This document covers briefly the SirPro functions related to managed changes. These functions are also covered in the SirPro User's Guide. Configuration management functions typically fall into four categories:

  • Identifying, grouping, and documenting system changes.
  • Providing an environment for controlling change and programmer activity.
  • Backing out changes.
  • Reporting on system configurations.

SirLib provides specific functions for each facet of change control. Furthermore, SirLib reduces the complexities of procedure distribution to such an extent that only a single, small procedure file needs to be distributed to production environment(s), no matter how many applications run in that environment.

In addition, SirLib is designed to provide specific mechanisms to automate and simplify programmers' tasks:

  • SirLib prevents programmers overwriting each others' changes. In typical change management systems, this involves a procedure lock. SirLib performs this function without locking procedures.
  • SirLib allows developers to continue working in the manner they're used to. SirLib does not dictate a development method.
  • SirLib allows for quick fixes and fast backout of changes when introduced changes cause production problems.
  • Reporting capabilities are integrated, and the data for reporting does not have to be manually entered — reporting data is generated to the internal dataset SIRLIBD when system activity occurs.
  • Verification of change level (or status, release number, etc.) is available in all environments where SirLib runs, via both reports and optional internal procedure comments.

Most change management systems will not work in Model 204, because:

  • They cannot be integrated with developer tools.
  • They cannot handle the long procedure names permitted in Model 204.
  • They don't understand the concept of Model 204 GROUPs.

SirLib was designed to deal with all these change management issues and to work under a wide range of Model 204 configurations. SirLib provides primarily a means to achieve a well-managed User Language environment: it doesn't dictate procedure promotion schemes, and it doesn't force any project to manage its changes the same way as other projects in the same shop. A shop can standardize on a single mechanism, while allowing each project to promote changes via a path that is as simple and straightforward as possible.

In addition, SirLib allows multiple users to make updates to the same procedure at the same time, and it eliminates the risk of programmers overwriting each others' changes. Essentially the granularity of an update is reduced to a section of a program, and possible update collisions are detected and handled unambiguously and early in the development process.

A managed update refers to any change to a Model 204 procedure which is managed by the change management system. In this document, that means any change generated using SirPro and applied using SirLib. Managed updates may be small bug fixes, major application enhancements, or additions and deletions of whole procedures. Managed and unmanaged updates are made via the full screen interface to the Model 204 editor, SirPro. A managed file is one that is being managed by a change management system, in this case, SirLib.

In managed files, only managed updates should occur. If unmanaged updates are allowed to occur to procedures in managed files, the entire change management scheme can be compromised. This is why Sirius recommends that you: 1. Convert your managed files to PUBLIC with low (x'0221') privileges. 2. Allocate the files to the SirLib subsystem. Then anyone can read the file, but only the change management system can update procedures in it.

See also

All Sirius UL/SPF documentation is a available for download in PDF format at http://sirius-software.com/maint/manlist