Testing Software Features with Requirements Knowledge

Requirements-based testing (RBT) is a process to uncover software defects that fail the stakeholder needs or desires. For example, the adjusting camera brightness feature introduced by Cisco Webex in August 2021 (see image below) would work only when a user is not in a dark room. This Protégé research project is aimed at developing algorithms to automatically generate the environmental conditions (e.g., adjusting camera brightness before or during a meeting) for RBT. The algorithm development will involve several components: (1) performing natural language process (NLP) of feature descriptions, (2) building a testing hypothesis by considering user interface widgets and user interactions, and (3) automating the test execution. The Protégé student will join a team of graduate students in the Software Engineering Research Lab to develop novel and scalable ways to improve software quality.

Screenshot of webex

Adjusting camera brightness feature released by Cisco Webex in August 2021 (image source: https://help.webex.com/article/klpg5s). The Protégé project is aimed at testing such newly released features by using requirements knowledge.


Headshot of Nan Niu

Nan Niu

Assoc Professor, CEAS - Electrical and Computer Engineeri

832 Rhodes Hall


My current research interests focus on the information seeking strategies that developers use in software engineering. I take an ecological-evolutionary, foraging-theoretic approach to understanding and improving developers' search for relevant information in their daily activities, such as debugging, refactoring, and reuse. My research group investigates how the task environment and the information environment re-shape developers' behaviors, or more accurately, how the developers' behaviors and their environments co-evolve, each shaping the other in important ways. My CAREER project (see http://ceas.uc.edu/news-1415/niu-receives-nsf-career-award.html) links software developers' rational behaviors together with their social information foraging, learning, and co-creation.