Techies Build Tools To Catch Software Bugs Early

“Software today is often produced with minimal human intervention, but errors still creep in”: Prof. Abhishek Kr Singh

Update: 2026-01-12 17:15 GMT
Information Technology Hyderabad — DC File

HYDERABAD: As automated systems increasingly generate software code, researchers are grappling with how to ensure such code works safely and as intended. At the International Institute of Information Technology Hyderabad (IIIT-H), Prof. Abhishek Kr Singh from the Software Engineering Research Center (SERC) is developing methods to detect software bugs at an early stage, even before programmes are fully written or deployed.

“Software today is often produced with minimal human intervention, but errors still creep in,” Singh said. His work focuses on parallel or concurrent programs, where multiple tasks run simultaneously. These systems are common in modern computing, but faults in them are difficult to trace because they may appear only under very specific conditions.

Singh explained that many errors begin with how programmers describe requirements. “People describe requirements in natural language, and that language is often vague,” he said. When such descriptions are converted into precise code, small misunderstandings can turn into serious bugs later. “Code has no flexibility. Even a slight mismatch can break a system,” he added.

Instead of correcting errors after failures occur, the research follows a method known as ‘correctness by construction’. “The idea is to make sure the program is correct while it is being built,” Singh said. This involves embedding clear rules and specifications directly into the program so that automated checks can verify compliance.

Testing becomes even harder when programs run tasks simultaneously. “In concurrent systems, timing differences can trigger problems that are almost impossible to predict,” Singh said. His team uses automated testing that generates many possible inputs to see if any important rule is violated. “You do not look for the right output every time. You look for situations where the program breaks its own guarantees,” he explained.

The project is being carried out with Prof. Ashish Mishra of the Indian Institute of Technology Hyderabad (IIT-H), with students from both institutions involved. The team is building tools for commonly used programming languages and computer architectures, aiming to reduce failures in software systems widely used in industry.


Tags:    

Similar News