In Partial Fulfillment of the Requirements for the Degree of
Master of Science
Will defend his thesis
With the rapid market growth of iPhone, iPad, and iPod touch devices in the recent years, iOS development has gained prominence. More programmers are starting to develop software for these platforms with the Objective-C programming language. Their success in this area is partly influenced by the quality of code they write. There is immediate need for tools that can examine and help with code quality.
Static code analysis is an important technique to inspect source code and detect defects that aren’t visible to compilers. Static code analysis tools automate this inspection process, and emit potential problems. There is a void in this area for the Objective-C language that we’d like to fill.
In this thesis, we study static code analysis techniques and research on ways to examine the abstract syntax tree for programs written using Objective-C. We design and implement an extensible, configurable, and highly performance static code analysis tool for Objective-C. This tool can be exercised for applications that target both the iOS platform and the Mac OS X systems. The tool created in this thesis has been put to use on a few open source and commercial projects and the feedback from those were used to improve the tool.
The tool allows for continuous integration so developers can keep an eye on the technical debts in their code and fix them early on. This will allow organizations to reduce the maintenance cost in software development.
Date: Monday, April 2, 2012
Time: 2:00 PM
Faculty, students, and the general public are invited.
Advisor: Dr. Venkat Subramaniam