DCT

2:23-cv-00526

S3G Technology LLC v. Boot Barn Inc

Key Events
Complaint
complaint

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 2:23-cv-00526, E.D. Tex., 11/15/2023
  • Venue Allegations: Plaintiff asserts venue is proper in the Eastern District of Texas because Defendant maintains a regular and established place of business in the district, has transacted business with customers in the district, and has committed alleged acts of infringement within the district.
  • Core Dispute: Plaintiff alleges that Defendant’s e-commerce system, including its mobile application and website, infringes three patents related to a method and system for efficiently modifying software applications on remote devices.
  • Technical Context: The technology concerns a client-server architecture designed to update application functionality by sending small packets of modifiable, non-executable "code," thereby avoiding the need to transmit large, fully-compiled application updates over bandwidth-constrained networks.
  • Key Procedural History: The complaint relies on claim construction rulings from prior litigation involving the same patents (S3G Tech. LLC v. Unikey Techs., Inc.), particularly for the terms "code," "dialogue module," and "computer-executable instructions." Plaintiff also notes that the U.S. Patent Examiner found the claimed structure to be non-obvious during prosecution of a parent application.

Case Timeline

Date Event
2009-07-23 Earliest Priority Date for ’897, ’124, and ’774 Patents
2013-07-11 Notice of Allowability for parent application mentioned
2015-07-14 ’897 Patent Issue Date
2018-04-10 ’124 Patent Issue Date
2019-04-16 ’774 Patent Issue Date
2023-11-15 Complaint Filing Date

II. Technology and Patent(s)-in-Suit Analysis

U.S. Patent No. 9,081,897 - “Modification of Terminal and Service Provider Machines Using an Update Server Machine” (Issued July 14, 2015)

