Mark Grechanik Ph.D., University of Texas at Austin
PRIEST Project
© Copyright Mark Grechanik 2012
Summary Database-centric applications (DCAs) are common in enterprise computing, and they use nontrivial databases. Testing of DCAs is increasingly outsourced to test centers in order to achieve lower cost and higher quality. When proprietary DCAs are released, their databases should also be made available to test engineers. However, different data privacy laws prevent organizations from sharing this data with test centers because databases contain sensitive information. Currently, testing is performed with anonymized data, which often leads to worse test coverage (such as code coverage) and fewer uncovered faults, thereby reducing the quality of DCAs and obliterating benefits of test outsourcing. To address this issue, we offer a novel approach that combines program analysis with a new data privacy framework that we design to address constraints of software testing. With our approach, organizations can balance the level of privacy with needs of testing. We have built a tool for our approach and applied it to nontrivial Java DCAs. Our results show that test coverage can be preserved at a higher level by anonymizing data based on their effect on corresponding DCAs. The entire code, experimental setup, and video can be obtained from here.       Downloads and Experimental Results To reproduce results of our experiments with PRIEST, you need to obtain the following components and execute steps. Subject DCAs can be obtained from here. You will need to configure each DCA and its database. JDBC statements in these applications are annotated with database attributes that these statements reference. The movie that shows how PRIESTplugin for Eclipse is used is available here. A virtual machine that contains the full version of PRIEST and all subject DCAs is available upon request. Its compressed size is over 2.5Gb and it can be shared using Dropbox. PRIEST source code can be downloaded here. People PISTIS was created at the Advanced Research In Software Engineering (ARISE) lab at the Department of Computer Science of the University of Illinois at Chicago and Accenture Technology Lab where Mark Grechanik leads a research team and North Carolina State University SE group headed by Tao Xie. Mark Grechanik, Project Lead Email: drmark[at]uic.edu Kunal Taneja Email: taneja.kunal[at]gmail.com Rayid Ghani Email: rayid.ghani[at]gmail.com Tao Xie Email: taoxie[at]gmail.com