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
/
neumann.ascii
< prev
next >
Wrap
Text File
|
1993-10-19
|
13KB
|
330 lines
Moving Beyond Library-based Reuse
Valerie A. Neumann
Eastman Kodak Company
901 Elmgrove Road
Rochester, NY 14653-5811
Tel: (716) 726-2863
Email: neumann@pixel.kodak.com
Fax: (716) 726-5612
Abstract
Effective software reuse requires much more than building an easy to browse, well cataloged,
convenient library of artifacts. Journey with us as we explore the non-technical issuessurround-
ing reuse and attempt to move beyond the library concept. This report illustrates our new focus
of steering the corporate culture towards reuse-based product development.
Keywords: Reuse-based software development process, culture change management.
Workshop Goals: Exchange lessons learned and validate future directions, with emphasis on
culture change.
Working Groups: Reuse management, organization and economics; Reuse process.
Neumann- 1
1 Background
As the Quality Assurance member of Kodak's reuse library staff,my work is primarily to support the
library's technical infrastructure. I verify that each artifact is properly cataloged and information
describing the component is factual. Other support activities include updating our electronic
interface, assisting customers, and studying reuse theory andpractice. I have been with Kodak for
two years and am a championof the reuse-based software development process, reuse education,
and reuse measurement.
My previous experience with a successful reuse project was in 1983-88 with the U.S. Navy Fleet
Combat Direction System Support Activity. FCDSSArestructured its shipboard tactical data sys-
tem maintenance activity to provide a high degree of reuse of common components, and automated
the production of system builds from the reuse component repository [1]. I worked on creating,
testing, and integrating reusable components,and was a member of the Common Reusable Library
support team.
2 Position
A centralized artifact library has existedin one form or another at Eastman Kodak Company since
1985. Its most recent incarnation is the Software Warehouse, which has been operating since 1989.
This artifact library came into existence due to the effortsof several visionaries who chartered the
Software Warehouse to b e a corp orate reuse library. In the past, funding was directed towards
filling the library with artifacts and improving the libraryinfrastructure.
The content of the library is driven by its users, who place artifacts into the library that they
wish to share with others. The artifacts are comprised of documents, software, and digital images.
Referrals to other Kodak services are also found here.
Out of hundreds of availabledo cuments, themost p opular are co ding style guides and templates
for deliverable documents such as Software Requirements Specifications, Test Plans and Software
Quality Assurance Plans.
The library also contains millions of lines of code. Over sixty percent of our software items are
tools to aid all aspects of the software development pro cess, including system administration and
quality assurance. Class libraries and large granularity software components comprise the next
largest inventory segment.
The usage of the library has increased significantly in the last two years. Indeed, engineers have a
growing awareness of the Software Warehouse, and reuse in general.
However, difficult economic times at Kodak have caused management to re-examine the necessity
of operating a reuse library. The Software Warehouse is a small-scale operation that has not largely
impacted software development. But that could change soon. The recentadoption of a division-
wide product development process which heavily supp orts reuse could b ethe stimulus for sweeping
change.
The Software Warehouse staff members are trying to re-define their roles in light of this new
development. We believe that the best direction is the creation of a dynamic team to facilitate
division-wide reuse "best practices". To make an impact, the team must identify, understand, and
Neumann- 2
work to resolve the technical, managerial, organizational, economic, legal and sociological issues
surrounding reuse.
2.1 Defining the Issues and Requirements
The Software Warehouse team is engaged in the following research tasks to determine how to help
reuse succeed on a larger scale:
fflBenchmarking other corporate reuse efforts. Lessons learned from corporate reuse efforts as-
sist in identifying future directions which are likely to succeed,and help us recognize potential
reuse deterrents at Kodak.
fflInterviewing managers and engineers to hear customers' needs expressed in their own words.
This is called obtaining the "Voice of the Customer" and encompasses collecting desired,
undesired, and unexpected attributes. Approximately 41 engineers and managers were in-
terviewed to date. This insures that the customers' needs guide the Software Warehouse in
tailoring its inventory and services.
In the future, significant activities will be devoted to:
fflStudying cultural change management and working with Kodak organizational psychology
experts to formulate and implement plans for cultural change.
fflDetermining whether there is a need to include reuse consulting among the services the
Software Warehouse offers. The goal here is to work with software development projects to
facilitate reuse throughout the software development cycle. Surveys are planned to ascertain
the reuse-related needs of software development projects, and to gauge the level of customer
commitment to the reuse consulting activity.
2.2 Action Plan
A number of opportunity areas and reuse deterrents have been identified and we are formulating
plans to address them. What follows is an outline of the opportunity areas and proposed action
plans.
2.2.1 Software Process
In the past, Kodak did not have a corporate-wide product development process which supp orted
reuse. This year, the company's imaging division is implementing the "Kodak Equipment Com-
mercialization Process" (KECP): a process for developing new and leveraged pro duct systems. The
KECP, which is supported byupp er-level management, consists of a structured set of guidelines
designed to provide a customer-driven, disciplined, predictable approach to product development.
The KECP recommends that the "Reusability Assessment" process be used during early stages
of product development to determine whether already-develop ed technologies and designs can be
leveraged into the product, rather than creating new designs. The KECP also suggests that "Design
Neumann- 3
for Reuse" requirements be established early in the product development cycle and implemented
throughout the program.
For its part, the Software Warehouse is enhancing the software engineering portion of the KECP
by integrating reuse activities into the software development and maintenance process.
2.2.2 Management Support
It has been shown that successful reuse programs require visible management support and firm
commitment to reuse [2]. We are looking for reuse champions at all levels of management. Once
located, we will enlist them to assist reuse programs.
2.2.3 Awareness
Kodak is already having some success due to informal reuse. However, the successes are localized
and not very visible to the engineering and management community. One of our goals, that of
increasing the awareness level,will be addressed by improving communications with our customers.
One communication tool is the Software Warehouse newsletter which is distributed electronically.
It is sent to approximately 300 engineers bi-monthly, as well as posted to corporate bulletin boards,
and showcases new additions to the library. We are improving communications by distributing the
newsletter to a larger audience, which includes management, and by changing the content. Readers
will find articles on reuse concepts, success stories at Kodak, and services provided by the Software
Warehouse. It will also address reuse deterrents [3].
During the "Voice of the Customer" interviews, management was presented with reports detailing
their organizations' involvement with reuse in terms of contributing to and retrieving artifacts from
the Software Warehouse. The reports have proven to be an effective management incentive and
awareness tool, and will continue on aregular basis.
Our plan to increase awareness takes into account reuse training and expanding our horizons to
include more "reuse facilitation". This involves going intothe development community and working
closely with the reusers and the issues. Positive changes and reinforcements can b e made, such as
sending a "thank you for contributing" note to contributors and their managers, and by providing
feedback regarding the usefulness of a contributeditem.
2.2.4 Reuse Facilitation
Facilitation encompasses most of the reuse-related activities that we intend to do at the Software
Warehouse: continue operating the library, information exchange and dissemination, linking up
projects working on similar things, reuse-based software development process, reuse education and
awareness activities.
Engineer and management interviews brought to light one request by nearly all of the interviewees:
the desire for a quick way to locate technical experts within the company. To meet this request, the
Software Warehouseis developing an on-line project and expertise database. Browsers will have
the capability to search the data base for the expertise of interest.
Neumann- 4
2.2.5 Training
As an initial step in educating managers and engineers,we are planning to have a reputable vendor
teach a pilot course. Afterwards, we will evaluate the impact of the course. We hope to enlighten
management as to how reuse improves the way we should develop software. Additionally, reuse
training for engineers would demonstrate management supp ortfor the reuse program, and should
influence the culture from the bottom up.
3 Comparison
The majority of the cited references contain guidelines for establishinga successful reuse program.
Our activities coincide with the guidelines in terms of setting up a library, obtaining management
support, creating and implementing a reuse-based software development process, incentives, reuse
facilitation, identifying and eliminating deterrents, and education.
Our reuse effort differs from the guidelines in terms of doing domain-based reuse [4 ], and creating
components, tools, methodologies and standard software architectures to support the domains. It
is possible that our future consulting activities may include domain-based reuse.
Benchmarking with the Hewlett-Packard Corporation highlighted a few similarities to Kodak.
Hewlett-Packard also startedtheir reuse effort with a library. The library alone did not achieve
the desired results. Consequently they are now focusing on knowledge and technology transfer
with no centralized library, butmany local libraries. Their latest effort showsstrong emphasis on
domain-based reuse and addressing non-technical issues.
References
[1] J. Aridas, "Deriving and managing functional commonality for software reuse: An rntds expe-
rience," CrossTalk, February 1992.
[2] J. W. Hooper and R. O. Chester,Software Reuse: Guidelines and Methods. New York: Plenum
Press, 1991.
[3] "Reuse Adoption Guideb ook,"Tech. Rep. SPC-92051-CMC, Software Productivity Consortium,
November 1992.
[4] T. J. Biggerstaff and A. J. Perlis, eds., Software Reusability: Concepts and Models. New York:
ACMPress, 1989.
4 Biography
Valerie A. Neumann has been a memb er of the technical staff of the Software Warehouse-
Eastman Kodak Company's reusable artifacts library in Rochester, New York, for two years. Prior
to coming to Kodak, she was a software engineer with Unisys and General Electric corporations,
working on NATO andU.S. Navy defense software. She has a BS degree in Computer Science and
has worked on software development and engineering for over twelve years.
Neumann- 5