UCI ICS 228 - Hypermedia for Heterogeneous Software Development Environments

Unformatted text preview:

Chimera: Hypermedia for HeterogeneousSoftware Development EnvironmentsKENNETH M. ANDERSONUniversity of Colorado, BoulderandRICHARD N. TAYLOR and E. JAMES WHITEHEAD, JR.University of California, IrvineEmerging software development environments are characterized by heterogeneity: they arecomposed of diverse object stores, user interfaces, and tools. This paper presents an approachfor providing hypermedia services in this heterogeneous setting. Central notions of theapproach include the following: anchors are established with respect to interactive views ofobjects, rather than the objects themselves; composable, n-ary links can be establishedbetween anchors on different views of objects which may be stored in distinct object bases;viewers may be implemented in different programming languages; and, hypermedia servicesare provided to multiple, concurrently active, viewers. The paper describes the approach,supporting architecture, and lessons learned. Related work in the areas of supportingheterogeneity and hypermedia data modeling is discussed. The system has been employed in avariety of contexts including research, development, and education.Categories and Subject Descriptors: H.5.1 [Multimedia Information Systems]; D.2.2 [Soft-ware Engineering]: Tools and Techniques; I.7.2 [Document Preparation]: Hypertext/HypermediaGeneral Terms: DesignAdditional Key Words and Phrases: Heterogeneous hypermedia, hypermedia system architec-tures, open hypermedia systems, link servers, software development environmentsThis article is a major revision and expansion of a paper which appeared in the Proceedings ofECHT ’94.This effort was sponsored by the Defense Advanced Research Projects Agency, and RomeLaboratory, Air Force Materiel Command, USAF, under agreement number F30602-97-0021.The U.S. Government is authorized to reproduce and distribute reprints for Governmentalpurposes notwithstanding any copyright annotation thereon. The views and conclusionscontained therein are those of the authors and should not be interpretted as necessarilyrepresenting the official policies or endorsements, either expressed or implied, of the DefenseAdvanced Research Projects Agency, Rome Laboratory, or the U.S. Government.Authors’ addresses: K. M. Anderson, Department of Computer Science, University of Colorado,Boulder, ECOT 717, Campus Box 430, Boulder, CO 80309-0430; email: [email protected];R. N. Taylor and E. J. Whitehead, Jr., Department of Information and Computer Science,University of California, Irvine, CA 92697-3425; email: {taylor; ejw}@ics.uci.edu.Permission to make digital /hard copy of part or all of this work for personal or classroom useis granted without fee provided that the copies are not made or distributed for profit orcommercial advantage, the copyright notice, the title of the publication, and its date appear,and notice is given that copying is by permission of the ACM, Inc. To copy otherwise, torepublish, to post on servers, or to redistribute to lists, requires prior specific permissionand/or a fee.© 2000 ACM 1046-8188/00/0700–0211 $05.00ACM Transactions on Information Systems, Vol. 18, No. 3, July 2000, Pages 211–245.1. INTRODUCTIONSoftware development environments (SDEs) are used to develop and main-tain a diverse collection of highly interrelated software objects [Boudier etal. 1988; Fernstrom et al. 1992; Kadia 1992; Thomas 1989] in a distributed,multiuser context. Large software systems may, for example, consist ofmultiple versions of requirements specifications, designs, prototypes,source code, test information, scripts, and documentation. Establishing andexploring the many and complex connections between these componentsare major tasks of development, program understanding, and maintenance.In 1986, Delisle and Schwartz suggested that the attributes of hypermediamade it a promising technology for capturing and visualizing such relationsin CAD environments (a closely related area) [Delisle and Schwartz 1986].Since then several research groups have explored the idea of supportingnavigation and access to SDE artifacts with hypermedia technology [Creechet al. 1991; Ferrans et al. 1992; Garg and Scacchi 1990; Oinas-Kukkonen1997; Østerbye 1995]. The objectives have typically included allowing anengineer to freely associate objects without regard to the type of thoseobjects or where they are stored and, subsequently, to support theirnavigational access through a convenient user interface. This paper de-scribes the approach employed by the Chimera open hypermedia system(OHS) to address this research area, and also serves as an archivalreference for Chimera’s implementation techniques.1The primary purposeof this paper is to communicate how various techniques can be used intandem to make environmentwide heterogeneity manageable and to pro-vide enough information to enable researchers outside of the open hyper-media field to apply these techniques in new domains.1.1 Technical RequirementsThe design of the Chimera open hypermedia system evolved from ourresearch in the software engineering and user interface developmentdomains [Kadia 1992; Taylor et al. 1995]. In particular, the followingtechnical requirements are important for supporting and managing large-scale heterogeneity within these domains:(1) Heterogeneous object editor and viewer support. SDEs contain awide variety of tools for developing and manipulating objects. SDEsalso increasingly include multiple viewers of single objects, where eachviewer presents different aspects of the object, perhaps using differentdepiction styles. We feel it is unlikely that software development teamswill give up their favorite tools in exchange for hypermedia functional-ity. Ideally, all editors and viewers in an environment should be able touse hypermedia services and respond to hypermedia events.(2) Anchors specialized to particular views. Given that different view-ers of a single object may present strikingly different depictions, or that1According to Merriam-Webster’s 9th Collegiate Dictionary, a chimera is “an individual,organ, or part consisting of tissues of diverse genetic constitution. . .”212 • K. M. Anderson et al.ACM Transactions on Information Systems, Vol. 18, No. 3, July 2000.one viewer may present a depiction of information synthesized fromseveral separate objects, anchors seem more naturally—or necessari-ly—associated with views, rather than objects.2For example, programsource code may be viewed as text, as a


View Full Document

UCI ICS 228 - Hypermedia for Heterogeneous Software Development Environments

Download Hypermedia for Heterogeneous Software Development Environments
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Hypermedia for Heterogeneous Software Development Environments and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Hypermedia for Heterogeneous Software Development Environments 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?