\documentstyle[12pt]{article}
\topmargin=-0.25in
\textheight=8.75in
\oddsidemargin=-0.25in
\evensidemargin=-0.25in
\textwidth=7.0in

\begin{document}

\title{
The Emerging Market in Adaptable\\
and Reusable Software Components\\
\vspace{0.6in}
Impact on System Engineering and Enterprise Integration
}

\author{John S. Morrison, President\\
Technology Transfer International, Inc.\\
6736 War Eagle Place\\
Colorado Springs, CO 80919-1634\\
\\
Telephone and fax: (719) 260-0925}

\date{}
\maketitle

\section{Overview}
Technology Transfer International, Incorporated has launched the first
phase of a global study on the technology and processes of software 
reuse and information factories.  The study team includes M.I.T.
Associate Professor Michael Cusumano, author of {\em Japan's Software
Factories}, and Dr. Adele Goldberg, CEO of ParcPlace Systems
and former leader of the Xerox PARC team which developed SmallTalk.
Professor Cusumano will serve as Editor of the study report, and
Dr Goldberg will contribute as an author 
and analyst.

The study aims to collect quantitative and qualitative data to 
resolve the following issues:

\begin{itemize}
\item
Why should companies adopt software reuse tools and processes?
\item
How can companies establish efficient internal software reuse programs?
\item
What is the payoff from using object-oriented concepts?
\item
What market factors are associated with reusable software components?
\item
How should companies perform make-versus-buy decisions for software?
\item
How should software developed through outsourcing be managed and 
integrated?
\item
What is the payoff of software metrics programs?
\item
What will software and information factories of the future be like?
\end{itemize}

The study will be accomplished in three phases.  The first phase will focus
on Japan, the second phase on Europe, and the third phase on the U.S.
Each phase will result in study products.  The extended study, encompassing
all three phases, will eventually sample organizations in eleven
industries and seven countries.  The Japan phase of the study is now in 
progress and will be completed in March, 1992.

\section{Emerging Market}

Software reuse is a method of software system development which creates
systems from modular software components, each of which are designed to
be adapted to a wide range of applications.  The approach has the
potential for significantly reducing both the cost and the time associated
with the development of computer software.  Dr. Brad Cox, Stepstone
Corporation, has been a leading advocate of software reuse since 1982,
and has promoted the creation of a market in ``software ICs'' as
a means for meeting the growing world demand for software.  We
believe that such a market is now on the horizon, and that it has
international dimensions.

The emergence of a market in adaptable and reusable software
components and flexible data and information components will
spark significant changes in how software is developed, integrated, tested,
marketed and supported.  These concepts have already spawned small companies
intent on creating reusable software components, motivated larger companies
to look for sales outlets for internally developed modules, and
stimulated third party companies to act as brokers for software
components.  Commercially available software components will ultimately
be used like ``Legos'' to rapidly construct software systems, and help meet
the overwhelming commercial and government demand for software.
Reuse concepts are changing the way the U.S. Government and commercial
companies view software acquisition.  Such concepts have the potential to 
profoundly affect the international market in software.  There is some evidence
that an international trade in software components already exists 
between some U.S. companies and some third world firms who are able
to deliver source code cheaply.  Japanese software factories reportedly have
high internal reuse rates, and may become a strong international
development force in the future.

While the U.S. Government and some private companies are poised to
enter, shape or create a software reuse marketplace, many of the
approaches to the market advocated by industry and
government appear to be based on theoretical considerations of the
technology rather than on analysis of user needs.  Such primary field data
will be essential to establishing the trading mechanisms, technology focus,
and investment strategies important not only for the success of the
market, but for the business success of individual companies
participating in that market.  The ``flip-side'' of such a market
is enterprise engineering and system integration.

The emerging market reflects global forces driving system
development and enterprise engineering to ever greater levels of efficiency.
High efficiency will be a requisite for business survival in a global
economy, and will demand world-class approaches.  While a market in software
components could yield an increasing level of outsourcing during
system development, it also presents the challenge of how to integrate
such components, given that there exists some mechanism to find them.  The
concept of an ``integrating'' framework has achieved some success.  In the
Department of Defense's Strategic Defense Initiative (SDI) program,
a simulation framework was used to integrate simulation models of the various
elements comprising the ``Star Wars'' system.  The framework
provided simulation services and a model of the global
environment in which the various elements operated.  The 
Computer Aided Design (CAD) Framework Initiative, which
includes Motorola, Sun Microsystems, Microelectronics and
Computer Consortium (MCC), and Digital
Equipment Corporation is examining the problem of tool integration
for integrated circuit development.  An even more ambitious program
is the Engineering Information Systems (EIS), which will develop
a framework for engineering design automation.  The EIS project
joins Xerox, TRW, MDAC, CLSI, and ASU in an effort to provide
designers with a homogeneous view of data resident within a 
heterogeneous hardware environment.  With the emergence of DoD's
Computer Aided Logistics System (CALS), concurrent engineering, and 
enterprise-level modeling initiatives, the need for a broad-based
integrating infrastructure becomes paramount.  Such an infrastructure
must span engineering, business, enterprise and product lines.

