LDRA Tool Suite

Automating Software Verification, Requirements Traceability and Standards Compliance

The LDRA tool suite is LDRA’s flagship platform that delivers open and extensible solutions for building quality into software from requirements through to deployment. The tool suite provides a continuum of capabilities including requirements traceability, test management, coding standards compliance, code quality review, code coverage analysis, data-flow and control-flow analysis, unit/integration/target testing, and certification and regulatory support.

The tool suite enables safety and security critical software development teams to achieve certification or approval in accordance with rigorous standards in:

  • Aerospace and Defense (DO-178B/C, DO-254, DO-278, Def Stan 00-56)
  • Automotive (ISO 26262, ISO/SAE 21434, Automotive SPICE)
  • Industrial and Energy (IEC 61508, IEC 62443-4-1, IEC 60880, ISO 13849)
  • Medical (IEC 62304)
  • Rail Transportation (EN 50128)

The core components of the tool suite are available in several configurations that align with common software development needs. A comprehensive set of add-on capabilities are available to tailor the solution for any project.

Is the LDRA tool suite certified?

Both LDRA and the LDRA tool suite are certified. LDRA has maintained ISO 9001 certification for over 25 years. The LDRA tool suite is approved by SGS-TÜV Saar and TÜV SUD for the following functional safety standards:

  • IEC 61508:2010 Functional safety of electrical/electronic/programmable electronic safety-related systems
  • ISO 26262:2011 Road vehicles – Functional safety
  • IEC 62304:2015-06 Medical device software – Software life cycle processes
  • EN 50128:2011 Railway applications – Communication, signalling and processing systems – Software for railway control and protection systems

In addition, tool qualification support packs (TQSPs) are available to simplify demonstrating compliance with functional safety standards such as DO-178C that do not permit the use of certificates from certifying organizations.

Lifecycle Best Practices Enabled by the LDRA tool suite

1. Requirements Traceability

If you are developing a safety-critical or security-critical  application, chances are good that your process will need to be audited to meet certification or qualification requirements. Bi directional requirements traceability – from requirements, to design, to implementation and verification activities and artefacts – differentiates your organization from the competition and ensures your shortest path to compliant product. Even if your process and resulting code does not need to meet stringent certification demands, requirements traceability and management increases code quality and the overall safety, security and effectiveness of the application.

LDRA provides a comprehensive, role-based approach to traceability. Requirements and verification tasks can be assigned to team members and all resulting artefacts can be aggregated and linked. The result is a completely traceable process throughout the software development lifecycle so you can ensure that any changes to requirements, design, or source code are easily understood, verified and traced.

LDRA tools help you detect changes in requirements or the developed software and easily organize and re-run appropriate tests against any affected components. They provide an optimal environment for determining impact analysis either upstream to requirements or downstream to design, implementation and verification.

  • TBmanager® is a role based requirements traceability, compliance management, and test management tool that lets teams work on individual activities, linking code and verification artefacts back to higher-level objectives. 

2. Test Management

With today’s complex embedded applications, you need to develop and execute effective tests against your software.

Equally important is knowing when to re-run those tests as your requirements or the software changes, to ensure that your code’s performance or functionality has not degraded.

LDRA provides an automated approach to detecting requirements or software changes and then re-running the appropriate tests against the affected components. With TBmanager, verification activities can be easily assigned and tracked to team members, and the resulting artefacts aggregated into a clean set of reports.

  • TBmanager® enables requirements-based tasks to be assigned to individuals
  • TBevolve® is an optional plug-in that shows how changes affect coding rule violations between code based versions

3. Coding Standards Compliance

A common way to improve the consistency, maintainability and overall quality of code is to assess the code against industry-or company-defined standards so that deficiencies can be quickly identified and corrected. While this is often achieved through manual peer reviews, the process can be painful, time-consuming, and error-prone especially in large projects. If your team is struggling to maintain code quality and consistency, it might be time to take a more rigorous yet automated approach.

LDRA tools automate static analysis and rules checking, supporting almost any in-house or universal standard. With LDRA’s code visualization, you can identify exactly where the source code deviates from the standard so it can be rapidly addressed. LDRA’s complete control over parsing technology, coupled with a long-standing involvement with standards organizations such as MISRA, underpin an industry-leading speed of response to variations in languages, language constructs, rules, and standards alike.

LDRA coding standards compliance tools let you combine standards and define appropriate rule subsets, select individual rules, and add your own. Within the tools, you can easily check for coding standards compliance to any single standard or combination of standards or subsets. And you can check compliance of a single code base against multiple standards to compare how the code fulfils each one and see what would be required to adapt the code to conform to it.

  • TBvision® is the static analysis engine and code visualization capability that helps enforce compliance with coding standards and clearly indicates software flaws that might otherwise pass through the standard build and test process
  • LDRArules® is a cost-effective, stand-alone rules checker that does not require investment in the complete tool chain
  • TBevolve® is an optional plug-in that lets project teams monitor code changes with respect to coding standards compliance
  • TBexclude® is an optional plug-in offering a multi-tier coding violation exclusion capability, perhaps in support of a MISRA deviation process

4. Code Coverage Analysis

Many regulatory authorities now require evidence of structural coverage analysis to prove that the code has been adequately tested and to measure software test effectiveness. For safetycritical software development, certification bodies need reports that detail the extent of code coverage. And of course, you need to avoid potential development delays.

