DCT

2:24-cv-00945

S3G Technology LLC v. BJs Restaurants Inc

Key Events
Complaint
complaint

I. Executive Summary and Procedural Information

  • Parties & Counsel:
  • Case Identification: 2:24-cv-00945, E.D. Tex., 11/19/2024
  • Venue Allegations: Plaintiff alleges venue is proper in the Eastern District of Texas because Defendant maintains a regular and established place of business in the district, specifically citing a restaurant location in Tyler, Texas, and derives substantial revenue from business conducted therein.
  • Core Dispute: Plaintiff alleges that Defendant’s mobile applications and associated back-end server systems for customer ordering infringe four patents related to methods and systems for efficiently modifying software applications on remote devices.
  • Technical Context: The technology addresses updating client-server applications by sending small "dialogue modules" containing modifiable "code" to update application functionality, rather than distributing entirely new, large application files, thereby conserving network resources.
  • Key Procedural History: The complaint heavily references prior litigation involving the asserted patent family, S3G Tech. LLC v. Unikey Techs., Inc. (E.D. Tex.), citing specific claim construction rulings from that case for key terms such as "code" and "dialogue module." The complaint also notes that a patent examiner found claims in a related patent to be novel and non-obvious over prior art and that other claims in the family were allowed over subject matter eligibility contentions.

Case Timeline

Date Event
2009-07-23 Earliest Priority Date (’124, ’897, ’571, ’995 Patents)
2013-07-11 Notice of Allowability for related '571 Patent mentioned
2013-10-29 U.S. Patent No. 8,572,571 Issued
2015-07-14 U.S. Patent No. 9,081,897 Issued
2018-04-10 U.S. Patent No. 9,940,124 Issued
2023-05-30 U.S. Patent No. 11,662,995 Issued
2024-10-21 Accused Android App Last Updated
2024-10-28 Accused iOS App Last Updated
2024-11-19 Complaint Filing Date

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

U.S. Patent No. 9,940,124 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

The Invention Explained

  • Problem Addressed: The patent’s background section describes the difficulty and inefficiency of distributing large, recompiled software updates to a multitude of remote devices, particularly over wireless networks with limited bandwidth and slow transfer rates (Compl. ¶¶15-16; ’124 Patent, col. 2:29-64).
  • The Patented Solution: The invention proposes a three-entity architecture (update server, service provider machine, terminal machine) to solve this problem. Instead of sending a full application replacement, an update server sends small, lightweight "dialogue modules" to the terminal (e.g., a mobile device) and service provider (e.g., a back-end server) machines (Compl. ¶17; ’124 Patent, FIG. 1). These modules contain "code"—defined as information that must be translated before execution—which modifies the behavior of the existing software applications without altering their underlying, directly executable instructions (Compl. ¶18; ’124 Patent, col. 4:30-40). This allows for dynamic updates to application logic or user interface flows with minimal data transfer.
  • Technical Importance: This approach aimed to significantly reduce network bandwidth consumption and enable faster, more efficient modification of applications in a distributed client-server environment (Compl. ¶26; ’124 Patent, col. 6:61-63).

Key Claims at a Glance

  • The complaint asserts infringement of at least independent claim 1 (Compl. ¶33).
  • The essential elements of method claim 1 include:
    • Displaying a first prompt via a terminal application comprising first computer-executable instructions and first code.
    • Accepting a first data entry at the terminal machine.
    • Communicating information from the terminal to a service provider machine running a provider application, which also comprises computer-executable instructions and code.
    • Storing at least a portion of the information for analysis.
    • Receiving a "terminal dialogue module" at the terminal machine that updates a portion of the first code to produce first updated code.
    • The first updated code adapts the terminal application to display a second prompt for a modified dialogue sequence.
    • At least one of the first code, second code, or first updated code comprises intermediate code.
  • The complaint alleges infringement of "one or more claims," which may implicitly reserve the right to assert dependent claims (Compl. ¶33).

U.S. Patent No. 9,081,897 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

The Invention Explained

  • Problem Addressed: The technology addresses the same problems as the ’124 Patent: the inefficiency and high bandwidth costs associated with distributing full software updates to numerous remote devices (Compl. ¶¶14-16).
  • The Patented Solution: The ’897 Patent claims a system, rather than a method, embodying the three-machine architecture. The system comprises an update server, a terminal machine, and a service provider machine (Compl. ¶17; ’897 Patent, Abstract). The applications on the terminal and service provider machines are architected to have two distinct components: a set of computer-executable instructions and a set of "code" that is not directly executable. The update server sends dialogue modules to each machine to modify only the "code," leaving the executable instructions unchanged, thereby adapting the application's behavior (Compl. ¶18; ’897 Patent, col. 7:48-63).
  • Technical Importance: The claimed system structure provides a technical framework for achieving bandwidth-efficient software updates in a distributed computing environment (Compl. ¶26).

