 
                IBM (R) Solution Developer Operations
 
         DDDD  EEEEE V   V EEEEE L      OOO  PPPP  EEEEE RRRR
         D   D E     V   V E     L     O   O P   P E     R   R
         D   D EEEE  V   V EEEE  L     O   O PPPP  EEEE  RRRR
         D   D E      V V  E     L     O   O P     E     R  R
         DDDD  EEEEE   V   EEEEE LLLLL  OOO  P     EEEEE R   R
 
 SSSS U   U PPPP  PPPP   OOO  RRRR  TTTTT        N   N EEEEE W   W  SSSS
S     U   U P   P P   P O   O R   R   T          NN  N E     W   W S
 SSS  U   U PPPP  PPPP  O   O RRRR    T          N N N EEEE  W W W  SSS
    S U   U P     P     O   O R  R    T          N  NN E     W W W     S
SSSS   UUU  P     P      OOO  R   R   T          N   N EEEEE WW WW SSSS
 
========================================================================
1995 Issue 14                      Second of two issues, 16 October 1995
========================================================================
 
This is the second of two newsletters released simultaneously on 16
October 1995. This newsletter, 1995 Issue 14 (DSN5N), contains
information from formal IBM announcements made within the last month.
The usual news items are in the first newsletter, 1995 Issue 13 (DSN5M).
 
                             +----------+
                             | Contents |
                             +----------+
 
The table of contents contains search codes for going directly to items
that interest you.
                                                                Search
                                                                Codes
                                                                -----
 
o  TeamConnection for OS/2 Version 1.0 Manages the Entire       connteam
   Software Development Life Cycle
     In brief...  Overview. Description. Statement of general
     direction. Publications. Hardware requirements. Software
     requirements. Planning information. Ordering information
     and charges.
     NOTE: This item is 514 lines long.
 
o  IBM's TeamConnection: Technical Overview                     tconnovu
     Overview. Application development challenges and
     TeamConnection. How can TeamConnection help? What does
     TeamConnection do? Configuration management. Release
     management. Version control. Integrated build. Build
     mechanisms. Distributed build. Packaging and distribution
     support. TeamConnection's packaging utilities. Electronic
     distribution support using your distribution tool.
     Integrated problem tracking and change control. Report
     facility. Backup and recovery. Repository and model
     support. Information model. Data constraints. Information
     model schema evolution. Application development tool
     integration. IBM Application Development Team Suite.
     VisualGen. IBM COBOL VisualSet for OS/2. IBM VisualAge C++
     for OS/2. IBM PL/I. PACBASE/CS. TeamConnection customer
     value.
     NOTE: This item is 1,091 lines long.
 
o  IBM PL/I for OS/2 Version 1 Release 1: New Price, New        pliprice
   Channels, Software Advantage Offering
     In brief. Description. Product positioning. Products and
     charges.
     NOTE: This item is 325 lines long.
 
o  IBM PL/I Set for AIX Version 1 Details                       setdetl
     In brief...  Description. Product positioning.
     Hardware requirements. Software requirements.
     Compatibility. Products and charges.
     NOTE: This item is 396 lines long.
 
o  IBM SOMobjects for MVS Version 1 Release 2 Limited           mvsobj
   Availability
     In brief...  Overview. Limited availability. Orders for
     the limited availability program. Description. Product
     positioning. Statement of general direction. Hardware
     requirements. Software requirements. Compatibility.
     Packaging. Ordering information.
     NOTE: This item is 309 lines long.
 
o  IBM C/C++ for MVS/ESA Version 3 Release 2                    mvscplus
     In brief...  What's new in version 3 release 2.
     Description. Product positioning. National language
     support. Hardware requirements. Software requirements.
     Compatibility. Ordering. Charges.
     NOTE: This item is 540 lines long.
 
o  IBM Internationalization Conference and NLS Programming Lab  intconfl
   Details
     Introductory letter. Conference preliminary agenda.
     Conference preliminary course descriptions. OS/2 and AIX
     NLS hands-on programming labs. Registration form.
     NOTE: This item is 469 lines long.
 
========================================================================
 
                       +----------------------+
                       | Where to Find DSNEWS |
                       +----------------------+
 
On the World Wide Web
---------------------
 
DSNEWS is now available on the Internet World Wide Web through the IBM
Solution Developer Support home page. The URL for DSNEWS is
http://www.austin.ibm.com/developer/library/dsnews/ .
 
On E-Mail and Bulletin Board Systems
------------------------------------
 
The monthly DSNEWS files are ZIPped into the file DSNymA.ZIP, where y =
last digit of year, and m = issue number represented as alpha (for
example, DSN5BA.ZIP is the 1995 second issue). DSNymA.ZIP contains:
-- This announcement file, DSNym1.ANN
-- The current month's contents list, DSNym.SMY
-- An annual cumulative list of contents, DSNy.CUM
-- The current month's ASCII newsletter, DSNym.ASC
 
The ZIPped files are posted on several e-mail and BBS systems:
o America Online, in the OS/2 forum, in the Newsletters library
o CompuServe, in OS2DF2 forum, *DAP library section 14
    and in OS2DF1 forum, OPEN FORUM library section 15
o Fidonet, in the OS2 Information file area, FWOS2INFO
o GEnie, in OS/2 Software Library 16
o Hitline mailbox (Switzerland), in file area 8
o IBM Canada BBS, in file area 35, OS/2 Programming
o IBM OS2BBS (TALKLink), in Software library, Newsletters section
o IBM Personal Computer Company BBS, in file area 11, OS/2 Programming
o Internet, via anonymous ftp from ftp.software.ibm.com, in directory
    /ps/products/os2/info/wnewsltr; or via Gopher from
    os2info.austin.ibm.com, in the OS/2 Information menu
o NIFTY-Serve (Japan), in FOS2 forum, library section 4
o Norloff's OS/2 Shareware BBS (1-703-385-4325 or
    telnet://bbs.os2bbs.com), in the OS/2 Periodicals file area
o OS2NET (Europe), on all OS2NET bulletin boards in Europe, usually in
    the DSNEWS download area
o PRODIGY, in the OS/2 Club topic's download library, in IBM Files
 
Note: If you cannot find files named dsn... (in lower case), look for
files named DSN... (in upper case).
 
Within IBM
----------
 
Within IBM, 1995 issues, in ASCII format, are in DSN5 PACKAGE in the
OS2TOOLS catalog, and 1994 issues are in DSN4 PACKAGE.
To obtain DSN5 PACKAGE, type:
   TOOLCAT OS2TOOLS GET DSN5 PACKAGE
To obtain DSN4 PACKAGE, type:
   TOOLCAT OS2TOOLS GET DSN4 PACKAGE
You can also request the packages by typing:
   REQUEST DSN5 FROM V1ENG AT BCRVM1
and
   REQUEST DSN4 FROM V1ENG AT BCRVM1
To subscribe to DSN5 PACKAGE, type
   TOOLCAT OS2TOOLS SUB DSN5 PACKAGE
 
                  +-----------------------------------+
                  | Notice to Readers Outside the USA |
                  +-----------------------------------+
 
It is possible that the material in this newsletter may contain
references to, or information about, IBM products (machines and
programs), programming, or services that are not announced in your
country. Such references or information must not be construed to mean
that IBM intends to announce such products, programming, or services in
your country.
 
                       +------------------------+
                       | Send Us Your Feedback! |
                       +------------------------+
 
Your comments about this newsletter are important to us. Please send
your feedback to the editor of IBM SDO Developer Support News, Mike
Engelberg, at:
 
o  Internet: dsnews@vnet.ibm.com
o  IBMMAIL:  USIB33NP
o  Fax:      1-407-443-3858
o  Mail:     DSNEWS, Internal Zip 5407, IBM Corporation,
             1000 N.W. 51st Street, Boca Raton FL 33431, USA
 
========================================================================
 
          +---------------------------------------------+
          | TeamConnection for OS/2 Version 1.0 Manages |       connteam
          | the Entire Software Development Life Cycle  |
          +---------------------------------------------+
 
In Brief ...
------------
 
TeamConnection for OS/2 delivers the function that your application
development teams need to manage and version development data for
higher-quality code and more productive teams. It offers:
 
o  An integrated problem-tracking and change-control system with a
   configurable development model
 
o  Automated build process for use with a wide variety of AD tools
 
o  An open, extensible information model that provides the vehicle for
   data-sharing between a set of integrated tools
 
Overview
--------
 
TeamConnection for OS/2 supports application development in an OS/2
client/server team programming environment by integrating the software
configuration management (SCM) services and object-oriented repository
services on a semantic model for tool integration. Features include:
 
o  Support for a team programming environment
o  Operation in a distributed, client/server environment
o  Support for multiple development paradigms (3GL, 4GL, and OO,
     model-driven)
o  Open, customizable, scalable environment that can evolve and grow
     with your team and tools
o  Data-sharing across tools
o  Combination of SCM and repository services to provide a consistent
     set of functions designed to:
     -   Facilitate project management across the development lifecycle
     -   Increase your application quality and development productivity
o  Object-oriented repository
o  Open, extensible information model
 
Price: 1,999 USD
 
Planned availability date: 24 October 1995
 
Description
-----------
 
TeamConnection for OS/2 integrates software configuration management
(SCM) services and object-oriented repository services on a semantic
model for tool integration to support application development in an OS/2
client/server team programming environment. This unique combination of
functionality allows the benefits of SCM services to be provided across
the broad spectrum of development data stored by TeamConnection,
including both file-based objects and fine grain modeled objects.
 
On OS/2, TeamConnection supports the development of applications that
can be targeted for many IBM and non-IBM platforms. TeamConnection
provides integrated build support for applications being targeted for
the OS/2 and MVS platforms. Builds of applications for other target
platforms can be accomplished through standard Make facilities on the
target platform.
 
TeamConnection provides the following SCM services:
 
o  Version Control
 
   Version control provides the basic function of an SCM tool. It
   provides the ability to store versions of an entire application, so
   that the state of the application at a particular point in time can
   be re-created. Version control supports both serial and parallel
   development, and includes a graphical merge tool for reconciling text
   changes.
 
o  Configuration Management
 
   Configuration management provides the ability to identify, organize,
   manage, and control access to development data. It also provides a
   notification mechanism to facilitate team communications.
 
o  Integrated Build
 
   Integrated build automates and optimizes the process of building an
   application or part of an application. Building can encompass many
   different processes such as compiling, linking, generating, document
   processing, binding an application to a database, or invoking a
   command file. The build process can segment the build activity, so
   that multiple build processors can be used in parallel to complete
   the build faster. It coordinates and controls these multiple build
   tasks. Integrated build also automatically determines INCLUDE
   dependencies, checks for a minimal set of objects to rebuild, and
   then builds the application. The build process also encompasses
   building applications for local or remote systems, and building
   applications that run in multiple environments.
 
o  Packaging and Distribution Support
 
   Packaging and distribution support extends the conventional compile
   and link steps of the build function to perform the transformation
   steps that are required to prepare the application for distribution
   to a production environment. The packaging and distribution support
   enables applications to be distributed electronically using LAN-based
   file server technology such as IBM NetView Distribution Manager/2.
 
o  Problem Tracking and Change Control
 
   Problem tracking and change control manages the process of allowing
   changes to development data. TeamConnection provides a very strong
   configurable development model that controls and tracks changes to
   development data. It associates identified application defects and
   features with the changes. TeamConnection manages the process of
   integrating related changes through the ability to build the
   application based on defects and features.
 
o  Backup and Recovery
 
   The backup and recovery facility allows TeamConnection data to be
   stored on an alternate media for archival purposes. Because of data
   consistency, there is no capability to merge the old data with new or
   current data upon restoration.
 
o  SQL Query
 
   SQL Query provides a dynamic query facility for development data and
   meta data. Meta data is information about development data. Examples
   include defects, build information, configuration information, and
   registered users. This query facility provides a powerful reporting
   mechanism for audit purposes, quality control, project management,
   and development needs.
 
TeamConnection also provides an object-oriented repository, and an open
extensible information model. In addition to participating in all the
SCM services above, the repository has the following features:
 
o  Object-Oriented Repository
 
   TeamConnection leverages object-oriented database technology and
   services. This high-performance, distributed, object-oriented
   database stores the persistent data, and provides query, locking, and
   transaction functions.
 
o  Information Model
 
   The information model provides the common semantic definition by
   which integrated tools share data and interact. This provides the
   integrating platform through which development tools work together to
   share data and to allow a team to develop and maintain
   mission-critical applications.
 
o  Information Model Schema Evolution
 
   TeamConnection provides schema-evolution facilities that allow the
   information model to be extended without having to recompile existing
   code. These facilities are used in each new release of the
   information model. Not having to recompile the tools for changes in
   the information model is important, because tools normally ship just
   the executable form of their product.
 
o  Data Constraints
 
   Constraints are methods that ensure that the data is consistent with
   the definition of the information model. Constraints are defined as
   part of the model definition. Constraints are useful in that tools do
   not require code to validate data in the model prior to use.
 
APPLICATION DEVELOPMENT TOOL INTEGRATION
 
TeamConnection was designed for extensibility and easy integration. The
software configuration management architecture enables many IBM and
non-IBM tools to be easily used with TeamConnection for storage and
control of development data and for building outputs. IBM will continue
to work with non-IBM tool builders to provide integrated solutions.
 
o  Tools that transform a set of inputs into a set of outputs can be
   plugged into TeamConnection through the use of a build script.
 
o  Tools can provide transparent access to the software configuration
   management services by invoking the command line interface from
   within their tools.
 
o  TeamConnection function can be extended by invoking tools from
   TeamConnection user exits. User exits are available before and after
   each command.
 
TeamConnection provides the integrating technology for multiple
application development tools to share data in a team environment. The
develop / compile / generate tools provided by IBM that integrate with
TeamConnection include:
 
o  VisualGen for OS/2 Version 2.0
o  IBM VisualAge for COBOL for OS/2 Version 1.0
o  IBM VisualAge for C++ for OS/2 Version 1.0
o  IBM PL/I for OS/2 Version 1.0
o  PACBASE/CS
 
VISUALGEN FOR OS/2: VisualGen application members defined in VisualGen
Version 2.0 may be stored in and managed by TeamConnection, which
provides versioning and change control. In addition, TeamConnection
provides configuration management support for build of VisualGen
applications, tables, and map groups. The outputs of VisualGen
generation are also placed under TeamConnection versioning and change
control, and are prepared for execution by the configuration management
facilities of TeamConnection.
 
IBM VISUALAGE FOR COBOL FOR OS/2: TeamConnection provides the
infrastructure for team programming and software configuration
management services for IBM VisualAge for COBOL for OS/2. In addition
to the standard integration points, storage, and control of COBOL files,
and building COBOL executables, TeamConnection is integrated with the
Workframe component of IBM VisualAge for COBOL for OS/2. Files stored in
TeamConnection can be reflected in Workframe projects and TeamConnection
actions can be invoked from the Workframe project. With TeamConnection's
ability to build applications for MVS, the IBM COBOL for MVS compiler
may also be used as a build tool with TeamConnection.
 
IBM VISUALAGE FOR C++ FOR OS/2: TeamConnection provides the
infrastructure for team programming and software configuration
management services for IBM VisualAge for C++ for OS/2. In addition to
the standard integration points, storage, and control of C++ files, and
building C++ executables, TeamConnection is integrated with the
Workframe component of IBM VisualAge for C++ for OS/2. Files stored in
TeamConnection can be reflected in Workframe projects, and
TeamConnection actions can be invoked from the Workframe project. With
TeamConnections's ability to build applications for MVS, the IBM C/370
for MVS compiler may also be used as a build tool with TeamConnection.
 
IBM PL/I FOR OS/2: TeamConnection provides the infrastructure for team
programming and software configuration management services for IBM PL/I
for OS/2. PL/I files, source and executable, can be stored, controlled,
and built using TeamConnection. With TeamConnection's ability to build
applications for MVS, the IBM PL/I for MVS compiler may also be used as
a build tool with TeamConnection.
 
PACBASE/CS: PACBASE/CS will implement the use of TeamConnection software
configuration management facilities. Initially, source files generated
with PACBASE/CS can be managed using TeamConnection versioning and
application build capabilities. Additional TeamConnection management and
repository functions will be implemented to support the full PACBASE/CS
client/server development environment.
 
TEAMCONNECTION CUSTOMER VALUE
 
TeamConnection provides a facility for application developers to better
manage their software development process in a team environment.
 
The increased complexity of today's software development environment
creates new problems for application developers, such as developing
graphical user interfaces, writing client/server and distributed
applications, and using multiple development paradigms that require
multiple tools. These problems present new challenges to development
teams that are being asked to deliver software products to market at
faster and faster rates.
 
In addition to faster development time, customers and employers demand
higher-quality software than ever before. Successful software
development organizations are measured by Software Engineering Institute
(SEI) maturity levels and by compliance with ISO 9000 standards.
 
Pressure to deliver high-quality code at a quickening pace requires new
levels of efficiency in software maintenance. Meanwhile, application
development organizations recognize the need to manage their software as
a corporate asset.
 
TeamConnection helps address these development issues by:
 
o  Allowing you to control and manage the changes to your software to
   ensure quality
 
o  Helping you to efficiently and reliably build your applications for
   greater productivity
 
o  Packaging your applications for delivery, so you can get them to
   your customers more quickly and with greater reliability
 
o  Providing a mechanism for tools to share data
 
o  Providing a development model that can help increase your SEI
   maturity level through a reliable, efficient, and repeatable process
 
o  Providing a graphical user interface that allows you to quickly and
   easily realize the benefits of TeamConnection
 
TeamConnection provides the infrastructure and control to manage product
development through the entire development cycle and across multiple
development paradigms (3GL, 4GL, and OO, model-driven). It provides an
open, customizable, and scalable environment that can evolve and grow
with your development team.
 
