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 / arango.ascii < prev    next >
Text File  |  1993-10-19  |  11KB  |  229 lines

  1.  
  2.  
  3.  
  4.  
  5. Networks  and  information  technology  redefine  the  practice  of  reuse
  6.  
  7.  
  8.  
  9.                                                   Guillermo Arango
  10.  
  11.  
  12.  
  13.                              Schlumberger Laboratory for Computer Science
  14.  
  15.                            8311 North RR 620, Austin, TX 78720-0015, USA
  16.  
  17.                                                Tel: 1 (512) 331 3735
  18.  
  19.                                       Email:  arango@austin.slcs.slb.com
  20.  
  21.  
  22.  
  23.                                                         Abstract
  24.  
  25.  
  26.           Libraries, classification schemes, and description languages for software components continue
  27.       to be central topics of discussion at reuse workshops.  I this as a symptom of a community
  28.       focusing on its own models and beliefs of how the *should* work instead of paying attention to
  29.       how the world works?
  30.           The  world  uses  computer  networks  for  private  and  public  communication.   We are  now
  31.       starting to hire from the Nintendo generation. For these young designers and programmers the
  32.       network *is* the primary source of information. Records of anonymous FTP servers show that
  33.       the Internet is one of the primary vehicle for finding and distributing software.
  34.           The same information services we use to find publications, conference announcements, movie
  35.       reviews, phone numbers, weather maps, or stock market news are adequate for finding software
  36.       components.  The reuse community should re-examine the relevance of work on libraries and
  37.       focus on how to leverage off the infrastructural and cultural changes brought about bycommu-
  38.       nications technology.
  39.  
  40.  
  41.       Keywords: Software component, Component library, Classification, Internet, Information Ser-
  42.       vices, Knowbot, Electronic market.
  43.  
  44.  
  45.       Workshop Goals: Domain modeling, Reuse of designs, Incremental evolution of components.
  46.  
  47.  
  48.  
  49.                                                         Arango- 1
  50.  
  51.  
  52. 1      Background
  53.  
  54.  
  55.  
  56. This position statement is a reaction to what I perceive to be a consistent lack of impact of the out-
  57. put of the reuse research community tothe practice of software engineering. Broad-based progress
  58. in software reuse appear to be driven not by the results of technical research but by developments
  59. in areas such as standards, languages, operating systems, process improvement practices, the Inter-
  60. net, or traditional mail-order operations (e.g., in the US, the Programmer's Connection or Egghead
  61. Software catalogues).
  62.  
  63.  
  64.  
  65. 2      Position
  66.  
  67.  
  68.  
  69. 2.1     The acquisition and reuse of software components is a social process
  70.  
  71.  
  72.  
  73. Work  on  component  reuse  assumes  that  there  is  a  repository  and  that  there  is  a  reuser.  That
  74. consumers an suppliers do not communicate except through therecords in the library and a shared
  75. classification  scheme.   That comp onent  classification  is  needed  to  reduce  search  through  large
  76. collections of components.
  77.  
  78.  
  79. In reality,
  80.  
  81.  
  82.  
  83.     fflLibraries seem to be few and have at most a few hundred components.  [Note:  we do not
  84.        imply that there are few components available for reuse, there are millions of them available
  85.        through the (private or public) network infrastructure,but they tend to be distributed through
  86.        thousands of directories, on thousands of machines.]
  87.  
  88.     fflLibraries tend to group components by domains of application and informally shared domain
  89.        semantics facilitate search through simple catalogue and component inspection.
  90.  
  91.     fflIn the case of large collections of relatively unstructured information (e.g., FTP directories),
  92.        there are inexpensive full-text search engines that sift through the material very efficiently.
  93.        CD Rom technology has lowered the price of software storage and distribution to the point
  94.        that it is cheap to index every word in a 400 Mb directory and perform almost instant access
  95.        to any piece of information.
  96.  
  97.     fflInformation services on the networks multiply. The problem of component classification shifts
  98.        to source classification. Finding useful sources is a more interesting problem than identifying
  99.        components within a given source.
  100.  
  101.     fflConsumer  needs  are  rarely  satisfied  by  looking  at  existing  "libraries".  Most  people  find
  102.        software through a social process (e.g., bulletin board postings, e-mail) or using information
  103.        services (e.g.,  WAIS, Gopher,  WWW). Reusers routinely interact with authors via e-mail.
  104.        Special interest groups share bulletins were reusers post problems and additional advice from
  105.        members of the group is used by all.
  106.  
  107.  
  108.  
  109. The social process of trading software and software reuse knowledge through the net may not be
  110. easy  to  characterize  in  formal  terms  but  it  is  real, it  is  happening,  and  it  works.   Information
  111. technology and communication technologyare providing the tools to make that process broader
  112. and more productive.
  113.  
  114.  
  115.  
  116.                                                          Arango- 2
  117.  
  118.  
  119. 2.2     Networks are electronic information markets
  120.  
  121.  
  122.  
  123. Trading software comp onents is just one instance of trading information.  If we ignore the infor-
  124. mation  services  provided  through  the  network  environments  we  miss  a  practical,  available,  and
  125. growing infrastructure to enable software access and distribution.  This applies to private networks,
  126. subscriber networks, and public networks.
  127.  
  128.  
  129. At present, a person looking for a component must do most of the foot work: p ost notes on bulletin
  130. boards,  browse  through  FTP directories,  Gopher  holes.  Soon  a  news  group  "comp.rfc"-request
  131. for  component-will  facilitate  a  social  search  process  whereby  a p osting is  resp onded  with  direct
  132. or  indirect  references  to  sources  of  the  component.  Requests  and  components  will  come  from
  133. individuals  in  different  organizations  in  different  countries.   Should we  focus  on  the  problem  of
  134. matching requests and offers that use an un-constrained vo cabulary (assuming most people will use
  135. English)? or should we promote standard templates?
  136.  
  137.  
  138. In  the  electronic  information  markets  that  are  emerging  to day  (e.g.,  170.000  postings  a  day  on
  139. Prodigy alone), we anticipate a more balancedrole b etween consumers and suppliers. Suppliers for
  140. profit will also search for requests-for-components that match their inventory or their capabilities
  141. to  supply  the  components  through  programming,  customization,  or generation.   The  distinction
  142. between reuse and outsourcing will blur.  From the point of view of the consumer the genesis of
  143. the component will not matter if the economics, documentation, and QA are right. Suppliers of
  144. custom components will themselves outsource to suppliers in regions with inexpensive labor costs.
  145. Some  consumers  will  engage  in  supplier  qualification  and  pre-qualification.  [By  the  way,...  this
  146. is  already  happening  today  both  for  software  and  for  hardware  components.  With  networks  as
  147. primary communication media, and EDIand do cument format interchange standards (e.g., JPEG,
  148. MPEG, SGML, HTML) as enablers.]
  149.  
  150.  
  151. Locating "useful" components for specific projects and product lines will not be a one-shot effort,
  152. it  will  become  part  of  a  normal  technology  watch  activity,  with  knowbots  [R.  Kahn,  Center  for
  153. National Research Initiatives, 1988]and information filters screening information through bulletin-
  154. boards, news bulletins, and negotiating access to information with information-brokerage applica-
  155. tions.  [Again...  for non-software types of information, these capabilities are commercially available
  156. to subscribers today.]
  157.  
  158.  
  159. With time we expect that the search for customers will also become an active,  permanent activ-
  160. ity Knowbots with access to component descriptors will also monitor network traffic to identify
  161. potential consumers. In effect, we will have components looking for reusers.
  162.  
  163.  
  164.  
  165. 2.3     Reuse processes and problems are being reformulated
  166.  
  167.  
  168.  
  169. The reuse research community should pay attention to what information technology and networks
  170. are offering to the common person. The evolution of these technologies is altering the way people
  171. communicate and work. As a consequence, many of the assumptions about the classic "reuse pro-
  172. cess" are not valid any longer and newopp ortunities are emerging.  For example, the assumption
  173. about the library and the classification scheme being the only communication media between sup-
  174. pliers and consumers is not realistic; reuse processes based on N2 communication between authors
  175. and reusers of a component take place routinely via e-mail and must be studied..
  176.  
  177.  
  178. Some old problems, such as component classification or library search are being reformulated or
  179. disposed. For example, the ROIof existing and new approaches to component classification, schema
  180.  
  181.  
  182.  
  183.                                                          Arango- 3
  184.  
  185.  
  186. evolution, and library search should be benchmarked against the ROI of full-text search on normal
  187. directories.  Only those that can outperform brute-force search substantially should be retained.
  188. Another example is the trade-off between cost (and actual effectiveness) of classification schemes
  189. to enable automated searches to "hit" on the rightcomp onent description vs.  brute-force search
  190. coupled with a good standard for component documentation.
  191.  
  192.  
  193. The wealth of sources and resources available on the networks today is such that there are many
  194. new problems, for example, How to develop applications that monitor known network sources and
  195. find new sources, How to program an application to monitor networktraffic for specific types of
  196. information and draw useful inferences from pieces obtained from heterogeneous sources, How to
  197. structure repository "yellow pages" in the Internet, How to standardize on component documenta-
  198. tion and characterization for an open market.
  199.  
  200.  
  201. And there is also an opportunity to focus on some of the essential software engineering aspects of
  202. reuse, for example, How to facilitate understanding a component, How to define its design envelope,
  203. How to identify and propagate changes reliably as a component is ported, customized, integrated
  204. into a system, or optimized.
  205.  
  206.  
  207.  
  208. 3      Biography
  209.  
  210.  
  211.  
  212. Guillermo Arango  is  Research  Scientist  and  Manager  of  the  Design  Program  at  the  Schlum-
  213. berger Laboratory for Computer Science in Austin,TX. The Program conducts researchon design
  214. process,  methods and tools in software and mechanical engineering,  information management in
  215. the design process, electronic publishing of technical documentation, and applications of artificial
  216. neural networks to data interpretation.
  217.  
  218.  
  219. Guillermo  has  worked  in  software  engineering  for  the  past  15  years  and  on  reuse-related  topics
  220. for  the  past  10  years.  Five  of  them  in  a  university  environment  (code  generation, automated
  221. software evolution, domain modeling) and five ofthem in industry.  His interests include:  domain
  222. analysis, design analysis, reuse of designs, management of change, design rationales, management
  223. and visualization of design information.  His work applies to pro duct families involving multiple
  224. technologies (e.g., software, mechanics, electronics, hydraulics).
  225.  
  226.  
  227.  
  228.                                                          Arango- 4
  229.