Key Claims at a Glance

  • The complaint asserts infringement of at least independent claim 1 (Compl. ¶52).
  • The essential elements of system claim 1 include:
    • An update server machine operable for sending a terminal dialogue module and a provider dialogue module.
    • A terminal machine running a terminal application comprising a first set of computer-executable instructions and a first set of code.
    • 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 to produce updated code, but does not modify the first set of computer-executable instructions.
    • The provider dialogue module modifies the second set of code to produce updated code, but does not modify the second set of computer-executable instructions.
    • The updated code on each machine adapts its respective application to use a modified dialogue sequence.
  • The complaint alleges infringement of "one or more claims," which may implicitly reserve the right to assert dependent claims (Compl. ¶52).

U.S. Patent No. 8,572,571 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"

  • Technology Synopsis: This patent, a parent to others in the asserted family, describes a system for efficiently updating software on remote devices. The system uses an update server to send "dialogue modules" that modify a "code" portion of terminal and service provider applications, distinct from the applications' underlying "computer-executable instructions," thereby avoiding the need for a full software reinstallation (Compl. ¶¶14-17).
  • Asserted Claims: At least claim 2 (Compl. ¶89).
  • Accused Features: The complaint accuses Defendant's system of infringement by using an update server to send dialogue modules (e.g., data for "Re-order from history" items) to a terminal machine (user's phone with app) and a service provider machine (Defendant's server), modifying the application experience without replacing executable instructions (Compl. ¶¶91-94).

U.S. Patent No. 11,662,995 - "Network Efficient Location-Based Dialogue Sequence Using Virtual Processor"

  • Technology Synopsis: This patent claims a method for conducting a dialogue between at least two user devices, mediated by one or more provider applications. The method involves a server receiving "code" from a first user device to update a provider application and then, based on certain criteria, sending different "code" to a second user device to facilitate its part of the dialogue, all without the second device explicitly requesting the code (Compl. ¶¶108-115).
  • Asserted Claims: At least claim 1 (Compl. ¶107).
  • Accused Features: The complaint accuses the process where a user order on a first device (e.g., a website) sends code representing a new 'Re-order from history' item to Defendant's server, which then sends corresponding code to the user's second device (e.g., mobile app) to update its history list without a direct request from the app (Compl. ¶¶109-115).

III. The Accused Instrumentality

Product Identification

  • The accused instrumentalities are collectively identified as the "Accused System," which comprises the BJ's Restaurants mobile applications for iOS and Android (the "Defendant app") and the associated back-end computing devices, servers, and software that facilitate their operation (Compl. ¶8).

Functionality and Market Context

  • The Accused System provides customers with mobile access to restaurant services, including ordering, loyalty rewards management, and transaction history review (Compl. ¶13, fn. 8). The complaint's infringement theory centers on the "Re-order from history" feature, alleging that when a user places an order, the system updates this history list by sending data packets (identified as the claimed "dialogue modules") from Defendant's servers to the user's mobile app (Compl. ¶35). The complaint alleges that Defendant derives a significant portion of its revenue from these mobile application-based services (Compl. ¶8).

IV. Analysis of Infringement Allegations

The complaint reproduces a figure from the patent to illustrate the claimed application structure, comprising directly executable instructions and translatable code (Compl. ¶18, p. 7).

U.S. Patent No. 9,940,124 Infringement Allegations

Claim Element (from Independent Claim 1) Alleged Infringing Functionality Complaint Citation Patent Citation
displaying a first prompt on a terminal display of a terminal machine by running a terminal application, the terminal application comprising first computer-executable instructions and first code... The BJ's app displays 'Re-order from history' items. The complaint alleges the app consists of executable instructions (e.g., Android Runtime) and first code (e.g., the app's bytecode). ¶35 col. 12:8-14
communicating information associated with the first data entry from the terminal machine to a service provider machine, wherein the service provider machine uses a provider application comprising second computer-executable instructions and second code... A user's selection is sent to the Defendant's server, which runs a provider application (allegedly a .Net application). This server application is alleged to comprise executable instructions (e.g., Common Language Runtime) and second code (e.g., the .Net program). ¶37 col. 12:18-27
receiving, at the terminal machine, a terminal dialogue module that updates at least a portion of the first code to produce first updated code... After a user places an order, the server sends information (allegedly in JSON format) to the user's app. This information is identified as the "terminal dialogue module," which allegedly updates the app's bytecode (the "first code") to produce "first updated code." ¶39 col. 12:31-35
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 with the service provider machine... The "first updated code" adapts the app to display a new list of 'Re-order from history' items, which constitutes the second prompt in a modified dialogue sequence. ¶39 col. 12:35-40
wherein at least one of the first code, the second code, and the first updated code comprise intermediate code. The complaint alleges that the app's bytecode, which is identified as the "first code," constitutes intermediate code. ¶39, 16 col. 8:54-57