In between those organizations concerned with integrating large
systems and those enterprises which build pieces of systems are
the toolmakers.  Often they must follow in the footsteps
of the large integrators who, through joint ventures and
consortia, establish de facto standards.  The Open Document
Architecture Consortium, for example, was formed to develop and promote
an open system for exchanging electronic documents.  The group
includes the U.S.-based companies IBM, DEC, and UNISYS; U.K.-based
ICL Plc; Groupe Bull of France; and Siemans Nixdorf Informationssysteme
A.G. of Germany.  It does not include toolmakers.  The world's
first formal Computer Aided Software Engineering (CASE) tool
standardization effort, however, {\em does} include toolmakers.
Known as {\em PCTE}, for Portable Common Tool Environment,
the standard was recently adopted by the European Computer
Manufacturer's Association.  One critical capability which
toolmakers must provide is the ability to adapt and re-engineer
software and information components to fit into the
variety of frameworks which will undoubtedly exist in the
future.  If toolmakers are to provide such enabling technologies
for integration, they must have a source of information
on the constantly changing terrain of information standards.

This particular research study aims to help fill a void in available
data by going directly to those companies and agencies most likely
to be on the ``front lines'' of the technology transfer marketplace.
These companies are the system integrators, the component developers,
the toolmakers, and the information brokers.

\section{Reuse Initiatives and Opportunities}

The creation of a national market in reusable software
components would ease the cost of development and maintenance
of software.  The U.S. Department of Defense (DoD) is
interested in the concept because such a market could
mitigate the current software crisis, and assure a ready pool of
high quality software components from which larger systems
could be quickly constructed.  DoD software reuse initiatives
include:

\begin{itemize}
\item
The DoD Software Master Plan, which specifies reuse objectives;
\item
The Strategic Defense Initiative (SDI), which has established reuse
as part of its mission critical software development strategy;
\item
The Defense Advanced Research Projects Agency (DARPA) which funds the
Software Technology for Adaptable and Reliable Systems (STARS)
program, and ASSET, the national asset library and registry for
software components, now in development;
\item
The Joint Integrated Avionics Working Group (JIAWG), consiting of
programs from different services mandated by Congress to be
interoperable.  These participating programs have been
developing a concept for sharing software components through cooperating
reuse libraries;
\item
The Army RAPID program, which is an operational software reuse library;
\item
The Air Force RAASP (Reusable Ada Avionics Software Packages)
program;
\item
The Ada Joint Program Office (AJPO), which is encouraging
software reuse in Ada components;
\item
The Reuse Interoperability Group (RIG), a national joint
government/industry working group to define standards 
for reusable software components and libraries.
\end{itemize}

Commercial companies stand to benefit from a market in reusable
components:

\begin{itemize}
\item
Companies such as IBM which have established ectensive internal
programs of software reuse could extend those internal programs
to an external market.  A controlled extension of software component libraries
could provide such companies with an additional source of revenue,
and could encourage software standardization, interoperability
and technology transfer among strategically allied companies.
Westinghouse appears to have adopted such a strategy.
\item
Companies such as EVB and Booch's Wizard make and market components.
In addition, EVB has become a broker for Westinghouse software
components.
\item
Availability of software components could reduce time to market
for companies developing systems.
\item
A software market would allow large industrial
companies to rapidly create integrated software systems which better
match their internal engineering and production processes,
avoiding the rap of ``one-size-fits-all'' applications.
\item
Software component based systems could be more rapidly adapted to
changing technology standards.  This will be particularly
important for companies whose products interface with a variety of other
``moving train'' technologies.
\end{itemize}

A market in reusable software components could make companies
more competitive by facilitating technology transfer and
technology insertion.  A global market could provide a mechanism
for rapidly diffusing new technology
into a wide spectrum of software-based products worldwide.
International developments support the concept of such a market:


\begin{itemize}
\item
The Japenese have proposed a multinational Computer Integrated
Manufacturing Initiative which could create software standards
for large-scale robotic-based manufacturing systems.
\item
Nokia, a Finnish electronic systems conglomerate, is applying Ada
and reuse to development of an automatic teller machine
network for the banking community.
\item
Software companies in the United Kingdom, France, Sweden,
Canada and Germany are investing in research and development
of object-oriented and object-based design technologies.
\item
Sema-Metra, a large French conglomerate, is using an Ada-based
approach with extensive reuse in an effort to standardize
on control software for the French nuclear power industry.
\item
Virtual reality, hypermedia, neural networks and the OSI
Network Management Forum represent technology areas which are
supportive of software reuse concepts and markets.
\end{itemize}

\section{Relationship between Enterprise Integration and the Software
and Information Component Market}