The Invention Explained

  • Problem Addressed: The patents address the difficulty and high bandwidth cost of updating software applications distributed across many remote devices, such as mobile phones. Transmitting a newly compiled version of an entire application is often slow and inefficient, especially over wireless networks (Compl. ¶¶13-14; ’897 Patent, col. 2:30-55).
  • The Patented Solution: The invention proposes a three-entity system (update server, service provider, terminal machine) where applications are structured with two distinct components: a core set of "computer-executable instructions" and a separate, modifiable "set of code." The "code" is information that must be translated or interpreted by the application before it can be executed ('897 Patent, col. 4:24-31). To update the system, a small "dialogue module" containing new or modified "code" is sent to the terminal and/or service provider machines. This changes the application's behavior (e.g., modifying user prompts) without altering the much larger, underlying executable instructions, thus saving bandwidth and streamlining updates (Compl. ¶¶15, 19; ’897 Patent, Abstract, FIG. 1).
  • Technical Importance: This architectural approach was designed to reduce network bandwidth utilization and enable efficient modification of applications running on numerous remote devices (Compl. ¶23; ’897 Patent, col. 6:51-53).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1 (Compl. ¶28).
  • Claim 1 of the ’897 patent recites a system comprising:
    • An update server machine operable for sending a terminal dialogue module and a provider dialogue module.
    • A terminal machine running a terminal application, which itself comprises a "first set of computer-executable instructions" and a "first set of code" that is not directly executable.
    • A service provider machine running a provider application, comprising a "second set of computer-executable instructions" and a "second set of code."
    • The terminal dialogue module modifies the first set of code (but not the executable instructions) to produce updated code.
    • The provider dialogue module modifies the second set of code (but not the executable instructions) to produce updated code.
    • The updated code on each machine adapts the respective application to use a modified dialogue sequence.
  • The complaint reserves the right to assert other claims, including dependent claims (Compl. ¶28).

U.S. Patent No. 9,940,124 - “Modification of Terminal and Service Provider Machines Using an Update Server Machine” (Issued April 10, 2018)

The Invention Explained

  • Problem Addressed: As with its parent, this patent addresses the inefficiency of distributing large, recompiled software updates to remote devices over networks with limited capacity (Compl. ¶¶13-14; ’124 Patent, col. 2:4-55).
  • The Patented Solution: This continuation patent claims a method for conducting a dialogue sequence. The method involves a terminal application (comprising executable instructions and non-executable "first code") displaying a prompt and communicating user input to a service provider. In response, the terminal machine receives a "terminal dialogue module" which "updates at least a portion of the first code to produce first updated code." This updated code then adapts the application to display a second, different prompt as part of a modified dialogue, with the patent noting that the "code" comprises "intermediate code" ('124 Patent, Abstract, col. 16:47-67). The complaint highlights that this allows for efficient application modification (Compl. ¶15).
  • Technical Importance: The claimed method provides a process-based implementation of the same core technical goal: reducing bandwidth consumption by modifying a small, interpreted portion of an application rather than replacing the entire executable file (Compl. ¶23).

Key Claims at a Glance

  • The complaint asserts at least independent claim 1 (Compl. ¶46).
  • Claim 1 of the ’124 patent recites a method comprising the steps of:
    • Displaying a first prompt via a terminal application comprised of first computer-executable instructions and first code.
    • Accepting a first data entry.
    • Communicating information from the data entry to a service provider machine.
    • Storing at least a portion of the information for analysis.
    • Receiving, at the terminal machine, a terminal dialogue module that updates the first code to produce first updated code.
    • The first updated code adapts the terminal application to display a second prompt.
    • At least one of the first code, second code (on the service provider), and first updated code comprises "intermediate code."
  • The complaint reserves the right to assert other claims (Compl. ¶46).

Multi-Patent Capsule: U.S. Patent No. 10,261,774

  • Patent Identification: U.S. Patent No. 10,261,774, “Modification of Terminal and Service Provider Machines Using an Update Server Machine,” issued April 16, 2019 (Compl. ¶11).
  • Technology Synopsis: As a continuation in the same family, this patent also addresses the problem of inefficient remote software updates. It claims a method of conducting a dialogue where a terminal machine receives "third code" (a dialogue module) that modifies its "first code" to produce "first updated code." This updated code adapts the terminal application to display a new prompt in a modified sequence, again focusing on the distinction between modifiable, non-executable code and fixed, executable instructions ('774 Patent, Abstract; Compl. ¶15).
  • Asserted Claims: At least independent claim 1 (Compl. ¶65).
  • Accused Features: The complaint alleges that the Boot Barn website and mobile app system infringes by using a similar architecture to update features. For example, it alleges that adding an item to a "wish list" involves the server sending data (e.g., JSON) that modifies the app's behavior (the "code") without replacing the core application executable (Compl. ¶¶67, 70).

III. The Accused Instrumentality

  • Product Identification: The "Accused System" or "Accused Instrumentalities," which encompass the Boot Barn e-commerce platform. This includes the Boot Barn mobile application ("Defendant app" for Android and iOS), the Boot Barn website, and the backend Defendant servers that support them (Compl. ¶¶29, 30, 32).
  • Functionality and Market Context: The Accused System provides a standard e-commerce experience, allowing users on a client device (a "terminal machine") to interact with Defendant's backend infrastructure (a "service provider machine"). The complaint alleges that specific features, such as the "wish list," operate in an infringing manner. According to the complaint, when a user adds an item to their wish list, the app communicates with the server, which in turn sends a "dialogue module" (allegedly data in JSON format) back to the app. This data is alleged to modify the app's non-executable "code" (e.g., its bytecode), which adapts the application to display updated information and new prompts without requiring a full application re-installation (Compl. ¶¶30-31, 33). The complaint's patent figure, FIG. 1, is a block diagram illustrating the three-machine system architecture the plaintiff alleges is practiced by the accused system (Compl. ¶16).

IV. Analysis of Infringement Allegations

’897 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
an update server machine ... operable for sending a terminal dialogue module to a respective terminal machine and a provider dialogue module to a respective service provider machine... The Defendant's server (or a user's device) acts as an update server, sending a "dialogue module" (e.g., wish list data in JSON format) to the user's device (terminal machine) and the server itself (service provider machine). ¶30 col. 7:55-58
...the terminal application comprises a first set of computer-executable instructions and a first set of code... wherein the first set of code is not able to execute directly on the terminal processor... The Defendant's Android app is alleged to comprise directly executable instructions (the Android Runtime, or ART) and non-directly executable "code" (the app's bytecode). ¶31 col. 7:45-50
...the terminal dialogue module modifies the first set of code to produce a first set of updated code... The wish list data (the "dialogue module") received from the server allegedly modifies the app's bytecode (the "first set of code"), resulting in an updated state of the application ("first set of updated code"). ¶33 col. 8:50-58
...the terminal dialogue module does not modify the first set of computer-executable instructions... The complaint alleges that the wish list data does not modify the underlying Android Runtime (ART), which it identifies as the computer-executable instructions. ¶33 col. 9:1-5

’124 Patent Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
displaying a first prompt on a terminal display ... by running a terminal application, the terminal application comprising first computer-executable instructions and first code... The Boot Barn app (allegedly comprising ART and bytecode) displays prompts for users to interact with features like the wish list. ¶48 col. 15:51-56
communicating information associated with the first data entry from the terminal machine to the service provider machine... User interactions within the app, such as adding an item to the wish list, are communicated from the user's device to the Defendant's server. ¶50 col. 15:59-67
receiving, at the terminal machine, a terminal dialogue module that updates at least a portion of the first code to produce first updated code... The app on the user's device receives data (e.g., JSON) from the server representing the new wish list item, which is alleged to update the app's bytecode to produce an updated state. ¶52 col. 16:62-67
...wherein the first updated code adapts the terminal application to display a second prompt for the terminal machine's portion of a modified dialogue sequence... After receiving the update, the app is adapted to display new or modified prompts, such as the ability to view and interact with the newly added wish list items. The complaint's patent figure, FIG. 2, depicts the separation of executable instructions and modifiable code that enables this functionality. ¶52 col. 16:1-4
  • Identified Points of Contention:
    • Architectural Scope: The complaint alleges the accused e-commerce platform maps to the patents' three-machine system. A question for the court is whether a standard two-tier client-server architecture (user device and backend server) meets the limitations of a system requiring a "terminal machine," a "service provider machine," and an "update server machine," especially where the complaint suggests the user's device or the defendant's server could be the "update server machine" (Compl. ¶30).
    • Technical Mechanism: A core technical question is whether the normal operation of a dynamic application—receiving, parsing, and rendering data (like a JSON object)—constitutes the claimed act of a "dialogue module" modifying a "set of code." The defense may argue that the app's code is not modified at all, but rather that its pre-existing, unmodified executable instructions are simply operating on new data.

V. Key Claim Terms for Construction

  • The Term: "code"

  • Context and Importance: This term is the technological lynchpin of the patents, distinguishing the modifiable part of an application from the fixed, directly executable part. The infringement case depends on whether data formats like JSON or application bytecode in the accused system can be defined as "code." The complaint relies on a prior construction: "information that must be translated before it can be executed on a processor" (Compl. ¶17, fn 3).

  • Intrinsic Evidence for Interpretation:

    • Evidence for a Broader Interpretation: The specification mentions "intermediary code, such as Java Byte Code," which is interpreted by a virtual machine, suggesting the term is not limited to source code ('897 Patent, col. 2:60-65). Plaintiff may argue this scope extends to any interpreted data structure that directs application behavior, such as JSON.
    • Evidence for a Narrower Interpretation: The specification states that "code represents at least some information that must be translated by the software application before it can be implemented" ('897 Patent, col. 4:24-31). A defendant may argue that data formats like JSON are "parsed" or "read" by an application, not "translated" in the sense of being converted into a lower-level set of instructions.
  • The Term: "dialogue module"

  • Context and Importance: This is the claimed vehicle for delivering the software modification. The complaint alleges that data packets, such as a JSON object describing a wish list item, are "dialogue modules" (Compl. ¶30). The prior construction cited is "a particular type of structure rather than to any structure for performing a function" that "can contain code or other data" (Compl. ¶20).

  • Intrinsic Evidence for Interpretation:

    • Evidence for a Broader Interpretation: The construction's language that a module "can contain code or other data" supports the view that a data-centric structure like a JSON object could qualify (Compl. ¶20, Ex. D).
    • Evidence for a Narrower Interpretation: The claims require the module to modify the code to produce updated code ('897 Patent, cl. 1). A defendant may argue that a data object does not modify the application's code; rather, the application's existing, static code acts upon the data object. The patents' figures also depict the "dialogue module" (106) as a distinct component of the "update server machine" (102), which could suggest a more formal software component than a transient data packet from a server (Compl. ¶16, FIG. 1).

VI. Other Allegations

  • Indirect Infringement: The complaint alleges inducement by "promoting users to download and run the Defendant app" with the knowledge and intent that doing so would cause infringement (Compl. ¶¶39, 58, 76). It also alleges contributory infringement, asserting the Accused System is not a staple article of commerce and is especially adapted for infringement (Compl. ¶¶40, 59, 77).
  • Willful Infringement: The complaint alleges Defendant has had actual knowledge of the patents "at least since the filing of this complaint," establishing a basis for post-filing willfulness (Compl. ¶¶27, 45, 64). No specific allegations of pre-suit knowledge are made.

VII. Analyst’s Conclusion: Key Questions for the Case

  • A core issue will be one of architectural mapping: Does Boot Barn’s conventional client-server e-commerce platform, which involves a user's device communicating with a backend server, meet the claim requirements for the patents’ more articulated three-machine system of a "terminal machine," "service provider machine," and "update server machine"?
  • A key evidentiary question will be one of technical mechanism: Does the accused system's process of an application receiving and rendering server data (e.g., a JSON object for a wish list) constitute the claimed action of a "dialogue module" actively modifying a "set of code," or is this a fundamental mismatch with the normal operation of a dynamic application executing its existing instructions on new data?
  • A central legal question will be one of definitional scope: Following the prior construction of "code" as "information that must be translated," can the term be broadly construed to cover interpreted data formats like JSON, or is its scope limited by the specification to more instruction-like forms of information, such as Java Bytecode?