CAREER: Testing Evolving Complex Software Systems

Information

  • NSF Award
  • 2402103
Owner
  • Award Id
    2402103
  • Award Effective Date
    10/1/2023 - 7 months ago
  • Award Expiration Date
    5/31/2025 - a year from now
  • Award Amount
    $ 103,694.00
  • Award Instrument
    Continuing Grant

CAREER: Testing Evolving Complex Software Systems

Modern computer systems span a wide range of domains, ranging from consumer electronics (e.g., smart-phones) to safety-critical systems (e.g., avionics). These systems evolve rapidly because the competition for market share pushes developers to come up with new features or improve capabilities over existing ones. These software changes may require hardware replacements or upgrades to capitalize on software upgrade opportunities. As such, developers must ensure that changes do not cause any unintended impact to the existing quality of the systems. Regression testing has been widely used to assess whether changes have adversely affected system behavior. While significant work has been accomplished by the software engineering community in improving effectiveness and efficiency of regression testing, most of the existing techniques focus on traditional software that is environment-independent and non-distributed. Real-world software systems, however, are far more complex: they frequently interact with the environment via hardware devices, and employ various concurrency mechanisms to coordinate interrupts, signals, threads, and processes. These characteristics affect various techniques on which existing regression testing approaches rely. Therefore, applying these approaches may lead to problems during maintenance and thus impair software quality.<br/><br/>The overall goal of this proposal is to create a novel regression testing framework that can be applied to real-world complex software systems, focusing on the hardware dependence and concurrent control characteristics, throughout their lifetimes. Specifically, this research will develop, evaluate, and make available a family of techniques and tools that can: 1) create comprehensive models of the whole system to analyze change impact across hardware and software layers and across concurrent events, 2) retest the systems accordingly using existing test cases, and 3) generate new test cases when needed. The analytical underpinnings of this research will be applicable not only to the software engineering community, but to industry and other disciplines in which software dependability plays an important role. The associated education agenda paves the way for teaching that cross traditional boundaries among multicore computing, embedded systems and software engineering, which may ultimately, through the dissemination of new curricular materials, have impacts to the broader scientific community.

  • Program Officer
    Sol Greenspansgreensp@nsf.gov7032927841
  • Min Amd Letter Date
    11/17/2023 - 6 months ago
  • Max Amd Letter Date
    11/17/2023 - 6 months ago
  • ARRA Amount

Institutions

  • Name
    University of Connecticut
  • City
    STORRS
  • State
    CT
  • Country
    United States
  • Address
    438 WHITNEY RD EXTENSION UNIT 11
  • Postal Code
    062699018
  • Phone Number
    8604863622

Investigators

  • First Name
    Tingting
  • Last Name
    Yu
  • Email Address
    tingting.yu@uconn.edu
  • Start Date
    11/17/2023 12:00:00 AM

Program Element

  • Text
    Software & Hardware Foundation
  • Code
    779800

Program Reference

  • Text
    CAREER-Faculty Erly Career Dev
  • Code
    1045
  • Text
    SOFTWARE ENG & FORMAL METHODS
  • Code
    7944
  • Text
    EXP PROG TO STIM COMP RES
  • Code
    9150