Statement of General Direction
------------------------------
 
TeamConnection includes an open, extendable information model. The
information model provides the vehicle for data-sharing between a set of
integrated tools that are using TeamConnection. This object-oriented
information model enables an extensible architecture, thus ensuring
continued support for new versions of existing tools, as well as new
tools that are brought into the repository environment. IBM intends to
document the information model semantics and provide a documented set of
APIs to TeamConnection. In addition, IBM intends to deliver a
developer's toolkit that will allow tool builders to extend the
information model with their semantics data.
 
Many tools and dictionaries today have a model in which they store
information. IBM intends to provide IBM Exchange for OS/2, which will
assist companies in exploiting their existing investment in business and
data models. IBM Exchange for OS/2 will accept analysis and design
information from a wide range of CASE tools, data dictionaries, and
database management systems and transform that information for storage
in the TeamConnection. Transforms will be bi-directional, so that the
company can continue to use the analysis or design tools as desired.
 
IBM intends to enhance TeamConnection to provide heterogeneous product
capability across multiple platforms, including platforms such as 32-bit
Microsoft Windows, and UNIX, while providing consistent, high-value
product function, and customer investment protection.
 
Publications
------------
 
The following publications will be available after general availability.
To order, contact your IBM representative.
 
                                                  Order
Title                                             Number
 
TeamConnection library (all of the books)         SBOF-6097
TeamConnection License Information                GC34-4497
Getting Started with the OS/2 Client              SC34-4498
TeamConnection User's Guide                       SC34-4499
TeamConnection Commands Reference                 SC34-4501
TeamConnection Quick Commands Reference           SC34-4500
TeamConnection Messages                           SC34-4502
 
Hardware Requirements
---------------------
 
TeamConnection Server requires the following hardware:
 
-  Processor: 50 MHz, 486-based processor or higher
-  Monitor: VGA or higher resolution with appropriate adapter
-  Pointing device: Mouse or similar
-  Memory: 48 MB minimum
-  Disk Space:
   --  Operating System and Pre-reqs: 75 MB
   --  TeamConnection Server code: 60 MB
   --  Swapper: 64 MB to 126 MB (Recommended: 150+ MB)
-  Communications: Network card supported by TCP/IP for OS/2
-  CD-ROM: CD-ROM accessible for installation
 
TeamConnection Build Server requires the following hardware:
 
-  Processor: 50 MHz, 486-based processor or higher
-  Monitor: VGA or higher resolution with appropriate adapter
-  Pointing device: Mouse or similar
-  Memory: 32 MB minimum, more may be necessary depending on compilers,
     linkers, and so on
-  Disk Space:
   --  Operating System and Pre-reqs: 75 MB
   --  TeamConnection Build Server code: 15 MB
   --  Swapper: 45 MB
-  Communications: Network card supported by TCP/IP for OS/2
 
TeamConnection Client requires the following hardware:
 
-  Processor: 25 MHz, 386-based processor or higher
-  Monitor: VGA or higher resolution with appropriate adapter
-  Pointing device: Mouse or similar
-  Memory: 12 MB minimum
-  Disk Space:
   --  Operating System and Pre-reqs: 75 MB
   --  TeamConnection Client code: 15 MB
   --  Swapper: 32 MB
-  Communications: Network card supported by TCP/IP for OS/2
 
Software Requirements
---------------------
 
TeamConnection Server and Build Agent requires the following
software:
 
-  OS/2 Warp, plus one of:
   --  TCP/IP for OS/2 2.0 (70G3754)
   --  AnyNet Sockets over SNA 2.0
or
-  OS/2 Warp Connect
 
TeamConnection Client requires the following software:
 
-  OS/2 2.11 or higher (61G0900)
     Note: If double-byte character set (DBCS) support is required,
     one of the following DBCS versions of OS/2:
     --  IBM OS/2 J Version 2.11 or later
     --  IBM OS/2 H Version 2.11 or later
     --  IBM OS/2 T Version 2.11 or later
     --  IBM OS/2 P Version 2.11 or later
   plus one of:
   --  TCP/IP for OS/2 2.0 (70G3754)
   --  Anynet Sockets over SNA 2.0
 
TeamConnection Build Processor requires the following software:
 
-  OS/2 Warp, plus one of:
   --  TCP/IP for OS/2 2.0 (70G3754)
   --  Anynet Sockets over SNA 2.0
or
-  OS/2 Warp Connect
 
-  For MVS Builds, one of:
   --  TCP/IP 2.2.1 for MVS or higher (5735-HAL)
   --  Anynet feature for VTAM Version 4 Release 2
 
-  C/370 Runtime 2.2
 
-  For the distribution function:
   --  NetView Distribution Manager/2 2.0 or higher (53G3924)
 
Planning Information
--------------------
 
For planning LAN configurations to be used with TeamConnection, the
following guidelines should be followed.
 
o  Depending upon HW/SW configurations, a TeamConnection server can
   support up to 200 clients. Mechanisms are available to implement
   external synchronizations of multiple TeamConnection servers for
   larger groups.
 
o  Multiple TeamConnection daemons can be started against the
   TeamConnection database, to service requests from clients.
 
   -  For servicing tools that use the information model, one
      TeamConnection daemon should be started for every 10 active
      clients.
 
   -  For servicing SCM requests, the need for multiple daemons will be
      driven by process-intensive requests such as query.
 
o  Any number of build servers, where compiles and generates execute,
   can be started against the TeamConnection server. These can be on the
   same machine as your TeamConnection server, but this is not
   recommended. The number of build server machines required is totally
   dependent on your usage patterns. It will reflect your current
   machine-usage patterns for building applications.
 
Ordering Information and Charges
--------------------------------
 
Orders for new licenses will be accepted now. Shipments will begin on
the planned availability date, 24 October 1995.
 
 
                                               Part        One-Time
Program Name                                   Number      Charge
 
TeamConnection for OS/2 Version 1.0            31H3744      1,999 USD
 
ADDITIONAL LICENSE COPIES: Authorizes the customer who has a program
package to make a single copy of the program media and printed
documentation. The authorization is given by providing the customer a
Proof of Entitlement for Additional License -- with certificate, which
has its own part number.
 
ADDITIONAL LICENSES CHARGE: Customers who pay a one-time charge for
additional licenses may copy machine-readable program materials and
printed documentation previously acquired from IBM in a program package.
One copy may be made for each additional license ordered.
 
                                               Part        One-Time
Program Name                                   Number      Charge
 
TeamConnection for OS/2 Version 1.0,           31H3746      1,799 USD
Proof of Additional License with Certificate
 
ADDITIONAL LICENSE COPIES -- SOFTWARE ADVANTAGE EXHIBIT: Authorization
to make additional license copies begins on the start date specified in
the Software Advantage Agreement. Proof of Entitlement will be provided
monthly.
 
                                               Part        One-Time
Program Name                                   Number      Charge
 
TeamConnection for OS/2 Version 1.0,           31H3745      1,799 USD
Additional License without Certificate
 
UPGRADE PROTECTION (NEW PRODUCT): The following Upgrade Protection
Products are only available under the Software Advantage for
Workstations offering:
 
                                               Part        One-Time
Program Name                                   Number      Charge
 
Upgrade Protection for                         33H6129        540 USD
  TeamConnection for OS/2 Version 1.0 -
  One-Time Charge
Upgrade Protection for                         33H6130         67.50 USD
  TeamConnection for OS/2 Version 1.0 -
  Quarterly Charge
 
SOFTWARE ADVANTAGE FOR WORKSTATIONS-UPGRADE PROTECTION: The announced
program is eligible as an entitled upgrade. Entitled customers will be
provided with a no-charge program package and a Proof of Entitlement
authorizing right to copy equal to the number of programs protected.
Shipment will follow general availability.
 
GETTING-STARTED PERIOD: A 60-day Getting Started Period is provided
by the Personal Systems Support Line for the first license within a
site, location, or centralized help desk. The 60-day period begins with
the first call to the Support Line.
 
GUARANTEE: The IBM 30-day, money-back guarantee applies.
 
========================================================================
 
            +------------------------------------------+
            | IBM's TeamConnection: Technical Overview |        tconnovu
            +------------------------------------------+
 
This document provides a technical overview of IBM TeamConnection for
OS/2, and describes its integration with application development tools.
It is written for customers who need the functions that TeamConnection
provides, and who want to know more.
 
Overview
--------
 
TeamConnection is an object-oriented, repository-based application
development environment that provides software configuration management
services and a semantic model for tool integration to support a team
programming environment. It operates in a distributed environment to
facilitate project-wide coordination of development activities across
all phases of the product development life cycle.
 
TeamConnection provides an infrastructure for multiple IBM Application
Development solutions and can be used with many application development
tools available today.
 
For more information about TeamConnection, please contact your IBM
Marketing Representative. If you don't have an IBM Marketing
Representative, please call 1-800-IBM-3333 or 1-919-254-4760, and
indicate that you already have this technical overview.
 
In Canada, call 1-800-565-SW4U, ext. 662 (fax 1-800-267-5185). Outside
North America, contact:
 
   Austria       0222.21145.2500
   Belgium       02.2253333
   Denmark       80304545
   Finland       90.459.4176
   France        36.633643
   Germany       0130.4567
   Italy         1670.17001
   Netherlands   06.0220402
   Norway        66.999300
   South Africa  27.11.2249.111
   Spain         900.100400
   Sweden        08.7934004
   Switzerland   01.4366233
   UK            081.5757700
 
Application Development Challenges and TeamConnection
-----------------------------------------------------
 
Application development teams today face tremendous challenges. While
both applications and application development environments are becoming
more and more complex, development teams are challenged to continuously
increase code quality through adherence to process standards and audit
trail management. The application development tools available today to
help address these issues often come up short, addressing only specific
problems, and not providing sufficient tool integration to deliver a
fully integrated software development environment.
 
Applications under development are made more complex by the need to
support advanced graphical user interfaces, object-oriented and
client/server technologies, and heterogeneous, distributed computing.
Client/server applications are moving past decision support into the
second generation of mission-critical, high-volume transaction
processing, which brings with it additional complexity in the
application design.
 
The team's development environment is also becoming more complex in an
effort to meet these challenges. The development team is distributed on
a LAN, yet they have the same requirements for coordinated team
programming support that is available on the centralized host
environment. Object technology, with an increasing focus on support for
reuse, and tool integration at the data level are requirements that add
to the complexity of the development environment.
 
Successful software development organizations are measured by SEI
maturity levels and by compliance with ISO 9000 standards. These
problems present new challenges to development teams that are being
asked to deliver software products to market at faster and faster rates.
 
How Can TeamConnection Help?
----------------------------
 
TeamConnection helps address these development issues by:
 
o  Enabling you to organize your componentry for reuse.
 
o  Enabling you to manage the changes to your software more efficiently.
 
o  Helping you to more efficiently rebuild your applications after they
   have been modified.
 
o  Improving team communication and deployment through e-mail
   notification on activity required, application changes, and project
   status.
 
o  Packaging your applications for delivery so you can get them to your
   customers more quickly and with greater reliability.
 
o  Providing a development model that can help increase your SEI
   maturity level and improve your application quality through
   reliable, efficient, and repeatable processes.
 
o  Providing extensive problem tracking and change control for both
   fine-grained and coarse-grained application development objects.
 
o  Providing extensive reporting that can be project status, used for
   tasks such as impact analysis, project management, quality analysis,
   and workload balancing.
 
o  Providing a secure repository for your software assets and the
   information about them, with role-based access.
 
o  Providing an application development information model along with
   repository services that provides the basis for tool integration.
 
o  Supporting non-disruptive schema evolution of the information model.
   End users can maintain their investment in current tools and their
   existing skill base working with those tools and still allow for
   introduction of new tools into the development environment.
 
o  Supporting data exchange with other platforms and modeling tools,
   including migration of legacy data, through the optional feature, IBM
   Exchange for OS/2, that will be available in a later release.
 
o  Providing backup and recovery facilities.
 
What Does TeamConnection Do?
----------------------------
 
TeamConnection integrates software configuration management services and
object-oriented repository services on a semantic model for tool
integration to support application development in an OS/2 client/server
team programming environment. Applications can be targeted for any
platform, and can be standalone, client/server, or distributed
applications.
 
TeamConnection delivers the function your application development teams
need to manage development data, application versions, and application
configurations. The integrated problem tracking and change control
system ensures that, while your application developers are more
productive, your project leaders can effectively manage the development
process and track progress. TeamConnection automates and streamlines
your application build process, and integrates it with the version and
change control processes. The build process is tied to release
management, and extended to provide a framework for delivery of
software.
 
An open, extensible information model provides the vehicle for
data-sharing between a set of integrated tools using TeamConnection.
This object-oriented information model enables an extensible
architecture, thus ensuring continued support for new versions of
existing tools, as well as new tools that are brought into the active
repository environment.
 
TeamConnection supports application development customers who employ
model-driven development:
 
o  to support application development by teams charged with the
   responsibility of developing complex applications quickly and
   maintaining those applications responsively
 
o  for data sharing, where all members of the development team,
   irrespective of their roles, have a common understanding of an
   application's data (that is, semantic consistency of data is
   enforced)
 
o  to exploit a LAN topology for the application development environment
 
o  to use distributed application development data, which further
   exploits LAN topology in the management of application development
   resources
 
TeamConnection is built on an object-oriented database, which allows
TeamConnection's repository to store fine-grained application
development data with high performance. Its software configuration
management services work equally well with fine-grained modeled objects
and conventional coarse-grained objects (files). The integration of
these higher-level services with more traditional repository services,
such as constraint checking, version management, concurrent and
distributed access, and data exchange, make TeamConnection unique in the
industry.
 
TeamConnection provides the following services:
 
o  Configuration management
o  Release management
o  Version control
o  Integrated build
o  Packaging and distribution support
o  Problem tracking and change control
o  Reporting
o  Backup and recovery
o  Object-oriented repository
o  Information model
o  Data constraints
o  Information model schema evolution
 
Configuration Management
------------------------
 
Configuration management in TeamConnection provides the ability to
identify, organize, manage, and control access to your development data.
Within TeamConnection, data is divided into one or more families. A
family represents a complete and self-contained collection of related
managed objects (development data which may be files or modeled objects)
and data about the managed objects. Data within a family is completely
isolated from data in all other families, even those on the same server.
One family cannot share data with another, except through external
synchronization. TeamConnection has mechanisms which can be used to
implement customer-defined synchronization processes.
 
The structure used to organize data within a family is called the
component hierarchy. Each node within the hierarchy is called a
component. A component is a TeamConnection object that simplifies
project management, organizes project data into structured groups, and
controls configuration management properties.
 
The hierarchy provides a mechanism for organizing components of data
into structured groups. Some common ways to group data in a component
hierarchy are by function, by execution platform, for access control, or
for communication needs. The component hierarchy should reflect the
organizational requirements of your development team, and can be
modified over time as these requirements change.
 
Each managed object under TeamConnection is managed by a component.
Components that manage one or more managed objects are usually the leaf
components of your hierarchy, while the branch components are used for
organization, access control, notification, and problem reporting.
 
Control of TeamConnection objects and the authority to access
TeamConnection data are managed by components and granted to users
through component ownership and the access lists associated with the
components. Users are given access to objects in a specific family
through their TeamConnection user IDs. Each family has at least one
superuser. The superuser has privileged access to the family and acts as
the TeamConnection administrator. All TeamConnection users have some
basic capabilities which can be further extended by the superuser or
his/her delegates. Ownership of each component is assigned to one user.
That user is responsible for managing all development data related to
that component and the objects it manages. The owner has automatic
authority to perform many actions.
 
In addition, each component has an access list. The access list manages
user access (beyond the owner) to objects controlled by the component by
assigning users specific authorities. Default authority groups are
shipped with TeamConnection, and can be tailored to meet your needs.
Access authority is inherited by lower-level components.
 
Each component can also have a notification list. Notification messages
are sent to an electronic mailing address that is specified when the
user's TeamConnection ID is created. Some notification is automatic. For
example, the owner of a TeamConnection object is always notified when
actions are performed on that object. Users receive notification when an
action affects their user ID or requires them to perform an action in
return. Additional notifications can be configured through the
notification list, which maps user IDs to interest levels. Like access
authority, notification is inherited by lower-level components.
 
A managed object is development data that is stored by TeamConnection
and retrieved by name. A managed object can also be thought of as a
TeamConnection part. The managed objects controlled by TeamConnection
can be text objects, binary objects, modeled objects, or empty. They
are always owned by a component.
 
Text objects are ASCII files, which are generally created by an editor.
Examples are source code, test cases, documentation, README files, and
install files. Binary objects are files that are generally created by a
tool. Examples are OBJ files that a compiler produces, EXE files that a
linker produces, and other files that a tool produces which have a
format understood only by that tool. Modeled objects are defined in the
information model. They are created and used by a tool, but not stored
as a file. In this case, the tool uses a set of TeamConnection APIs to
store and retrieve modeled objects in the underlying repository. The
command line is not used for modeled objects. All of the capabilities
associated with files are equally applicable to modeled objects.
Examples of modeled objects are shared data elements and VisualGen logic
records. Empty objects are placeholders, for example, for the output of
a future build.
 
When you create a TeamConnection managed object, you are placing an
existing development object under TeamConnection control. To change a
managed object, you check the object out from TeamConnection, make
changes, and then check the changed object back in, thus updating the
TeamConnection server. TeamConnection stores additional information
(such as who changed it and why) about the managed object each time an
action is performed against it. This information can be queried at any
time.
 
Common actions against managed objects include:
 
Create       To store an object from your workstation in the
             TeamConnection server. Or, to store an object from a tool
             in the TeamConnection server. Or, to create an object as a
             placeholder.
 
Check out    To get a copy of the object onto your workstation for
             update.
 
Check in     To put an updated object back in TeamConnection.
 
