Print

Reuse is an event, but sharing is a journey



Email
July 18, 2011 —  (Page 1 of 3)
_The idea of reusing systems and software engineering assets—such as requirements, designs, source code and test cases—has long been the leading candidate for discontinuous improvements in engineering efficiency and quality. Douglas McIlroy first introduced the idea of reusable software components as a means to injecting engineering principles into software development back in 1968. Research on the broader topic of reuse illuminated huge opportunities during a spike of activity in the late 1980s and early 1990s. More recently, the field of product line engineering has focused on lucrative opportunities for reuse within a family of similar products or systems.

Reuse in concept is simple, clear and powerful. Reuse in practice, however, has been messy, muddled and anemic. The problem is, the things about reuse that seem obvious don’t work, and the things about reuse that work aren’t obvious.
 
This has resulted in many different engineering organizations predictably taking the same ruinous path to failed reuse initiatives, while consistently overlooking the readily available path to reuse breakthroughs. Not only has this stifled the field of systems and software reuse, but it has also unnecessarily stunted the growth and advancement of entire companies and industries.

This contrast in perspectives on reuse—the seemingly obvious things that don’t work versus the things that do work that aren’t so obvious—can be succinctly stated as: Reuse is an Event, Sharing is a Journey.

Reuse is an Event
Central to the most ineffective forms of reuse is the idea that reuse is an event. Unfortunately, this is also the first impression most people have about reuse, and this misperception sticks. The classic example is when an organization creates a library for reusable assets. The reuse event occurs when someone finds and reuses an asset from the library for a new or enhanced product or system. High fives all around.

The reuse event provides 100% reuse on day one, but 0% reuse every day after that. After N different reuse events from a library asset, there are N copies of the asset, plus the one in the library. Enhancements, variations or fixes on any of these N+1 copies results in divergence. To reconcile and consolidate this divergence requires a level of effort that is proportional to N2. That is, a change to any of the N+1 copies must be reconciled with the other N copies, or N+1 times N.



Related Search Term(s): reuse

Pages 1 2 3 


Share this link: http://sdt.bz/35741
 
Most Read Latest News Blog Resources

Add comment


Name*
Email*  
Country     


  • Comment
Loading




close
NEXT ARTICLE
GNU Automake tops reuse survey
A Black Duck survey measured the redistribution of binary components in open-source projects. GNU Automake was found to be the most popular open-source component Read More...
 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 

Download Current Issue
MAY 2012 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
blogs tab
Creation
To write better software, cultivate your ability to be creative.
05/19/2012 07:40 PM EST

Slick...but who needs it?
compilr.com is a well-designed site and the folks behind it seem to have their heart in the right place. But...who needs it?
05/16/2012 12:45 PM EST

How to be a better software developer
Want to be a better developer? You won't get there by mastering an interesting language or learning a new set of APIs.
05/14/2012 12:18 PM EST

Wooing Galatea
Do yourself a favor and check out Galatea 2.2, a wonderful book by novelist Richard Powers.
05/12/2012 07:05 PM EST

The world as story
An artificial-intelligence system at Carnegie Mellon seeks to understand the world by making statements about it.
05/10/2012 06:39 AM EST

The Rise of the Brogrammer, or the Rise of the Sexist Programmer?
Women in Silicon Valley get vocal about sexist ads and campaigns that contribute to a tense work environment.
05/09/2012 03:14 PM EST

 

Events calendar tab
5/23/2012 to 5/24/2012
Chicago
IEG

6/3/2012 to 6/7/2012
Orlando
IBM Rational

6/10/2012 to 6/15/2012
Las Vegas
SQE

6/10/2012 to 6/15/2012
Las Vegas
SQE

6/11/2012 to 6/14/2012
Bellevue, Wash.
AMD