Towards a Catalog of Enterprise Architecture Smells

Code Smells are well known in the domain of Technical Debt (TD). They hint at common bad habits that impair the quality of the software system. By detecting those smells it is possible to suggest a better solution or, at least, make the developers aware of possible drawbacks. However, in terms of Enterprise Architecture (EA), which is a more holistic view of an enterprise including TD, there does not exist such a concept of EA Smells. Such EA Smells can be a component of EA Debt, working like a metric to rate the quality of data and estimate parts of the EA Debt in an EA Repository. The main goal of this work is to start the development of a catalog to facilitate future design and development of EAs. This catalog should be expanded and serve as food for thought to create a corresponding tool for the detection of smells.

[1]  Horst Lichter,et al.  Towards the Definition of Enterprise Architecture Debts , 2019, 2019 IEEE 23rd International Enterprise Distributed Object Computing Workshop (EDOCW).

[2]  Simon Hacks,et al.  A Continuous Delivery Pipeline for EA Model Evolution , 2019, BPMDS/EMMSAD@CAiSE.

[3]  Alfred Zimmermann,et al.  Towards a Collaborative Repository for the Documentation of Service-Based Antipatterns and Bad Smells , 2019, 2019 IEEE International Conference on Software Architecture Companion (ICSA-C).

[4]  Yann-Gaël Guéhéneuc,et al.  A systematic literature review on the detection of smells and their evolution in object‐oriented and service‐oriented systems , 2018, Softw. Pract. Exp..

[5]  Ralf Laue,et al.  Business Process Model anti-Patterns: a Bibliography and Taxonomy of published Work , 2019, ECIS.

[6]  Horst Lichter,et al.  A Probabilistic Enterprise Architecture Model Evolution , 2018, 2018 IEEE 22nd International Enterprise Distributed Object Computing Conference (EDOC).

[7]  Horst Lichter,et al.  Code Smells in Infrastructure as Code , 2018, 2018 11th International Conference on the Quality of Information and Communications Technology (QUATIC).

[8]  Laurie A. Williams,et al.  Characterizing Defective Configuration Scripts Used for Continuous Deployment , 2018, 2018 IEEE 11th International Conference on Software Testing, Verification and Validation (ICST).

[9]  Georgios Gousios,et al.  How good is your puppet? An empirically defined and validated quality model for puppet , 2018, SANER.

[10]  Rami Bahsoon,et al.  Prioritizing Technical Debt in Database Normalization Using Portfolio Theory and Data Quality Metrics , 2018, 2018 IEEE/ACM International Conference on Technical Debt (TechDebt).

[11]  Mauricio A. Saca Refactoring improving the design of existing code , 2017, 2017 IEEE 37th Central America and Panama Convention (CONCAPAN XXXVII).

[12]  Woo Jin Lee,et al.  Developer Mistakes in Writing Android Manifests: An Empirical Study of Configuration Errors , 2017, 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR).

[13]  Simon Hacks,et al.  Towards a Quality Framework for Enterprise Architecture Models , 2017, QuASoQ@APSEC.

[14]  Harald C. Gall,et al.  An Empirical Analysis of the Docker Container Ecosystem on GitHub , 2017, 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR).

[15]  Diomidis Spinellis,et al.  Does Your Configuration Code Smell? , 2016, 2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR).

[16]  Girish Suryanarayana,et al.  Refactoring for Software Design Smells: Managing Technical Debt , 2014 .

[17]  Francesca Arcelli Fontana,et al.  Investigating the Impact of Code Smells on System's Quality: An Empirical Study on Systems of Different Application Domains , 2013, 2013 IEEE International Conference on Software Maintenance.

[18]  Richard T. Vidgen,et al.  An exploration of technical debt , 2013, J. Syst. Softw..

[19]  Yuanfang Cai,et al.  Using technical debt data in decision making: Potential decision approaches , 2012, 2012 Third International Workshop on Managing Technical Debt (MTD).

[20]  Matthias Lange,et al.  A Comprehensive EA Benefit Realization Model--An Exploratory Study , 2012, 2012 45th Hawaii International Conference on System Sciences.

[21]  Forrest Shull,et al.  Prioritizing design debt investment opportunities , 2011, MTD '11.

[22]  Carolyn B. Seaman,et al.  A portfolio approach to technical debt management , 2011, MTD '11.

[23]  Henderik Alex Proper,et al.  Architecture Principles - The Cornerstones of Enterprise Architecture , 2011, The Enterprise Engineering Series.

[24]  Robert L. Nord,et al.  Managing technical debt in software-reliant systems , 2010, FoSER '10.

[25]  Grady Booch,et al.  Enterprise Architecture and Technical Architecture , 2010, IEEE Software.

[26]  Dirk Stelzer,et al.  Enterprise Architecture Principles: Literature Review and Research Directions , 2009, ICSOC/ServiceWave Workshops.

[27]  Samir Chatterjee,et al.  A Design Science Research Methodology for Information Systems Research , 2008 .

[28]  Jaroslav Král,et al.  The Most Important Service-Oriented Antipatterns , 2007, International Conference on Software Engineering Advances (ICSEA 2007).

[29]  M. Mäntylä,et al.  Subjective evaluation of software evolvability using code smells: An empirical study , 2006, Empirical Software Engineering.

[30]  Joshua Kerievsky,et al.  Refactoring to Patterns , 2004, XP/Agile Universe.

[31]  Alan R. Hevner,et al.  Design Science in Information Systems Research , 2004, MIS Q..

[32]  William C. Wake,et al.  Refactoring Workbook , 2003 .

[33]  Ephraim R. McLean,et al.  The DeLone and McLean Model of Information Systems Success: A Ten-Year Update , 2003, J. Manag. Inf. Syst..

[34]  Ward Cunningham,et al.  The WyCash portfolio management system , 1992, OOPSLA '92.

[35]  Standard Glossary of Software Engineering Terminology , 1990 .

[36]  Max Jacobson,et al.  A Pattern Language: Towns, Buildings, Construction , 1981 .