Extract      To get a copy of an object onto your workstation without
             planning to make changes to it.
 
Build        To execute one or more build steps, such as compile, link,
             or generate.
 
Tools such as VisualGen and DataAtlas might hide these details from the
end user by invoking the actions on behalf of the end user.
 
Release Management
------------------
 
A release is a logical organization, or mapping, of all managed objects
that are related to an application. A release does not affect the
physical location of a managed object; instead it provides a logical
view of the managed objects that must be built, tested, and distributed
together. Each release is created against a managing component, which
provides the access and notification mechanisms. However, the managed
objects in a release can be managed by many components. Also, a specific
object can be in multiple releases. Each time a development cycle begins
for the next version of an application, a separate release can be
defined. Each subsequent release of an application references many of
the same managed objects.
 
The release manages whether or not managed object changes are tied to
defects and features. If the track process (described in a later
section) is turned on, then object changes require a defect or feature
number. If the track process is turned off, then managed object changes
can be made without a defect and feature number. Because you can
configure your change process by release, you can have a low level of
control early in the development cycle, add controls as the release
comes closer to shipment, and finally, use the highest level of control
after the release has been shipped to customers and is being maintained.
 
Version Control
---------------
 
Versioning is making copies of data at some meaningful point, in order
to return to that point at a later date, if necessary. Most programmers
version their code, even if they are not using a software configuration
management system to manage their applications. A classic example is the
programmer, Kim, who has just added a nice little routine to an
application and validated that the new routine works. Before writing
the next routine for the application, Kim makes a copy of the code that
works. If subsequent changes break the application, she can always go
back to the copy of the application that worked.
 
TeamConnection versions application development activity at a release
level. As compared with tools that record and track versions of file
changes, the TeamConnection release-level versioning model maintains
"snapshots" of the release in addition to snapshots of managed objects.
A version of a release is the set of the correct versions of all the
managed objects that make up a release. As changes are committed to the
release, the release is frozen, or saved, so that each evolution can be
retrieved.
 
This versioning model not only enables you to work on the correct
versions of individual managed objects, but it also maintains and
presents those managed object versions within the context of the
identified version of the release. You can change between work
activities, such as problem resolution on an old release and
enhancements to the current release, yet the complete version of each
release is recreated to reflect the correct versions of its included
managed objects.
 
The versioning model is implemented through the use of work areas. In
order to update a release, you create a work area. A work area is a
sandbox in which you can update managed objects and do builds without
affecting the release. When you create a work area, it maps to the most
current version of the release. You check out a managed object from the
work area, edit it, and then check in the managed object to the work
area. Your changes now exist in the TeamConnection server, but are
visible only in the work area. After building in the work area and
testing, you update the release by committing the work area. On a
commit, the release is frozen and then updated with the changes from the
work area. This provides the history of changes and the ability to
recreate each evolution of the release.
 
A version of a release is the set of the correct versions of all the
managed objects for a complete release. Maintaining copies of all
managed objects in a release for each version would require exorbitant
disk space. This is why versions of a release are actually mappings to
the correct versions of the included managed objects. In addition,
versions of the text files are stored as reverse delta versions to
conserve space.
 
TeamConnection also provides optional support for concurrent
development, so you can update managed objects in parallel with other
developers. Its graphical merge tool helps you resolve conflicting
changes in text objects.
 
Integrated Build
----------------
 
TeamConnection's integrated build function automates and optimizes the
process of building individual managed objects, entire releases, or
multiple releases. Building can encompass many different processes such
as compiling, linking, generating, document processing, binding an
application to a database, or invoking a command file. With distributed
build, managed objects or releases can also be built for the enterprise
client/server environment, that is, for target platforms different than
the server platform. Integrated build functions are available for OS/2
and MVS. In the future, additional platforms will be supported.
 
Integrating the build capability within TeamConnection provides value
that standard make functions cannot match.
 
o  Repeatable and reliable
 
   Once the build structure is set up, TeamConnection can provide a
   repeatable, reliable build. The same outputs are produced from the
   same inputs when you use the same set of translation or build rules.
   You can also build different outputs from the same inputs by using
   different translation rules, for example, to compile for a different
   platform. The build structure can be created using an object-based
   Graphical User Interface (GUI) or the command-line interface.
 
o  Minimizes resources required
 
   TeamConnection detects out-of-date conditions in a build structure,
   and rebuilds only those parts of the release that need to be rebuilt,
   thus minimizing the resources required to accomplish the build.
   Because of the way that timestamps are kept in a LAN environment,
   out-of-date conditions cannot always be detected in a file system.
   But because all inputs are stored in TeamConnection, its build
   function does not rely on file system timestamps, thus improving its
   performance over make functions.
 
o  Builds multiplatform applications
 
   Client/server applications require that code for multiple platforms
   be kept in sync. The build function in TeamConnection can
   incorporate the build procedures for multiple platforms and can
   synchronize the build of the related applications.
 
o  Distributes build across available machines
 
   TeamConnection can manage a pool of available machines to build an
   application. It can determine which parts of a build need to be
   serial and which can be parallel. Then it can parcel out the work to
   available machines. For example, a pool of OS/2 machines might be
   defined for compiling C code. At night, programmer machines can be
   added to this pool for large build processes. With this capability, a
   multistep build is no longer constrained by the speed of a single
   machine.
 
o  Builds objects and files
 
   TeamConnection provides software configuration management services on
   a broad range of objects (files and modeled objects), all stored in a
   single object-oriented repository. With these capabilities,
   TeamConnection can support 3GL, 4GL, model-driven, and OO development
   paradigms. Objects for these paradigms can be stored together in
   TeamConnection. Where applications are written in a mixture of 3GL,
   4GL, and OO, TeamConnection can build them together and keep them in
   sync. For example, a VisualGen application might work with an
   application written in COBOL. Both of the applications can be stored
   and managed by TeamConnection within the same build structure.
 
Build Mechanisms
----------------
 
A build tree is a structure that graphically defines how the managed
objects are built together. The build tree is a complete description of
the dependencies that managed objects have on one another, and of all
the steps required to build the release. Each executable step in the
build tree is a build event. For example, the compilation of C source
into object code is a build event.
 
A builder is a TeamConnection object that describes how to perform a
build event: how to translate input managed objects into output managed
objects. For example, one builder might know how to transform C++
source code into object code. A different builder might know how to
transform object code into an executable. The builder identifies the
environment where the transform will execute, passes parameters to and
from its build script, defines the basic rules of successful completion,
and invokes a build script.
 
The build script that the builder uses is essentially a binding between
TeamConnection and a transform tool. The build script invokes the tool.
Because of the way TeamConnection uses build scripts to invoke tools,
TeamConnection is highly extensible, and can be used with a large
variety of build tools. Examples of these include:
 
o  Application generators, such as VisualGen
o  3GL compilers
o  Linkers
o  Object-oriented C++ compilers
o  Preprocessors such as for DB2 and CICS
o  Document processors
 
In OS/2, a build script is usually a command file. It can be as simple
as a single string that invokes the tool. In MVS, it is a JCL fragment.
The JCL job stream can do anything that a normal JCL job stream does.
For example, a build script designed to move an application into test
might copy the application executable into a test loadlib along with a
set of test cases.
 
A parser is a tool that knows how to read a source file and report back
a list of dependencies of that source file. A parser simplifies the job
of defining a build tree. It frees you from having to know what
dependencies a managed object has on other managed objects. For example,
a C parser knows how to read a C source code file and report back a list
of files included by the source file. If dependencies are found during
the parse that are not reflected in the build tree, then the build tree
is automatically updated. A set of sample language parsers and build
scripts is provided with TeamConnection.
 
Once the build tree, builders, build scripts, and parsers are set up,
TeamConnection has a reliable, repeatable build process that minimizes
the time and resource required to build an application. When a build is
requested, the build process determines out-of-date managed objects
(objects that have been changed or whose inputs have been changed)
within the build tree, parses any out-of-date object(s) to find any new
dependencies, and uses the builders and build scripts to rebuild just
the out-of-date objects in the requested environment.
 
Distributed Build
-----------------
 
In TeamConnection, the build processor is where build tools such as
compilers, linkers, and generators execute. In the case of compilers and
linkers, this is typically the target environment where the application
will run.
 
In the build process described in the previous section, the build
actually consists of putting the build scope on the job queue. The build
scope is the collection of build events that must occur to complete the
build. The job queue is the list of build scopes to be completed.
 
The build processor is the TeamConnection process that actually invokes
the tools, such as compilers and linkers, that construct an application.
The build processor also manages a cache in order to reduce file
transfer overhead. Since the build processor may be physically located
on a separate CPU from the data, each build processor is paired with a
build agent, which typically runs on the TeamConnection server machine.
The build agent acts on behalf of the build processor to query the job
queue for work, and to retrieve managed objects when the build processor
needs them.
 
After the administrator starts a build processor and its corresponding
build agent, the build agent polls the job queue for build events.
TeamConnection understands which build events within the job queue need
to be performed in a specific order. TeamConnection also understands the
environment required for a build event, such as MVS or OS/2. These
mechanisms allow parts of a build to occur in parallel, if multiple
build processors are available. They also allow builds to be distributed
to the appropriate target environment for execution.
 
This design allows TeamConnection to handle a wide variety of
topologies, such as:
 
o  building on a remote machine
 
o  building a distributed application where application parts execute on
   different machines
 
o  building an application which can run on multiple machines (same
   source code built for both OS/2 and MVS)
 
As each build event is completed, the TeamConnection server is updated
with the return code and any outputs, such as the compiled object code.
After the build is completed, the TeamConnection client that requested
it is notified.
 
This architecture provides considerable flexibility. To illustrate, an
MVS programmer could edit, compile, and debug an application on an OS/2
workstation using IBM COBOL VisualSet for OS/2. When the application is
ready for system test or production, the programmer requests a build for
MVS. The build is executed on MVS, and the executable is automatically
brought back to TeamConnection so that it can be versioned along with
the source.
 
Packaging and Distribution Support
----------------------------------
 
Packaging and distribution support provide a bridge from development to
the production environment. In TeamConnection, packaging is any of the
steps necessary to distribute TeamConnection managed applications to
software users or onto the machines where software is to be used. To do
this, TeamConnection extends the build process to include transformation
of executable and non-executable files into a distribution-ready form.
 
Your process might require more than one packaging step to prepare a
software package for distribution. Examples of these are:
 
o  Compressing files
o  Packing files together
o  Encrypting files
o  Organizing and grouping files
o  Adding prerequisite files and programs such as installation utilities
o  Updating asset or inventory managers (license tracking)
o  Transferring the files to physical media
o  Distributing the packaged software electronically
 
Any or all of these steps can be automated by incorporating them into
the build tree. Unlike conventional build steps, packaging build steps
often do not change the content of the release, but simply organize or
package the release in preparation for some form of distribution.
Another distinction of packaging build steps is that their outputs are
generally not physical objects that are stored back into TeamConnection;
instead, they are abstract or conceptual. So if the build object is up
to date, it might not have produced something in TeamConnection;
instead, it might represent the fact that files were transferred to a
remote server, as an example.
 
TeamConnection's Packaging Utilities
------------------------------------
 
In addition to this highly customizable packaging support,
TeamConnection focuses on solutions to electronically distribute
software.
 
TeamConnection includes two utilities:
 
o  The Gather tool is an automated data mover for server- or
   file-transfer-based distribution.
 
o  The NVBridge tool automates the installation and distribution of
   software or data using IBM NetView Distribution Manager/2 (NVDM/2) as
   the distribution vehicle.
 
Together, these two utilities provide the ability to move an application
in TeamConnection, along with associated files such as installation
files and documentation, to an OS/2 subdirectory, and then to invoke
NVDM/2 to catalog the application, distribute it, and install it.
 
The following scenario demonstrates the value of integrating these
functions into TeamConnection. An application managed by TeamConnection
is in production when an error is detected. The maintenance team opens a
defect (defects will be discussed in the next section) for the error. A
work area is created to incorporate the modifications into the current
release. After testing, the work area is committed to the release. The
release build tree includes the gather and NVDM/2 steps. When these
steps are built, the updated application is moved into the file system
and, via NVDM/2, it is distributed and installed. Because the build tree
was used, the audit team can be sure that the application included the
fix when distributed.
 
Electronic Distribution Support Using Your Distribution Tool
------------------------------------------------------------
 
There are many tools for electronic distribution. You can build a bridge
similar to NVBridge to invoke the distribution tool of your choice. To
simplify this task, TeamConnection includes the mini-utilities that were
used to create NVBridge. Although these utilities are unique to NVDM/2,
using them as examples will speed the development of your own bridge.
 
Integrated Problem Tracking and Change Control
----------------------------------------------
 
The processes involved in problem tracking and change control provide
you the ability to manage and control your development process.
TeamConnection tracks reported problems and design changes and retains
information about the life cycle of each. A defect is used to record
each reported problem. A feature is used to record each proposed design
change. The information recorded about defects and features allows you
to report on who, what, when, why, and where modifications occur, and
also to report on where a particular defect or feature is in the
development cycle, and where the release is in the development cycle.
For instance:
 
o  How many features have been implemented, or still need to be
   implemented?
 
o  How many defects are open?
 
o  How many features are still in test? (Do I need to move resources to
   test?)
 
o  How many defects have been opened against each managed object? (Where
   are my code quality problems?)
 
A defect or feature can be used to record any changes you need to
monitor. For example, defects and features can be used to record
problems, proposals for process improvement, and hardware design
changes, as well as proposals for design changes in products being
developed under TeamConnection control.
 
Any TeamConnection user can open a defect or feature. Each defect and
feature must be opened against a specific component within the component
hierarchy. The defect or feature can be reassigned to a more appropriate
component within the hierarchy if necessary. The owner of the component
to which it is assigned automatically becomes the owner of the defect or
feature. This ownership can also be reassigned.
 
Defects and features go through a configurable process. As they move
through the process, team members who need to take action are notified.
This automatic notification helps keep your process running smoothly,
and aids in team communication. It might even reduce the number of
meetings that use development cycles for unproductive work.
 
If you choose to require that changes to managed objects can be made
only in association with a defect or a feature, then changes can be made
only when the defect or feature is in the working state. This enables
you to require the correct level of authorization before a change can be
made.
 
Although build objects and versions are release-specific, defects and
features are family-wide. This allows a specific defect or feature to be
implemented for multiple releases. It also helps ensure that problems
fixed in a maintenance release are likewise fixed in the development
release, so your customers don't find an old problem in a new release.
 
TeamConnection ties the process of managing defects and features to the
change control process through the use of the track process. If you use
the track process, changes to managed objects must be tied to defects
and features. Because changes are implemented in work areas, with the
track process you have the ability to build, test, and ultimately commit
to release individual changes.
 
If the track process is being used, the driver process can also be used.
This process integrates multiple defects and features before committing
them to a release. This is done by adding their work areas to a driver.
As this is done, changes can be built together and tested together prior
to committing them to a release.
 
With the ability to configure processes, you can tailor TeamConnection
to best suit your environment. You can adjust the process over time to
fit your release's stage in its life cycle.
 
Report Facility
---------------
 
The report facility in TeamConnection is an SQL query facility that has
been extended for the object-oriented database.  End users can form
dynamic queries to quickly find objects of specific interest, such as
defects assigned to them, objects they have checked out, or all changes
associated with a particular feature. The GUI can be used to form
queries.
 
Queries can be stored and used for extensive reporting, auditing, and
project management, as the following examples demonstrate:
 
o  Impact analysis: Tell me all the releases that a managed object is
   used in.
 
o  Quality analysis: Tell me how many defects have been reported
   against each component in a release.
 
o  Workload balancing: Tell me how many defects are being worked. Tell
   me how many defects are being tested. Use this information to move
   resource between development and test.
 
o  Project Status: For features scheduled in this release, tell me how
   many are open, implemented, tested, and complete.
 
Output from queries can be input to other tools such as Visualizer,
which will graph the results of a report.
 
Backup and Recovery
-------------------
 
The backup and recovery facility allows TeamConnection data to be stored
on alternate media for archival purposes. Because of data consistency
concerns, TeamConnection does not merge the old data with new or current
data upon restoration.
 
Repository and Model Support
----------------------------
 
TeamConnection leverages object-oriented database technology and
services for its persistent data store. the need for separation of the
three levels of repository definition (conceptual, logical, and
storage/physical) is rarely challenged. TeamConnection has married this
three-tiered "schema" specification with the LAN's physical topology.
 
Conceptual View. TeamConnection's information model defines the
conceptual schema that is available for all integrated tools. This
information model is a fine-grained model with a robust metamodel
supporting the following:
 
o  Inheritance
 
o  A relationships framework supporting attributes, relationships on
   relationships, cardinality constraints (minimum and maximum),
   ordering, and complex controlling semantics
 
o  Attributes, on both the objects (or entities) and relationships
 
o  Complex data typing on attributes (for example, structures,
   pointers)
 
o  Passive constraints
 
o  A model framework providing abstract supertype (Managed Object)
   services classes from which the semantic classes of the information
   model can be subtyped. This allows for consistent repository /
   software configuration management services to be applicable against
   classes as they are introduced into information model definition.
 
Logical View: Each tool presents to its end user the information that
is necessary and sufficient to allow that end user to perform the tasks
supported by the tool.  This subset of information is the logical view
being presented by the tool. The view is defined by the tool and is
stored in TeamConnection. It can be used by the same tool for other
tasks, or by other tools that use the same subset of data to satisfy the
information needs of their end users. New logical views can be built
from existing views.
 
The logical view is presented to the tool through an object application
programming interface (API), and is implemented as a tool cache. This
interface supports the tool's logical view of the information model for
the storage and retrieval of modeled objects from the TeamConnection
persistent store. When object instances are made available to the tool,
the tool can manipulate (create, delete, update) these instances through
the object model APIs (for example, get/set attributes, create/delete
objects). Tools lock or unlock, and commit changes for their view. The
tool cache exists on the client machine where the tool executes. It
manages the tool's view of data in memory, and controls the transactions
necessary to write changes back to the OODB.
 
