QuASE focuses on quality awareness in software development projects. The aim is to provide flexible means for harmonizing the stakeholders’ views and for decision support. The QuASE functionality exploits information as usually stored in databases of Issue Management Systems (IMS) or other industrial project repositories.
The core of the QuASE system is a conceptual model of that information and the communication environment. Consequently, the QuASE system is structured along the prinicples of MCA (Model Centered Architecture).
QuASE: supports quality and enriches ticketing systems
The QuASE use cases
Use case 1:
Users A and B use the QuASE tool to achieve a common understanding of some aspects of a software under development that are described in a document X. In this scenario, the QuASE knowledge base provides the means of improving the understandability of the document by translating or explaining its content where needed. Fig. 1 shows the case where
Use case 2:
User A uses the QuASE tool for decision support. As a means of such support, the QuASE Knowledge Base facilitates the analysis of previous communications and the parties involved there-in; such information may be reused to improve future communications, for predicting particular attributes, or for supporting decisions on the strategy of communication with the given party in the given context.
For supporting such scenarios, fundamental knowledge related to the communication domain is gathered and stored in the QuASE Knowledge Base: either automatically from the project repositories such as JIRA issue tracking databases, or interactively from knowledge suppliers. This knowledge base consists of two clearly separated parts:
QuASE site ontology
Defines the site-specific communication environment: who communicates, which documents store the communicated information etc.
Contains knowledge related to the communicated information (both common and site-specific); it also can contain a set of core notions acting as a glue between the knowledge specific to different parties. This assures that the views of communicating parties can be harmonized.
The main QuASE system components:
QuASE site modeling tool
Supports a graphical DSL for describing the site-specific communication environment (context, information holders, information, communicated knowledge) and the mapping between the model and the given project repository; is built on top of ADOxx.
QuASE ontology builder utility
Converts QuASE DSL models into OWL2 representations of the QuASE site ontology.
QuASE knowledge base builder utility
At knowledge acquisition engine that onverts the data from project repositories into individuals corresponding to the established ontologies. This is based on the mapping specified by means of the QuASE site modeling tool.
QuASE terminology editor tool
Aquires information from knowledge suppliers and converts this information into the QuOntology-based representation. The tool is interactive and web-based.
Implements the end-user support scenarios, as well as the acquisition information not available in project repositories like user-specified attribute values or information about decisions. The tool is interactive and web-based.
The implementation of the understandability management support in QuASE applies natural language processing techniques. This is to localize the source of understandability conflicts in communicated information (available in plain text as attributes of QuASE knowledge base individuals), and to provide conflict resolution through terminology translation and issuing targeted explanations.
The implementation of the analytical support in QuASE applies machine learning techniques of Apache Mahout to the set of QuASE knowledge base individuals: similarity search for implementing information reuse, regression analysis for predicting attribute values, and hybrid (partially supervised) learning for classification-based recommendation and decision support.
The main advantage of the QuASE approach is that after extracting the data from a project repository like Jira, this data is immediately converted into knowledge available for understandability management and analysis. Moreover, as the mapping is flexible by means of using a special-purpose DSL to express the environment, the knowledge and the mapping, this allows large amounts of existing data to be the subject of applying these techniques.
Thus, we address one of the main challenges of Software Analytics “How can we make data useful to a wide audience, not just to developers but to anyone involved in software?” (Software Development Analytics, Dagstuhl Reports, Vol. 4, Issue 6, 2014, pp. 64–83).
In fact, the QuASE system can be seen as a bridge which connects end users, the data in project repositories and the (extendable) set of machine learning and natural language processing techniques: these techniques become applicable to the repository data automatically after the particular repository and communication environment are described by means of the QuASE site DSL.
QuASE: a bridge for end users to project repositories, machine learning and natural language processing