* 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
Times are displayed in 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 OlssonMalmö University
14:00 - 14:20
A Data Decomposition Method for Stepwise Migration of Complex Legacy Data
SEIP - Software Engineering in Practice
Andreas Martensadesso AG, Matthias BookUniversity of Iceland, Volker Gruhn
DOI File Attached
14:20 - 14:40
Mind The Gap: Can And Should Software Engineering Data Sharing Become A Path Of Less Resistance?
SEIP - Software Engineering in Practice
Ken WallaceBAE Systems
DOI File Attached
14:40 - 15:00
Cross-Language Optimizations in Big Data Systems: A Case Study of SCOPE
SEIP - Software Engineering in Practice
Marija SelakovicTU Darmstadt, Germany, Michael Barnett, Madan MusuvathiMicrosoft Research, Todd MytkowiczMicrosoft Research
File Attached
15:00 - 15:20
Smelly Relations: Measuring and Understanding Database Schema Quality
SEIP - Software Engineering in Practice
Tushar SharmaAthens University of Economics and Business, Marios Fragkoulis, Stamatia Rizou, Magiel BruntinkSoftware Improvement Group, Diomidis SpinellisAthens University of Economics and Business
Pre-print Media Attached
15:20 - 15:30
Q&A in this sesson
SEIP - Software Engineering in Practice