Reuse Success - When and How?

Ernesto Guerrieri

Inso Corporation

299 Promenade Street, Providence, RI 02908

Tel: (401)752-4464, fax: (401)752-4444

Email: eguerrieri@inso.com, {e.guerrieri@ieee.org, guerrieri@acm.org, guerrier@bu.edu}

URL: http://www.inso.com/

 

Abstract

Where are we with the success of software reuse? There may be localized successes and some global progress, but do we, as the reuse community, understand why? How can we measure the progress of the State of the Art (SOA) and the State of the Practice (SOP)? These should be central questions that the WISR should address at each of its meetings and provide guidance and a roadmap for the success of software reuse.

Keywords: Software Engineering, Software Reuse Adoption, Strategic Reuse, Systematic Software

Reuse, Technology Transfer

Workshop Goals: Direction for reuse efforts; Identify reuse community goals; Network with other reuse researchers

Working Groups: Promote Software Reuse, Reuse Best Practices, Reuse Success Roadmap, Software Reuse Adoption

 

1 Background

During the panel "The Future of Systematic Software Reuse" at ICSR-3, Rubén Prieto-Díaz predicted that, by the year 2000, "software reuse will cease to exist" (not in the sense that it will die, but in the sense that it will be part of the mainstream software engineering process) and that "the ultimate success of software reuse will be marked by its disappearance" [Prieto-Díaz94]. Others have stated that we have solved the reuse problems and some complain that we are seeing repeat solutions to problems already solved. So why does software reuse exist? What problems are left to be solved? Have some of the problems changed? Where do we go from here?

More fundamental, if we believe that software reuse will succeed, when will we know that it has succeeded and what needs to happen in order for it to succeed?

 

2 Position

First, I do not think we have yet succeeded in software reuse. In the State of the Practice (SOP), I do not see alot being applied. Yes, OO class frameworks, Java, Visual Basic, etc. have facilitated the code reuse, but less is done, in general, at the higher level such as in the design and requirements phases of a project.  In the State of the Art (SOA), I have not perceived any incremental progress although many issues have been addressed. Second, the accomplishments of software reuse are partly due to the software reuse community, but mainly external activities are helping achieve it. Third, as a community we should be able to define a roadmap to the success of software reuse and WISR should take on the role of reviewing the progress to this achievement.

 

3 Approach

We need to understand where we stand with software reuse. Did we make any noticeable progress this year. Although there may be individual projects that succeed at any given point, what impacts the whole community? Which ones are within the reuse community? Which derive from outside the reuse community and impact us? What are the research projects that need to be addressed by the SOA? Where are the roadblocks with the SOP and what can help eliminate them? These are the issues that the WISR community should be addressing and providing guidance.

3.1 Reuse Successes from within the Reuse Community

The reuse community has provided many key solutions on many of the reuse issues. Just to name a few, there has been alot of concentration around reuse libraries, metrics, domain analysis, component-based development, management issues, product lines, domain specific software architecture (DSSA), and generators. We also see alot of reuse books that have been published. Alot of the concepts promoted by software reuse are also considered good software engineering practices. This sounds great, but most of these areas are not of widespread usage.

 

3.2 Reuse Successes from outside the Reuse Community

How did the success of the following products impact the SOA/SOP of software reuse:

How have the following technologies impact the SOA/SOP of software reuse:

Overall, the successes of products and technologies outside the reuse community have had more impact on the SOP of software reuse than any work from within the reuse community. How can we foresee this in the future and provide the technology transfer of the SOA from the reuse community to the external successes? ICSR has provided the reverse technology transfer by presenting many of these technologies as keynotes. Various individuals in the reuse community have attempted to evangelize software reuse within the communities of these other technologies, but with mixed results (one reason could be that they were outnumbered by short-sighted issues within these other technologies).

3.3 The WISR Roadmap to Reuse Success

What I would like to see is a more leadership role by the WISR reuse community to:

We should all leave the workshop with clear objectives of the future activities in software reuse research, implementation, and technology transfer. One should attend future workshops with the intent to analyze the progress made against the goals, to understand the impact of other technologies and products, and to correct/update the WISR Roadmap to Reuse Success.

 

 

4 Comparison

There have been various papers in the literature (including past WISR proceedings) that have addressed the adoption, leverage, and institulization of software reuse [Collins95, Czarnecki97, Diaz-Herrera95, Frakes94, Gaska95, Griss95, Johnsson95, Kelly95, Lam97, Moore97, Neighbor94, Steyaert97, Price97].

There have been various Reuse Capability Models proposed in the past that would help capture the state of reuse in an organization (but not in the general practice). Most of these were based on the SEI's Software Capability Model. Some reuse maturity models were defined by organizations and projects such as the REBOOT project, Harris Corp., and SPC.

