SirLib: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (replace page with stage version)
Line 3: Line 3:
<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==
==SirLib and configuration management==
<var class="product">SirLib</var> runs as an APSY subsystem inside a <var class="product">Model 204</var> 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 <var class="product">Model 204</var> 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 &SIRPROR..


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
programmers' tasks:
automate and simplify 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>


Line 54: Line 63:
</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 M<var class="product">Model 204</var> 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 User
promotion schemes, and it doesn't force any project to manage its changes the same
Language environment: it doesn't dictate procedure promotion schemes,
way as other projects in the same shop. A shop can standardize on a single
and it doesn't force any project to manage its changes the same way as
mechanism, while allowing each project to promote changes via a path that is as simple
other projects in the same shop.
and straightforward as possible.
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, <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.
Essentially the granularity of an update is reduced to a <i>section</i> of
a program, and possible update collisions are detected and handled
unambiguously and early in the development process.
 
A <b>managed update</b> refers to any change to a <var class="product">Model 204</var> procedure
which is managed by 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 application enhancements,
or additions and deletions of whole procedures.
Managed and unmanaged updates are made via the full screen interface to the
<var class="product">Model 204</var> editor, <var class="product">SirPro</var>.
A <b>managed file</b> is one that is being managed by a change management
system, in this case, <var class="product">SirLib</var>.
 
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:
<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.
</p>


In addition, <var class="product">SirLib</var> allows multiple users to make updates to the same procedure at the
==SirLib topics==
same time, and it eliminates the risk of programmers overwriting each others' changes.
The <var class="product">SirLib</var> documentation consists of the pages listed below.  
Essentially the granularity of an update is reduced to a section of a program, and
This list is also available as a "See also" link from each of the pages.  
possible update collisions are detected and handled unambiguously and early in the
development process.


A managed update refers to any change to a <var class="product">Model 204</var> procedure which is managed by
For information about product changes and Model&nbsp;204 feature
the change management system. In this document, that means any change generated
support per <var class="product">SirLib</var> version, see
using <var class="product">SirPro</var> and applied using <var class="product">SirLib</var>. Managed updates may be small bug fixes, major
the [[M204wiki main page#rktools_notes|release notes]].
application enhancements, or additions and deletions of whole procedures. Managed
and unmanaged updates are made via the full screen interface to the <var class="product">Model 204</var> editor,
<var class="product">SirPro</var>. 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
For information about product error messages, see [[:Category:Sirius Mods messages|Sirius Mods messages]].
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 <var class="product">SirLib</var> subsystem.
Then anyone can read the file, but only the change management system can update
procedures in it.


==See also==
{{Template: SirLib topic list}}
The <var class="product">SirLib</var> documentation is available in PDF format: <var class="book">[http://m204wiki.rocketsoftware.com/images/9/92/LibrNew.pdf Rocket M204 SirLib User's Guide]</var>


[[Category: SirLib]]
[[Category:Sirius Software products]]
[[Category:Sirius Software products]]

Revision as of 21:39, 19 October 2015

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.

SirLib and configuration management

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 &SIRPROR..

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 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 Sirius Mods messages.