Explore chapters and articles related to this topic
Basic Elements of Continuous Process Improvement
Published in Ron S. Kenett, Emanuel R. Baker, Process Improvement and CMMI® for Systems and Software, 2010
Ron S. Kenett, Emanuel R. Baker
Anti-patterns are defined as telling you how to go from a problem to a bad solution, telling you how to go from a bad solution to a good solution (or something that looks like a good idea), but which backfires badly when applied. Recognizing “bad” business practice may provide knowledge or impetus for identifying and describing the relevant good practice.
Towards software reuse through an enterprise architecture-based software capability profile
Published in Enterprise Information Systems, 2022
Abdelhadi Belfadel, Emna Amdouni, Jannik Laval, Chantal Bonner Cherifi, Nejib Moalla
The aforementioned attributes belong to runtime category and are linked to the SBB level as depicted in Figure 1. Like any software system, services or Web APIs design should comply with a set of guiding and widely recognised design quality standards such as cohesion, coupling, modularity and complexity ((Mateos et al. 2015) (Palma et al. 2014) (Ouni et al. 2015)). Design decisions and poorly planned changes may result into different anti-pattern instances such as god object web services and fine-grained web services which are the two most common antipatterns in web services (Josey et al. 2016). God object web service aggregates too many methods into a single service and is not easily reusable due to its low cohesion. Regarding the too fine-grained Web service, it offers few operations and whose communications and maintenance outweigh its utility. Therefore, we selected three design-time metrics proposed in the literature for the selection of best candidate component to reuse ((Mateos et al. 2015) (Palma et al. 2014) (Ouni et al. 2015) (França and Soares 2015)), and considered as best practices in ISO 25010 quality characteristics and Microsoft® Application Architecture Guide. They are linked to the ABB level and corresponds to the maintainability category. Maintainability defines the cohesion, coupling and complexity of the component.