{'fraction_non_alphanumeric': 0.02551984877126654, 'fraction_numerical': 0.001890359168241966, 'mean_word_length': 5.051428571428572, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Indirect Package Coupling Based on Responsibility in an Agile, Object-Oriented Environment

Object-oriented systems are dynamic and have to be constantly maintained, or they become aged and irrelevant. Poor choices made during design phase result in costly problems. Hence, design metrics should be an essential part of the agile software development process. Martin's metrics [1] are wellknown package design metrics that can be used in early stages of software development. Martin began with a set of object-oriented design principles and designed his metrics based on these principles. In [2], we began with Martin's principles and used them to modify his coupling, instability and abstractness metrics. Martin's metric suite and our previous metric suite only measure direct coupling. The authors believe that this limits these metric suites' accuracy. In this work, these suites are enhanced by analyzing local and global dependencies of all packages. We present a case study to show that the new metrics are very promising and lead to improved results.