Software Litigation Consulting (Andrew Schulman) specializes in pre-filing investigation of software/internet patent infringement, the preparation of claim charts (infringement & invalidity contentions), and research in software prior art, including almost twenty years experience in source-code examination for litigation. Services include:
- Pre-filing investigation (in-depth infringement-related inspection of software/internet products services)
- Software reverse engineering, including static (e.g. disassembly) and dynamic (e.g. network packet sniffing) methods
- Mobile app software “teardown” for Android and iPhone (iOS)
- Locating software/internet prior art (for anticipation, on-sale, and public-use)
- Infringement & invalidity contentions (claim charts, including both PICs before source code is available, and post-discovery ICs with “pinpoint” source-code citations)
Our focus is examining the code embodied in actual products and services. This code is often more accessible than the source code, and often provides a different perspective from the source code.
Before source code becomes available during discovery, we can usually locate relevant elements embodied in, or steps carried out by, software/internet products and services. Software/internet products/services often contain the names of functions, structures, steps of processes, and so on — often even the names of source-code files. Both static and dynamic software analysis (“reverse engineering”) are employed.
Not only is reverse engineering or its equivalent required for a reasonable pre-filing investigation under Rule 11 and Local Patent Rules, but working directly with the accused product/service provides direction and focus for discovery, including source-code examination.
Defendants as well as plaintiffs often require direct inspection of the accused product/service, which provides crucial context to what is found in the source code. The role that code plays in the actual product/service may not be apparent from looking solely at the source code.
Since anticipatory prior art must by definition have been publicly accessible at the relevant time, looking at actual products/services will often be more relevant than a prior-art search focused on proprietary, closed-held, source code.
Some of the questions attorneys may have (such as “Why bother with anything other than the source code?”, “What do defendants get from reverse engineering the relevant software?”, “Is the kind of element-by-element information I need really available without the source code?”, and “Is it permissible to reverse engineering software, even for litigation purposes?”) are addressed in the FAQ.
Services in more detail:
- Using reverse engineering to investigate patent infringement (see article “Hiding in Plain Sight: Using Reverse Engineering to Uncover Software Patent Infringement” in Intellectual Property Today, November 2010)
- Source code examination (forthcoming book, due 2017: Source Code Examination for Software & Internet Patent Litigation: A Guide for Attorneys and Experts)
- Preparation of infringement & invalidity charts, correlating claim limitations on the one hand with elements/steps of software on the other (forthcoming book, due late 2016: Claim Charts for Patent Litigation)
- Locating software prior art (see article “Open to Inspection: Using Reverse Engineering to Uncover Software Prior Art” (Part 1) in New Matter [Calif. State Bar IP Section], Summer 2011); Part 2 (New Matter, Fall 2011)
- Software reverse engineering (text extraction, class dump, code decompilation/disassembly, network packet monitoring, in-depth examination of web sites/services, etc.)
- Comparison/correlation of source code with products/services (e.g. “latent code” issues; and to create source-code maps from binary/object code, as preparation for discovery)
- Open source examination: comparison/correlation of open source with products/services, and with proprietary source code
- Patent portfolio analysis (e.g. ranking for valuation; and for initial identification from patent citations of candidate licensees or potential infringers)
- Code comparisons for copyright, patent, trade secret, and contracts issues (see “Finding Binary Clones with Opstrings & Function Digests” [parts 1, 2, and 3] in Dr. Dobb’s Journal, 2005)
- Assessments of bugs, incompatibilities, error and warning messages
- Assistance with technical aspects of complaints, summary judgment motions and responses, interrogatory and discovery requests and responses, and depositions
- Comparison and correlation of internal documents from discovery (emails, etc.) with resulting technical practices (see e.g. “The Caldera v. Microsoft Dossier,” O’Reilly Media, Feb. 2000).