* ICSE 2018 *
Sun 27 May - Sun 3 June 2018 Gothenburg, Sweden
Thu 31 May 2018 15:00 - 15:20 at E3 room - Data and Databases Chair(s): Helena Holmström Olsson

Context: Databases are an integral element of enterprise applications. Similarly to code, database schemas are also prone to smells — best practice violations.

Objective: We aim to explore database schema quality, associated characteristics and their relationships with other software artifacts.

Method: We present a catalog of 13 database schema smells and elicit developers’ perspective through a survey. We extract embedded SQL statements and identify database schema smells by employing the DbDeo tool which we developed. We analyze 2925 production-quality systems (357 industrial and 2568 well-engineered open-source projects) and empirically study quality characteristics of their database schemas. In total, we analyze 629 million lines of code containing more than 393 thousand SQL statements.

Results: We find that the index abuse smell occurs most frequently in database code, that the use of an ORM framework doesn’t immune the application from database smells, and that some database smells, such as adjacency list, are more prone to occur in industrial projects compared to open-source projects. Our co-occurrence analysis shows that whenever the clone table smell in industrial projects and the values in attribute definition smell in open-source projects get spotted, it is very likely to find other database smells in the project.

Conclusion: The awareness and knowledge of database smells are crucial for developing high-quality software systems and can be enhanced by the adoption of better tools helping developers to identify database smells early.

Thu 31 May

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

14:00 - 15:30
Data and DatabasesSEIP - Software Engineering in Practice at E3 room
Chair(s): Helena Holmström Olsson Malmö University
14:00
20m
Talk
A Data Decomposition Method for Stepwise Migration of Complex Legacy Data
SEIP - Software Engineering in Practice
Andreas Martens adesso AG, Matthias Book University of Iceland, Volker Gruhn
DOI File Attached
14:20
20m
Talk
Mind The Gap: Can And Should Software Engineering Data Sharing Become A Path Of Less Resistance?
SEIP - Software Engineering in Practice
Ken Wallace BAE Systems
DOI File Attached
14:40
20m
Talk
Cross-Language Optimizations in Big Data Systems: A Case Study of SCOPE
SEIP - Software Engineering in Practice
Marija Selakovic TU Darmstadt, Germany, Michael Barnett , Madan Musuvathi Microsoft Research, Todd Mytkowicz Microsoft Research
File Attached
15:00
20m
Talk
Smelly Relations: Measuring and Understanding Database Schema Quality
SEIP - Software Engineering in Practice
Tushar Sharma Athens University of Economics and Business, Marios Fragkoulis , Stamatia Rizou , Magiel Bruntink Software Improvement Group, Diomidis Spinellis Athens University of Economics and Business
Pre-print Media Attached
15:20
10m
Talk
Q&A in this sesson
SEIP - Software Engineering in Practice