EXPRE: a repository for managing software data and experience

  • Authors:
  • Dandan Wang;Wen Zhang;Jia Chen;Ye Yang;Qing Wang

  • Affiliations:
  • Chinese Academy of Sciences, Beijing, P.R. China;Chinese Academy of Sciences, Beijing, P.R. China;Chinese Academy of Sciences, Beijing, P.R. China;Chinese Academy of Sciences, Beijing, P.R. China;Chinese Academy of Sciences, Beijing, P.R. China

  • Venue:
  • Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Jeffery and Votta [1] consider that the central task of an empirical software engineering (ESE) study is the use of data to address research questions. And as the outcome of empirical studies, experience is reported. When more and more empirical studies are conducted, it becomes difficult to keep track of which data is used in which study, and what is the experience gained. In addition, similar studies generally use slightly different versions of a particular data source to support their own research methods, which can easily cause confusion. Another important problem is that experience and data are not easy to categorize, because different criteria produce different sets of categories. Therefore, there is an increasing need for better management of software data and experience in ESE studies. As a preliminary attempt to address the need, we developed the tool EXPRE (EXPerience REpository) to serve as a repository for managing software data and experience. In more general terms, this tool is also an instance of knowledge management (KM), and in this paper we use knowledge to denote software data and experience. KM involves activities such as integrated knowledge storage and retrieval, knowledge sharing and reuse, etc. EXPRE supports these activities, and therefore can be regarded as an application of KM to empirical software engineering. In the fundamental layer of EXPRE is the conceptual model of software data and experience. These two types of entity share basic properties such as Name, Source, Description, and Raw File. They also share a special property Tags, and this property is used to associate any piece of data or experience with several concepts in the ontology. To keep track of the reference relation between data and experience, data can have Citations from experience, and experience can have References to data. The reference relation also avoids the mistake of confusing different versions of data used by similar empirical studies. The ontology is a collection of terms frequently used in ESE studies, and reflects the background knowledge of ESE. These terms are conceptually connected with each other, and this connection is captured as various relations in the ontology. Two major relations are "Is a" and "Has property". With these relations added, the ontology actually becomes a complex network of concepts. The introduction of ontology to EXPRE has several benefits. First, by associating appropriate concepts with know-ledge, it implicitly divides knowledge into different categories which need not to be disjoint. It becomes possible to browse through the knowledge repository under the guide of the network of concepts, and thus providing a quite different and possibly heuristic view of the knowledge. Second, by searching Tags property for a keyword match, EXPRE provides ontology-based information retrieval that finds the knowledge associated with certain concepts. The third benefit is that the network of concepts itself is visualized in EXPRE to provide an interesting view of the overall structure of background knowledge in ESE. Figure 1 gives the user interface of EXPRE, which consists of three major windows.