LDRA’s coverage analysis tools meet industry’s most stringent coverage requirements by offering analysis of both source and object code. LDRA tools automatically generate test cases, execute those test cases, and provide easily interpreted graphical reporting on coverage metrics such as statement, branch/decision, procedure/function call, MC/DC, dynamic data flow and more.

LDRA tools support C, C++, Java, Ada and Assemblers, running on a broad range of target platforms-from powerful 64-bit microprocessors to highly constrained 8- or 16-bit microcontrollers. LDRA tools can automatically generate test cases that typically provide 50-80% of coverage, and an intuitive test case building environment lets developers quickly augment those test cases to increase their coverage if necessary.

  • TBrun® with the TBextreme® module provides automated unit testing, test case generation and execution, and code coverage analysis
  • The TBobjectbox® module adds object code  verification
  • The Tool Qualification Support Pack (TQSP) provides qualification guidance and artefacts to meet certification requirements with LDRA tools
  • LDRAunit® is a stand-alone tool for automated  unit test generation and management
  • LDRAcover® is a stand-alone code coverage tool to help you meet structural coverage analysis objectives such as RTCA DO-178B/C Level A

5. Automated Code Review

With today’s complex systems, manual peer reviews are time-consuming and costly. You need to raise the level of abstraction to quickly gain insight into the architecture and behaviour, control flow, and data flow of your code in order to highlight and correct potential problem areas and produce software quality metrics. If you are developing to comply with stringent standards-such as D0-178C (for aerospace (applications), or ISO 26262 (for automotive), you may be required to demonstrate analysis of data flow and control flow coupling for software certification.

LDRA provides detailed insight into your code through graphical code visualization tools, including callgraphs, procedure flowgraphs, and data flow analysis reports. These are powerful components in the software debug and test environment that are not supported in most other software development tool environments. With these easy-to-use tools, your team can more quickly and easily identify bottlenecks such as logic flaws or race conditions.

  • TBvision® provides a graphical static and dynamic analysis tool for both host and embedded software analysis
  • Dynamic Data Flow Coverage (DDFC) is an optional module that examines exactly which variables were used during run-time execution of the application

6. Unit/Integration/Target Testing

Functional testing on the host platform puts aside any consideration for hardware timing or constraints, and is often performed prior to target hardware availability. In some development environments, simulators extend this capability by giving software teams “virtual” targets and simulated connected peripherals to provide a head start on verification activities early in the development cycle. Ideally, and in most certification environments, the same tests executed on the host must subsequently be executed on the target hardware to ensure more complete functional testing. Rather than writing your own code for test harnesses, vectors, and stubs (and then having to manage all of those both on the host platform, with simulators, and on the target), automated unit testing and target testing tools can save you time and headaches by doing all this for you.

With LDRA tools, you can quickly and easily generate and execute tests at the unit and integration levels both on the host (standalone or with target simulation) and on the target hardware. Test generation (test harness, test vectors, code stubs) and result capture support is available for a wide range of host and target platforms. Optimized instrumentation technology lets you collate test information from devices ranging from highly constrained 8- and 16-bit microcontrollers to high-performance 32- and 64-bit processors.

With that range of support, your team has a common unit testing and integration testing environment for multiple projects with different target platforms.

  • TBrun® provides automated unit test and system integration testing capabilities
  • LDRAunit® is a stand-alone tool that provides a complete integrated environment for automated unit test generation and management, without requiring investment in a complete tool chain
  • TBextreme® (an optional module for either TBrun® or LDRAunit®) revolutionizes unit testing by providing a totally automated solution for test vector generation

7. Code Quality Review

Manual code inspections for today’s systems are no longer cost-effective due to the increasing size and complexity of modern applications. Instead, developers need to quickly and effectively assess the quality of their code using software metrics for testability, maintainability, and clarity. Each of these characteristics is fundamental to the overall assessment of code quality, and the process for determining them requires software quality metrics tools to apply efficient and accurate measurement.

LDRA tools automate code quality review by analysing the code and reporting on metrics for testability, maintainability, and clarity. Even beyond these metrics, LDRA tools help you to identify and visually highlight areas of code which may require refactoring. You can easily configure the parameters of the overall quality model to meet the needs of your organization or application requirements.

  • TBvision® provides a graphical static and dynamic analysis tool for code quality metrics and review
  • Dynamic Data Flow Coverage (DDFC) is an optional module that examines exactly which variables were used during  run-time execution of the application

8. Certification and Regulatory Support  from LDRA

LDRA Certification Services® (LCS) complement the tool suite and assure certification or tool qualification in the most challenging development environments. The LCS on-staff team of certification industry experts is credentialled across aviation, automotive, Internet of Things (IoT) and medical device sectors, and includes FAA Level A Designated Engineering Representatives (DERs) to offer comprehensive and fully compliant FAA/EASA certification services.

The LDRA Certification Services (LCS) team is aligned with development and verification specialists who leverage the LDRA tool suite and other complementary tools to ready your products for certification.

LDRA’s Compliance Management System® (LCMS) harnesses industry-specific safety expertise including FAA Level A DERs from the aviation sector to provide documented case studies, process checklists and packaged certification.

LCMS helps you develop the infrastructure to become compliant to the ARP 4754A/ARP 4761, DO-178B/C, DO-278A and DO-254 standards, whether you have a DER on staff, a consulting DER, or leverage LCS certification services. The LDRA tool suite complements LCMS, but is not a prerequisite.

 

REQUEST INFO