Storage View: The logical views allow for TeamConnection to optimize the
storage of the information sent through the APIs. This separation also
provides the target layer for mapping the TeamConnection services and
data schema to the underlying persistent storage database.
 
Information Model
-----------------
 
The information model provides the common semantic definition by which
integrated tools share data and interact. It is an objectified
entity-relationship model, in which entities are replaced by more
powerful objects. Semantic classes represent the traditional view of the
information model. The classes include (but are not restricted to):
 
o  Entities, attributes, relationships
o  Shared data elements
o  High-level language constructs (for example, COBOL data structures)
o  Relational database definitions
o  Hierarchical database definitions
o  Application visual parts
o  Application systems definitions
o  Business rules
o  Build process definitions (in support of automated build processing)
o  Bulk data (multiple file types are managed)
 
Through inheritance, these semantic classes are enabled to the services
defined on the managed object class. This allows for future extensions
by IBM, vendors, and users, to attach to these services in a
straightforward manner. The classes, which are part of the information
model, are shared by the suite of tools working with TeamConnection as
an active development-time repository. This shared-data schema is the
foundation of the data integration seen through the integrated suite of
tools, and is the integrating platform through which development tools
work together.
 
It is important to note that the information model supports object
definitions which span fine-grained classes (for example, an entity) to
coarse-grained classes (for example, a COBOL source file). This breadth
allows TeamConnection to support 3GL, 4GL, model-driven, and
object-oriented development paradigms in an integrated fashion,
providing a common semantic model and layer of software configuration
management services to each.
 
The scope of the semantics over which these classes act is related to
the tool suites enabled to the integration framework. This scope
includes support for data descriptions from the analysis and design
phase of development through the specific characteristics for given
languages or database technology. These semantics provide the definition
for the tools in the Team Suite, including a Business Requirements Tool,
DataAtlas, and VisualGen.
 
Data Constraints
----------------
 
Constraints are methods that ensure that the data is consistent with the
definition of the information model. They are defined as part of the
model definition, and are useful in two ways. First, they enforce a
global, consistent standard for stored data. Second, tools do not
require code to validate data in the model prior to use. The constraint
framework is triggered whenever the tool cache writes updates to the
persistent data store.
 
Information Model Schema Evolution
----------------------------------
 
As tools are added to the set of tools using the information model for
storage of fine grained information, or as the current tools evolve to
include additional functions, it will be necessary to add semantics to
the current information model. To minimize the effort required in the
customer environment, TeamConnection provides schema evolution
facilities that allow the information model to be extended without
recompiling existing code. These facilities are used with each new
release of the information model. Not having to recompile the tools for
additions to the information model is a very important feature, because
tools normally ship just the executable form of their products.
 
Application Development Tool Integration
----------------------------------------
 
TeamConnection was designed for extensibility and easy integration. The
software configuration management architecture allows for many IBM and
non-IBM tools to be easily used with TeamConnection for storage and
control of development data, and for building outputs:
 
o  Tools that transform a set of inputs into a set of outputs can be
   plugged into TeamConnection through the use of a build script.
 
o  Tools can provide transparent access to the software configuration
   management services by invoking the command-line interface.
 
o  TeamConnection function can be extended by invoking tools from
   TeamConnection user exits. User exits are available before and after
   each command.
 
The repository architecture includes a set of APIs and an open
extensible information model. Tools can share data in the information
model, store their unique data in the information model, and use the
common software configuration management and repository services.
 
Much software configuration management integration can be customized in
your development environment using the methods identified above.
However, more seamless software configuration management integration and
all repository integration must be implemented by tool vendors working
with the TeamConnection development team. To facilitate these
integrations, a TeamConnection Vendor Enabling program is actively
pursuing integrations that will deliver high-value solutions to you. The
following sections describe integrations that are currently available or
under development for delivery.
 
IBM Application Development Team Suite
--------------------------------------
 
TeamConnection provides the integrating technology for multiple
application development tools to share data in a team environment. Team
Suite will provide customers the ability to make technology choices that
work with supporting tools on a common infrastructure. The compile /
generate tools provided by IBM include:
 
o  VisualGen
o  IBM COBOL VisualSet for OS/2
o  IBM VisualAge C++ for OS/2
o  IBM PL/I for OS/2
 
Tools that integrate through TeamConnection with the compile/generate
technologies include DataAtlas, a state-of-the-art data modeler,
designer, and dictionary; and a Business Requirements Tool which is used
by business analysts, systems analysts, and application designers for
application analysis and requirements specification. VisualGen, the
Business Requirements Tool, and DataAtlas use a common information model
for storage of data element and structure definitions. By sharing an
information model that is instantiated in TeamConnection, elements and
structures defined using DataAtlas or the Business Requirements Tool can
be used and shared by all three tools. Additional tools will be added
over time to address business and process modeling.
 
VisualGen
---------
 
VisualGen in the Team Suite is IBM's new, integrated enterprise 4GL
application development environment. VisualGen in the Team Suite
integrates the market-leading VisualGen 4GL development product with
DataAtlas, and a Business Requirements Tool, all on TeamConnection.
This combination of functionality delivers, for the first time, a rapid
application development environment on an object-oriented repository.
 
VisualGen and DataAtlas use a common information model for storage of
data element and structure definitions. By sharing an information model
instantiated in TeamConnection, elements and structures defined using
DataAtlas can be used directly by VisualGen without any transformation.
The information is stored once in TeamConnection, and both tools work on
the shared information. The Business Requirements Tool also shares the
information model for data elements and structures, and therefore can
work on common definitions. Additionally, requirements defined in the
Business Requirements Tool can be associated with VisualGen logic
records, creating the tie between system definition and system
implementation.
 
All of the software configuration management services of TeamConnection
apply to the modeled objects as well as coarse-grained file objects.
Data definitions defined using DataAtlas can be versioned. Logic records
defined using VisualGen can also be versioned. All of these objects,
from fine-grained data objects through coarse-grained file objects, are
represented in the graphical build structure. VisualGen creates the
build structure, including the dependency structure and the processing
steps, freeing you from the need to enter the build structure.
 
IBM COBOL VisualSet for OS/2
----------------------------
 
TeamConnection provides the infrastructure for team programming and
software configuration management services for IBM COBOL VisualSet
TeamConnection for OS/2. IBM COBOL VisualSet for OS/2 provides the
COBOL programmer with 32-bit, direct-to-SOM-based, object-oriented
support on the OS/2 operating system. In addition, a COBOL application
development environment is provided that is designed specifically to
handle client/server, mission-critical, line-of-business applications
through visual programming. IBM COBOL VisualSet for OS/2 also gives the
COBOL programmer a set of high-productivity, OS/2-based power tools for
the development of applications targeting OS/2 execution systems.
 
TeamConnection greatly enhances team productivity when used in
conjunction with IBM COBOL VisualSet for OS/2. In addition to storage
and control of COBOL files, and building COBOL executables,
TeamConnection is integrated with the Workframe component of IBM COBOL
VisualSet for OS/2. Files stored in TeamConnection can be reflected in
Workframe projects, and TeamConnection actions can be invoked from the
Workframe project. With TeamConnection's ability to build applications
for MVS, the IBM COBOL for MVS compiler can also be used as a build tool
with TeamConnection. The DataAtlas information about customer data
elements and structures can be used by DataAtlas to generate COBOL
copybooks, providing data integration and reuse at a file level.
 
IBM VisualAge C++ for OS/2
--------------------------
 
TeamConnection provides the infrastructure for team programming and
software configuration management services for IBM VisualAge C++ for
OS/2. IBM VisualAge C++ for OS/2 provides the C++ programmer with
32-bit, direct-to-SOM-based, object-oriented support on the OS/2
operating system. A complete C++ application development environment is
provided, including visual programming tools that go beyond the scope of
simple GUI builders. With Visual Application Builder, you can rapidly
prototype and build applications with menu bars, entry fields, and
icons, plus advanced IBM Open Class Library extensions such as canvases
and graphic pushbuttons. The Data Access Class Builder allows you to
visually create C++ classes for easy access to DB2/2 relational
databases.
 
TeamConnection greatly enhances team productivity when used in
conjunction with IBM VisualAge C++. In addition to storage and control
of C++ files, and building C++ executables, TeamConnection is integrated
with the Workframe component of IBM VisualAge C++ for OS/2. Files stored
in TeamConnection can be reflected in Workframe projects, and
TeamConnection actions can be invoked from the Workframe project. With
TeamConnection's ability to build applications for MVS, the IBM C/C++
for MVS compiler can also be used as a build tool with TeamConnection.
 
IBM PL/I
--------
 
TeamConnection provides the infrastructure for team programming and
software configuration management services for IBM PL/I for OS/2. PL/I
files, source and executable, can be stored, controlled, and built using
TeamConnection. With TeamConnection's ability to build applications for
MVS, the IBM PL/I for MVS compiler can also be used as a build tool with
TeamConnection.
 
PACBASE/CS
----------
 
PACBASE/CS is a full life-cycle Enterprise-CASE environment for
client/server application development. It is focused on object /
model-driven development, and has unique strengths in methodology
support, including IBM's SDDM, and in the range of platforms that it
supports. PACBASE/CS includes an information model that guides
development and allows maximum reuse of components. Objects are stored
in the repository, the point of information management and control. From
specifications written at a logical level in the repository, PACBASE/CS
produces applications that are:
 
o  Of all types: client/server, batch, on-line
 
o  Complete: 100 percent compilable code, database description,
   documentation, and so on
 
o  Portable: on more than 40 target environments, including IBM and
   non-IBM platforms
 
PACBASE/CS will implement the use of TeamConnection software
configuration management services. Initially, applications generated
with PACBASE/CS source files will be managed using TeamConnection
versioning and integrated build capabilities. Additional TeamConnection
management and repository functions will be implemented to support the
full PACBASE/CS client/server development environment.
 
TeamConnection Customer Value
-----------------------------
 
TeamConnection marries repository technology with software configuration
management services in a team environment. This allows you to store all
of your development data in one place, regardless of form, and to
provide a consistent set of services and processes for your entire
development team, not just programmers. TeamConnection helps you manage
your development process by organizing your data, controlling changes to
it, and providing reporting capability.
 
TeamConnection increases your team's productivity by automating common
development tasks, notifying team members when action is required, and
providing a vehicle for tools to share data.
 
TeamConnection helps improve your products' quality by providing
repeatable reliable processes that assure proper authorization for
changes.
 
TeamConnection provides an open, customizable, and scalable environment
that can evolve and grow with your development team.
 
========================================================================
 
      +---------------------------------------------------+
      | IBM PL/I for OS/2 Version 1 Release 1: New Price, |     pliprice
      |     New Channels, Software Advantage Offering     |
      +---------------------------------------------------+
 
In Brief...
-----------
 
The following changes are being made to IBM PL/I for OS/2 Version 1
Release 1:
 
o  Decreases in one-time charges (OTCs)
o  Addition to the Software Advantage for Workstations offering
o  Available to additional channels -- IBM Authorized Software
     Remarketers and IBM Authorized Software Distributors
 
IBM PL/I for OS/2 Version 1 Release 1 is a full-function, OS/2-based
PL/I application development tool. Designed for the application
developer, PL/I of OS/2 Version 1 Release 1 combines the power of the
PL/I host language with the productivity of the PC.
 
With the PL/I visual set of products -- IBM PL/I for OS/2 Professional
Edition and IBM PL/I for OS/2 Toolkit -- you continue to use your PL/I
expertise while creating database and transaction-driven applications
that execute on a mainframe, as client/server applications, or on a
stand-alone workstation. PL/I for OS/2 provides the premier PL/I
product on the OS/2 platform for the creation of mission-critical
applications.
 
Description
-----------
 
PL/I for OS/2 provides the PL/I programmer with 32-bit support on the
OS/2 operating system. In addition, a PL/I application development
environment is provided that is designed especially to handle
mission-critical, line-of-business applications through visual
programming and construction-from-components technologies. PL/I for
OS/2 is offered in three options -- a Personal Edition, a Professional
Edition, and a Toolkit.
 
IBM PL/I FOR OS/2 PERSONAL EDITION: PL/I for OS/2 Personal Edition was
designed for small software development companies, consultants, and
students. The Personal Edition contains a full 32-bit compiler,
run-time library, and graphical, interactive debugging facility that
supports new PL/I application development on stand-alone PCs or small
LANs.
 
IBM PL/I FOR OS/2 PROFESSIONAL EDITION: PL/I for OS/2 Professional
Edition includes all of the features of the Personal Edition, plus
additional function that enhances compatibility with the mainframe
compiler. Developers can build and test host-based VSAM, DB2, CICS, and
IMS applications, or they can take advantage of PL/I for OS/2 (in
combination with DB2/2, CICS OS/2, and IMS Client Server/2) to create
client/server applications that integrate with existing mainframe
programs.
 
IBM PL/I FOR OS/2 TOOLKIT: PL/I for OS/2 Toolkit helps you streamline
the programming process, offering a development environment for PL/I for
OS/2 Presentation Manager (PM) applications. The Toolkit is a collection
of tools designed to complement either the Professional or Personal
Edition of PL/I for OS/2. The Toolkit includes a visual prototyping tool
and code generator that can help you develop graphical user interfaces,
a programming aid designed to help you convert C header files to PL/I
header files, and the OS/2 Developer's Toolkit.
 
Product Positioning
-------------------
 
As a PL/I customer, if you thought you would need to look to other
languages as your only option in creating powerful client/server
applications, or moving to emerging technologies, be assured there is
another option. You can remain with PL/I and still take advantage of
these new technologies. IBM's PL/I family of products allows you to
take advantage of the existing skill in your organization, preserve the
valuable program base and subsystem linkages you built, and still move
aggressively to utilize workstations in mission-critical applications.
Application development on new platforms and/or with emerging
technologies can begin in a gradual manner, without the need to retrain
programmers and undertake a new language.
 
IBM's PL/I family of products provides a consistent PL/I across multiple
platforms. The IBM PL/I offerings now reach across workstation and host
environments (OS/2, AIX, MVS, VM, AS/400, and VSE) -- with consistent
language implementation and optimized run-time performance for the
target platform -- to support dedicated or client/server applications.
These environments all have access to data through VSAM, DB2, IMS, and
CICS, where present.
 
For native host development, you will be able to use IBM PL/I for MVS
and VM with IBM Language Environment for MVS and VM, or IBM PL/I for VSE
with IBM Language Environment for VSE, to support creation of host
applications. Language Environment provides a common run-time
environment for language products that conform to its architecture (that
is, IBM PL/I for MVS and VM, IBM PL/I for VSE, IBM COBOL for MVS and VM,
IBM COBOL for VSE, AD/Cycle C/370, and IBM C/C++ for MVS/ESA). Some
advantages of PL/I with Language Environment include flexible run-time
options, faster and easier interlanguage communication (ILC) support,
dynamic ILC for all systems and subsystems, and a common condition
handling architecture. These functions and, in particular, the ILC
support provided by Language Environment, allow host PL/I programmers to
reuse code. By conforming to Language Environment, PL/I for MVS and VM
and PL/I for VSE can minimize new development and make it easier to
share code between applications. This reduces the cost of PL/I
application development, test, and maintenance while helping to improve
code quality.
 
IBM PL/I for OS/2 provides the premier PL/I product on the OS/2 platform
for the creation of mission-critical applications. The workstation
development environment provides an integrated set of tool functions and
a visual builder supporting development of applications targeted for
running on various platforms. WorkFrame/2 is used as an integration
point for the OS/2 development environment, providing a flexible and
powerful development system that exploits the OS/2 Workplace Shell. IBM
PL/I for OS/2, when used with IBM's TeamConnection, provides a powerful,
comprehensive team development environment. IBM PL/I for OS/2 works with
TeamConnection to store PL/I source and executable files and to build
PL/I applications. TeamConnection provides version control and change
management.
 
IBM PL/I Set for AIX supports both client and server application
development on AIX, providing an integrated set of tools. This includes
a customizable editor and debugger. The new AIX PL/I environment is
consistent and compatible with the OS/2 environment, and is integrated
to the common desktop environment (CDE) on AIX.
 
IBM PL/I for OS/2 and IBM PL/I Set for AIX are excellent choices for
creating client/server applications. They also provide a means for
moving development work to the workstation for applications targeted to
run on the host system. Testing can be done on the workstation with only
the final system testing being done on the actual target (host in this
case) system. IBM's approach, with the final edit, compile and debug
capability on the host, allows this final testing to take place in a
powerful and supported environment. IBM PL/I for OS/2 and IBM PL/I Set
for AIX implement this paradigm by providing function that makes it easy
to move programs between the workstation and the host.
 
Products and Charges
--------------------
 
The new, lower one-time charges will apply to those programs whose
charges become due on or after 26 September 1995.
 
PL/I for OS/2 has been added to the Software Advantage for Workstations
offering.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
PL/I for OS/2 Version 1 -- Professional Edition     10H7848      749 USD
 
PL/I for OS/2 Version 1 -- Personal Edition         10H7819      229
 
PL/I for OS/2 Version 1 -- Toolkit                  1322966      149
 
ADDITIONAL LICENSE COPIES: Authorizes the customer who has a program
package to make a single copy of the program media and printed
documentation. The authorization is given by providing the customer a
Proof of Entitlement for Additional License -- with Certificate, which
has its own part number and feature number.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
PL/I for OS/2 Version 1 -- Professional Edition
 Additional License with Certificate                1322971      715 USD
 
PL/I for OS/2 Version 1 -- Personal Edition
 Additional License with Certificate                1322972      219
 
PL/I for OS/2 Version 1 -- Toolkit
 Additional License with Certificate                16H9433      139
 
