SirLib: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (TN prefix for 3270)
 
(17 intermediate revisions by 5 users not shown)
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 <var class="product">Model&nbsp;204</var> 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 that 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 [[RKTools]] family of products from Rocket Software. Prior to version 7.5 of Model&nbsp;204, the RKTools family was known as UL/SPF and required the installation of the [[Sirius Mods]], with a version equal to or higher than the <var class="product">SirLib</var> version. As of Model&nbsp;204 V7.5, the functions and facilities necessary to run RKTools are built into the Model&nbsp;204 Online load module.


==Overview==
As of version 7.7 of RKTools, <var class="product">SirLib</var> and <var class="product">SirPro</var> are accessible through one or both of the RKTools user interfaces (3270 or [[RKWeb]]). The <var class="product">SirLib</var> wiki pages primarily describe the TN3270 interface, although its appearance and functionality is approximately the same as in the RKWeb interface, which uses [[Janus Web Legacy Support]] to map the <var class="product">SirLib</var>-specific TN3270 screens to your web browser.  
<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:
==SirLib and configuration management==
<var class="product">SirLib</var> runs as an [[Application Subsystem development|application subsystem]] inside a <var class="product">Model&nbsp;204</var> Online, as does
<var class="product">SirPro</var>, a package of productivity tools.
Together they provide a
complete, integrated SOUL 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]] pages.
Configuration management functions typically fall into four categories:
<ul>
<ul>
<li>Identifying, grouping, and documenting system changes.</li>
<li>Identifying, grouping, and documenting system changes.
<li>Providing an environment for controlling change and programmer activity.</li>
<li>Providing an environment for controlling change and programmer activity.
<li>Backing out changes.</li>
<li>Backing out changes.
<li>Reporting on system configurations.</li>
<li>Reporting on system configurations.
</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.
reduces the complexities of procedure distribution to such an extent that only a single,
Furthermore, <var class="product">SirLib</var> reduces the complexities of procedure distribution
small procedure file needs to be distributed to production environment(s), no matter how
to such an extent that only a single, small procedure file needs to be
many applications run in that environment.
distributed to production environment(s), no matter how 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.
management systems, this involves a procedure lock. <var class="product">SirLib</var> performs this function
In typical change management systems, this involves a procedure lock.
without locking procedures.</li>
<var class="product">SirLib</var> performs this function 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.
does not dictate a development method.</li>
<var class="product">SirLib</var> 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
cause production problems.</li>
introduced changes cause production problems.</li>


<li>Reporting capabilities are integrated, and the data for reporting does not have to be
<li>Reporting capabilities are integrated, and the data for reporting does
manually entered reporting data is generated to the internal dataset SIRLIBD
not have to be manually entered &mdash; reporting data is generated to the
when system activity occurs.</li>
internal dataset <b>SIRLIBD</b> when system activity occurs.</li>


<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
environments where <var class="product">SirLib</var> runs, via both reports and optional internal procedure
available in all environments where <var class="product">SirLib</var> runs, via both reports and
comments.</li>
optional internal procedure comments.</li>
</ul>
</ul>


Most change management systems will not work in <var class="product">Model 204</var>, because:
Most change management systems will not work in <var class="product">Model 204</var>, because:
<ul>
<ul>
<li>They cannot be integrated with developer tools.</li>
<li>They cannot be integrated with developer tools.</li>


<li>They cannot handle the long procedure names permitted in <var class="product">Model 204</var>.</li>
<li>They cannot handle the long procedure names permitted in <var class="product">Model 204</var>.</li>


<li>They don't understand the concept of Model 204 GROUPs.</li>
<li>They don't understand the concept of <var class="product">Model 204</var> GROUPs.</li>
</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
under a wide range of Model 204 configurations. <var class="product">SirLib</var> provides primarily a means to
to work under a wide range of <var class="product">Model 204</var> configurations.
achieve a well-managed User Language environment: it doesn't dictate procedure
<var class="product">SirLib</var> provides primarily a <i>means</i> to achieve a well-managed SOUL 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.
promotion schemes, and it doesn't force any project to manage its changes the same
A shop can standardize on a single mechanism, while allowing each project to
way as other projects in the same shop. A shop can standardize on a single
promote changes via a path that is as simple and straightforward as possible.
mechanism, while allowing each project to promote changes via a path that is as simple
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
same time, and it eliminates the risk of programmers overwriting each others' changes.
procedure at the same time, and it eliminates the risk of programmers
Essentially the granularity of an update is reduced to a section of a program, and
overwriting each others' changes.
possible update collisions are detected and handled unambiguously and early in the
Essentially the granularity of an update is reduced to a <i>section</i> of
development process.
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
A <b>managed update</b> refers to any change to a <var class="product">Model&nbsp;204</var> procedure
the change management system. In this document, that means any change generated
which is managed by the change management system.
using <var class="product">SirPro</var> and applied using <var class="product">SirLib</var>. Managed updates may be small bug fixes, major
In this document, that means any change generated using <var class="product">SirPro</var> and
application enhancements, or additions and deletions of whole procedures. Managed
applied using <var class="product">SirLib</var>.
and unmanaged updates are made via the full screen interface to the Model 204 editor,
Managed updates may be small bug fixes, major application enhancements,
<var class="product">SirPro</var>. A managed file is one that is being managed by a change management system,
or additions and deletions of whole procedures.
in this case, SirLib.
Managed and unmanaged updates are made with the TN3270 full-screen interface to the <var class="product">Model&nbsp;204</var> <var class="product">SirPro</var> editors, or with the [[RKWeb]] Build > Edit option.


