Date of Award
12-2013
Culminating Project Type
Starred Paper
Degree Name
Computer Science: M.S.
Department
Computer Science and Information Technology
College
School of Science and Engineering
First Advisor
Ramnath Sarnath
Third Advisor
Dennis Guster
Keywords and Subject Headings
Design Flaws, Object Oriented, System Design, Detection, Correction
Abstract
As the object oriented systems evolve, the original design is distorted and bad smells or deviation from good design heuristics are observed in the source code. Presence of design flaws in the software distorts the original design pattern realization and affects maintainability and flexibility of the code. In this paper, we study software evolution, design flaw detection and correction strategies. We focus on two design flaws and demonstrate their detection and correction. To detect design flaws we refer multiple strategies, define our own strategies and apply those to sample java software. A set of metric values are measured for the source code and probable flawed entities of the software are detected. Detection of design flaws helps in selecting the appropriate refactoring activities. For correcting design flaws or refactoring, we use refactoring techniques from the literature and demonstrate step by step refactoring of a god class and a long method. We conclude that software systems should be monitored whenever changes are made so that potential flaws can be predicted; systems should also be checked for code smells or design flaws and appropriate refactoring be applied to improve the design of the system. This will increase the maintainability of the code as well as the life span of a system.
Recommended Citation
Lalit, Sneha, "Detection of Design Flaws in Object Oriented Software Systems" (2013). Culminating Projects in Computer Science and Information Technology. 45.
https://repository.stcloudstate.edu/csit_etds/45