ADDITIONAL LICENSE COPIES -- SOFTWARE ADVANTAGE EXHIBIT:
Authorization to make additional license copies begins on the start date
specified in the Software Advantage Agreement. Proof of Entitlement will
be provided monthly.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
PL/I for OS/2 Version 1 -- Professional Edition
 Additional License without Certificate (SW Adv)    31H6398      715 USD
 
PL/I for OS/2 Version 1 -- Personal Edition
 Additional License without Certificate (SW Adv)    31H6399      219
 
PL/I for OS/2 Version 1 -- Toolkit
 Additional License without Certificate (SW Adv)    31H6400      139
 
PL/I for OS/2 Version 1 -- Publication Kit          16H9430      149
 
PROGRAM PACKAGE UPGRADE: Program media with documentation.
 
The program package upgrade option allows currently licensed users of
PL/I Package/2 Version 1 (5601-388) to obtain the new function in IBM
PL/I for OS/2 - Personal Edition Version 1 for a no-charge program
upgrade feature.
 
The program package upgrade option allows currently licensed users of
PL/I Workstation/2 (part number 62G8614) to obtain the new function in
IBM PL/I for OS/2 - Personal Edition Version 1 for a no-charge program
upgrade feature.
 
The program package upgrade option allows currently licensed users of
PL/I Workstation/2 (part number 62G8614) to obtain the new function in
IBM PL/I for OS/2 - Professional Edition Version 1 for a program upgrade
charge.
 
The program upgrade to IBM PL/I for OS/2 Version 1 is available now.
 
Orders will be accepted now. These upgrades will be available through
IBM Authorized Software Remarketers certified to market this product.
The remarketer will require a Proof of License for each upgrade ordered.
The original Proof of License is the colored front cover page (inside
the hard binder) or the separate Proof of License page in the program
package as identified by IBM to the remarketer.
 
Customers can also order upgrades through the local IBM office using the
IBM Personal Software Program IBM Upgrade and Certification Order Form.
The total quantity of upgrades acquired for a specific program cannot
exceed the total quantity of program packages and/or additional licenses
previously acquired for that program. Proof of License for upgrade
eligibility for additional license upgrades is a copy of this invoice or
previously acquired Proof of Entitlement for Additional License -- with
Certificate. Additional license upgrades can be entered through the
local IBM office using the IBM Personal Software Program Upgrade and
Certification Order Form or ordered through an authorized remarketer.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
Upgrade from PL/I Package/2 Version (5601-388) to
 PL/I for OS/2 -- Professional Edition Version 1    14H0850        0 USD
 
Upgrade from PL/I for OS/2 -- Personal Edition
 Version 1 (Part Number 10H7819) to PL/I for OS/2
 -- Professional Edition Version 1                  14H0851      625
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Professional Edition
 Version 1                                          14H0852      509
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Personal Edition
 Version 1                                          14H0853        0
 
ADDITIONAL LICENSE COPY UPGRADE: Authorizes the customer who has a
program package upgrade to make a single copy of the program media and
printed documentation. The authorization is given by providing the
customer a Proof of Entitlement for Additional License -- with
Certificate, which has its own part number and feature number.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
Upgrade from PL/I Package/2 Version 1 (5601-388)
 to PL/I for OS/2 -- Professional Edition Version 1
 Additional License with Certificate                14H0855        0 USD
 
Upgrade from PL/I for OS/2 -- Personal Edition
 Version 1 (Part Number 10H7819) to PL/I for OS/2 --
 Professional Edition Version 1
 Additional License with Certificate                14H0856      625
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Professional Edition
 Additional License with Certificate                14H0857      509
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Personal Edition
 Version 1
 Additional License with Certificate                14H0858        0
 
ADDITIONAL LICENSE COPY UPGRADE -- SOFTWARE ADVANTAGE EXHIBIT:
Authorization to make additional license copies begins on the start date
specified in the Software Advantage Agreement. Proof of Entitlement will
be provided monthly.
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
Upgrade from PL/I Package/2 Version 1 (5601-388)
 to PL/I for OS/2 -- Professional Edition Version 1
 Additional License without Certificate (SW Adv)    31H6401        0 USD
 
Upgrade from PL/I for OS/2 -- Personal Edition
 Version 1 (Part Number 10H7819) to PL/I for OS/2
 -- Professional Edition Version 1
 Additional License without Certificate (SW Adv)    31H6402      625
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Professional Edition
 Version 1
 Additional License without Certificate (SW Adv)    31H6403      509
 
Upgrade from PL/I Workstation/2 (Part Number
 62G8614) to PL/I for OS/2 -- Personal Edition
 Version 1
 Additional License without Certificate (SW Adv)    31H6404        0
 
UPGRADE PROTECTION (NEW PRODUCT): Customers who acquire Upgrade
Protection through a one-time charge or quarterly payment charges (when
meeting minimum revenue criteria) will be entitled at no charge to
future versions and releases when announced within their Software
Advantage agreement period. Following availability of the new program,
IBM will provide a program package (including media and documentation)
and a Proof of Entitlement authorizing right to copy, distribute, and
install equal to the number of programs protected.
 
The following Upgrade Protection Products are only available under the
Software Advantage for Workstations offering:
 
                                                    Part       One-Time
Program Name                                        Number     Charge
 
Upgrade Protection for PL/I for OS/2 Version 1
 Professional Edition -- One-Time Charge            31H6405      290 USD
 
Upgrade Protection for PL/I for OS/2 Version 1
 Professional Edition -- Quarterly Charge           31H6406       36.25
 
The announced program is eligible as an entitled upgrade. Entitled
customers will be provided with a no-charge program package and a Proof
of Entitlement authorizing right to copy equal to the number of programs
protected. Shipment will follow general availability.
 
========================================================================
 
            +----------------------------------------+
            | IBM PL/I Set for AIX Version 1 Details |           setdetl
            +----------------------------------------+
 
In Brief ...
------------
 
PL/I Set for AIX Version 1:
o  Takes advantage of existing skills
o  Preserves valuable program base
o  Supports host, workstation, or client/server application development
     on AIX
o  Includes an integrated edit, compile, and debug system
o  Supports access to DB2, CICS, VSAM/SAM, and other data systems
 
You can take advantage of IBM's PL/I offerings all across your
enterprise. The PL/I family of products provides a rich application
development environment that lets you take advantage of your existing
investment in PL/I and, at the same time, move toward new, emerging
technologies and platforms. This PL/I announcement represents the
delivery of IBM's continued commitment to the PL/I product family.
 
IBM PL/I Set for AIX provides a PL/I application development
environment designed to allow you to create mission-critical,
line-of-business applications that can run on host systems,
workstations, or client/server systems with access to DB2, CICS,
VSAM/SAM, and other data systems. IBM PL/I Set for AIX provides the
PL/I programmer with an optimizing compiler and a set of
high-productivity, AIX-based tools integrated with the AIX Common
Desktop Environment (CDE), for the development of applications.
 
Description
-----------
 
PL/I COMPILER
 
IBM PL/I Set for AIX provides an optimizing compiler that contains a
rich implementation of the PL/I language as well as support to improve
compatibility with mainframe PL/I and enhancements that can allow new
AIX-based applications to take advantage of features of the AIX
platform.
 
The PL/I compiler also includes powerful, integrated preprocessors. You
can select from one or more of the preprocessors as required for use in
your program. The preprocessors included are:
 
o  The macro facility
o  The include preprocessor, which allows you to incorporate external
   source files
o  The SQL preprocessor, which translates embedded SQL statements into
   PL/I statements, providing support for local and remote DB2 data
   access when used with DB2 for AIX
o  The CICS preprocessor, which translates embedded CICS statements into
   PL/I statements, providing support for local and remote CICS data
   access when used with CICS for AIX or CICS Client for AIX
 
A choice of linkages and parameter-passing mechanisms is also provided
to facilitate interlanguage communications (ILC) between your PL/I
routines and C/C++, Fortran, Pascal, and COBOL routines on AIX.
 
PL/I Set for AIX supports a single-byte character set (SBCS) and a
double-byte character set (DBCS).
 
COMMON DESKTOP ENVIRONMENT
 
IBM PL/I Set for AIX utilizes the new graphical user interface (GUI),
based on the CDE, in IBM AIX Version 4.1. The CDE integration consists
of a PL/I application folder which is integrated within the CDE
Application Manager. The PL/I Set for AIX application folder contains
icons representing the PL/I tools and applications. CDE integration of
the PL/I tools allows the user to invoke the tools in a simple and
consistent manner.
 
The CDE desktop recognizes different types of files using a data type
database. A data type identifies the files of a particular format and
associates them with the appropriate applications. These associations
mean that users don't have to remember command line invocations of
tools. In most cases when a user double-clicks on a file, the CDE
desktop will automatically launch the correct application that
understands that file's data.
 
The PL/I application folder contains:
 
o   Live Parsing Extensible (LPEX) editor
o   Program Builder
o   Debugger
o   PL/I online documentation
 
LPEX EDITOR
 
The LPEX editor is a language-sensitive editor that supports PL/I. The
LPEX editor can be used to create and edit many types of text files,
including program source and documentation. Using LPEX, developers can:
 
o  Use multiple windows to display several documents or to display more
     than one view of the same document
o  Dynamically configure LPEX to be a multiple-window or single-window
     tool
o  Select a block of text and move or copy it between documents
o  Cut-and-paste to a shell or another application
o  Undo previous changes to a document
 
Developers can customize and extend virtually every aspect of this
programmable editor. LPEX is designed to be extended through dynamic
link libraries. There is no proprietary extension language to learn.
With the LPEX application programming interface (API), developers can
write powerful extensions to the editor. In addition, LPEX provides a
rich command language that developers can use to create or modify editor
functions. Developers can:
 
o  Define their own fonts and colors
o  Modify the editor action key layout
o  Add menus to perform frequently used commands (menu definitions
     can be applied on a filename extension basis)
o  Write their own editor commands
 
PROGRAM BUILDER
 
The Program Builder manages the repetitive tasks of compiling, linking,
and correcting errors in program source code. The Program Builder is
designed to:
 
o  Provide a graphical user interface to simplify the process of setting
   and saving compile and linker options.
 
o  Support error browsing from a list display. Selecting a compile error
   in the list will position you at the error in the source code in the
   LPEX Editor.
 
o  Create a makefile that is used by the AIX make command to construct
   and maintain programs and libraries. The Program Builder also
   determines build dependencies by scanning the source-code files for
   dependency information.
 
DEBUGGER
 
The debugger helps you detect and diagnose errors in code developed
using the PL/I Set for AIX compiler. The intuitive graphical user
interface allows you to control execution of the program, examine and
modify data (variables, storage, and registers), and perform many other
useful functions.
 
The debugger provides machine-level and source-level debugging. It is
built around a set of core functions designed to let developers quickly
and efficiently control execution, and analyze data. With these core
functions, developers can:
 
o  Display and change variables
o  Display and change storage
o  Display and change the processor registers
o  Display the call stack
o  Add and delete simple and complex breakpoints
o  Control the execution of multiple threads
o  View source code as listing, disassembly or mixed
 
CICS for AIX Version 2.1 transactions built with IBM PL/I Set for AIX
can be debugged interactively.
 
LOCAL AND REMOTE DATA ACCESS
 
IBM PL/I Set for AIX provides the ability to write applications that
support local and remote access to data, including:
 
o  The IBM SMARTdata UTILITIES (SdU), which are designed to provide
   record-oriented file access through standard PL/I I/O statements to:
   -  local AIX VSAM files
   -  remote MVS VSAM, SAM, PDS, and PDSE files
   -  remote OS/400 files
   -  remote CICS managed VSAM files on MVS through CICS/DDM
 
o  Support for local and remote DB2 data access using DB2 for AIX
 
o  Support for local and remote CICS data access using CICS for AIX or
     CICS Client for AIX
 
USE OF IBM AIX ENGINEERING SCIENTIFIC SUBROUTINE LIBRARY/6000
 
As an additional benefit, IBM PL/I Set for AIX can use the libraries of
IBM AIX Engineering Scientific Subroutine Library/6000 (ESSL/6000). IBM
AIX ESSL/6000 provides robust mathematical software that is highly tuned
to the specific characteristics of the RISC System/6000 processors.
 
OPEN ENTERPRISE -- The PL/I compiler is designed according to the
specifications of the following industry standards as understood and
interpreted by IBM:
 
o  American National Standard Code for Information Interchange (ASCII)
   X3.4 -- 1977
 
o  American National Standard Representation of Pocket Select Characters
   in Information Interchange, level 1, X3.77 -- 1980 (proposed to ISO,
   March 1, 1979)
 
o  The draft proposed American National Standard Representation of
   Vertical Carriage Positioning Characters in Information Interchange,
   level 1, dpANS X3.78 (also proposed to ISO, March 1, 1979)
 
o  Selected features of the American National Standard PL/I General
   Purpose Subset (ANSI X3.74-1987)
 
Product Positioning
-------------------
 
As a PL/I customer, if you thought you would need to look to other
languages as your only option in creating powerful client/server
applications, or moving to emerging technologies, be assured there is
another option. You can remain with PL/I and still take advantage of
these new technologies. IBM's PL/I family of products allows you to take
advantage of the existing skill in your organization, preserve the
valuable program base and subsystem linkages you built, and still move
aggressively to utilize workstations in mission-critical applications.
Application development on new platforms and/or with emerging
technologies can begin in a gradual manner, without the need to retrain
programmers and undertake a new language.
 
IBM's PL/I family of products provides a consistent PL/I across multiple
platforms. The IBM PL/I offerings now reach across workstation and host
environments (OS/2, AIX, MVS, VM, AS/400, and VSE) -- with consistent
language implementation and optimized run-time performance for the
target platform -- to support dedicated or client/server applications.
These environments all have access to data through VSAM, DB2, IMS, and
CICS, where present.
 
For native host development, you will be able to use IBM PL/I for MVS
and VM with IBM Language Environment for MVS and VM, or IBM PL/I for VSE
with IBM Language Environment for VSE, to support creation of host
applications. Language Environment provides a common run-time
environment for language products that conform to its architecture (that
is, IBM PL/I for MVS and VM, IBM PL/I for VSE, IBM COBOL for MVS and VM,
IBM COBOL for VSE, AD/Cycle C/370, and IBM C/C++ for MVS/ESA). Some
advantages of PL/I with Language Environment include flexible run-time
options, faster and easier interlanguage communication (ILC) support,
dynamic ILC for all systems and subsystems, and a common condition
handling architecture. These functions and, in particular, the ILC
support provided by Language Environment, allow host PL/I programmers to
reuse code. By conforming to Language Environment, PL/I for MVS and VM
and PL/I for VSE can minimize new development and make it easier to
share code between applications. This reduces the cost of PL/I
application development, test, and maintenance, while helping to improve
code quality.
 
IBM PL/I for OS/2 provides the premier PL/I product on the OS/2 platform
for the creation of mission-critical applications. The workstation
development environment provides an integrated set of tool functions and
a visual builder supporting development of applications targeted for
running on various platforms. WorkFrame/2 is used as an integration
point for the OS/2 development environment, providing a flexible and
powerful development system that exploits the OS/2 Workplace Shell. IBM
PL/I for OS/2, when used with IBM's TeamConnection, provides a powerful,
comprehensive team development environment. IBM PL/I for OS/2 works with
TeamConnection to store PL/I source and executable files and to build
PL/I applications. TeamConnection provides version control and change
management.
 
IBM PL/I Set for AIX supports both client and server application
development on AIX, providing an integrated set of tools. This includes
a customizable editor and debugger. The new AIX PL/I environment is
consistent and compatible with the OS/2 environment, and is integrated
to CDE on AIX.
 
IBM PL/I for OS/2 and IBM PL/I Set for AIX are excellent choices for
creating client/server applications. They also provide a means for
moving development work to the workstation for applications targeted to
execute on the host system. Testing can be done on the workstation, with
only the final system testing being done on the actual target (host in
this case) system. IBM's approach, with the final edit, compile and
debug capability on the host, allows this final testing to take place in
a powerful and supported environment. IBM PL/I for OS/2 and IBM PL/I Set
for AIX implement this paradigm by providing function that makes it easy
to move programs between the workstation and the host.
 
Hardware Requirements
---------------------
 
PL/I Set for AIX Version 1 and its generated object programs run on RISC
System/6000 family processors running IBM AIX Version 4.1.3 (or
subsequent releases), including POWER, POWER2, SMP, SP2, and PowerPC
processors, configured with at least one supported display, keyboard,
and mouse.
 
Software Requirements
---------------------
 
REQUIRED PROGRAMS: PL/I Set for AIX Version 1 and its generated object
programs run under IBM AIX Version 4.1.3 (or subsequent releases).
 
OPTIONAL PROGRAMS:  PL/I Set for AIX Version 1 and its generated object
programs run under the control of, or in conjunction with, the following
optional programs and their subsequent releases:
 
o  To use DB2 (embedded EXEC SQL statements), one of the following:
   -  IBM DB2 for AIX Version 2
   -  IBM DB2 Software Developer's Kit for AIX Version 2
o  To use CICS (embedded EXEC CICS statements):
   -  IBM CICS for AIX Version 2.1
o  To use SNA connectivity:
   -  IBM AIX SNA Server/6000 Version 2.2
o  To access MVS VSAM/SAM files on your MVS host with SdU:
   -  DFSMS/MVS Version 1.2.0 is required on your MVS host
o  To use remote CICS-managed VSAM files through CICS/DDM with SdU:
   -  CICS/DDM Release 1 is required on your MVS host
o  To use the IBM AIX ESSL/6000 libraries:
   -  IBM AIX ESSL/6000 Version 2.2.2
 
Compatibility
-------------
 
IBM PL/I Set for AIX Version 1 is source-level compatible with IBM PL/I
for OS/2 Version 1, with the exception that PL/I Set for AIX Version 1
does not support multithreading.
 
