Expert Report of Dr. Amanda Rothwell

Technical analysis of software defects and industry standards by GreenLeaf's expert witness.

Tool Selection Opportunity

Task: Translate technical concepts for judge/jury, evaluate expert qualifications, prepare cross-examination

Non-AI Options
  • Technical dictionaries and secondary sources
  • Consultation with your own technical expert
  • Practice guides on expert witness challenges (Robinson/Daubert)
AI Options (Tools You Have)
  • CoCounsel/Protégé: Document analysis within privileged platforms
  • Gemini/Copilot: Could explain technical concepts like "race conditions" in plain language—without uploading the expert report itself
Selection Considerations
  • For technical translation: You could ask general questions (e.g., "What is a race condition in software?") without sharing client-specific content
  • For cross-examination prep: Consider whether AI can help, or whether an opposing expert is needed
  • For Daubert analysis: Texas-specific standards apply—what verification would you need?
  • Complex technical content may benefit from expert consultation rather than AI alone

I. Expert Qualifications

My name is Dr. Amanda Rothwell. I am a software engineering consultant with over 20 years of experience in software development, quality assurance, and technology litigation support.

I hold a Ph.D. in Computer Science from MIT and an M.S. in Software Engineering from Stanford University. I am a Certified Software Quality Engineer (CSQE) and have served as an expert witness in 35 technology-related legal matters.

I have been retained by counsel for GreenLeaf Technologies, Inc. to evaluate the inventory management software delivered by Vertex Solutions LLC and to render opinions regarding its conformance to the contractual specifications.


II. Materials Reviewed

In forming my opinions, I reviewed the following materials:

  1. Software Development Agreement dated September 8, 2025, including Exhibit A
  2. GreenLeaf's testing documentation and error logs
  3. Email correspondence between the parties
  4. Depositions of Priya Sharma, Maya Chen, and Daniel Osito
  5. Vertex Solutions' interrogatory responses
  6. Source code for the delivered software (produced in discovery)
  7. Vertex's internal development documentation and testing records
  8. Industry standards and publications regarding inventory management software

I was compensated at my standard rate of $500 per hour. My compensation is not contingent on the outcome of this litigation.


III. Summary of Opinions

Based on my analysis, I have formed the following opinions to a reasonable degree of scientific certainty:

  1. The inventory tracking function contains a coding defect that causes systematic inaccuracies in inventory counts.
  2. The reporting function was not designed or tested to handle the data volumes required by GreenLeaf's business operations.
  3. The software does not conform to the specifications in Exhibit A to the Agreement.
  4. The defects are attributable to inadequate software development and testing practices by Vertex Solutions.

IV. Analysis

A. Inventory Tracking Defect

Finding: The inventory tracking function contains a race condition in the database write operations that causes inventory counts to be recorded incorrectly when multiple transactions occur in close temporal proximity.

Technical Explanation: Upon examining the source code, I identified a defect in the inventory update module (file: /src/inventory/updateInventory.js, lines 145-178). The code fails to implement proper database transaction locking when updating inventory counts. When multiple inventory entries are processed within a short time window, the system can read a stale value before a prior write has completed, causing the second transaction to overwrite the first.

This type of defect is known as a "race condition" and is a well-documented software bug pattern. It is particularly problematic in inventory systems where accuracy depends on proper sequencing of transactions.

Industry Standard: Proper inventory management software must implement transactional integrity controls (such as database locks or optimistic concurrency control) to prevent race conditions. The failure to implement such controls constitutes a departure from professional software development standards.

B. Reporting Function Limitation

Finding: The reporting function was designed with a practical limit of approximately 500 line items due to inefficient database queries and lack of pagination.

Technical Explanation: The report generation code (/src/reports/generateReport.js) executes a single database query that loads all requested data into memory before rendering the report. For small datasets, this approach works adequately. However, for reports exceeding approximately 500 line items, the query times out or exhausts available browser memory, causing the application to crash.

Vertex's internal testing records (produced in discovery) confirm that performance testing was conducted with maximum dataset sizes of 200 items. No testing was performed at volumes representative of GreenLeaf's actual inventory.

Industry Standard: Enterprise-grade reporting systems typically implement pagination, streaming data retrieval, or server-side report generation to handle large datasets. The failure to implement such techniques represents a significant design limitation.

C. Conformance to Specifications

Specification Requirement: "Maintain accuracy within acceptable industry tolerances."

Opinion: The 15-20% error rate documented by GreenLeaf is not within any reasonable definition of "acceptable industry tolerances." Industry standards for inventory management software expect accuracy rates of 99% or higher (variance of 1% or less). A 15-20% error rate would be unacceptable for any commercial inventory system.

I note that Vertex's own lead developer testified that 15-20% variance "would be outside what I'd consider acceptable."


V. Conclusions

The software delivered by Vertex Solutions contains material defects that prevent it from performing its core functions. The inventory tracking defect causes systematic inaccuracies that render the system unreliable for business use. The reporting limitation prevents GreenLeaf from generating basic inventory reports.

These defects result from inadequate software development practices, including:

  • Failure to implement proper database transaction controls
  • Failure to design for realistic data volumes
  • Inadequate testing at representative scale

The software does not conform to the specifications in Exhibit A to the Software Development Agreement.


Dr. Amanda Rothwell, Ph.D., CSQE
Date: March 18, 2026