DocumentCode
3491088
Title
Ciao: a graphical navigator for software and document repositories
Author
Chen, Yih-Farn R. ; Fowler, Glenn S. ; Koutsofios, E. ; Wallach, Ryan S.
Author_Institution
AT&T Bell Labs., Murray Hill, NJ, USA
fYear
1995
fDate
17-20 Oct 1995
Firstpage
66
Lastpage
75
Abstract
Programmers frequently have to retrieve and link information from various software documents to accomplish a maintenance task. Ciao is a graph-based navigator that helps programmers query and browse structural connections embedded in different software and document repositories. A repository consists of a collection of source documents with an associated database that describes their structure. Ciao supports repositories organized in an architecture style called Aero, which exploits the duality between a class of entity-relationship (ER) databases and directed attributed graphs (DAG). Database queries and graph analysis operators in Aero are plug-compatible because they all take an ER database and produce yet another ER database by default. Various presentation filters generate graph views, source views, and relational views from any compatible ER database. The architecture promotes the construction of successively more complex operators using a notion of virtual database pipelines. Ciao has been instantiated for C and C++ program databases, and program difference databases. The latter allows programmers to explore program structure changes by browsing and expanding graphs that highlight changed, deleted, and added entities and relationships. The unifying ER model under ciao also allows users to navigate different software repositories and make necessary connections. We have linked program difference databases and modification request (MR) databases so that users can investigate the connections between MRs and affected entities. Ciao has been applied to several large communications software projects and we report experiences and lessons learned from these applications
Keywords
data visualisation; directed graphs; entity-relationship modelling; query processing; reverse engineering; software maintenance; Aero architecture style; Ciao; browsing; database; database queries; directed attributed graphs; document repositories; entity-relationship databases; graph analysis operators; graph views; graphical navigator; information retrieval; maintenance task; presentation filters; programmers; relational views; software documents; software repositories; source document collection; source views; structural connections; virtual database pipelines; Computer architecture; Embedded software; Erbium; Filters; Information retrieval; Navigation; Pipelines; Programming profession; Relational databases; Software maintenance;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance, 1995. Proceedings., International Conference on
Conference_Location
Opio
ISSN
1063-6773
Print_ISBN
0-8186-7677-9
Type
conf
DOI
10.1109/ICSM.1995.526528
Filename
526528
Link To Document