IBM PL/I Set for AIX Version 1 is source-level compatible with IBM host
PL/I products (OS PL/I Version 2 Release 3, IBM PL/I for MVS and VM, IBM
PL/I for VSE) ,with some exceptions due to fundamental platform
differences.
 
The publications IBM PL/I SET FOR AIX PROGRAMMING GUIDE and IBM PL/I SET
FOR AIX LANGUAGE REFERENCE include detailed information about the
differences, as well as advice for porting applications between the
different platforms. The compiler also includes features such as the
LANGLVL compile-time option, which allows for doing language-level
checking, and the DEFAULT compile-time option, which can be used to
instruct the application to treat data (EBCDIC vs. ASCII character set)
and floating-point operations (hexadecimal format vs. IEEE format) the
same way that S/390 does. These features can assist the developer in
attaining compatibility and portability across platforms.
 
Products and Charges
--------------------
 
                                                 OPTIONAL MONTHLY
PROGRAM                PART        ONE-TIME      SUPPORT-LINE
NAME                   NUMBER      CHARGE        CHARGE
 
PL/I Set for AIX       33H1858      895 USD      229 USD
  Version 1
  Program Package
  on CD-ROM
 
PL/I Set for AIX       33H5425    1,045          229
  Version 1
  Program Package
  on 8-mm tape
 
ADDITIONAL LICENSE COPY: Authorizes the customer who has a program
package to make a single copy of the program media and printed
documentation. The authorization is given by providing the customer
a Proof of Entitlement for Additional License -- with certificate has
its own part number and feature number.
 
ADDITIONAL LICENSES CHARGE: Customers who pay a one-time charge for
additional licenses may copy machine-readable program materials and
printed documentation previously acquired from IBM in a program
package.  One copy may be made for each additional license ordered.
 
USE-BASED FEATURE CHARGE: Customers who pay a one-time charge for
use-based features are authorized for a number of users to access the
program, or a number of resources which may use or be managed by the
program, equal to the number of use based features acquired. An
authorization for a number of users or number of resources used or
managed is the Proof of Entitlement for Use-Based Features.
 
PROGRAM                                             PART    ONE-TIME
NAME                                                NUMBER    CHARGE
 
PL/I Set for AIX Version 1                          33H5452      849 USD
  Entitlement for 1 Additional User
  Additional License with Certificate
 
PL/I Set for AIX Version 1                          33H5497      849
  Entitlement for 1 Additional User
  with Certificate
 
PL/I Set for AIX Version 1                          33H5470    4,035
  Entitlement for 5 Additional Users
  with Certificate
 
PL/I Set for AIX Version 1                          33H5479    7,645
  Entitlement for 10 Additional Users
  with Certificate
 
PL/I Set for AIX Version 1                          33H5488   35,659
  Entitlement for 50 Additional Users
  with Certificate
 
GETTING-STARTED PERIOD: A 60-day, getting-started period is provided by
the AIX Support Family for the first license in an enterprise location,
site, or centralized help desk. Voice support during the getting-started
period is limited to installation, usage, and code-related support for
that product only. All other questions will require an AIX Support Line
contract. If you do not have a contract, you will be referred to the AIX
Support Family Project Office for contract information.
 
30-DAY, MONEY-BACK GUARANTEE: The IBM 30-day, money-back guarantee
applies.
 
========================================================================
 
                     +----------------------------------+
                     | IBM SOMobjects for MVS Version 1 |         mvsobj
                     |  Release 2 Limited Availability  |
                     +----------------------------------+
 
In Brief ...
------------
 
SOMobjects for MVS:
 
o   Provides a heterogeneous distributed-objects capability between MVS
    and other platforms
 
o   Provides an end-to-end distributed computing solution
 
o   Allows for new OO applications and services to be deployed on MVS
 
o   Enables access from MVS object-oriented applications to the
    traditional MVS execution environments, such as CICS and IMS
    Transaction Manager
 
o   Incorporates the traditional strengths of MVS with large-scale,
    object-server capability within a client/server configuration across
    an enterprise
 
o   Minimizes development costs by adhering to standards
 
o   Improves portability of applications by supporting the open
    capabilities of MVS
 
Overview
--------
 
Today's business environment requires faster and better-quality
application development. Object-oriented technology contributes to these
goals by providing a new approach to developing applications.
 
SOMobjects for MVS Version 1 Release 1 introduced object-oriented (OO)
programming on MVS. This important programming technology offers
expanded opportunities for the reuse of software, increased flexibility,
and better time-to-market. Release 2 of SOMobjects for MVS continues to
offer these OO opportunities- while also extending the power of the
System Object Model (SOM) to allow objects on MVS to communicate with
objects across different systems. In this way, MVS can now be targeted
as the object server in a heterogeneous world of clients.
 
In addition, Release 2 of SOMobjects for MVS combines the benefits of OO
programming with the open services of MVS. Extensions to SOMobjects for
MVS, C/C++ for MVS/ESA, the C/C++ runtime library, and OpenEdition MVS
services expands the set of UNIX functions available to OO application
programmers. With these extensions, you can achieve a greater level of
application portability between platforms that support UNIX functions.
 
Planned availability date: 29 December 1995
 
Limited Availability
--------------------
 
SOMobjects for MVS Version 1 Release 2 is based on the current
SOMobjects Developer Toolkit Version 2 Release 1 for AIX, which complies
with the Common Object Request Broker Architecture (CORBA) specification
1.1, defined by the Object Management Group (OMG) and X/Open Company
Limited.
 
Because SOMobjects for MVS will eventually be based on the CORBA 2.0
Interoperability specification, this release is a limited availability
release, and will not become generally available. Later enhancements
will be made to conform to CORBA 2.0, and will be generally available in
subsequent releases of the base operating system. Customers should be
aware of possible migration concerns from SOMobjects for MVS Version 1
Release 2 and subsequent releases, as described in the Compatibility
section of this announcement.
 
Orders for the Limited Availability Program
-------------------------------------------
 
Orders for the Limited Availability program must be submitted through an
IBM representative and must be approved prior to shipment. IBM reps
should send their requests for approvals to OOQSTART at KGNVMC.
 
Orders will be approved on a first-come, first-served basis until the
limit is reached. On 31 December 1996, SOMobjects for MVS Version 1
Release 2 will be withdrawn from marketing.
 
Description
-----------
 
SOMobjects for MVS, along with a supported programming language of
choice, provides the platform to build object-oriented applications on
MVS. It is based on the SOM technology for defining and managing binary
class libraries. The distributed SOM (DSOM) function further enhances
the capabilities of SOM by providing inter-object client/server
communications, allowing application programs to access objects across
address spaces and across a network.
 
DSOM complies with the Common Object Request Broker Architecture (CORBA)
1.1 specification published by the Object Management Group (OMG) and
X/Open Company Limited. DSOM supports networks of objects that are
distributed across and managed by multiple, heterogeneous
CORBA-compliant Object Request Brokers (ORBs). The DSOM function on MVS
provides interoperability with the currently available DSOM 2.1
implementations on AIX/6000 and OS/2.
 
DSOM uses the standard SOMobjects for MVS compiler, interface
repository, language bindings, and class libraries, and provides a
growth path for non-distributed SOMobjects for MVS applications. If you
are already developing SOM applications, you will be able to extend your
current applications to run in a distributed environment.
 
DSOM extends the power of SOMobjects for MVS to allow a program to
invoke methods on SOM objects in other address spaces, even on different
machines. Location and implementation of the object are transparent to
the user, since the client accesses the object via a local proxy. The
DSOM runtime also provides the services and underlying execution
environment required by server applications which accept client requests
for remote object activation and method execution. The server
application may be single- or multi-threaded, and may support several
connections to different clients concurrently. Objects created by a
given client may persist beyond the life of the client connection and
may be shared by other clients connected to the same server.
 
DSOM leverages the integrated socket support provided by the open
services of MVS and therefore supports a single communication interface
for multiple transport protocols. Only TCP/IP (UDP) will be supported
via the integrated socket.
 
DSOM provides facilities to secure resources associated with distributed
objects. In particular, an installation can provide access control of
clients to servers and of servers to the DSOM facilities themselves.
 
C/C++ applications may use the MVS POSIX-compliant system services as
well as the traditional MVS system services. This gives the customer the
flexibility to choose the system services appropriate to the
application.
 
DSOM client applications and server programs will be supported in Batch,
Started Task, Time Sharing Option (TSO), Advanced Program-To-Program
Communication (APPC), and OpenEdition Shell execution environments.
 
DSOM facilitates access to traditional transaction programs, for
example, CICS or IMS from object-oriented applications running outside
of the CICS or IMS transaction environments.
 
You will now be able to combine the open services of MVS with
object-oriented capability. Enhancements to SOMobjects for MVS, C/C++
for MVS/ESA, the C/C++ runtime library, and OpenEdition services will
expand the set of UNIX functions available to OO application
programmers. These enhancements include continued support for
conformance to POSIX standards and Open specifications (XPG4 Base
Branding and XPG4.2). This provides a greater level of portability
between heterogeneous platforms that support these standards. (See the
MVS/ESA Version 5 Release 2.2 Availability announcement and the C/C++
for MVS/ESA Software announcement elsewhere in this newsletter.)
 
The SOM compiler will now be able to operate within the OpenEdition
Shell. Input to the SOM compiler and its output can be stored in
OpenEdition's Hierarchical File System (HFS). Users will be able to
invoke the SOM compiler from the OpenEdition Shell. In this way, UNIX
users will be able to work in a familiar environment and use editors
that they are comfortable with.
 
Product Positioning
-------------------
 
Today, MVS serves the data-processing needs of some of the largest
commercial enterprises in the world. The system is renowned for its
high-volume, online transaction processing and large-capacity,
batch-processing capabilities. With the introduction of object-oriented
technology on MVS, you can reap the benefits of object orientation,
including the reuse of software componentry, better time-to-market, and
increased flexibility, while leveraging the traditional characteristic
strengths of the MVS system in a transparent manner. In this second
phase of object-oriented technology, the power of SOM is extended
through the DSOM capability, so that applications can access objects
across different systems. MVS can now be targeted as a large object
server in a heterogeneous world of clients.
 
Customers are developing applications to run in an open, distributed
environment, with MVS as the target execution environment. Customers are
using standards and common code to minimize development costs, and are
interested in being able to port their applications between platforms.
By conforming to the same ANSI standards, you can write a C, C++, or
COBOL application and port the applications to MVS, since C, C++, and
COBOL are available on both workstations and MVS. In addition,
conformance to POSIX and X/Open standards enables SOMobjects for MVS and
C and C++ users to port their OpenEdition applications between
platforms.
 
Statement of General Direction
------------------------------
 
Currently, SOMobjects for MVS complies with the CORBA 1.1 specification
published by the Object Management Group (OMG) and X/Open. In keeping
with IBM's commitment to industry standards, IBM intends to comply with
the CORBA 2.0 Interoperability specification in subsequent releases of
the base operating system, and will incorporate OMG's Object Services
standards as appropriate.
 
The above statements represent IBM's current intended plans. IBM will
continue to monitor business conditions and requirements, and may make
changes to these plans as required.
 
Hardware Requirements
---------------------
 
SOMobjects for MVS supports all processors that support MVS Version 5
Release 2.2.
 
Software Requirements
---------------------
 
The program products stated are required at their current or subsequent
releases.
 
BASIC SOM FUNCTION
 
o  Required
   -  MVS/ESA SP Version 5 Release 2.2 (5655-068 or 5655-069)
   -  Language Environment for MVS and VM Version 1 Release 5 (5688-198)
        with PTF OR MVS C/C++ Language Support Feature on MVS/ESA SP
        Version 5 Release 2.2 at Language Environment for MVS/VM 1.5
        level with PTF (5655-068 or 5655-069)
   -  SMP/E Version 1 Release 8 (5668-949) with PTF
 
o  Optional
   -  TSO/E Version 2 Release 4 (5685-025)
   -  C/C++ for MVS/ESA Version 3 Release 1 (5655-121)
   -  IBM COBOL for MVS and VM Version 1 Release 2 (5688-197) (available
        at a later date)
   -  OpenEdition MVS/ESA Shell and Utilities Feature Version 5 Release
        1.0 (5655-068 or 5655-069)
 
DISTRIBUTED SOM FUNCTION
 
o  Required
   -  SOMobjects Developer Toolkit 2.1 for AIX or OS/2 (10H9767) and CSD
        2.1.1
   -  TCP/IP Version 3 Release 1 (5655-HAL) or ACF/VTAM Version 4
        Release 3 (5695-117) AnyNet/MVS Feature
 
o  Optional
   -  TSO/E Version 2 Release 4 (5685-025)
   -  DFSMS/MVS Version 1 Release 2 (5695-DF1) NFS Server Feature
   -  C/C++ for MVS/ESA Version 3 Release 2 (5655-121)
   -  Resource Access Control Facility (RACF) Version 2 Release 2
        (5695-039) and PTF or equivalent
   -  OpenEdition MVS/ESA Shell and Utilities Feature Version 5 Release
        2.2 (5655-068 or 5655-069)
 
Compatibility
-------------
 
SOMobjects for MVS Version 1 Release 2 complies with the CORBA
specification 1.1. Later enhancements will conform to the CORBA 2.0
Interoperability specification. The migration between SOMobjects for MVS
Version 1 Release 2 and releases that will support CORBA 2.0 introduces
incompatibilities in the following areas:
 
o  Changing the structures for object references and wire formats of the
   data that flow between DSOM objects.
 
o  Changing the format and location of the implementation repository. To
   ease in this migration, a tool will be provided that will convert the
   2.1 implementation repository to the new implementation repository
   format.
 
This means that installations that use the current limited availability
release will not be able to have this release and releases that conform
to CORBA 2.0 co-exist within the same ORB. You would have to replace the
server and client runtimes at the same time.
 
To ease the migration to new releases, users must also adhere to the set
of guidelines outlined in the publications for this release.
 
It is important to note, however, that investments in applications and
classes will be protected. The DSOM Application Programming Interfaces
(APIs) between releases will be preserved such that the applications
themselves will not have to be modified (neither the client nor server
side of the applications would need to be changed and/or recompiled).
 
More detailed information about restrictions and differences will be
provided in the product publications.
 
Packaging
---------
 
SOMobjects for MVS will be packaged and shipped on 6250 tapes, 3480 tape
cartridges, and 4-mm tape cartridges.
 
Ordering Information
--------------------
 
Current licensees of SOMobjects for MVS must order this release via MES.
SOMobjects for MVS Version 1 Release 2 will be withdrawn from marketing
on 31 December 1996. Ordering instructions are scheduled to be mailed
from IBM Software Manufacturing Solutions (SMS) to all current licensees
by two weeks after availability. Version 1 Release 1 may still be
ordered.
 
Orders for new licenses will be accepted now for SOMobjects for MVS
Version 1 Release 2 until it is withdrawn from marketing on 31 December
1996.
 
Shipment will begin on the planned availability date, 29 December 1995.
Orders that ship after the planned availability date and have been
approved for the Limited Availability program will receive SOMobjects
for MVS Version 1 Release 2.
 
========================================================================
 
          +-------------------------------------------+
          | IBM C/C++ for MVS/ESA Version 3 Release 2 |         mvscplus
          +-------------------------------------------+
 
In Brief...
-----------
 
C/C++ for MVS/ESA combines the advantages of the C language with the
benefits of object-oriented programming. Version 3 Release 2 of this
program:
 
o  Lets application developers use object-oriented technology to build
   OpenEdition applications.
 
o  Helps create applications that make interlanguage calls to FORTRAN.
 
o  Offers improvements and additions to C/C++ compiler options, pragmas,
   and macros.
 
o  Lets application developers reuse existing code developed on or for
   another platform.
 
o  Taps into the growing pool of C and C++ programming talent to create
   or extend MVS/ESA host applications.
 
C/C++ for MVS/ESA is an MVS-based, language-centered environment.
Application developers can use this object-oriented environment to
create, modify, test, and debug mission-critical C or C++ applications
targeted to execute on the MVS/ESA platform.
 
What's New in Version 3 Release 2
---------------------------------
 
In Version 3 Release 2, C/C++ for MVS/ESA has been enhanced to become an
integral part of the MVS/ESA OpenEdition's conformance to X/Open's XPG4
Base Profile branding requirements. Application developers are now able
to port a wide variety of applications from UNIX to take advantage of
the robustness, reliability, and scalability of the MVS system.
 
In addition, the following is available with Version 3 Release 2:
 
o  SUPPORT OF OPENEDITION: Allows application developers to use
   object-oriented technology to build OpenEdition applications
 
o  INTER-LANGUAGE COMMUNICATION SUPPORT: Lets application developers
   create C or C++ applications that can make interlanguage calls to
   FORTRAN
 
o  C++ SUPPORT FOR OPENEDITION
 
o  DATABASE ACCESS CLASS LIBRARY UTILITY: Enables programmers to use
   class libraries to access DB2 in an object-oriented manner
 
o  C/C++ FOR MVS/ESA MODEL TOOL: Provides online help for C/C++ library
   functions and pragmas
 
o  IMPROVEMENTS AND ADDITIONS TO C/C++ MVS COMPILER OPTIONS, PRAGMAS,
   AND MACROS
 
C/C++ for MVS/ESA combines the best of the technology inherent in the
C/370 product with the object-oriented technology found in other members
of the IBM VisualAge C++ and C Set ++ family of products.
 
PRICE: Unchanged by this release.
 
PLANNED AVAILABILITY DATE: 22 December 1995.
 
Description
-----------
 
Enhancements in IBM C/C++ for MVS/ESA Version 3 Release 2 are made to
support both OpenEdition and Object Oriented Programming on MVS. In
addition, National Language Support is enhanced, and a new utility and
new tool are introduced.
 
