Monitoring design flaws in object-oriented software
Abstract
Design flaws are introduced into software during its maintenance as a result of failure to comply with design rules. Despite the fact that defects in the design adversely affect the maintainability of software, and should be eliminated, in some cases, their introduction is the best design solution. The paper describes the graphical representations designed to facilitate the monitoring of design flaws. Catalog of categories is defined which combine defects in the design by their shared history and allows simplifying the interpretation of graphic representations. It is shown that by monitoring using visualization one can quickly identify progressing design flaws.
Problems in programming 2010; 2-3: 242-251
Full Text:
PDF (Русский)References
Lehman, M.M. On Understanding Laws, Evolution, and Conservation in the Large-Program Life Cycle / M.M. Lehman // The Journal of
Systems and Software. – 1980. – vol. 1. – P. 213–221.
Izurieta C. How Software Designs Decay: A Pilot Study of Pattern Evolution / Clemente Izurieta, James M. Bieman // Proceedings of the First International Symposium on Empirical Software Engineering and Measurement (ESEM’07), September 20–21 2007. – Washington, 2007. – P. 449–451.
Godfrey М. The past, present, and future of software evolution / Godfrey, M.W. German, D.M. // Frontiers of Software Maintenance, 2008. – Beijing, 2008. – P. 129–138.
Нечай О.С. Методи та засоби виявлення дефектів проектування об’єктно–орієнтованого програмного забезпечення / О.С. Нечай,
М.О. Сидоров // Вісник НАУ. – 2009. – № 3. – С. 200–205.
Kim S. Which warnings should I fix first? / Sunghun Kim, Michael D. Ernst // Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering (ESEC/FSE’07). – New York: ACM, 2007. – P. 45–54.
Mantyla M. Bad Smells " Humans as Code Critics / Mika V. Mantyla, Jari Vanhanen, Casper Lassenius // in Proceedings of the 20th IEEE
International Conference on Software Maintenance (ICSM’04). – Washington: IEEE Computer Society, 2004. – P. 399–408.
Fowler M. Refactoring: Improving the Design of Existing Code / Martin Fowler. – Addison–Wesley, 1999. – 464 p.
Brown J. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis / William J. Brown, Raphael C. Malveau, Hays W. "Skip" McCormick, Thomas J. Mowbray. – Wiley, 1998 . – 336 p.
Riel A. Object Oriented Design Heuristics/ Arthur J. Riel. – Addison–Wesley Professional, 1996 . – 400 p.
Ciupke O. Automatic detection of design problems in object–oriented reengineering / Oliver Ciupke // Proceedings of the Technology of Object–Oriented Languages and Systems (TOOLS’99). – Washington: IEEE Computer Society, 1999. – Р. 18–32.
Hovemeyer D. Finding bugs is easy / David Hovemeyer, William Pugh // ACM SIGPLAN Notices. – 2004. – Vol.39, No.12. – P.92–106.
Marinescu R. Measurement and Quality in Object–Oriented Design: Ph.D thesis / R. Marinescu. – ”Politehnica” University of Timisoara,
– 155 p.
Moha N. A Domain Analysis to Specify Design Defects and Generate Detection Algorithms / N. Moha,
Y. Guéhéneuc, F. Le Meur, L. Duchien // Proceedings of the 11th Intern. Conf. on Fundamental Approaches to Software Engineering. –
Springer-Verlag, March-April 2008. – Р. 276−291.
Ratiu D. Using history information to improve design flaws detection / D. Ratiu, S. Ducasse, T. Girba, R. Marinescu // Proceedings of European Conference on Software Maintenance and Reengineering (CSMR’04), March 24 – 26 2004. – Washington, 2004. – P. 223–232.
Bois B. Does god class decomposition affect comprehensibility? / B. D. Bois, S. Demeyer, J. Verelst, T. Mens, M. Temmerman // Proceedings of the 10th International Conference on Software Engineering (IASTED’06). – Calgary : Acta Press, 2006. – P. 346–355.
Khomh F. An Exploratory Study of the Impact of Code Smells on Software Change–proneness / Foutse Khomh, Massimiliano Di Penta, Yann–Gaël Guéhéneuc // Proceedings of the 24th International Conference on Software Maintance (ICSM’08) . – Washington : IEEE Computer Society, 2009. – P. 75–85.
McConnell S. Code Complete: A Practical Handbook of Software Construction / Steve McConnell. – Microsoft Press, 2004. – 960 p.
Eick S. Does Code Decay? Assessing the Evidence from Change Management Data / Stephen G. Eick, Todd L. Graves, Alan F. Karr,
J. S. Marron, Audris Mockus // IEEE Transactions on Software Engineering. – 2001. – Vol. 27, N 1. – P. 1–12.
Lanza M. Object–Oriented Metrics in Practice / Michele Lanza, Radu Marinescu. – Berlin : Springer–Verlag, 2006 . – 206 p.
Нечай О.С. Метод побудови моделей дефектів проектування обєктно–орієнтованого програмного забезпечення / О.С. Нечай,
М.О. Сидоров // Наукоємні технології. – 2009. – № 2. – С.58–64.
Нечай О.С. Метод діагностики об’єктно–орієнтованого програмного забезпечення / О.С. Нечай // Вісник НАУ. – 2009. – № 5. – С. 100–111.
D'Ambros M. "A Bug's Life" Visualizing a Bug Database / M. D'Ambros, M. Lanza, M. Pinzger // Proceedings of 4th IEEE International Workshop on Visualizing Software for Understanding and Analysis (VISSOFT 2007). – Washington : IEEE Computer Society, 2007. – P. 113–120.
Lanza М. The Evolution Matrix: Recovering Software Evolution using Software Visualization Techniques / Michele Lanza // Proceedings of International Workshop on Principles of Software Evolution (IWPSE’01). – New York : ACM Press, 2001. – P. 37–42.
Lungu M. Reverse Engineering Super–Repositories / Mircea Lungu, Michele Lanza, Tudor Girba, Reinout Heeck // Proceedings of 14th
Working Conference on Reverse Engineering (WCRE 2007). – Washington : IEEE Computer Society, 2007. – P. 120–129.
Wattenberg M. Baby Names, Visualization, and Social Data Analysis / Martin Wattenberg // Proceedings of IEEE Symposium on Information Visualization (InfoVis 2005). – Washington : IEEE Computer Society, 2005. – P. 1–6.
Refbacks
- There are currently no refbacks.







