Safety, Testing and Self-Driving Cars

Any system where erroneous behaviour can lead to serious injury or a potential loss of life is classified as a safety critical system. This is true for self-driving or autonomous vehicles where a vehicle malfunction can lead to the injury or death of the driver, passengers or others outside the vehicle. The potential for injuryContinue reading “Safety, Testing and Self-Driving Cars”

The 20th Anniversary of Y2K

“Y2K is a great case study that we can use to talk about best practices for how we develop software today.” SQR Lab leader Prof. Jeremy Bradbury was interviewed recently by Aaron Streck of Global News Durham for the 20th anniversary of the Y2K (Millennium) bug. You can watch the news segment and read theContinue reading “The 20th Anniversary of Y2K”

Automating Software Development Using Artificial Intelligence

This week I gave a research seminar at Dalhousie University and at Mount Allison University on “Automating Software Development Using Artificial Intelligence (AI).” The intersection of AI and Software Engineering is an active research area and has lead to a number of effective and novel applications of machine learning, metaheuristic algorithms and deep learning. ManyContinue reading “Automating Software Development Using Artificial Intelligence”

A Canadian Guide to the Heartbleed Bug

What is the Heartbleed Bug? The Heartbleed bug is a recently identified bug in the OpenSSL security protocol toolkit. OpenSSL is widely used on web servers to encrypt user data.In general, software bugs are computer program error that cause the software to behave in an unexpected way (e.g., crash, produce a wrong output). Security bugs are aContinue reading “A Canadian Guide to the Heartbleed Bug”