constraints the architecture introduces for application
components.
Tracing tools can be used during the extraction
phase in order to automate the generation of raw re-
quest traces. The abstraction steps required a signif-
icant amount of manual effort. In future one may be
able to use formal or semi-formal specifications of ar-
chitectural patterns and tactics (Pahl et al., 2007) to
automate aspects of the abstraction phase.
The method was applied to enterprise systems.
Future work will study the usefulness of the method
for other types of software systems.
REFERENCES
Buchgeher, G. and Weinreich, R. (2009). Connecting archi-
tecture and implementation. In Meersman, R., Her-
rero, P., and Dillon, T., editors, On the Move to Mean-
ingful Internet Systems: OTM 2009 Workshops, vol-
ume 5872 of Lecture Notes in Computer Science,
pages 316–326. Springer Berlin Heidelberg.
de Silva, L. and Balasubramaniam, D. (2012). Control-
ling software architecture erosion: A survey. Journal
of Systems and Software, 85(1):132–151. Dynamic
Analysis and Testing of Embedded Software.
Ducasse, S. and Pollet, D. (2009). Software architecture re-
construction: A process-oriented taxonomy. Software
Engineering, IEEE Transactions on, 35(4):573–591.
Duenas, J., Lopes de Oliveira, W., and De la Puente, J.
(1998). Architecture recovery for software evolution.
In Software Maintenance and Reengineering, 1998.
Proceedings of the Second Euromicro Conference on,
pages 113–119.
Eisenbarth, T., Koschke, R., and Simon, D. (2003). Lo-
cating features in source code. Software Engineering,
IEEE Transactions on, 29(3):210–224.
Emery, D. and Hilliard, R. (2009). Every Architecture
Description Needs a Framework: Expressing Archi-
tecture Frameworks Using ISO/IEC 42010. In Joint
Working IEEE/IFIP Conference on Software Architec-
ture, 2009 & European Conference on Software Archi-
tecture. WICSA/ECSA 2009, pages 31–40. IEEE.
Erl, T. (2005). Service-Oriented Architecture (SOA): Con-
cepts, Technology, and Design. Prentice Hall PTRs.
Gardazi, S. and Shahid, A. (2009). Survey of software
architecture description and usage in software indus-
try of Pakistan. In Emerging Technologies, 2009.
ICET 2009. International Conference on, pages 395–
402.
Gorton, I. and Zhu, L. (2005). Tool support for just-in-time
architecture reconstruction and evaluation: an experi-
ence report. In Proceedings of the 27th international
conference on Software engineering, ICSE ’05, pages
514–523, New York, NY, USA. ACM.
Hamdouni, A.-E. E., Seriai, A., and Huchard, M. (2010).
Component-based architecture recovery from object
oriented systems via relational concept analysis. In
Kryszkiewicz, M. and Obiedkov, S. A., editors, CLA,
volume 672 of CEUR Workshop Proceedings, pages
259–270. CEUR-WS.org.
Hinsen, K. (2009). The promises of functional program-
ming. Computing in Science Engineering, 11(4):86–
90.
Hohpe, G. and WOOLF, B. (2004). Enterprise Integration
Patterns: Designing, Building, and Deploying Mes-
saging Solutions. The Addison-Wesley Signature Se-
ries. Prentice Hall.
Lindvall, M. and Muthig, D. (2008). Bridging the software
architecture gap. Computer, 41(6):98–101.
Pahl, C., Giesecke, S., and Hasselbring, W. (2007). An
Ontology-Based Approach for Modelling Architec-
tural Styles. In Oquendo, F., editor, Software Archi-
tecture, volume 4758, pages 60–75. Springer Berlin
Heidelberg, Berlin, Heidelberg.
Pinto, M., Fuentes, L., and Troya, J. M. (2011). Specifying
aspect-oriented architectures in AO-ADL. Informa-
tion and Software Technology, 53(11):1165–1182.
Pinzger, M. and Gall, H. (2002). Pattern-supported archi-
tecture recovery. In Proceedings of the 10th Interna-
tional Workshop on Program Comprehension, IWPC
’02, pages 53–, Washington, DC, USA. IEEE Com-
puter Society.
Roy, B. and Graham, T. (2008). An iterative framework for
software architecture recovery: An experience report.
In Morrison, R., Balasubramaniam, D., and Falkner,
K., editors, Software Architecture, volume 5292 of
Lecture Notes in Computer Science, pages 210–224.
Springer Berlin Heidelberg.
Rozanski, N. and Woods, E. (2011). Software Systems
Architecture: Working with Stakeholders Using View-
points and Perspectives. Pearson Education.
Sartipi, K. (2003). Software architecture recovery based
on pattern matching. In Software Maintenance, 2003.
ICSM 2003. Proceedings. International Conference
on, pages 293–296.
Shaw, M. and Garlan, D. (1996). Software Architecture:
Perspectives on an Emerging Discipline. Prentice-
Hall, Inc., Upper Saddle River, NJ, USA.
Solms, F. (2012). What is software architecture? In Pro-
ceedings of the South African Institute for Computer
Scientists and Information Technologists Conference,
SAICSIT ’12, pages 363–373, New York, NY, USA.
ACM.
Sora, I. (2013). Software architecture reconstruction
through clustering: Finding the right similarity fac-
tors. In Proceedings of the 1st International Work-
shop in Software Evolution and Modernization (SEM
2013), pages 45–54. SciTePress.
Tilley, S. R., Wong, K., Storey, M.-A. D., and Moller, H. A.
(1994). Programmable reverse engineering. Interna-
tional Journal of Software Engineering and Knowl-
edge Engineering, 4:501–520.
van Heesch, U., Avgeriou, P., Zdun, U., and Harrison, N.
(2012). The supportive effect of patterns in architec-
ture decision recovery: A controlled experiment. Sci-
ence of Computer Programming, 77(5):551–576.
ENASE2015-10thInternationalConferenceonEvaluationofNovelSoftwareApproachestoSoftwareEngineering
222