Abstract

AbstractDriven by functionality requirements, software codes are increasingly inflated, and invocations between codes are frequent and random. This makes it difficult for programmers to be thoughtful when modifying code, increasing the risk of defects. In an object-oriented software system, packages take the role of a middle tier that aggregates classes and limits class access. However, as the software system evolves, the logic and correctness of packages are weakened. In this paper, we explore the relation between package metrics and object-oriented software defect-proneness. We use two metrics of package cohesion and coupling based on complex network theory to verify the impact of code structure on software quality. On six Java software systems, the experimental result shows that the cohesion and coupling metrics play a positive role in software defect prediction, and they can correctly and effectively evaluate package organization structure. Meanwhile, our study confirms that compliance with the design principle of high cohesion and low coupling can reduce the risk of software defect-proneness and improve software quality.KeywordsSoftware packageDefect pronenessCohesion and coupling metrics

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call