Mitigating AI/ML Risks in Safety-Critical Software - Story
July 09, 2024Artificial intelligence (AI) and machine learning (ML) are the newest frontiers for developers of safety-critical embedded software. These technologies can integrate and analyze data at a massive scale and support capabilities with human-like intelligence. As functional safety practitioners who are used to risk mitigation processes and techniques decades in the making, developers working in this field must adapt to the huge promise of AI/ML without compromising safety at any level of the systems they are building.
Processing
How to mitigate timing and interference issues on multicore processors - Blog
February 14, 2024Embedded software developers face unique challenges when dealing with timing and interference issues on heterogeneous multicore systems. Such platforms offer higher CPU workload capacity and performance than single core processor (SCP) setups but their complexity can make strict timing requirements extremely difficult to meet.
How to Incorporate MISRA C:2023 Into Your Embedded Development Process - Blog
March 29, 2023Developing software compliant with MISRA C requires planning, documentation, and tools that best enforce the intent and spirit of the guidelines. Used in the development of safety- and security-critical software systems, the 2023 release of MISRA C:2012 Amendment 4 (AMD4) and MISRA C:2023 address concurrency features introduced in the latest two versions of the C standard (ISO/IEC 9899:2011 and 2018) and consolidate all MISRA C versions into one document.
Debug & Test
Why Requirements Traceability Still Matters for Today’s Embedded Systems - Story
February 10, 2023As the saying goes, the cost of “failing to build the right product or to build the product right” impacts revenue and reputation. The only way to build the “right product” is to develop requirements that are both effective and traceable down to the software. This enables development teams, quality assurance (QA), and certifying authorities to examine any function in the software to determine its purpose by tracing it back to a requirement.
Why Modular Composability Matters for Today’s Safety-Critical Software Development - Story
November 02, 2022Modularity and composability are popular buzzwords in software, for everything from enterprise computing down to bare metal applications. For safety-critical embedded systems, these concepts define goals for software reuse by enabling the use of existing software components in different combinations for different use cases.
Beyond TÜV: A Path to High-Criticality Tool Qualification - Blog
August 16, 2022Today’s software-based, safety-critical systems depend on certified software tools and processes for development. For many applications, tool qualification is a necessary step in ensuring the tool chain produces quality code to fulfill the needs of applicable safety standards. In many cases, the use of TÜV certified tools is sufficient but there’s an increasing number of very high-stakes applications where the functional safety standards demand more.
Shift Left to Secure Connected Embedded Systems - Story
November 15, 2021While connected systems have resulted in new opportunities for easier monitoring, upgrading, and enhancement, they have also presented more vulnerable attack surfaces. Unfortunately, no single defense of a connected system can guarantee impenetrability. Fortunately, there are multiple levels of security to ensure that if one level fails, others stand guard.
Why Safe As is not Good Enough - Blog
June 14, 2019It is likely that patients in the U.S. are benefitting less than they should from technological advances in medical care.
The AUTOSAR C++ and MISRA C++ Integration and Adaptive Development: So Good, or So What? - Blog
February 25, 2019MISRA and the AUTOSAR partnership announced that their two C++ language subsets are to be integrated together.
Developing a safe, secure system: SEI CERT C versus MISRA C:2012 AMD1 - Product
February 12, 2018For C and C++ developers, around 80 percent of software defects are caused by the incorrect use of about 20 percent of the available language constructs.
The software development lifecycle continues as long as connected cars are on the street - Other
December 14, 2017Connectivity changes the notion of the development process ending when a product is launched, or even when its production is ended.
Build security into the connected car development life cycle - Other
September 08, 2017Best practices dictate that security, like functional safety, can?t be an afterthought. It must be part of the software development life cycle as a whole.