Patent litigation – on both the plaintiff’s and defense sides – often requires detailed examination of source code. Determining whether a product infringes a patent is increasingly a question of software. Why is this, and what should a litigator look for in a source code review expert witness?
A prescient article
In 2011, Marc Andreessen, the main author of the original Mosaic web browser and a renowned venture capitalist, penned an article for the Wall Street Journal entitled Why Software is Eating the World. Back then it was viewed as Silicon Valley hyperbole. Today, as many have noted, his article appears far-sighted and its predictions inevitable. Software is eating the world even faster.
Simply put, most of the differentiation in high-technology products today is produced by software. A competitive advantage solely due to hardware design is becoming less sustainable. This means that for attorneys in many patent cases, software is increasingly central.
How can a software expert assist retaining counsel and the finder of fact in medical device matters? Sometimes litigation turns on the process of software development. For example, in regulated industries such as medical devices, numerous standards must be followed for a software developer to meet the standard of care.
What makes for efficient source code review?
Often in patent infringement and trade secret cases, discovery demands an efficient review of a vast quantity of source code. Famous cases such as Cadence v. Avanti 1 were decided based on source code review. What are the characteristics of an effective software code review expert witness?
Understanding of the physics of the device
Familiarity with the technology underpinning a medical device’s design helps greatly with evaluating its software. Since source code review can be an extreme form of finding needles in a haystack, knowledge of the underlying mathematics or signal processing will limit the code which needs to be focused on.
For example, large sections of the codebase of a medical device which works with a hospital’s network will be devoted to communications. Other sections will cover data archiving and retrieval, and encryption. These are standard functions rarely at issue in patent cases, so typically no time needs to be spent on reviewing these code sections.
Language experience can be over-emphasized
Fluency in the language the code is written in is helpful. However, breadth of experience in developing complex software systems allows an expert to quickly grasp what is going on, even if they have not written code in the language of the specific device.
As a practical matter, medical devices mostly rely on a few computer languages. Wearable devices such as physiological monitors may only be able to run code in the C language. This is an old language suitable for programming small systems. Larger systems tend to use C++, a later language variant which incorporates modern programming concepts.
Medical devices are often required to respond rapidly to stimuli. For example, an imaging system may need to keep up with the motion of heart valves. C and C++ run fast and may be the only languages which can provide the performance demanded by the clinician.
Litigation is unlike software development (though the same tools are used)
When the code is delivered by the opposing party, an integrated development environment (IDE) such as Eclipse will be provided on the computer to be used for the review. An IDE is a piece of software incorporating many tools which help a software developer to be productive. Here is what it looks like:
What may not be clear to those without experience in litigation source code review as an expert witness is that while the IDE will look like figure 3, it will not work as it does in software development. Due to the adversarial environment, the code may not have even been correctly imported into the IDE. Nearly all features which normally allow for quick comprehension of code will not function.
With the source code in front of the expert witness, its detailed operation is apparent in extreme detail. The art of source code review is to rapidly grasp the larger picture where infringement (or its lack) can be established.
With the acceleration of Andreessen’s “software eating the world” maxim, IP litigation with a large software component will become more common. This is true both with patent and trade secret matters.
The software expert witness’s task in reviewing software is complex. Managing an initially overwhelming discovery process requires more than a grasp of the technical issues. If the job is done well, should the case go to trial, a skilled expert will be well prepared to educate, evaluate and explain the significance of the software findings to the finder of fact.