home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.umcs.maine.edu
/
2015-02-07.ftp.umcs.maine.edu.tar
/
ftp.umcs.maine.edu
/
pub
/
WISR
/
wisr6
/
proceedings
/
ascii
/
gaska2.ascii
< prev
next >
Wrap
Text File
|
1993-10-19
|
20KB
|
417 lines
An Open Systems Persp ective on Horizontal Reuse
Marilyn T. Gaska
IBM Federal Systems Company
MD 0124, Owego, NY 13827
Tel: (607) 751-4156, fax: (607) 751-3727
Email: mtgaska@vnet.ibm.com
Abstract
From an application programmer's perspective, there are many similarities between the prob-
lems of working with previously developed code in a reuse library and Commercial Off The Shelf
(COTS) software. In particular, open-systems-compliant COTS platform infrastructure services
can be considered to be horizontal reuse of the "blackest" box category since knowledge of the
contents of the box or component may not even be availableat any level of the organization.
This position paper discusses similarities between the goals and needs of open systems in the
federal market place and horizontal reuse concepts. A stronger synergy between the two areas
of research is proposed.
Keywords: Horizontal Reuse, Open Systems, OSE Profile.
Workshop Goals: Broaden persp ective on horizontal reuse by leveraging experience in open
systems environment (OSE) services to explore synergism between reuse and OSE efforts to
solve the "software crisis". Work with recognized leaders in current reuse issues, metho ds, and
metrics to learn approaches for potential application to open systems infrastructure design.
Share experiences with others on efforts to institutionalize reuse.
Working Groups: Horizontal Reuse, Domain Analysis, Institutionalizing Reuse.
Gaska- 1
1 Background
As the current IBM Federal Systems Company Owego Software Reuse Council Chair, the author
is directly involved in assisting the institutionalization of reuse in a corporate environment. While
she has had previous software development experience on a large Computer Aided Design (CAD)
development project, her most recent position is in the area of op en systems technology and Com-
mercial Off the Shelf (COTS) software integration. She is currently the OSE Profile task lead for
the Army Sustaining Base Information Services (SBIS)contract. This task involves interfaces with
the National Institute for Standards and Technology (NIST) and other federal agencies. The author
has also applied OSE perspectives to concurrent engineering infrastructure concepts asfollow up
to her work on an IBM Owego ConcurrentEngineering Quality Improvement Team ([1]).
2 Position
HO: Open Systems Infrastructure ss Horizontal Reuse
Horizontal reuse generally addresses reusable services acrossapplication domains whereas vertical
reuse is considered specific to a domain. Both are needed to address the total application en-
vironment. The movement toward open systems can be considered to place specific constraints
on horizontal reuse of infrastructure services. Op en systems precludes use of proprietary service
interfaces by specifying use of consensus-based open systems standards to improve application
portability, interoperabilityand scalability. In general, COTS services are selected that have been
validated against these standards. COTS products can be considereda form of black box reuse.
The requirements of the specific application domain determine the subsetof infrastructure service
standards required to support application development.
Open systems technology and horizontal reuse initiatives address some of the same problems in
general design as well as the "software crisis". If design is genericly defined as the pro cess of
removing ambiguity [2], then the open systems consensus-based process can be considered to have
already constrained the software infrastructure design in the same way as a requirement to use black
box software from a reuse library. In fact, open system places constraints across any horizontal
reuse for infrastructure services. These components can be used to architect software systems, with
various architecture specialists concentrating on domains such as management information systems,
embedded realtime software applications, and computer integrated manufacturing. By considering
horizontal reuse and OSE software technology as closely related answers to improving software
productivity and reducing life cycle costs, research and resources can be leveraged to solve common
problems of configuration management, classification, metrics, and application programmer use.
2.1 Open Systems Environment Services
The NIST Application Portability Profile (APP) [3] defines an OSE as a "computing environment
that supports portable, scalable, and interoperable applications through standard services, inter-
faces, data formats, and protocols. The standards may consist of international, national, industry,
or other open (public) specifications. These specifications are available to any user or vendor for use
in building systems and products that meet OSE criteria." Furthermore, "an OSE supports appli-
cations through the use of well-defined components: a plug-compatible technology or building-block
approach for developing systems."
Gaska- 2
The NIST APP provides an OSE reference model closely aligned with the Institute of Electrical
and Electronics Engineers (IEEE) POSIX Working Group P1003.0 [4 ]. This reference model defines
applicaton software, application platform, and external environment entities, as well as interfaces
between entities to include application program interface (API) and external environment interface
(EEI). The application platform entity closely parallels the concept of horizontal reuse by providing
the following services:
fflOperating System - kernal operations, commands and utilities, and realtime extension;
fflHuman / Computer Interface - client-server operations, object definitiona and manage-
ment, window management, dialog support, and multimedia;
fflSoftware Engineering - programming languages and language bindings and integrated
software engineering envionrments (ISEE) and tools;
fflData Management - data dictionary / directory, database management system (DBMS),
and distributed data;
fflData Interchange - document services, graphics data, and product data interchange;
fflGraphics - services for creating and manipulating displayed images;
fflNetwork - data communication, transparent file access, personal / micro computersupp ort,
and remote procedure call (RPC);
fflIntegral Support (Security and System Management) - security for all of theother
service areas, fault mangement and control, configuration control, accounting, and perfor-
mance monitoring.
The NIST APP concepts have also been used as the basis for other do cuments from the Defense
Information Systems Agency (DISA). These include the three volume series on Technical Archi-
tecture Framework for Information Systems (TAFIM) that addresses architecture, implementation
concepts, and standards profile [5 ], [6 ], [7 ]. Other documents from the Department of Defense
(DoD) recommend OSE standards profiles for acquisitions, where aprofile is a set of specifications
that define a coherent and complementary set of services made availalbe to applications in a specific
application domain. The application profile is the set of service requirements for the domain that
drives the selection of the specifications. Therefore, the OSE profile for a project adds additional
constraints on horizontal reuse of infrastructureservices. The DISA/CIMSoftware Reuse Program
has even proposed metrics for the coverage of reuse libraries to the TAFIM as well as for horizontal
and vertical reuse support [8].
2.2 Generic Issues for OSE and Reuse
The NIST APP reference model and service classification can be used as a frameworkfor classifying
all infrastructure software targeted for application access as a horizontal reuse service whether or
not OSE or proprietary specifications are selected. It provides common terminology and defini-
tions to support discussion. The profile concepts of harmonization and coherence among services
can be applied as well. Since there is a fuzzy line betweendomain analysis and the application
profile subsetting of OSE specifications, the OSE service categories may alsoclarify vertical reuse
approaches.
Gaska- 3
There is a list of generic operational and organizational issues for use of COTS OSE services and
reuse repositories of developed software.
fflService Information Organization - how is the service information organized / classified?
fflService Search and Retrieval - how to find OSE COTS or anyreuse service specification
and access the code?
fflDependency Management - how to assure that dependencies among components and
the parent / child dependencies within a component are addressed?
fflManagement and Support Organization - what are the inter or intraproject personnel
and information organization, processes, and metrics?
fflService Information Education and Communication - how do application developers
for a specific domain learn about the available services?
fflTool Support - how does the ISEE support access to the service information,
fflConfiguration Management and Maintenance - how are changes in versions addressed
within and across domains?
fflArchitecture Compliance Checking - how is service usage inforced (automated vs. man-
ual)?
fflComponent Interoperability Testing - how is testing done among selected components
to assure verify harmony?
Furthermore, the technical implication of the application of object-oriented vs. functional ap-
proaches to service definition are significant tob oth OSE and horizontal reuse. In the OSE area,
the Object Management Group (OMG) is addressing the issue through the Common Object Request
Broker Architecture (CORBA) specification [9]. In general, the application software approach and
specific development methods should be consistent with the service specification /representation
methods, a technical issue also addressed by others [10].
2.3 Research Needs
The position of this author is that there may already be significant research done under the name
of OSE technology or reuse that can be identified for potential application today. In addition,
there is potential financial savings and improved return on investment (ROI) for current initiatives
if these efforts are linked. For instance, issues of interoperability among repositories are already
being addressed the the Reuse Interoperability Group (RIG) standardization efforts. This effort
can be classified as a data interchange problem within the NIST APP framework.
However, while there is significant research already in areas of classification, configuration man-
agement and metrics; some of the hotter topics fall in the area of application developer access in
conjunction with application rapid prototyping approaches. When prototyping isused in conjunc-
tion with simulation, preliminary infrastructure interoperability testing can be done early in the
process. This prototyping and simulation can support architecture tradestudy analysis.
Gaska- 4
3 Comparison
There are several examples of efforts described in the literature that have already begun either
addressing OSE and reuse issues or that reflect the overlap in the targeted problems. Several key
examples from the commercial and federal segments include: AT&T BaseWorkX; Genesis and Avoca
projects [11 ], Portable, Reusable, Integrated SoftwareMo dules (PRISM) and Central Archive for
Reusable Defense Software (CARDS) [12 ]; and the Software Technology for Adaptable Reliable
Systems (STARS) program.
While AT&T BaseWorX architecture forlarge scale reuse described by AT&T [13 ] does not ref-
erence the NIST APP framework only first published in 1991, the authors recommend reuse of
software architectures and components based on many of the same standards recommended by the
NIST APP. These include the Open Systems Interconnection (OSI) standards for networks and
structured query language (SQL) for database management systems. To provide a framework for
large scale horizontal reuse, the BaseWorkX provides an integrated application platform that in-
cludes "horizontal" or system level components sothat developers can concentrate on the customer
application. Both the client/server configuration for services and the manager/agent configuration
for objects are supported by the framework. Since 1987, this platform has been used successfully
on over 50 development efforts.
Batory and O'Malley also have addressed large-scale reuse in terms of database and network subsys-
tems in the Genesis and Avoca projects [11 ]. They recommend the use of standard interfaces with
their domain-independent model of hierarchical software system design and construction. The open
architecture and interchangeable component approach is similar to the approach recommended by
the NIST APP.
The Air Force Electronic Systems Center PRISM project ties the concepts of rapid prototyping,
reuse, COTS and open systems architecture. The integration and COTS software packages for
PRISM are cataloged in CARDS. While the library is considered domain-specific for command
and control, COTS, open systems, and integration services apply to domains beyond command
and control. Proof of concept prototype concepts are supported by the CARDS environment as
well. The op ensystems architecture was selected to provide "plug and play" capabilities for ease
of upgrade. In addition, the OSE services key to PRISM include DBMS, message processing and
geographic information systems services. All of these are part of the NIST APP OSE framework.
The STARS goal is to "increase software pro ductivity, reliability, and quality by integrating sup-
port for modern software development processes and reuse concepts within software engineering
environment (SEE) technology" [14 ]. Demonstration projects underway as part of STARS in-
clude the Domain Specific Software Architecture (DSSA) technology projects [15 ] and the STARS
Demonstration Projects [16 ]. The Air Force Demonstration project for Space Command and Con-
trol Architectural Infrastructure (SCAI) is based on many of the standards in the DoD TAFIM.
Technology in the STARS program is also organized by service areas similar to those defined by
the NIST APP. Also, the associated Asset Source for Software Engienering Technology (ASSET)
reuse library, as well as other repositories sponsored by DISA and the DoD services, include Ada
language bindings to some of these services in support of the DoD directives for use of the Ada
language for application development. While reuse librariesdo provide support for some of the
OSE service interfaces, this position paper calls for a more strategic planned alignment. Such a
plan also could be applied to initiatives such as the National Information Infrastructure (NII) [17 ].
Gaska- 5
References
[1] M. Gaska, "An Open Systems Profile for Concurrent Engineering," in Proceedings of the 5th
International Conference on Software Engineering and Knowledge Engineering,(San Francisco,
CA), pp. 271-4, 1993.
[2] D. Gause and G. Weinberg,Exploring Requirements: Quality Before Design. NewYork: Dorset
House, 1989.
[3] N. S. P. 500-210,"Application Portability Profile (APP), The U.S. Government's Open System
Environment Profile OSE/1 Version 2.0," tech. rep., June, 1993.
[4] I. W. G. P1003.0, "Draft Guide to the POSIX Open Systems Environment ," tech. rep., 1992.
[5] D. I. S. A. C. for Information Management, "Department of Defense Technial Architecture
for Information Management, Volume 1, Implementation Concept, Version 1.1," tech. rep.,
October 21, 1992.
[6] D. I. S. A. C. for Information Management, "Department of Defense Technial Architecture
for Information Management, Volume 2, Architecture Guidance and Design Concepts, Version
1.1," tech. rep., October 21, 1992.
[7] D. I. S. A. C. for Information Management, "Department of Defense Technial Architecture
for Information Management, Volume 3, Reference Model and Standards Profile, Version 1.3,"
tech. rep., December 31, 1992.
[8] D. S. R. Program, "Software Reuse Metrics Workshop Proceedings," tech. rep., 23-24 February
1993.
[9] D. Belisle, "OMG Standards for Object-Oriented Programming," AIXpert, pp. 38-41, August,
1993.
[10] U.S. General Accounting Office Report to the Chairman, Subcommittee on Defense, Commit-
tee on Appropriations, House of Representatives, "Software Reuse, Major Issues Need to Be
Resoulved Before Benefits Can Be Achieved,"tech. rep., GAO/IMTEC-93-16, January, 1993.
[11] D. Batory and S. O'Malley,"The Design and Implementation of Hierarchical Software Systems
with Reusable Components," ACM Transactions on Software Engineering and Methodology,
pp. 355-398, October, 1992.
[12] D. Hughes, "Generic Command Center Speeds Systems Design," Aviation Week and Space
Technology, pp. 52-53, March 8, 1993.
[13] R.P. Beck, S.R. Desai, D.R. Ryan, R.W. Tower, D.Q. Vroom, and L.M. Wood, "Architectures
for Large-Scale Reuse," AT&T Technical Journal, pp. 34-45, Nov./Dec. 1992.
[14] D. A. R. P. A. (DARPA), "STARS - Accelerating the shift to megaprogramming," tech. rep.
[15] E. Mettala, "Domain Specific Software Architectures," in Proceedings of STARS'92, 8 Decem-
ber 1992.
[16] D. Bristow, "Air Force STARS Demonstration Project: Space Command & Control Architec-
tural Infrastructure (SCAI)," in Proceedings of STARS'92, 9 December 1992.
[17] I. I. T. Force, "The National Information Infrastructure Agenda for Action," tech. rep.,
September 15, 1993.
Gaska- 6
4 Biography
Marilyn T. Gaska joined IBM Owego, now part of the IBM Federal Systems Company, in 1987.
She currently is a Staff Programmer in SBIS Engineering and Technology, but has also worked in
other fields to include healthcare prior to joining IBM. Currently she is a candidate for a Ph.D.
in Advanced Technology, Systems Science, at Binghamton University, where she is working with
Professor Donald C. Gause in the area of design. These part-time studies follow her second Master
of Science is in Advanced Technology, Computer Science, from State University of New York at
Binghamton in 1985. However, she received her first Master of Science on a Cornell Fellowship
in 1979 following completion of a a Bachelor of Science degree at Cornell in 1978. She is also a
member of the IEEE.
Gaska- 7