Testimony practice
Software Expert Witness
Technical examination of disputed software behavior, failures and performance against documented requirements, with reproducible findings.
Did the software do what was expected?
Software disputes can involve requirements, configuration, integrations and operating conditions as well as code. GDF assesses the technical question against the available system, records and agreed test conditions.
Software disputes often involve a difference between what a system was expected to do and what someone says it did. The examination begins with the relevant requirement, version and operating conditions. A current demonstration may be useful, but it does not automatically reproduce the system as it existed during the disputed period.
Define the behavior being tested
Relevant evidence may include specifications, acceptance criteria, release records, configuration, operational logs, defect reports and test results. We check whether the reported failure can be reproduced under documented conditions.
A failed transaction may involve application logic, configuration, input data or an external dependency. We identify the competing explanations and the evidence needed to test them. The important question is whether the proposed cause accounts for the observed behavior, not simply whether a defect can be found somewhere in the application.
Test alternative explanations
An observed problem may depend on inputs, environment, third-party services or a particular release. The findings identify those dependencies and distinguish observed behavior from a proposed cause. Reproducing a result in one environment does not establish that every deployment behaves the same way.
Repeatable testing requires a record of the build, environment, inputs and steps. Where the historical environment cannot be recreated, the report explains the differences. Source code, runtime results and operational logs are compared within that context rather than presented as independent proof of the same proposition.
Keep software behavior distinct from code opinions
This service focuses on implementation, operation and performance. Where the disputed issue requires analysis of particular source files, algorithms or code similarity, the source-code expert-witness service provides the more specific scope.
A technical exhibit can walk through a reproducible example and show the point at which actual behavior differs from the stated requirement. The report separates observed behavior from assumptions about historical use. It also identifies tests that could not be completed and dependencies that constrain the conclusion.
How the engagement runs
Scope
Discuss the disputed questions, relevant experience, potential conflicts and deadlines.
Examine
Review the available software and test records and document the methods used.
Explain
Prepare findings and exhibits that distinguish observations, opinions and unanswered questions.
Evidence we may examine
- Requirements and acceptance criteria
- Release, configuration and defect records
- Operational logs and test results
Work planned with counsel
- Technical findings with supporting records and limitations
- Timelines and exhibits suited to the disputed questions
- Review of opposing technical opinions
- Reports and testimony within the agreed scope
Common questions
Did the software meet the documented requirements?
We compare observed behavior with the supplied requirements and test conditions. Counsel determines the legal significance of the findings.
Can the reported failure be reproduced?
Reproduction depends on access to the relevant version, inputs and environment. When those are unavailable, the report explains the resulting limits.
Could configuration or an integration explain the problem?
Configuration, dependencies and third-party services can affect behavior. Testing considers those explanations rather than assuming the cause is in the code.
A repeatable test is more useful than a demonstration
A software demonstration can show that a feature works under selected conditions. A disputed failure requires a more precise question: which version, inputs, configuration and dependencies produced the reported behavior? We define those conditions and retain the materials needed to understand or repeat the test.
An illustrative implementation dispute might concern whether an integration dropped transactions. Relevant sources could include acceptance criteria, application logs, queue records, configuration and release history. We compare the expected behavior with the observed sequence and consider data quality, environmental differences and third-party failures.
Source review and runtime testing answer related but different questions. Code may reveal a possible execution path; testing may show whether that path occurred under particular conditions. NIST’s software-verification guidance describes several complementary testing methods. The method selected for a dispute must fit the actual technical question, not simply produce a long list of automated findings.
Test the disputed behavior
- Requirement
Identify the expected behavior and acceptance criteria.
- Environment
Record version, inputs, configuration and dependencies.
- Reproduction
Test the reported problem and alternative explanations.
- Findings
Explain results, repeatability and remaining uncertainty.
Technical references
Meet the examiners
For software expert witness work, discuss the disputed questions and the experience needed before defining the engagement. Joseph Caruso is profiled in our expert directory. Meet the GDF team and discuss the technology, questions and availability with us. The expert selected for a matter depends on its scope and the required experience.
Talk with an examiner
Discuss a Software Dispute
Tell us the systems, evidence and deadline. We can review relevant experience, potential conflicts and the scope before engagement.
Since 1992 · 24/7 dispatch · Court-tested experts
Talk with an examiner
Discuss the matter and the next step.
Tell us what happened and what you need to find out. Speak with a GDF expert about how we can help.
24/7 hotline: 1-800-868-8189