PowerStation: Automatically Detecting and Fixing Inefficiencies of Database-Backed Web Applications in IDE

被引:16
作者
Yang, Junwen [1 ]
Yan, Cong [2 ]
Subramaniam, Pranav [1 ]
Lu, Shan [1 ]
Cheung, Alvin [2 ]
机构
[1] Univ Chicago, Chicago, IL 60637 USA
[2] Univ Washington, Seattle, WA 98195 USA
来源
ESEC/FSE'18: PROCEEDINGS OF THE 2018 26TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING | 2018年
基金
美国国家科学基金会;
关键词
performance anti-patterns; Object-Relational Mapping frameworks; database-backed applications; RubyMine Plugin;
D O I
10.1145/3236024.3264589
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Modern web applications are built using a myriad of software components, and each of them exposes different programming models (e.g., application logic expressed in an imperative language, database queries expressed using declarative SQL). To improve programmer productivity, Object Relational Mapping (ORM) frameworks have been developed to allow developers build web applications in an object-oriented manner. Despite such frameworks, prior work has found that developers still struggle in developing performant ORM-based web applications. This paper presents PowerStation, a RubyMine IDE plugin for optimizing web applications developed using the Ruby on Rails ORM. Using automated static analysis, PowerStation detects ORM-related inefficiency problems and suggests fixes to developers. Our evaluation using 12 real-world applications shows that PowerStation can automatically detects 1221 performance issues across them. A tutorial on using PowerStation can be found at https://youtu.be/rAV8CGuSj6k.
引用
收藏
页码:884 / 887
页数:4
相关论文
共 7 条
  • [1] [Anonymous], PLDI
  • [2] Brandon Haynes, 2016, SOCC
  • [3] Chen Tse-Hsun, 2014, ICSE
  • [4] Furr Michael, 2009, SAC
  • [5] Yan Cong, 2016, PVLDB
  • [6] Yan Cong, 2017, CIKM
  • [7] Yang Junwen, 2018, ICSE