Publication Date



Janet E. Burge; Daniel Krizanc; James Lipton


Computer Science




Design rationale refers to the explicit documentation of the reasons design decisions are made, the alternative design options considered, and the justification supporting these decisions. If properly recorded during the software development life cycle, design rationale documentation can be extremely useful to software engineers. However, because of the costs associated with maintaining extra documentation, it is often omitted. Fortunately, design rationale is naturally embedded in other documents that are created in the general course of software development - such as bug reports, project specifications, emails, or meeting transcripts. I will introduce the text mining problem of automatic extraction of design rationale from such software documentation, and will describe the machine learning based approach to capturing the rationale. I will discuss the feature selection step of the machine learning method, and give background on the genetic algorithm and ant colony optimization metaheuristic chosen in this research for the feature selection procedure. I will show that by applying these text mining techniques to classification of design rationale in software documentation, we are able to achieve higher F-measure than our estimate of what would be achievable manually.



© Copyright is owned by author of this document