Towards automatically generating explanations of software systems Generating explanations of a web-template system in different abstraction levels
Abstract: Traditional software documentation is often challenging to manage as its contentgrow. For example, information becomes scattered, information become hard to retrieve and the documentation has to satisfy multiple different stakeholders. The aimof this study was to find ways to address these challenges. It followed a design scienceresearch approach, with one case used for demonstration and evaluation. A tool,System Explanation Composer (SEC), was built to explore how software artifactsand architectural knowledge (AK) could be interrelated and how different aspectsof the case system could be explained and presented. A meta-model which presentssoftware artifacts and AK was designed. This meta-model interrelates knowledge inthe following four categories; requirements, architecture, rationale, and implementation. SEC generates explanations to a selected set of commonly asked developmentrelated questions using this meta-model. These explanations were evaluated usinga quantitative and a qualitative approach. Although the sample size of the evaluation was too small for making any generalizable statements, the quantitative resultsstrongly indicate that participants in this study solved development-related tasksfaster, more accurately and more independently using SEC as opposed to usingfile-based documentation. The qualitative results also support this statement andindicate that SEC could further assist developers in performing their daily tasksmore efficiently after improving two main aspects: the behavior and rationale sections of the meta-model and the query system of SEC.
AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)