by Hannes Thaller
Abstract:
Design patterns are elegant and well tested solutions to recurrent software development problems. Their extensive use in every day programming weaves valuable architectural information into software systems. Despite the wide usage of design patterns, system documentations seldom contain information about their existence. This work presents a fully fledged approach to extract design patterns such that the lost information can be of value for architects, developers and maintainers. It includes the common design pattern detection steps that extract features, sample candidates from the system under inspection and infer whether the candidates are of a certain pattern or not. The approach incorporates the usage of object oriented properties in form of micro-structures that are projected onto feature maps. These feature maps are then analyzed by a convolutional neural network that extracts high-level features from which robust prediction results can be drawn. Results indicate that deep learning methods bare great potential for the design pattern community as reliable inference procedure.
Reference:
Towards Deep Learning Driven Design Pattern Detection (Hannes Thaller), Master's thesis, Johannes Kepler University, 2016.
Bibtex Entry:
@MastersThesis{Thaller2016,
author = {Thaller, Hannes},
school = {Johannes Kepler University},
title = {Towards Deep Learning Driven Design Pattern Detection},
year = {2016},
abstract = {Design patterns are elegant and well tested solutions to recurrent
software development problems. Their extensive use in every day programming
weaves valuable architectural information into software systems.
Despite the wide usage of design patterns, system documentations
seldom contain information about their existence. This work presents
a fully fledged approach to extract design patterns such that the
lost information can be of value for architects, developers and maintainers.
It includes the common design pattern detection steps that extract
features, sample candidates from the system under inspection and
infer whether the candidates are of a certain pattern or not. The
approach incorporates the usage of object oriented properties in
form of micro-structures that are projected onto feature maps. These
feature maps are then analyzed by a convolutional neural network
that extracts high-level features from which robust prediction results
can be drawn. Results indicate that deep learning methods bare great
potential for the design pattern community as reliable inference
procedure.},
file = {:MSc Theses\\2016 Hannes Thaller\\Towards Deep Learning Driven Design Pattern Detection-preprint.pdf:PDF},
keywords = {SCCH},
}