In managed files, only managed updates should occur. If unmanaged updates are
A <b>managed file</b> is a file that is being managed by a change management
allowed to occur to procedures in managed files, the entire change management
system, in this case, <var class="product">SirLib</var>.
scheme can be compromised. This is why Sirius recommends that you:
In managed files, only managed updates should occur.
1. Convert your managed files to PUBLIC with low (x'0221') privileges.
If unmanaged updates are allowed to occur to procedures in managed files,
2. Allocate the files to the <var class="product">SirLib</var> subsystem.
the entire change management scheme can be compromised.
Then anyone can read the file, but only the change management system can update
This is why it is recommended that you:
procedures in it.
<ol>
<li>Convert your managed files to <var>PUBLIC</var> with low (X'0221') privileges.</li>
 
<li>Allocate the files to the <code>SIRLIB</code> subsystem.</li>
</ol>
 
Then anyone can read the file, but only the change management system can update procedures in it.
 
==Getting started==
If this is your first time using <var class="product">SirLib</var>, read [[SirLib "getting started" steps]] for <var class="product">SirLib</var> and <var class="product">SirPro</var> environment configuration tips, before you continue with the detailed portions of the <var class="product">SirLib</var> topics.
 
==SirLib topics==
The <var class="product">SirLib</var> documentation consists of the pages listed below. This list is also available as a "See also" link from each of the pages.
 
For information about product changes and Model&nbsp;204 feature
support per <var class="product">SirLib</var> version, see
the [[M204wiki main page#rktools_notes|release notes]].
 
For information about product error messages, see [[List of Model 204 messages#msir|MSIR. messages]].
 
{{Template: SirLib topic list}}


==See also==
==See also==
All Sirius <var class="product">UL/SPF</var> documentation is a available for download in PDF format at http://sirius-software.com/maint/manlist
<ul>
<li>[[SoulEdit | SoulEdit - The SOUL Editor]] </li>
<li>[[Terminal MODEL 6 support]] </li>
</ul>
 
[[Category: SirLib]]
[[Category: RKTools]]

Latest revision as of 18:48, 6 June 2017

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 that apply and back out changes.

SirLib is part of the RKTools family of products from Rocket Software. Prior to version 7.5 of Model 204, the RKTools family was known as UL/SPF and required the installation of the Sirius Mods, with a version equal to or higher than the SirLib version. As of Model 204 V7.5, the functions and facilities necessary to run RKTools are built into the Model 204 Online load module.

As of version 7.7 of RKTools, SirLib and SirPro are accessible through one or both of the RKTools user interfaces (3270 or RKWeb). The SirLib wiki pages primarily describe the TN3270 interface, although its appearance and functionality is approximately the same as in the RKWeb interface, which uses Janus Web Legacy Support to map the SirLib-specific TN3270 screens to your web browser.

SirLib and configuration management

SirLib runs as an application subsystem inside a Model 204 Online, as does SirPro, a package of productivity tools. Together they provide a complete, integrated SOUL 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 pages.

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 SOUL 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 with the TN3270 full-screen interface to the Model 204 SirPro editors, or with the RKWeb Build > Edit option.

A managed file is a file 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 it is recommended 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.

Getting started

If this is your first time using SirLib, read SirLib "getting started" steps for SirLib and SirPro environment configuration tips, before you continue with the detailed portions of the SirLib topics.

SirLib topics

The SirLib documentation consists of the pages listed below. This list is also available as a "See also" link from each of the pages.

For information about product changes and Model 204 feature support per SirLib version, see the release notes.

For information about product error messages, see MSIR. messages.

See also