For patent cases involving claims of infringement relating to software products/ applications, a vitally important element of these cases often relates to source code review. Software Experts for both plaintiffs and defendants review source code for the purposes of detailed comparison to the patent claim elements at issue in the case.
For patent cases involving claims of infringement relating to software products/ applications, a vitally important element of these cases often relates to source code review. Software Experts for both plaintiffs and defendants review source code for the purposes of detailed comparison to the patent claim elements at issue in the case. As such, expert source code review for patent cases is a highly specialized area of expertise. It requires deep technical knowledge of software and source code as well as a thorough grasp of patents and patent litigation. As experts that have served in over 40 of such cases, we have found that there is often a lack of understanding of, and appreciation for, what can help make source code analysis for patent cases more efficient and effective. Based upon this experience, we have developed the 5 best practices for expert source code review in patent cases:
Work with your expert to establish reasonable timing for the source code review. Most software systems involved in patent litigation involve relatively large/complex code base and histories, having been built over several years by teams made up of a number, sometimes even hundreds, of engineers. In patent litigation, there are often subtle nuances that are at issue, and you need the proper expertise, along with sufficient time, to properly analyze the source code and understand the critical elements. Remember also that there can be multiple software products, multiple versions of each product, and multiple patents, which can impact the expert’s efforts.
One of the most common mistakes we see attorneys make is not recognizing the need to prepare for source code review in advance. Due to the complexities described above, an expert can be much more efficient if they begin source code review with a definitive list of focus areas and have researched the target products/technologies in advance. Involving the expert early when the focus areas and target products/technologies are initially being considered and developed can be extremely helpful in this regard.
Another important strategy for efficient source code review is to ensure the use of appropriate tools – both software and hardware related. First, the right expert will likely have a repertoire of specialized tools to enhance and automate portions of the source code analysis. This should be a critical piece of the expert selection process. It is important for the attorney to ensure that the expert has the freedom and time to utilize these timesaving tools when protective order protocols and discovery/production guidelines are negotiated. Second, the expert’s hardware capabilities can be relevant to more efficient source code review. In our commercial software practice, most of our engineers utilize multiple large, high-resolution monitors simultaneously for writing and working with source code. Attorneys should work with your expert when they are drafting and negotiating source code production and handling protocols to ensure that a reasonable system is available to support the planned analysis. Also, in many cases the production of multiple systems and/or the ability to make reasonable copies will help speed up the review process.
While it appears that most courts have started to understand this element, in rare occasions you still get someone trying to promote the review of source code in a printed-paper form. While theoretically possible, the low efficiency of this approach means that this practice has all but disappeared. For efficient source code review, attorneys should work to obtain source code in its native form in a buildable and runtime debuggable form. A qualified expert can assist in defining exactly what is needed. Buildable and runtime debuggable means that the source code can be analyzed in the same fashion that the engineers building the system use. The native source code can be reviewed/observed in specialized tools that make such analysis efficient, and the source code can then be built to run in a debuaggable state so that source code can be observed in action, which allows for the most clear and rapid understanding of the source code. This is precisely how commercial software engineers work with source code every day.
As is hopefully obvious from reviewing the other best practices, source code review for patent cases is a fairly specialized endeavor. It is important to note that virtually every patent case involving software and source code has significant differences between it and other cases; the parties and circumstances are different; the technologies are different; and the overall history is unique. So, while the best practices above are good common goals, the most important strategy is to secure the services of a qualified software expert with extensive experience reviewing source code in patent cases. We have seen firsthand just how important this can be to the outcome of a case.
These best practices are based on our years of experience in patent cases. Source code review is a highly specialized and complex area and should not be underestimated. If you have any additional questions about expert source code review, do not hesitate to contact our office.