event

PhD Defense by Farnaz Behrang

Primary tabs

Title: Leveraging Existing Software Artifacts to Support Design, Development, and Testing of Mobile Applications

 

---------------------------------

Farnaz Behrang

Computer Science Ph.D. Student

School of Computer Science

College of Computing

Georgia Institute of Technology

 

Date: Thursday, May 9th, 2019

Time: 10:00 am to 12:00 pm (EDT)

Location: Klaus 3402

 

Committee:

---------------------------------

Dr. Alessandro Orso (Advisor, School of Computer Science, Georgia Institute of Technology)

Dr. Vivek Sarkar (School of Computer Science, Georgia Institute of Technology)

Dr. Qirun Zhang (School of Computer Science, Georgia Institute of Technology)

Dr. Denys Poshyvanyk (Computer Science Department, William and Mary)

Dr. Sam Malek (School of Information and Computer Sciences, University of California, Irvine)

 

Abstract:

---------------------------------

Massive amounts of data are available through a number of open source software repositories such as GitHub, BitBucket, and SourceForge. In the past decade, researchers have been mining these software repositories to take advantage of existing source code to support tasks such as bug prediction, refactoring, and API updates. Besides source code, there are many other software artifacts such as specifications, design documents, test cases, and documentation that can be leveraged to support different development tasks. Researchers can take advantage of these existing software artifacts to support additional development tasks that have not been considered before.

 

In this thesis proposal, I define techniques that leverage existing software artifacts to support design, development, and testing of mobile applications. I propose two techniques: GUIFetch and AppTestMigrator. GUIFetch is a code-search technique that takes advantage of the growing number of open source apps in public repositories to support app design and development. Given a sketch of an app's screens and transitions between them, GUIFetch searches for apps in public repositories that are as similar as possible to the provided sketch, ranks them by similarity to the sketch, and then reports them to the user. GUIFetch can provide developers with a starting point for building their GUI-based apps, support early prototyping, and help designers assess whether any existing apps are similar to the one they want to develop. AppTestMigrator is a test migration technique that takes advantage of existing test cases to reduce the cost of testing mobile apps. More specifically, AppTestMigrator considers similarities between apps and migrate test cases across similar apps. Typical examples of this situation are apps that are developed independently by students as part of a class project or an assignment based on a similar specification or apps that belong to the same category, such as banking applications, which share much of their functionality and may provide GUIs that are inherently similar.

Status

  • Workflow Status:Published
  • Created By:Tatianna Richardson
  • Created:05/07/2019
  • Modified By:Tatianna Richardson
  • Modified:05/07/2019

Categories

Keywords