AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis
@inproceedings{Brown1998AntiPatternsRS, title={AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis}, author={William H. Brown and Raphael C. Malveau and Hays W. McCormick and Thomas J. Mowbray}, year={1998} }
If patterns are good ideas that can be re-applied to new situations, AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis looks at what goes wrong in software development, time and time again. This entertaining and often enlightening text defines what seasoned developers have long suspected: despite advances in software engineering, most software projects still fail to meet expectations--and about a third are cancelled altogether. The authors of AntiPatterns draw on…
Figures and Tables from this paper
figure 1.1 figure 1.2 figure 2.1 table 2.1 figure 2.10 figure 2.11 figure 2.12 figure 2.13 figure 2.14 figure 2.15 figure 2.16 figure 2.2 table 2.2 figure 2.3 table 2.3 figure 2.4 figure 2.5 figure 2.6 figure 2.7 figure 2.8 figure 2.9 figure 5.1 figure 5.10 figure 5.11 figure 5.13 figure 5.14 figure 5.15 figure 5.16 figure 5.17 figure 5.18 figure 5.2 figure 5.3 figure 5.5 figure 5.6 figure 5.7 figure 5.8 figure 5.9 figure 6.10 figure 6.11 figure 6.13 figure 6.2 figure 6.3 figure 6.4 figure 6.5 figure 6.6 figure 6.7 figure 6.8 figure 6.9 figure 7.1 figure 7.2 figure 7.3 figure 7.4 figure 7.5 figure 7.6 figure 7.7 figure 7.8 table A.1 table A.2
1,061 Citations
AntiPatterns - Theory and Practice
- Computer Science
- 2005
AntiPatterns is introduced as a concept which is supposed to solve some of the software development problems, which are becoming increasingly more complex and makes it hard to properly design and implement them.
2 Fundamentals of AntiPatterns 2 . 1 Design Patterns and AntiPatterns
- Computer Science
This work discusses two new AntiPattern proposals and a variation to an existing AntiPattern that the author has encountered in software projects.
Antipatterns: A Compendium of Bad Practices in Software Development Processes
- Computer ScienceInt. J. Interact. Multim. Artif. Intell.
- 2011
A list of harmful practices that represent anti-patterns in the implementation of software development processes, which arise as a result of bad practices within application development processes are presented.
On the use of developers' context for automatic refactoring of software anti-patterns
- Computer ScienceJ. Syst. Softw.
- 2017
Towards a framework for automatic correction of anti-patterns
- Computer Science2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER)
- 2015
Meta-heuristics are applied to propose a technique for automated refactoring that improves design quality and finds a specific solution to remove anti-patterns.
Anti-pattern Mutations and Fault-proneness
- Computer Science2014 14th International Conference on Quality Software
- 2014
This paper presents results from an empirical study aimed at understanding the evolution of anti-patterns in 27 releases of three open-source software systems: ArgoUML, Mylyn, and Rhino, and identifies some mutations that are more risky in terms of fault-proneness.
9.1.2 Antipatterns in Systems Engineering: An Opening Trio
- Business
- 2012
Patterns provide a way for experts to document the lessons of their experience in such a way that novices can apply those lessons in new situations, and thus avoid costly errors. Furthermore, pattern…
Experiences on Managing Technical Debt with Code Smells and AntiPatterns
- Computer Science2021 IEEE/ACM International Conference on Technical Debt (TechDebt)
- 2021
The goal is to show how to effectively use common tools and the existing body of knowledge on code smells and AntiPatterns to detect technical debt and pay it back.
Antipattern-based model refactoring for software performance improvement
- Computer ScienceQoSA '12
- 2012
An approach that allows the refactoring of architectural models, based on antipatterns, that aims at providing performance improvement is introduced, which has been applied to a case study in the e-commerce domain and results demonstrate its effectiveness.
Guilt-based handling of software performance antipatterns in palladio architectural models
- Computer ScienceJ. Syst. Softw.
- 2014
References
SHOWING 1-10 OF 116 REFERENCES
Refactoring object-oriented frameworks
- Computer Science
- 1992
This thesis gives some conservative algorithms for determining whether a program satisfies constraints, and describes how to use this design information to refactor a program.
Succeeding With Objects: Decision Frameworks for Project Management
- Engineering
- 1995
This invaluable guide clearly outlines the necessary decisions and issues to consider before employing objects for software development projects. It is filled with practical advice distilled from the…
Big Ball of Mud
- Computer Science
- 1997
This paper examines the most frequently deployed architecture: the BIG BALL OF MUD, and explores the forces that encourage the emergence of a BIG BALL of MUD and the undeniable effectiveness of this approach to software architecture.
Reengineering of old systems to an object-oriented architecture
- Computer ScienceOOPSLA '91
- 1991
The goal is to show how an object-oriented development method can be used to gradually modernize an old system, i.e re-engineer the system, by showing how three typical cases of re-engineering are related to object- oriented development.
Software Architectures for Shared Information Systems
- Computer Science
- 1993
This paper reviews historical examples of shared information systems in three different applications whose requirements share some common features about collecting, manipulating, and preserving large bodies of complex information.
Migrating Legacy Systems: Gateways, Interfaces, and the Incremental Approach
- Geology
- 1995
Focusing on data migration, the authors outline key techniques for transforming a legacy IS into a flexible system that meets current needs and is adaptable to unpredictable future changes and advocate a step-by-step strategy that migrates the system to a decomposable target environment while the current IS remains completely operational.
Experiences Applying a Practical Architectural Method
- Computer ScienceAda-Europe
- 1996
This paper briefly introduces the method of developing and testing a practical software architecture method and describes the experiences with its “alpha” and “beta” applications to two U.S. Army management information systems.
Framework-Based Software Development in C++
- Computer Science
- 1997
This book discusses the marriage between the WWW and CORBA, the role of Object Databases in Frameworks, and the Economics of In-house Framework Development.
Object-Oriented Design Heuristics
- Computer Science
- 1996
Object-Oriented Design Heuristics offers insight into object-oriented design improvement and gives programmers of all levels a fast track to understanding the concepts of object- oriented programming.
Analysis patterns - reusable object models
- Computer ScienceAddison-Wesley series in object-oriented software engineering
- 1997
The World of Patterns, a Treatise on Conceptual Models and Business Process Reengineering, and Design Templates for Other Techniques is presented, with a focus on patterns for type model design Templates.