UMBC Homepage
Homepage
Publications
Research
Students
Teaching
Schedule
Contact

Research

My general research interests are in the areas of software testing, program analysis, software engineering, web technologies , with a focus on software testing of web-based applications.

Current Research

As web applications evolve and their usage increases, their complexity also increases thus creating a great demand for techniques and tools to ensure well-tested reliable applications. Low reliability can result in serious, detrimental effects for business, government, and consumers, as they have become increasingly dependent on the Internet for routine daily operations.

Currently, I am interested in studying the challenges that arise during regression testing and maintenance of web applications. I am also interested in investigating strategies for efficient and effective test case generation for web applications.

Drop me an email or stop by my office if you are interested in any of these topics!

Ph.D. Research

In my Ph.D. research, I investigated scalable approaches to user-session-based testing of web applications. Scalable approaches are required for practical user-session-based testing of web applications due to the large number of sessions often associated with a frequently used web application. We viewed user sessions as test cases, where a user session is a sequence of base user URL requests and name-value pairs (e.g., form field names and values) recorded at the server-end of the web application. User sessions can be considered as use cases of the application.
(Overview of User-session-based Web Application Testing Research (pdf))

To address the problem of scalability during testing, we applied a mathematical technique called concept analysis to cluster user sessions (test cases) based on the attributes of the test cases, such as base requests, parameter names, sequences of requests, etc. We then applied a heuristic to select a subset of test cases from the clustered test cases. The heuristic selects a subset of test cases that satisfy a certain requirement. An example requirement can be the selected subset of test cases should cover all the base requests covered by the original suite. To enable incremental update of the test suite as the operational profile of the web application changes we proposed an algorithm based on incremental concept analysis. The subject programs we use in our experiments are primarily written in Java/JSP with a HTML front-end and a MySQL/PostGreSQL/files data store as the back-end; however our techniques can be extended to programs written in other web-based languages. Our experimental results indicate that concept analysis-based reduction reduces the test suite by 70 - 80% (for base requests requirement) while maintaining the program coverage and fault detection capabilities of the original suite of user sessions.

Sreedevi Sampath, ITE 451, Department of Information Systems, UMBC.