Code Reuse
-- How to make a reusable component to provide more
value to customers?

Hope the topic is not OT.  I'm not sure if Dr. Carma
McClure's claim that "software reuse is the best
answer to the decade-old software crisis"
is all that accurate.  But I'm a firm believer in code
reuse, probably it's a common practice by many
developers, and I'd like to do better in this area.  
The intention of this posting is to seek wisdom and
ideas.

It's necessary to revisit some key benefits of code
reuse to put the subject matter into perspective
without going into detail:

* Increased developers' productivity by reducing
development time;
* Increased software quality (premise: reusable
components are reliable and of good quality);
* Reduced cost;
* Improved software interoperability;
* conducive to maintenance and future enhancements

Despite all these great benefits code reuse faces a
few formidable challenges.  Chief among them, IMHO,
Context Prediction.  Allow me to use a specific case
to demonstrate the challenge, SureFire, a reusable
component, URL,
http://68.32.61.40/datadata/ddSearch.cfm.  
This simple component lets one search for data against
any user table of a given database 
(MS SQL Server -based in this case).  

Say, in one environment/context, the business may not 
want certain table or tables to be
accessable/searchable by the application.  Easy
solution, the component has a mechnism to handle this
situation and the component configuration is easy
as well.  Now, in another environment, the business
does not want data in certain columns to 
be viewed by the application users.  Again, the
component has a little nice mechnism to handle that.
OK, now, the third business environment's given
database has all this cryptic column names like
fn, ln for firstName and lastName respectively, again,
no problem, the component can address
the semantic problem adequately.

Now, the real challenge, it seems to me, is the
enormous difficulty of adapting to many different
usage contexts (failure to anticipate possible usage
context(s)).  How could a developer possibly do better
in this area?  Let's use the particular case when
referencing concept(s).

BTW, I read a bit on domain analysis by SEI, though
informative, I can't extract practical 
value or to be more accurate, apply it to this case.  

Aother less important thing, can we consider the above
mechnisms as "adaptable architecture"?

Your thoughts and ideas would be appreciated.

Li, Chunshen (Don)
[EMAIL PROTECTED]









~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

                                Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
                                

Reply via email to