A key relationship to be examined in the study will be the one
linking the software and information component market with
enterprise-wide integration systems.  Enterprise integration goals
established by governments and industries cannot be met with
brittle, monolithic information systems, since the technology
``substrate'' on which such systems must be built -- the networks,
computers, displays and decision aids -- will change with time.  
Such systems must therefore accomodate rapid change across all parts of their
structure.  Also, since much of the data they handle will
come from a variety of sources external to the system
-- sources over which the enterprise has no control -- they
must be built to accomodate rapid changes in the structure of data
which they manipulate.  Software and information components --
designed from the start to be re-engineered, and adapted for use from a
variety of internal and external sources -- will be the
building blocks for evolving systems and the objects which such systems
manipulate.  That is, they will be both the subject and the
substance of future enterprise-wide integration
systems.

In the design of software systems, one factor which dominates the cost of
projects and the probability of success or failure is how well 
project team members understand the problem domain associated
with the project.  For very large and complex problems such as enterprise
integration, finding a team, or even technical leadership, with the right
expertise across all aspects of the project will be difficult.
Software and information components will be a way of packaging
expertise from external sources in a way that it can be
manipulated by non-experts.  Such components, then, could become
a primary mechanism for technology transfer within enterprise
integration systems.

\section{Tests for Success of Software Reuse Approaches}

No program can be effective unless clear objectives are defined
beforehand.  Such objectives are necessary in order to determine
whether the program has succeeded or failed.  In this respect,
software reuse programs are no different from other programs.
We believe that government and corporate managers will be unwilling
to commit resources to programs where the payoff is
ill-defined, where the implementation path is fuzzy, and where
performance against pre-determined objectives cannot be measured.
We therefore offer a set of criteria which may be
used to judge the degree of success in software reuse.

In principle, success (or failure) may occur at several
different levels.  We propose that at the national or international
level, the criterion for success of software reuse is that a 
market exists in software components.  At the corporate
or program level, our criterion for success is that
a reuse culture has been institutionalized.  At the project level,
the criterion is that systems have been developed, maintained and
improved with reuse in mind.  The final touchstone is the
consumer criterion, which is that reuse yields lower cost and
higher quality products.  These levels of success and
associated criteria are summarized in the table below.

\vspace{0.3in}
\begin{center}
\begin{tabular}{|l|l|} \hline
{\bf Level} & {\bf Criterion} \\ \hline
International & A market exists \\
National &  \\ \hline
Corporate & A reuse culture is Institutionalized \\   
Program & \\ \hline
Project & Systems are developed, maintained \\
& and improved with reuse in mind \\ \hline
Consumer & Reuse yields lower cost and \\
& higher quality products \\ \hline
\multicolumn{2}{c}{{\bf Table 1.} Levels of Success in Software Reuse.} \\
\end{tabular}
\end{center}


The issue of whether or not, or to what degree a software component
market can be resolved by asking a set of {\em market-related}
questions such as:

\begin{itemize}
\item
Is there a pattern of software outsourcing?
\item
Are there suppliers, consumers, and brokers?
\item
Do well-defined distribution channels exist?
\item
Are there market mechanisms which help match the needs of
consumers with the capabilities of suppliers?
\item
Is there a system of licenses or fees for software components?
\item
Are economic models used for make-versus-buy decisions?
\end{itemize}

The issue of whether or not, or to what degree reuse is
institutionalized can be resolved by asking a set of
{\em institutional} questions:

\begin{itemize}
\item
Are there policies and standards for reuse?
\item
Is reuse incorporated into the design process?
\item
Are reuse metrics collected, evaluated and reported?
\item
Are thre formal reuse training programs?
\item
Are there economic incentives for reuse?
\item
Is there an operational reuse library?
\item
Are components in the library maintained?
\item
Are standards, tools and frameworks provided to design, assemble, integrate
and test software component-based systems?
\end{itemize}

The issue of whether or not, or to what degree reuse-based systems
are developed, maintained and improved can be resolved by asking a set
of {\em developmental} questions:

\begin{itemize}
\item
Have systems been developed which incorporate reusable software 
components?
\item
What proportion of developed systems are comprised of reused or
re-engineered modules?
\item
Are software component-based systems maintained through replacement or
modification of components?
\item
Is the functionality of software component-based systems extended
through the addition of components?
\end{itemize}

The issue of whether or not, or to what degree systems built from
reusable components meet the consumer criteria of quality and
affordability can be evaluated through {\em consumer
opinion surveys} and {\em objective analyses}.

\section{Summary}

TTI's world-wide study will collect information on software reuse,
software outsourcing, software measurement, and software integration
procedures, practices, tools, and methods.  The three-phase study, financed
through the contributions of sponsoring companies and through the
international sales of study reports, should yield new data on the payoff of
software reuse, and help chart the most prominent features of the emerging 
market in adaptable and reusable software components.

\end{document}
