stars 1 stars 2 stars 3

Software Litigation Consulting (Andrew Schulman) specializes in source code examination, pre-filing investigation of software/internet patent infringement, the preparation of claim charts (infringement & invalidity contentions), and research in software prior art. Services include:Source code examination for patent, copyright, and trade secrets litigation (programming languages: C/C++, Java, JavaScript, Objective-C, C#, PHP, Flash ActionScript, Python, and other languages)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) methodsMobile 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)Services in more detail:Source code examination (see "Source code and e-discovery"; also see forthcoming book, due 2017: Source Code Examination for Software & Internet Patent Litigation: A Guide for Attorneys and Experts)Using reverse engineering to investigate patent infringement and non-infringement (see article "Hiding in Plain Sight: Using Reverse Engineering to Uncover Software Patent Infringement" in Intellectual Property Today, November 2010)Preparation of infringement & invalidity charts, correlating claim limitations on the one hand with elements/steps of software on the other (forthcoming book, due 2017: Claim Charts for Patent Litigation)Locating and analyzing 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; creating 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 codePatent portfolio analysis (e.g. ranking for valuation; initial identification from patent citations of candidate licensees or potential infringers)Code comparisons for copyright, patent, trade secret, and contracts issues, using source code and/or binary/object code (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 messagesAssistance with technical aspects of complaints, summary judgment motions and responses, interrogatory and discovery requests and responses, depositions, expert testimony and cross-examComparison 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).Source code examination:Source code conforms to rules dictated by programming languages, platforms (such as Android, Windows, or the Apple iOS and OSX operating systems), APIs (application programming interfaces), and other constraints (e.g. interoperability with other software and with devices). Source code examination needs to carefully use this structured format, as opposed to merely performing a keyword search, in part because there is typically too much code to read all of it, and much depends on the proper selection of areas requiring close reading. Whereas a simple keyword search might end up treating source code as a disconnected collection of code fragments, a true source-code examination will rely, for example, on:the relationship between caller and callee functions;child/parent class relationships;aliasing of names used for functions, parameters, variables, and data structures;actual operation of code (in contrast to relying entirely on the accuracy of names or comments in the code);classes and modules; directory and filename path information; version control information; and other metadatacareful attention to function pointers, vtables, operator/function overloading, hooks, on-event handlers/subscribers, run-time dynamic linking, and externally-generated events; andtracing data flow.Also in contrast to a simple keyword search, a source-code examination will be alert to the possibility of code which is unused in the finished product; determining code usage or non-usage may require careful tracing (distinct from searching) through the source code, comparison of the source code with the binary/object code in the finished product, or even dynamic testing of the "live" product. The dependence of source code on external constraints means that the code can often be correlated with external information, such as API documentation, SDK (software development kit) sample code, header files, open source, and so on. Other aspects of source-code examination services provided by Software Litigation Consulting include:Use of custom-built code-examination tools, as well as industry-standard toolsTesting completeness of source-code productionAbility to work with source code written in in-house/proprietary programming languagesCareful attention to protective order (PO) requirements, including printing limitationsComparison of open source with vendor's proprietary modificationsIn patent cases, searching and code reading in terms of claim construction (including alternative pre-Markman constructions), means-plus-function, and doctrine of equivalents (analysis of code for function, way, and result)In copyright cases, detection of non-literal copyright, using e.g. tokenization tests, structural comparisonsSoftware reverse engineering:Besides source-code examination, another focus of Software Litigation Consulting 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?", "How can defendants benefit 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. For contact information, see About Us or send email.

View Top Employees from Software Litigation Consulting

Software Litigation Consulting Questions

Software Litigation Consulting is based in San Francisco, California.

The NAICS codes for Software Litigation Consulting are [54, 5411, 54111, 541].

The SIC codes for Software Litigation Consulting are [811, 81].

How It Works
Get a Free Account
Sign up for a free account. No credit card required. Up to 5 free lookups / month.
Search
Search over 700 million verified professionals across 35 million companies.
Get Contact Info
Get contact details including emails and phone numbers (business & personal).
High Performer Summer 2022 RocketReach is a leader in Lead Intelligence on G2 RocketReach is a leader in Lead Intelligence on G2 RocketReach is a leader in Lead Intelligence on G2
talentculture2022
g2crowd
G2Crowd Trusted
chromestore
300K+ Plugin Users