Integration of design smells and role-stereotypes classification dataset - Ogenrwot, Daniel; Nakatumba-Nabende, Joyce; Chaudron, Michel R.V. (Data in Brief, 2021)
Design smells are recurring patterns of poorly designed (fragments of) software systems that may hinder main- tainability. Role-stereotypes indicate generic responsibilities that classes play in system design. Although the concepts of role-stereotypes and design smells are widely divergent, both are significant contributors to the design and mainte- nance of software systems. To improve software design and maintainability, there is a need to understand the relation- ship between design smells and role stereotypes. This pa- per presents a fine-grained dataset of systematically inte- grated design smells detection and role-stereotypes classi- fication data. The dataset was created from a collection of twelve (12) real-life open-source Java projects mined from GitHub. The dataset consists of 18 design smells columns and 2,513 Java classes (rows) classified into six (6) role- stereotypes taxonomy. We also clustered the dataset into ten (10) different clusters using an unsupervised learning algo- rithm. Those clusters are useful for understanding the groups of design smells that often co-occur in a particular role- stereotype category. The dataset is significant for understand- ing the non-innate relationship between design smells and role-stereotypes.
Keywords: Software design; Role-stereotype; Design smells; Software quality