U.S. Patent No. 9,081,897 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... and a provider dialogue module... The "update server machine" is alleged to be a user's device accessing Defendant's website or Defendant's server itself. It sends a "terminal dialogue module" (e.g., JSON data for a history item) to the app and a "provider dialogue module" (e.g., order data) to the server. ¶54 col. 17:15-24
a terminal machine configured to run a terminal application that conducts the terminal machine's portion of the dialogue sequence... wherein the terminal application comprises a first set of computer executable instructions and a first set of code... The user's smartphone runs the BJ's app. The complaint alleges the app comprises executable instructions (Android Runtime) and code (the app's bytecode). ¶55 col. 17:25-34
wherein the terminal dialogue module modifies the first set of code to produce a first set of updated code... wherein the terminal dialogue module does not modify the first set of computer-executable instructions... The received JSON data ("terminal dialogue module") allegedly modifies the app's bytecode ("first set of code") to update the user's order history, without modifying the underlying Android Runtime ("first set of computer-executable instructions"). ¶57, 25 col. 17:42-51
wherein the first set of updated code adapts the terminal application to use a modified dialogue sequence... The updated order history list, resulting from the modified bytecode, constitutes a "modified dialogue sequence" for the user. ¶57 col. 17:52-56
wherein the second set of updated code adapts the provider application to use the modified dialogue sequence with the terminal machine. User actions generate data that modifies the server-side code, creating an updated set of order history data. This updated data set adapts the server application to conduct a "modified dialogue sequence" with the terminal machine (e.g., by making new history items available for re-ordering). ¶57, 24 col. 17:57-61
  • Identified Points of Contention:
    • Scope Questions: The infringement theory rests on the premise that receiving and processing standard application data (e.g., a JSON object for an order history item) constitutes "updating... code." A central dispute may be whether the term "code", as used in the patents, can be construed to read on application data that is interpreted by a runtime, or if it is limited to information that more directly alters an application's programmatic logic, such as a script or bytecode patch.
    • Technical Questions: The complaint's mapping of a mobile operating system's runtime (e.g., Android's ART) to "computer-executable instructions" and the application's own bytecode to "code" will be a key technical and legal issue. The analysis may turn on whether the accused app's bytecode is actually modified by the incoming data, or if the unchanged executable instructions simply process the new data to render an updated view, a standard operation in client-server applications.

V. Key Claim Terms for Construction

  • The Term: "code"

  • Context and Importance: The distinction between "code" and "data" is fundamental to the infringement case. Plaintiff's theory requires "code" to be broad enough to encompass application data (like bytecode or JSON objects) that is interpreted by a runtime environment. Defendant may argue for a narrower construction limited to information that alters programmatic logic or control flow, not merely the data an application displays.

  • Intrinsic Evidence for Interpretation:

    • Evidence for a Broader Interpretation: The specification states that "code represents at least some information that must be translated by the software application before it can be implemented on the machine processor" (’124 Patent, col. 4:30-40). The complaint cites a construction from a prior case consistent with this: "information that must be translated before it can be executed on a processor" (Compl. ¶18, fn. 6).
    • Evidence for a Narrower Interpretation: The patents repeatedly discuss "code" in the context of a "dialogue module" that modifies a "dialogue protocol" and a "sequence of prompts" (’897 Patent, Abstract). This context may support an argument that "code" is limited to instructions defining UI flow and logic, rather than any data an application might receive and process, such as a list of past orders.
  • The Term: "dialogue module"

  • Context and Importance: Plaintiff alleges that a JSON data packet containing order history information is a "dialogue module." The viability of this assertion depends on the term's construction. Practitioners may focus on this term because if a simple data object is not a "module," the infringement theory may fail.

  • Intrinsic Evidence for Interpretation:

    • Evidence for a Broader Interpretation: The complaint cites a prior construction defining the term as "code or instructions related to a dialogue sequence" (Compl. ¶20, fn. 7). The specification notes a dialogue module "may include portions of code and/or instructions" (’897 Patent, col. 7:27-28), which could support reading the term on a structured data object containing information that influences a dialogue.
    • Evidence for a Narrower Interpretation: The term is consistently used in the context of defining or modifying a "dialogue sequence" comprising prompts and data entries (’897 Patent, Abstract). An argument could be made that a data payload containing historical facts (e.g., past orders) does not, by itself, constitute a module for defining a new dialogue sequence, but is rather data to be rendered within an existing one.

VI. Other Allegations

  • Indirect Infringement: The complaint alleges inducement based on Defendant's alleged instructions to customers to download and use the infringing applications (Compl. ¶43). It alleges contributory infringement on the basis that the Accused System is not a staple article of commerce and is especially adapted for the infringing use (Compl. ¶46).
  • Willful Infringement: The complaint alleges knowledge of the patents "at least since the filing of this Complaint" (Compl. ¶¶32, 51, 88, 106). This allegation supports a claim for post-suit willfulness only, as no facts supporting pre-suit knowledge are pleaded.

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

  • A core issue will be one of definitional scope: can the term "code", defined in the patents as "information that must be translated," be construed to cover dynamic application data, such as a JSON object representing an order history item? Or is its meaning confined to information that more directly alters an application's programmatic logic or control flow?
  • A key evidentiary question will be one of technical function: does the accused system's process of receiving and displaying updated order history data constitute the claimed act of a "dialogue module" updating the application's "code," or is it the routine operation of an application rendering data provided by a server, a fundamental distinction in client-server architecture?
  • A significant legal question will concern the persuasive authority of prior judicial rulings. The court will need to determine the applicability of claim constructions from the Unikey case, which Plaintiff heavily relies upon, to the specific technology and factual context of the current dispute.