XPG4 SUPPORT
 
C/C++ for MVS/ESA is enhanced to enable application developers to write
C applications that utilize the expanded application programming
interfaces (APIs) that have been added to MVS/ESA SP Version 5 Release
2.2.
 
The support of these expanded APIs allow MVS/ESA SP Version 5 Release
2.2 to conform to the XPG4 (X/Open Portability Guide 4) Base Profile
Branding requirements of X/Open and a significant set (90 percent) of
the functions defined by the X/Open XPG4.2 (X/Open CAE Specification
System Interfaces and Headers Issue 4, Version 2) single UNIX
specification (previously referred to as Universal UNIX (UU), Spec1170,
and Common API Specification (CASPEC)). In particular, IBM C/C++ for
MVS/ESA Version 3 Release 2 conforms to the C Language as defined in
ISO/IEC 9899:1990(E), Programming Languages-C (ISO C), and in X/Open
Specification, Programming Languages, Issue 3 (X/Open C). Support of
XPG4 Base Branding and a significant portion of XPG4.2 will give MVS
customers the confidence that the UNIX application interfaces on MVS/ESA
SP Version 5 Release 2.2 meet standardized requirements, and will enable
them to port a wide variety of applications from UNIX to take advantage
of the robustness, reliability, and scalability of the MVS/ESA system.
 
C++/MVS SUPPORT UNDER OPENEDITION MVS
 
C++/MVS is enhanced in this release to support OpenEdition MVS.
Application developers using C++ can now use object-oriented technology,
including SOMobjects for MVS, to build OpenEdition applications. The
support of C++/MVS under OpenEdition MVS includes:
 
o  The invocation of the C++/MVS compiler using the OpenEdition cxx
   command.
 
o  Generation of C++/MVS applications running in the Shell environment
   of OpenEdition.
 
o  C/C++ support for Dynamic Link Library (DLL) for OpenEdition
   applications.
 
o  Access from C++ to data in the Hierarchical File System.
 
o  C++ Class Library (IO Stream, Complex, Collection Class, and
   Application Support Class) support for OpenEdition MVS
   (single-threaded operation).
 
o  A runtime library small programming enhancement (SPE), announced in
   the MVS/ESA SP Version 5 Release 2.2 Availability Announcement, with
   a ship date of December 1995, will allow C++ programmers to use
   OpenEdition MVS Services.
 
NIST
 
The Federal Information Processing Standards (FIPS) specifications are a
series of US government procurement standards managed and maintained on
behalf of the US Department of Commerce by the National Institute of
Standards and Technology (NIST). This C/MVS portion of the compiler will
be validated for conformance to FIPS 160 (C language) by NIST. The NIST
certification of C/C++ for MVS/ESA directly supports IBM's intention to
gain XPG4 base branding for MVS/ESA SP Version 2 Release 2.2. NIST
certification will encourage customers to consider C/C++ for MVS/ESA
when making their procurement decisions.
 
LOCALE DEFINITION UTILITY XPG4 SUPPORT
 
C/C++ for MVS/ESA provides the Locale Definition Utility. In this
release, the Locale Definition Utility is enhanced to conform to XPG4.
The Locale Definition Utility supports the creation of separate files of
cultural data, or locales, which can be referenced dynamically by an
application using the library functions of Language Environment.
 
INTERLANGUAGE COMMUNICATION SUPPORT
 
The ability for interlanguage communication (ILC) from C to FORTRAN has
been tested successfully to work with C/C++ for MVS/ESA Version 3
Release 1. C/C++ for MVS/ESA has been enhanced in this release to
support ILC from C++ to FORTRAN as well. Used in conjunction with the
ILC facilities provided by the runtime libraries, C or C++ applications
can now call or be called by other languages such as FORTRAN, COBOL,
PL/I, or Assembler. The ILC facilities enable application developers to
use the language best suited for the job at hand. C/MVS or C++/MVS code
can be used where the programmer is most familiar with the language, or
where the unique features of the C or C++ language are required.
 
SWITCHABLE NL MESSAGES
 
National Language Versions of C/C++ for MVS/ESA that support the English
and Japanese languages are now installable together. The application
developer can select or switch, at compiler invocation time, to the
national language of choice when developing their application.
Programmers who wish to have the freedom of choice in the use of any of
the supported national languages while working with the compiler will no
longer have to install and maintain two separate images of the product,
one for each language. To complement this new multilingual installation
support, the English and Japanese message files are now packaged and
shipped on the same tape. This support is consistent with a similar
support that is currently available in Language Environment for MVS and
VM.
 
In addition, IBM C/C++ for MVS/ESA Version 3 Release 2 improves many of
the messages and diagnostics so that they are consistent with the
messages contained in other members of the VisualAge C ++ and C Set ++
family of products.
 
C/C++ FOR MVS/ESA MODEL TOOL
 
The C/C++ for MVS/ESA Model Tool provides online help for application
developers who are using the C/C++ library and compiler to create C or
C++ applications. When used in conjunction with the ISPF editor, the
application developer can select information for each library function
or pragma. For the pragmas, read-only help and modifiable pragma models
will be dropped into the user's edit session. For the library functions,
read-only function prototypes and other information will be dropped into
the user's edit session. Read-only information can be made modifiable.
The read-only help will disappear when the user saves the data set
member, leaving only the newly created application. The C/C++ for
MVS/ESA Model Tool will help enhance programmer productivity when
developing C or C++ applications using C/C++ for MVS/ESA.
 
OPTIONS, PRAGMAS, AND MACROS
 
Improvements and additions are made in this release to the C/C++ for
MVS/ESA compiler options, pragmas, and macros. For example, a number of
compiler options have been extended to support additional C++ and
OpenEdition functions. Existing pragma support is improved by adding
more suboptions and pre-defined macros.
 
DATABASE ACCESS CLASS LIBRARY UTILITY
 
A new tool, the Database Access Class Library Utility, is introduced to
generate DB2 data access classes. Today, the C/C++ for MVS/ESA
development environment allows programmers to create applications that
access DB2 relational databases. C++ programmers use C code to interface
with DB2 in a procedural manner. With the Database Access Class Library
utility, C++ programmers will be able to now use classes to access DB2
in an object-oriented manner. The Database Access Class Library utility
generates classes, based on a relational database schema, which contain
classes representing persistent objects. By incorporating these classes
into their applications, programmers can work with persistent objects
the same way they do with transient objects.
 
OPEN ENTERPRISE
 
o  C++ language:
   -  Draft Proposal International Standard for Information Systems --
      Programming Language C++ (X3J16/92-00091)
 
o  C language:
   -  International standard ISO/IEC 9899:1990(E); International
        Organization for Standardization/International
        Electrotechnical Commission, Programming Languages -- C
   -  ANSI/ISO 9899:1990 (1992); American National Standards Institute,
        C language; formerly ANSI X3J11.159-1989 C
   -  X/Open Specification, Programming Languages, Issue 3 (X/Open C)
   -  IEEE Standard 1003.2-1992, IEEE Standard for Information
        Technology, Portable Operating System Interface (POSIX) Shell
        and Utilities
        --  X/Open CAE Specification, System Interface Definitions,
              Issue 4
        --  Defines locale syntax/semantics, locale creation tool (with
              known limitations as documented in the Programming Guide)
   -  A subset of the ISO/IEC Programming Language C Amendment 1, to be
         ISO/IEC 9899:1990/Amendment 1:1994(E)
 
C language support, in conjunction with MVS/ESA OpenEdition and Language
Environment Release 5:
 
o  ISO/IEC 9945-1:1990(E)/IEEE POSIX 1003.1-1990, System Application
     Programming -- C Language
o  A subset of IEEE POSIX 1003.1a, System Application Programming
     Extension, Draft 6, July 1991
o  A subset of IEEE POSIX 1003.4a, Threads, Draft 6, February 1992
 
Product Positioning
-------------------
 
C is a general-purpose application language as well as an excellent
assembly language substitute for commercial accounts. It is a language
for portable application development, enabling a choice of development
and target execution environments. It is a language known by a large
number of programmers, especially recent graduates, and is an ideal
alternative or second language to be used with COBOL, PL/I, FORTRAN, or
Assembler.
 
C++ combines the technical and practical advantages of the C language
with the benefits of object-oriented programming. The fact that C++ is
derived from C, one of the world's most popular conventional programming
languages, gives C++ two distinct advantages over other Object Oriented
Programming Languages (OOPLs):
 
1. The ability to readily interface to, and extend, existing C
   applications
 
2. An abundance of developers with C programming skills (which increases
   the likelihood that C++ will become the most pervasive OOPL in the
   industry)
 
Since it is object-oriented, you can reuse existing C++ objects to
quickly create and modify applications, allowing you to keep pace with
ever-changing business needs.
 
By extending the existing C/370 product with C++ support while
maintaining compatibility with existing C/370 applications, IBM will
make it easy for developers to get started with C++ while providing the
same robust C development environment customers who are building
mission-critical applications have grown to depend on.
 
Customers who have already invested in the IBM VisualAge C++ and the IBM
C Set ++ workstation products will notice a strong similarity not only
in the compiler but in the set of compiler-related tools provided in
C/C++ for MVS/ESA as well. From a programmer perspective, this means
that C/C++ programming skills acquired on one platform of the C/C++
family of products will be transferable to other supported platforms.
For large enterprises and ISVs, this offers the ability to:
 
o  Tap into the growing pool of C and C++ programming talent to create
   or extend MVS/ESA host applications.
 
o  Reuse existing code developed on or developed for another platform.
 
The suite of class libraries contained in the C/C++ for MVS/ESA
environment is possibly the most comprehensive offered by any other MVS
C++ vendor, and is consistent with those delivered in the other members
of the VisualAge C++ and C Set ++ families of application development
products.
 
C/C++ for MVS/ESA participates in the Workgroup C++ AD Solution as the
latest member in the IBM VisualAge C ++ and IBM C Set ++ family.
 
IBM intends to enhance its support for C/C++ application development,
targeting MVS, by extending the existing IBM VisualAge C ++ workstation
function with enhancements specific to mainframe programmer needs. Over
time, as the workstation and host members of the IBM VisualAge C ++
family of application development tools become more closely aligned,
customers will be able to choose the development platform most
appropriate to the application being developed without having to worry
about learning new tools. Tools will be provided to allow customers
more flexibility in building client/server applications.
 
C/C++ for MVS/ESA is a key development tool in the Object-Oriented
Solution for MVS, and in support of SOMobjects for MVS.
 
As the follow-on to C/370, C/C++ for MVS/ESA supports the Open
Distributed strategy, and supports the OpenEdition MVS environment.
 
National Language Support
-------------------------
 
C/C++ for MVS/ESA provides a Locale Definition Utility. This supports
the creation of separate files of cultural data, or locales, which can
be referenced dynamically by an application using the library functions
of Language Environment.
 
Locales can be used to customize the information that defines how a
C/C++ application works in the end-user's environment, with respect to
differences in national language, culture, and the data encoding schemes
(coded character sets). This allows programmers to change the formatting
convention for date, time, numeric, and monetary data, and to process
data using the appropriate character classification and character
collation tables. The Locale Definition Utility and locales support are
being continually enhanced to support new standards. In this release,
locales are enhanced to conform to XPG4 and POSIX 1003.2.
 
The C/C++ runtime under Language Environment implements the wchar-t type
and its associated conversion functions which provide support for Double
Byte Character Sets such as EBCDIC-DBCS. The library also implements a
set of wchar-t I/O directives and a comprehensive set of wchar-t string
functions, including the shift-state dependent functions multibyte
support extensions defined by the ISO/IEC Programming Language C
Amendment 1.
 
Hardware Requirements
---------------------
 
C/C++ for MVS/ESA and its generated object code can be executed on any
IBM System/370 or System/390 processor supported by the operating
systems listed below.
 
Software Requirements
---------------------
 
REQUIRED LICENSED PROGRAMS
 
The IBM C/C++ for MVS/ESA licensed program and generated object programs
run under the latest release of the following System/370 and System/390
programming systems (later releases are supported unless otherwise
indicated):
 
o  MVS/ESA SP Version 5 (5655-068 or 5655-069)
o  MVS/ESA SP Version 4 (5695-047 or 5695-048)
 
One of the following is required for the compilation and execution of C
or C++ applications using C/C++ for MVS/ESA or its generated object
programs:
 
o  Language Environment for MVS and VM Release 5 (MVS Feature; 5688-198)
o  MVS/ESA SP Version 5 Release 2.2 C/C++ Language Support Feature
   (5655-068 or 5688-069)
 
These programs provide the required execution environment and library of
C/C++ run-time services. (The compiler is not needed for application
execution.)
 
SMP/E Version 1 Release 8 (5668-949) is the minimum level of SMP/E
required for installation of IBM C/C++ for MVS/ESA on MVS.
 
OPTIONAL LICENSED PROGRAMS
 
In conjunction with Language Environment for MVS and VM (MVS Feature),
IBM C/C++ for MVS/ESA Version 3 supports the following IBM licensed
programs (later releases are supported unless otherwise indicated).
 
o  One of the following for customization during or after installation:
     -  High Level Assembler/MVS and VM and VSE (5696-234)
o  CICS/ESA Version 4 (5655-018; for support of C++/MVS applications)
o  CICS/ESA Version 3 Release 3 (5685-083; available only through C/MVS
     support)
