Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


[OT] Enhancing the richness of an information system [was: Difference between an extensible versus an evolvable information system?]

From: "Roger L. Costello" <costello@-----.--->
To: <xml-dev@-----.---.--->
Date: 6/2/2004 3:31:00 PM
Title: Message




Hi 
Folks,
 
Many thanks to those who responded to my last message.  
This message is a follow-up.  
 
From the responses it is evident that the difference between 
"extensibility" and "evolution" can be slippery.  I like the distinction 
that Ken Laskey gave:
 
"To be 
extensible allows you to do things for which you have a current understanding 
but to do it over a wider range of instances."  (Thus, adding new keywords, 
or adding new book categories are examples of extending the system, not 
evolving the system)

"To show evolution, you need to do something in a new 
way or do something you hadn't done before."
 
In the 
following discussion I will use the terms "extensibility" and 
"evolution" using these definitions.
 

I would like to hear your 
thoughts on ways to enhance the richness of an information 
system.
 I see two ways of enhancing the richness of an 
information system:
 
1. Horizontal 
Extension
2. Vertical 
Evolution
 
Below I explain what I mean 
by these terms.
 
Horizontal 
Extension
 
A typical method of 
growing a system is to "add more stuff".  For example, Amazon can grow by 
adding more ways for users to locate information: 
    - add a 
keyword search capability, 
    - add a 
way to locate information based upon book category, 
    - add a 
way to locate information based upon author name, 
    - 
etc.  
 
By "adding more stuff" 
Amazon has extended its "access mechanisms".  The system has expanded 
horizontally with new access methods.  I refer to this method of enhancing 
the richness of a system as horizontal extension.
 
Advantages: this method of 
enhancing the richness of an information system is well understood and is 
controllable.
 
Disadvantages: no matter 
how many ways Amazon provides for accessing information, it will never be 
enough.  The need for new ways 
to access information changes as 
information changes (e.g., new fields of study) and as users change.  (I 
offer as evidence the constantly changing face of the Amazon web 
site)
 
Vertical 
Evolution
 
When I was a child I used 
to enjoy building things with Legos.  Starting from simple Lego building 
blocks I was able to build up rich structures.  The Lego building block 
"interface" was fixed (i.e., the blocks snapped together in certain ways).  
But that simple interface was sufficient to enable creation of 
tremendously rich structures.  The richness of the structures was 
limited only by my imagination.
 
Analogously, a 
method for enhancing the richness of a system is to "build up" the system 
from building blocks.  The system is thus designed to support 
different mechanisms for "connecting" the pieces.  After 
launching the system, the ways that the system changes is dictated by how the 
users connect the pieces together.  
 
For example, suppose 
that Amazon provides a "related to" mechanism for connecting 
information.  Further, suppose that Amazon does not have a keyword search 
capability.  The system could "evolve" to support keyword searches by using 
the "related to" mechanism:
 

XSLT 
--------------------> XSLT: Programmer's Reference by Michael 
Kay
             
"related-to"
 
"XSLT" is a 
user-defined keyword.
"XSLT: Programmer's 
Reference by Michael Kay" is a basic information building block within the 
Amazon system.
 
It is important to 
note that no new functionality was introduced.  Existing functionality was 
utilized to enhance the richness of the system.  That is, the "related to" 
connection mechanism was used to create the keyword search mechanism.  I 
refer to this method of enhancing the richness of a system as vertical 
evolution.
 
Advantages: the 
system is able to quickly respond/adapt to user needs.  In fact, it is the 
users that evolve the system!  The system simply provides the mechanisms 
for the user to "snap together the building blocks".  

 
Disadvantages: 
it is important that the system provide guides to ensure that evolution occurs 
in a useful direction.  (The system guides, 
but does not control the evolution)
 
What are your thoughts on this?  /Roger


transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent