LDRA Testbed

Last updated

LDRA Testbed
Company type Private
IndustrySoftware testing
Founded1975
Headquarters,
England
Area served
Worldwide
Key people
CEO and President: Michael Hennell
ProductsLDRA Testbed
RevenueN/A
Number of employees
127 (April 2017)
Website www.ldra.com

LDRA Testbed is a set of core static and dynamic analysis engines for both host and embedded software. LDRA Testbed is made by Liverpool Data Research Associates (LDRA). [1] LDRA Testbed provides the means to enforce compliance with coding standards such as MISRA, JSF++ AV, CERT C, CWE and provides visibility of software flaws that might typically pass through the standard build and test process to become latent problems. In addition, test effectiveness feedback is provided through structural coverage analysis reporting facilities, which support the requirements of the DO-178B standard up to and including Level A.

Contents

Static analysis

Static analysis initiates LDRA Testbed activity by undertaking lexical and syntactic analysis of the source code for a single file or a complete system.

Programming standards checking

The enforcement of programming standards (or coding standards) is commonly regarded as good practice. The adherence to such standards can be automatically checked by products like LDRA Testbed. Main Static Analysis searches the source code for any programming standards violations, by checking the source files against the superset supplied with LDRA Testbed.

This system can be configured for:

LDRA Testbed reports violations of the chosen set of standards in both textual reports and as annotations to graphical displays.

Dynamic coverage analysis

Dynamic coverage analysis explores the semantics of the program under test via test data selection. It uses control and data flow models and compares them with the actual control and data flow as the program executes. Dynamic Analysis therefore forces the selection of test data which explores the structure of the source code.

The LDRA tool suite includes a dynamic coverage module. It is used to beneficial effect on software robustness and reliability during both development and maintenance cycles.

Quality report

Quality metrics such as Halstead complexity measures, cyclomatic complexity, and Knots metric are designed to verify that code is clear, maintainable, and testable. The quality report in the LDRA tool suite presents both a summary and a detailed breakdown of quality metrics that are deduced during static analysis.

Alternatives

A selection of LDRA's partners in the software testing market include: MathWorks who have integrated their Simulink tools, [2] as well as IBM Rational Rose, [3] Rational Rhapsody, IAR Embedded Workbench, Wind River [4] and VxWorks.

LDRA's rivals include AdaTEST, Cantata++, Coverity, Klocwork, Parasoft and VectorCAST.

Related Research Articles

In computer science, static program analysis is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs during their execution in the integrated environment.

<span class="mw-page-title-main">Software testing</span> Checking software against a standard

Software testing is the act of checking whether software satisfies expectations.

In software engineering and development, a software metric is a standard of measure of a degree to which a software system or process possesses some property. Even if a metric is not a measurement, often the two terms are used as synonyms. Since quantitative measurements are essential in all sciences, there is a continuous effort by computer science practitioners and theoreticians to bring similar approaches to software development. The goal is obtaining objective, reproducible and quantifiable measurements, which may have numerous valuable applications in schedule and budget planning, cost estimation, quality assurance, testing, software debugging, software performance optimization, and optimal personnel task assignments.

The following outline is provided as an overview of and topical guide to software engineering:

In the context of software engineering, software quality refers to two related but distinct notions:

This is an alphabetical list of articles pertaining specifically to software engineering.

<span class="mw-page-title-main">Call graph</span> Structure in computing

A call graph is a control-flow graph, which represents calling relationships between subroutines in a computer program. Each node represents a procedure and each edge (f, g) indicates that procedure f calls procedure g. Thus, a cycle in the graph indicates recursive procedure calls.

Dynamic program analysis is the act of analyzing software that involves executing a program – as opposed to static program analysis, which does not execute it.

MISRA C is a set of software development guidelines for the C programming language developed by The MISRA Consortium. Its aims are to facilitate code safety, security, portability and reliability in the context of embedded systems, specifically those systems programmed in ISO C / C90 / C99.

Rational Rose was a development environment for Unified Modeling Language. It integrates with Microsoft Visual Studio .NET and Rational Application Developer. The Rational Software division of IBM, which previously produced Rational Rose, wrote this software.

In computer programming, instrumentation is the act of modifying software so that analysis can be performed on it.

<span class="mw-page-title-main">Parasoft</span> Software testing framework

Parasoft is an independent software vendor specializing in automated software testing and application security with headquarters in Monrovia, California. It was founded in 1987 by four graduates of the California Institute of Technology who planned to commercialize the parallel computing software tools they had been working on for the Caltech Cosmic Cube, which was the first working hypercube computer built.

Imagix 4D is a source code analysis tool from Imagix Corporation, used primarily for understanding, documenting, and evolving existing C, C++ and Java software.

NDepend is a static analysis tool for .NET managed code. The tool proposes a large number features, from dependency visualization to Quality Gates and Smart Technical Debt Estimation. For that reasons the community refers to it as the "Swiss Army Knife" for .NET Developers.

<span class="mw-page-title-main">LDRA</span> Software companies of the United Kingdom

LDRA is a provider of software analysis, test, and requirements traceability tools for the Public and Private sectors. It is a pioneer in static and dynamic software analysis.

Polyspace is a static code analysis tool for large-scale analysis by abstract interpretation to detect, or prove the absence of, certain run-time errors in source code for the C, C++, and Ada programming languages. The tool also checks source code for adherence to appropriate code standards.

<span class="mw-page-title-main">Parasoft C/C++test</span> Integrated set of tools

Parasoft C/C++test is an integrated set of tools for testing C and C++ source code that software developers use to analyze, test, find defects, and measure the quality and security of their applications. It supports software development practices that are part of development testing, including static code analysis, dynamic code analysis, unit test case generation and execution, code coverage analysis, regression testing, runtime error detection, requirements traceability, and code review. It's a commercial tool that supports operation on Linux, Windows, and Solaris platforms as well as support for on-target embedded testing and cross compilers.

Development testing is a software development process that involves synchronized application of a broad spectrum of defect prevention and detection strategies in order to reduce software development risks, time, and costs.

References

  1. Hennell, Michael (1978). "Experimental testbed for numerical software". The Computer Journal. Retrieved 16 October 2011.
  2. Hughes, Janice (2011). "LDRA Ltd and MathWorks Join Forces to Integrate Product to Provide Independent Verification & Lowers Embedded Development Costs". LDRA. Archived from the original on 18 January 2013. Retrieved 13 October 2009.
  3. Mcconnel, Toni (2008). "LDRA integrates tool suite with IBM Rational Rose RealTime MDDE". Wirral, UK: EE Times. Archived from the original on 28 August 2011. Retrieved 12 November 2011.
  4. "LDRA integrates tool suite with IBM Rational Rose RealTime MDDE". WindRiver. Retrieved 14 November 2011.