Technical Debt & Safety Critical Systems in Automobiles: The Road Ahead

by

Cars are no longer simple pieces of machinery, but have evolved into highly integrated pieces of technology - with software embedded into all their critical systems. In 2017 4 out of 5 cars will be connected to the internet. Reliance in software will bring new challenges for automobile makers as the technology used for infotainment and safety critical systems require different levels require different standards of quality. If your dvd player in your car stops working there are different repercussions than if your emergency brake stops working.

For example, by 2021 the U.S. National Highway Traffic Safety Administration (NHTSA) and U.S. automakers have agreed to implement automatic emergency braking in most vehicles. The braking systems rely on the technologies within the cars cameras, proximity sensors, and radars - all which need to function without error in order for these emergency brakes to function themselves. The camera that was previously used as a optional assistance in parking will now be integrated into a safety critical element of a car.

This brings about the issue of software quality in legacy code. Most applications are built off of existing legacy code. Considering the effort and resources that went into building this existing code, organizations will try to leverage as much of it as possible when building something new. The issue with reusing legacy code bases is that they are often riddled with technical debt. Accumulated technical debt causes issues with the maintenance of the software and its overall quality.

The key to reducing technical debt is to refactor - but it is something that causes a lot of anxiety amongst developers as refactoring once piece of code can affect the functionality of another piece. Once of the biggest hurdles to refactoring legacy properly is a lack of proper testing (which is often a source of technical debt to begin with). Without proper testing it is almost impossible to tell whether any refactoring will cause regression in an application's functionality or lead to some sort of technical failure. Lack of testing means that an application cannot be modified or maintained with ease.

You can begin to see how this will cause problems for new safety critical systems in cars - systems that are being built off existing software applications that were most likely not built with modifications like these in mind (i.e. built with technical debt). As software technology becomes embedded into more and more aspects of consumer products - and into critical parts of its functioning it will be necessary to find a way to address and alleviate the technical debt that is inevitably present in legacy code.

To read the full post visit here.

Filed in: Technical Debt
Get the Pulse Newsletter  Sign up for the latest Software Intelligence news Subscribe Now <>
Open source is part of almost every software capability we use today. At the  very least libraries, frameworks or databases that get used in mission critical  IT systems. In some cases entire systems being build on top of open source  foundations. Since we have been benchmarking IT software for years, we thought  we would set our sights on some of the most commonly used open source software  (OSS) projects. Software Intelligence Report <> Papers
In our 29-criteria evaluation of the static application security testing (SAST)  market, we identified the 10 most significant vendors — CAST, CA Veracode,  Checkmarx, IBM, Micro Focus, Parasoft, Rogue Wave Software, SiteLock,  SonarSource, and Synopsys — and researched, analyzed, and scored them. This  report shows how each measures up and helps security professionals make the  right choice. Forrester Wave: Static Application Security Testing, Q4 2017  Analyst Paper
This study by CAST reveals potential reasons for poor software quality that  puts businesses at risk, including clashes with management and little  understanding of system architecture. What Motivates Today’s Top Performing  Developers Survey
Load more reviews
Thank you for the review! Your review must be approved first
Rating
New code

You've already submitted a review for this item

|