In 1995, the Software Reuse Initiative (SRI) was a focused activity that was charged with coordination the software reuse efforts throughout the Department of defense (DOD) and worked on a strategic plan for the adoption of systematic reuse. This included implementing a product-line approach, developing a reuse-based software systems engineering paradigm, removing barriers to reuse, facilitate technology transfer, and publicize reuse successes. [SRI95]

 

References

[Collins95] Collins, Patricia,  and Barbara Zimmer, "Evolutionary Metrics Adoption Method for Reuse Adoption," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 (ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/collins.txt )

[Czarnecki97] Czarnecki, Krzysztof, "Leveraging Reuse Through Domain-Specific Software Architectures," WISR-8, Ohio State University, Columbus, OH, 23-26 March 1997 ( http://www.umcs.maine.edu/~ftp/wisr/wisr8/papers/czarnecki/czarnecki.html)

[Diaz-Herrera95] Diaz-Herrera, Jorge,  Sholom Cohen and James Withey, "Institutionalizing Systematic Reuse: A Model-Based Approach," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 (ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/diaz.txt )

[Frakes94] Frakes, William, "Systematic Software Reuse: A Paradigm Shift," ICSR-3, Rio de Janeiro, Brazil, 1-4 November 1994, pp.2-3

[Gaska95] Gaska, Marilyn, "Reuse Lessons Learned from Architecture and Building Systems Integration," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 (ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/gaska.txt )

[Griss95] Griss, Martin, "The Architecture and Processes for a Systematic OO Reuse Factory," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 ( ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/griss.txt )

[Johnson95] Johnson, Ralph, "Why Doesn't the Reuse Community Talk About Reusable Software?," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 (ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/johnson.txt )

[Kelly95] Kelly, T.P. and B.R. Whittle, "Applying Lesson Learnt from Software Reuse to Other Domains," WISR-7, Andersen Consulting's Center for Professional Education, St. Charles, Illinois, 28-30 August 1995 (ftp://gandalf.umcs.maine.edu/pub/WISR/wisr7/proceedings/txt/kelly.txt )

[Lam97] Lam, Wing, "Risk Management Techniques for The Transfer of Reuse Technology," WISR-8, Ohio State University, Columbus, OH, 23-26 March 1997 (http://www.umcs.maine.edu/~ftp/wisr/wisr8/papers/lam/lam.html)

[Moore97] Moore, James, "Fundamental Principles of Software Reuse," WISR-8, Ohio State University, Columbus, OH, 23-26 March 1997 (http://www.umcs.maine.edu/~ftp/wisr/wisr8/papers/moore/moore.html)

[Neighbors94] Neighbors, James, "An Assessment of Reuse Technology after Ten Years," ICSR-3, Rio de Janeiro, Brazil, 1-4 November 1994, pp.6-13

[SRI95] Software Reuse Initiative, "Department of Defense Software Reuse Initiative Strategic Plan," DOD, 1995

[Steyaert97] Steyaert, Patrick, Carine Lucas, and Kim Mens, "Reuse Contracts: Making Systematic Reuse a Standard Practice," WISR-8, Ohio State University, Columbus, OH, 23-26 March 1997 (http://www.umcs.maine.edu/~ftp/wisr/wisr8/papers/steyaert/steyaert.html)

[Price97] Price, Eric, "Organizational Culture and Behavioral Issues Affecting Software Reuse," WISR-8, Ohio State University, Columbus, OH, 23-26 March 1997 (http://www.umcs.maine.edu/~ftp/wisr/wisr8/papers/price/price.html)

[Prieto-Díaz94] Prieto-Diaz, Ruben, "The Disappearance of Software Reuse," ICSR-3, Rio de Janeiro, Brazil, 1-4 November 1994, pp.225.

 

Biography

Ernesto Guerrieri is the Director of Technology at Inso Corporation where he is responsible for the core technologies utilized in the products developed by the Electronic Publishing Solutions Division. He is also an Adjunct Associate Professor in the Software Engineering program at Boston University. He was previously at Buzzeo, Inc. as Director of Technology and ZEOLogix and as Engineering Manager. At Digital Equipment Corporation, he was the project leader of Digital's ACMSxp transaction processing system and TP Workcenter development environment, and the team leader of Digital's DECADMIRE application development environment. He was also involved in Digital's corporate reuse initiatives. Prior to Digital, he was at SofTech, Inc. where he led the development of the RAPID (Reusable Ada Packages for Information system Development) Center Library (RCL). He received a Ph.D. in Electrical, Computer, and Systems Engineering from Rensselaer Polytechnic Institute in 1989.