o  IBM DB2 Version 3 (5685-DB2)
o  IBM DB2 Version 2 Release 3 (5665-DB2)
o  DFSMS/MVS Version 1 (5695-DF1)
o  First Failure Support Technology (FFST/MVS (5695-044)
o  IMS/ESA Database Manager Version 4 (5685-012)
o  IMS/ESA Database Manager Version 3 Release 1 (5665-408)
o  IMS/ESA Transaction Manager Version 4 (5685-013)
o  IMS/ESA Transaction Manager Version 3 Release 1 (5665-409)
o  ISPF for MVS Version 4 (5655-042)
o  ISPF for MVS Version 3 Release 5 (5685-054)
o  ISPF/PDF for MVS Version 3 Release 5 (5665-402)
o  MVS/Data Facility Product (DFP) Version 3 Release 3 (5665-XA3)
o  MVS/XA DFP Version 2 Release 4 (5665-XA2)
o  Query Management Facility (QMF) Version 3 Release 1 (5706-254;
     available only through C/MVS support)
o  QMF Version 2 Release 4 (5668-721; available only through C/MVS
     support)
o  TCP/IP for MVS Version 3 (5655-HAL; available only through C/MVS
     support)
o  Transaction Processing Facility (TPF) Version 4 (5748-T14; available
     only through C/MVS support)
o  TPF Version 3 (5748-T13) with the TPF C language Support Feature
     (available only through C/MVS support)
o  TSO/E Version 2 Release 4 (5685-025)
 
For System Object Model (SOM) support, the following will be required:
 
o  SOMobjects for MVS (5696-822); SOMobjects for MVS run-time library
   will be required for execution of SOMobjects. In addition, C++
   Direct-to-SOM compilation will require the header files supplied with
   the SOMobjects for MVS programs.
 
For OpenEdition MVS support, the following is required:
 
o  MVS/ESA SP Version 5 OpenEdition Services for support of C/C++ for
     MVS/ESA applications with the Hierarchical File Systems (HFS) and
     OpenEdition POSIX C language support. HFS requires DFSMS/MVS
     Version 1 Release 2 (with PTF) or higher.
o  MVS/ESA SP Version 5 OpenEdition Shell and Utilities Feature HSU1120
     for the OpenEdition development environment with enabling PTFs and
     including the C89 utility to invoke the C/MVS compiler and the
     Language Environment Prelinker and the CXX utility to invoke the
     C++/MVS compiler and the Language Environment Prelinker.
o  MVS/ESA SP Version 5 OpenEdition DEBUGGER Feature HDX1120 with
     enabling PTFs for debugging C/C++ for MVS/ESA applications under
     OpenEdition POSIX(ON) environment.
o  For Distributed Computing Environment (DCE) support, the following
   no-charge features of MVS/ESA SP Version 5 Release 1:
   -  OpenEdition Distributed Computing Environment Base Services
        (5891 or 5892)
   -  OpenEdition Distributed Computing Environment User Data Privacy
        (5988 or 5989)
 
Optionally, OpenEdition DCE Application Support MVS/ESA (5655-064) for
interaction with CICS/ESA and IMS/ESA Interlanguage communication (ILC)
to and from applications written using any of the following and running
with Language Environment for MVS and VM:
 
o  System Assembler
o  High Level Assembler/MVS and VM and VSE (5696-234) for information
     files required by the DSECT Conversion Utility
o  IBM COBOL/370 (5688-197)
o  VS COBOL II Release 4 (5668-958, 5688-023, or 5688-022)
o  IBM PL/I for MVS and VM (5688-235)
o  OS PL/I Version 2 Release 2.1 (5668-909, 5668-910, or 5668-911)
o  IBM VS FORTRAN Version 2 (5668-806, 5688-087)
o  Cross System Product/Application Execution (CSP/AE) Version 3 Release
     3 (5668-814) for calls with programs running under this program
     (available only through C/MVS support)
 
Other VisualAge C++ and C Set ++ programs available include:
o  VisualAge C++ for OS/2 Version 3
o  IBM C Set ++ for AIX Version 3 (5765-421)
 
Compatibility
-------------
 
Source-level compatibility: C/370 Version 2 and AD/Cycle C/370 Release 2
are fully compatible with C/MVS under C/C++ for MVS/ESA.
 
Migration, Coexistence: C/C++ for MVS/ESA can be installed in the same
SMP/E zones as the C/370 Version 2 or AD/Cycle C/370 compiler programs.
 
Considerations for applications compiled with C/370 Version 1 or C/370
Version 2 that will execute with Language Environment for MVS and VM are
documented in the IBM C/C++ FOR MVS/ESA VERSION 3 RELEASE 2 COMPILER AND
RUN-TIME MIGRATION GUIDE (SC09-2002).
 
Ordering
--------
 
CURRENT LICENSEES
 
Current licensees of C/C++ for MVS/ESA will be sent a program reorder
form which may be returned directly to IBM Software Manufacturing
Solutions (SMS). The mailing of these reorder forms is scheduled to be
completed by 5 January 1996. Reorder forms returned to SMS will be
processed within 10 work days of receipt. When Version 3 Release 2 is
available, Version 3 Release 1.1 will no longer be available.
 
NEW LICENSEES
 
Orders for new licenses will be accepted now.
 
Ordering information is unaffected by this announcement with the
exception of current licensees, new licensees, and unlicensed
documentation/publications information.
 
Shipment will begin on the planned availability date.
o   Orders that ship prior to the planned availability will receive
    C/C++ for MVS/ESA Version 3 Release 1.1.
o   Orders that ship after the planned availability date will receive
    C/C++ for MVS/ESA Version 3 Release 2.0.
 
New users of IBM C/C++ for MVS/ESA Version 3 Release 2 should specify:
 
         TYPE           MODEL
         5655           121
 
Charges
-------
 
The charges for this product are unaffected by this announcement.
 
ONE-TIME CHARGE: Customers who pay a one-time charge for a licensed
program receive enhancements and future releases, if any, at no
additional charge. Significant new function may be offered as an
optional feature and charged for separately. If a replacement program is
announced and the customer elects to license the replacement program, a
time-based upgrade credit may apply.
 
VARIABLE CHARGES: The applicable graduated one-time charge or graduated
monthly license charge will be based on the group of the designated
machine on which the licensed program is licensed for use. If the
program is designated to a processor in a group for which no charge is
listed above, the charge of the next higher group listed applies.
 
For upgrades of one-time charge licenses to a machine in a higher group,
the upgrade charge will be the difference in the then current charges
between the two groups. For downgrades of one-time charge licenses to a
machine in a lower group, there will be no adjustment or refund of
one-time charges paid.
 
For upgrades or downgrades of monthly license charge licenses, the
monthly license charge applicable to the higher or lower group will
apply.
 
========================================================================
 
              +-------------------------------------+
              | IBM Internationalization Conference |           intconfl
              |   and NLS Programming Lab Details   |
              +-------------------------------------+
 
Dear Software Developer:
 
The IBM Internationalization Conference and NLS Lab are an opportunity
for you to spend a few days with a team of technical experts who have a
thorough understanding of the problems inherent in designing software
for multiple languages. This event is for developers and technical
managers with hands-on responsibility for software internationalization.
Programming design guidelines that support cultural and national
language differences are presented. As the software industry continues
to move toward a global marketplace, learn and implement these
guidelines now, and avoid costly retrofitting for each country or
language.
 
An introduction to National Language Support (NLS) and Double-Byte
Character Set (DBCS) concepts is offered. The emphasis is on Asian and
European languages, and is directed toward application development.
Internationalization gurus from IBM development labs provide the latest
release information for IBM systems. Consultants offer practical insight
into design strategies and techniques. An update on the latest
technology and standards information is presented in sessions on
Unicode/UCS-2, POSIX, and XPG4. Personal interaction with the speakers
is planned to ensure individual attention to your questions.
 
The second part of the event, the NLS Programming Lab, is presented as a
separate offering. The NLS Lab held in April was so successful, it is
now available for two platforms - OS/2 and AIX. Programming exercises
are used to illustrate how to write international programs. Under the
guidance of two instructors from IBM laboratories, you get hands-on
experience and implement the design principles learned during the first
two days of the conference.
 
EVENT:     Internationalization        NLS Programming Lab
           Conference
 
DATES:     13 and 14 December 1995     15 December 1995
 
LOCATION:  The Westin Hotel            IBM Solution Partnership Center
           Copley Place                404 Wyman Street
           Boston, Massachusetts       Waltham, Massachusetts
 
FEE:       500 USD per person          350 USD per person
           (450 USD if payment is
            received by 20 October)
 
Please return the attached registration form and non-refundable fee by
10 November. Space at both sessions is limited, and reservations will
be confirmed when payment is received. Meals and evening sessions are
included as listed on the agenda. Hotel and travel details will be sent
with your confirmation. If you have questions, please contact Lynn
Kelderhouse, Registration Coordinator, at 1-203-262-5621, or at
lkelderhouse@vnet.ibm.com.
 
                                          Dory Miller
                                          Program Administrator
                                          Solution Developer Operations
 
Conference Preliminary Agenda
-----------------------------
 
Day 1
 
Registration / Continental breakfast (available 7:30 - 8:15 a.m.)
Introduction (begins promptly at 8:15 a.m.)
IBM - A Commitment to NLS
Introducing National Language Support
Writing Systems of the World
Character Sets, Code Pages, and Encoding Schemes
Break
DBCS Video
DBCS General Information
lunch (provided)
The Cultural Dimension
POSIX
XPG4
UNICODE / UCS-2
Concurrent breakout sessions I: (choice of one)
o  AIX (Presentation and Demo)
o  OS/2
o  System/390
break
dinner (provided)
evening roundtable discussions
 
Day 2
 
Continental breakfast (available 7:30 - 8:30 a.m.)
Introduction
Asia/Pacific Opportunity
Concurrent breakout sessions II: (choice of one)
o  AS/400
o  DOS/V
o  OS/2
break
DBCS Experiences
lunch (provided)
Designing Panels and Messages
break
Future Directions
Character Data Representation Architecture
Open Forum
conference concludes by 5 p.m.
 
Conference Preliminary Course Descriptions
------------------------------------------
 
INTRODUCING NATIONAL LANGUAGE SUPPORT
 
The session begins with an introduction to NLS, including definitions
and the impact of NLS on the way you design your products. Discussion
topics include:
 
o  What areas of your program are affected by NLS/DBCS?
o  What kinds of changes  are necessary to accommodate culturally
   dependent requirements?
 
We also explore how NLS/DBCS support is often staged to allow evolution
as market participation grows.
 
WRITING SYSTEMS OF THE WORLD
 
An overview is presented of different writing systems and how to provide
for them in your applications. Common components for consideration
include:
 
o  Direction of writing
o  Diacritical markings
o  Single case vs mixed case
o  Word separation
o  Alphabet size changes
 
CHARACTER SETS, CODE PAGES, AND ENCODING SCHEMES
 
Information about the ways different languages are mapped within
computing systems is covered. We describe the approaches used in the
various IBM computing systems. Suggested programming procedures are
introduced to support the variety of encoding schemes (which code pages
to use).
 
DBCS VIDEO
 
This session explores why NLS is important when considering program
design. A DBCS video, created by IBM Asia/Pacific, introduces the
complexities associated with Asian languages. As a result, you can begin
to see the significance of an NLS/DBCS undertaking, and that it is not
something to be simply "added on", but rather considered as an important
requirement from initial design stages.
 
DBCS GENERAL INFORMATION
 
This presentation includes a discussion of DBCS data and string
management principles common across the various IBM platforms. Important
DBCS enabling rules are emphasized.
 
THE CULTURAL DIMENSION
 
The manner in which culture influences your product design is explored,
including the ways in which date, time, currency, calendar, rounding,
sort, etc., are handled in different countries. High-level programming
approaches are suggested for supporting a variety of cultural formats.
 
POSIX
 
The Portable Operating System Interface provides a base model for
Internationalization and Localization. Standard 1003.2 Shell and
Utilities provides a locale mechanism in order to facilitate the
localization of cultural information. This specification, along with a
series of C Language APIs, allows for the externalization of culturally
sensitive information and data.
 
XPG4
 
X/Opens' Portability Guide Issue 4 (XPG4) specifies a code-set
independent internationalization programming model. The model defines a
set of system interfaces (APIs), headers, commands, and utilities for
the ISO C-programming language that provide source portability and
interoperability for applications between conforming Unix and other
proprietary operating systems. Our primary interest in the XPG4 model at
this time is the Internationalization (I18N) set of APIs. This
presentation provides an overview of the XPG4 I18N APIs, and outlines
their implementation across the IBM software families. OS/2 DCE will be
discussed to illustrate usage of this I18N model.
 
UNICODE / UCS-2
 
The Unicode standard is a new character code designed to encode text for
storage in computer files. It is a profile (a subset) of the ISO 10646
standard. The design of the Unicode standard is based on the simplicity
and consistency of today's prevalent character code set, ASCII (and
Latin-1, an extended version of the ASCII code set). It goes far beyond
ASCII's limited ability to encode only the Latin alphabet; the Unicode
encoding provides the capability to encode many of the characters used
for written languages throughout the world.
 
ISO/IEC 10646 specifies the Universal Multiple-Octet Coded Character Set
(UCS). It is applicable to the representation, transmission,
interchange, processing, storage, input, and presentation of the written
form of the languages of the world, as well as additional symbols. The
focus on this standard will be the first plane (Plane 00 Group 00),
called the Basic Multilingual Plane (BMP). The BMP includes characters
in general use in alphabetic, syllabic, and ideographic scripts
together with various symbols and digits. Differences and similarities
in the two standards are discussed.
 
PLATFORM SPECIFICS / CONCURRENT BREAKOUT SESSIONS I:
 
NLS/DBCS functions, how to invoke these functions, and available APIs or
interfaces are discussed by platform. Information on international
hardware and software availability by platform is given.
 
o  AIX (PRESENTATION AND DEMO)
 
   This session gives an overview of the AIX NLS implementation, and
   demonstrates the various locale environments supported by AIX,
   including single-byte and multi-byte character sets, such as Japanese
   and Traditional Chinese. The demonstration also shows NLS-related
   enhancements in AIX Version 4:
 
   -  Unicode support
   -  Arabic/Hebrew (Bidirectional) locale
   -  Eastern European locale support
   -  Simplified Chinese locale support
 
o  OS/2
 
   This presentation provides developers of international products with
   the information and guidance necessary to plan, design, code, and
   test functions supporting DBCS on their products that run on OS/2
   versions 2.x and Warp. Migration of international applications using
   XPG4 will be discussed.
 
o  System/390
 
   This class introduces the attendees to DBCS support fundamentals and
   design considerations for the IBM System/390 environment. At the
   completion of the course, the student will have an understanding of:
 
   -  NLS - DBCS code scheme
   -  DBCS system environments
   -  Mixed/DBCS string handling
   -  DBCS enabled application services
   -  DBCS design considerations useful for the System/390
 
EVENING ROUNDTABLE DISCUSSIONS
 
You will have an opportunity to request specific topics to be addressed
in small focus meetings. We'll group the topics and have several
speakers to lead the discussion in each session.
 
ASIA/PACIFIC OPPORTUNITY
 
The aim of this presentation is to provide a sense of the software
business environment in Asia, its importance, and its differences.
Discussions will include the inherent challenges of language and
culture, and will also highlight some approaches that can be used to
achieve a successful software business in the Asia/Pacific market.
 
PLATFORM SPECIFICS / CONCURRENT BREAKOUT SESSIONS II:
 
o  AS/400
 
   IBM intends to expand AS/400 national language support functions to
   continue to meet the requirements of your business. The NLS
   enhancements for the AS/400 will primarily focus on supporting the
   cultural needs of end users and allow application developers to use
   the NLS functions to internationalize their products. The following
   topics will be presented and discussed:
 
   -- Internationalized client/server solutions that are transparent to
        the end user
   -- Application Programming Interfaces for NLS
   -- International Standard Organization 10646 Support - a single
        Universal Coded Character Set (UCS2/UNICODE)
   -- New release information as it relates to NLS
 
o  DOS/V
 
   In this session, we examine the modifications that must be made to
   English software applications, if they are to exploit the DBCS DOS/V
   platforms in Asia. Also featured are:
 
   --  Industry standard DOS/V for DBCS languages
   --  DBCS Windows V3.1 implementation
   --  The differences between U.S. DOS and Asian DOS/V systems
 
o  OS/2
 
   (Repeated from previous day, see description above)
 
DBCS EXPERIENCES (PRESENTATION AND DEMO)
 
Approaches for enabling PC products to support Asian DBCS languages are
discussed. Alternate strategies are presented for estimating conversion
effort, retrofitting, and maintaining DBCS programs. A demonstration
shows a suite of office automation products that have been DBCS-enabled,
and includes a discussion of the experiences and problems encountered.
 
DESIGNING PANELS AND MESSAGES FOR MULTIPLE LANGUAGES
 
In this section, we review and illustrate the design consideration for
easy adaptation of the person/machine interface to other languages and
cultures. We look at prompts, panels, messages, icons, etc., from the
point of view of translatability and adaptability. We discuss ways to
design your application displays to allow support of many languages.
 
FUTURE DIRECTIONS
 
The foundation of IBM's NLS desktop OS strategy for the future is
presented. Topics include Unicode, locale-based models (XPG4 I18N and
the Universal Language System (ULS)), single-source single-object
program models, utilities, converters, and program-integrated-text
models.
 
CHARACTER DATA REPRESENTATION ARCHITECTURE (CDRA)
 
CDRA is an existing architecture that provides for the management of
coded graphic character data integrity across any pair of systems. CDRA
defines a consistent method for character data identification which
permits unambiguous interpretation of coded graphic characters for data
originating in many environments. It defines consistent conversion
mappings (tables) to help manage the preservation of coded graphic
character integrity as data is interchanged among any pair of systems.
It also specifies character sets and code pages to provide strategic
direction for applications and databases.
 
OPEN FORUM
 
A panel of speakers is available to answer any questions you may still
have at the conclusion of the conference.
 
OS/2 and AIX NLS Hands-On Programming Labs
------------------------------------------
 
This is the second part of the event, and takes place at the IBM
Solution Partnership Center in Waltham, Massachusetts. There are two
concurrent, separate programming labs, one for OS/2 and one for AIX.
The fee for the programming lab is 350 USD. Attendance is very limited,
so that each attendee can receive a lot of individual attention.
 
The prerequisite for participating in the programming lab is attending
the IBM Internationalization Conference, or basic knowledge of NLS and
a working knowledge of C (and PM for the OS/2 lab or X11/Motif for the
AIX lab).
 
There is a new programming paradigm to enable software to handle
worldwide market requirements. This new model is called
internationalization (I18N). Internationalization is the process of
creating software that is culturally neutral, yet readily adaptable to
cultures and languages worldwide.
 
The OS/2 and AIX labs use programming exercises to illustrate how to
write international programs. Students code, compile, link, and execute
sample programs that use I18N routines specified in industry standards
such as XPG4 and ISO C.
 
OS/2 PROGRAMMING LAB
 
This lab includes OS/2-specific NLS interfaces. Students also write
sample PM (Presentation Manager) programs to do international support.
Topics include:
 
o  Installing and setting up basic OS/2 NLS configuration information
o  Enabling PM (Presentation Manager) applications for international
     support
o  Access of locale-related information and writing locale-sensitive
     programs using that information
o  Multi-byte string manipulation in C programs
o  Use of message catalogs and message facility
o  Use of converter library to do code set conversions
 
Upon completion of this lab, you will be able to:
 
o  Understand the legacy OS/2 NLS model and the enhanced model available
     via the C Set ++ V3 compiler
o  Understand proper techniques for writing locale-sensitive programs
o  Understand proper string handling in a code-set-independent way
o  Enable PM (Presentation Manager) applications for national language
     support
 
AIX PROGRAMMING LAB
 
Students in the AIX Lab will write sample X11/Motif programs that use
international support provided in X11R5 and OSF/Motif 1.2. Topics
include:
 
o  Access of locale-related information and writing locale-sensitive
     programs using that information
o  Multi-byte string manipulation in C programs
o  Use of message catalogs and message facility
o  Use of converter library to do code set conversions
o  Use of FontSet to be code-set-independent
o  Use of  Motif 1.2 text widgets for multi-byte or wide characters
o  Keyboard mapping and input methods in X11
 
Upon completion of this lab, you will be able to:
 
o  Understand proper techniques for writing locale-sensitive programs
o  Understand proper string handling in a code-set-independent way
o  Enable X11/Motif applications for multi-byte character sets
 
Registration Form
-----------------
 
          IBM Internationalization Conference and Lab
              Registration Form - Fall 1995
 
Please check the session(s) you will attend:
 
CONFERENCE                       PROGRAMMING LAB - Choose one:
 
_____ 13 - 14 December 1995        OS/2 NLS Lab
 
Fee - 500 USD                      _____ 15 December 1995
(450 USD if received by
20 October 1995)                   Fee - 350 USD
 
                                 or
 
                                   AIX NLS LAB
 
                                   _____ 15 December 1995
 
                                   Fee - 350 USD
 
Company Name____________________________________________________________
 
Last Name_____________________First Name__________Title_________________
 
Street Address__________________________________________________________
 
City__________________________State_______________Zip___________________
 
Phone_________________________Fax_______________________________________
 
Registration is subject to confirmation by IBM. Please return the
completed form by 10 November. The fee is non-refundable.
 
_______ AmEx    _______ MC     _______ VISA
 
Card # _____________________________ Expiration Date ___________________
 
Print name on card__________________ SIGNATURE__________________________
 
Return completed registration form to:
 
  Lynn Kelderhouse
  Mail Stop 241
  IBM Corporation
  150 Kettletown Rd.
  Southbury CT 06488
  Telephone: 1-203-262-5621
  Fax:       1-203-262-2141
 
Please check one breakout session you will attend each day:
 
13 December: _______ AIX    _______ OS/2  ________ System/390
 
14 December: _______ AS/400 _______ DOS/V ________ OS/2(repeated)
 
How did you hear of this seminar?_______________________________________
 
________________________________________________________________________
 
========================================================================
 
This concludes 1995 Issue 14 of IBM SDO Developer Support News. Please
let us know how we can improve it -- send your feedback to
dsnews@vnet.ibm.com. Thank you!
 
