DCT
2:24-cv-00652
S3G Technology LLC v. Jack In Box Inc
I. Executive Summary and Procedural Information
- Parties & Counsel:- Plaintiff: S3G Technology LLC (California)
- Defendant: JACK IN THE BOX, INC. (Delaware)
- Plaintiff’s Counsel: PARKER, BUNT & AINSWORTH, P.C.
 
- Case Identification: 2:24-cv-00652, E.D. Tex., 08/09/2024
- Venue Allegations: Venue is alleged to be proper in the Eastern District of Texas because Defendant is subject to personal jurisdiction and has a regular and established place of business in the district, specifically at an address in Frisco, Texas.
- Core Dispute: Plaintiff alleges that Defendant’s mobile ordering application and associated backend systems infringe four patents related to methods for efficiently modifying software applications on remote devices using translatable "dialogue modules" instead of full executable updates.
- Technical Context: The technology addresses the challenge of updating client-server applications, particularly in the mobile space, by transmitting small, lightweight data modules to alter application behavior, thereby conserving network bandwidth and improving resource efficiency.
- Key Procedural History: The complaint references prior litigation involving the asserted patents, specifically noting that a court in the Eastern District of Texas has previously construed key claim terms, including "computer-executable instructions," "code," and "dialogue module." The complaint also states that during prosecution, a patent examiner found the claimed inventions to be distinguishable from the prior art, and that claims in two of the asserted patents were allowed over subject matter eligibility contentions.
Case Timeline
| Date | Event | 
|---|---|
| 2009-07-23 | Earliest Patent Priority Date (’124, ’468, ’082, ’995 Patents) | 
| 2018-04-10 | U.S. Patent No. 9,940,124 Issued | 
| 2020-11-10 | U.S. Patent No. 10,831,468 Issued | 
| 2021-12-28 | U.S. Patent No. 11,210,082 Issued | 
| 2023-05-30 | U.S. Patent No. 11,662,995 Issued | 
| 2024-07-16 | Accused Android App Update Date | 
| 2024-07-18 | Accused iOS App Update Date | 
| 2024-08-09 | 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"
- Issued: April 10, 2018
The Invention Explained
- Problem Addressed: The patent’s background section describes the technical problem of efficiently distributing updated software applications to a large number of remote devices. Transmitting a newly compiled, full software application is often difficult and slow, particularly over wireless networks with limited bandwidth (Compl. ¶¶15-16; '124 Patent, col. 2:39-56).
- The Patented Solution: The invention proposes a three-entity system comprising a terminal machine (e.g., a mobile device), a service provider machine (e.g., a server), and an update server machine (Compl. ¶17). As illustrated in FIG. 1 of the patent, the update server sends small “dialogue modules” containing “code” to the other machines (Compl. ¶17, p. 7). This “code” is defined as information that must be translated by the application before it can be executed, distinct from the application's underlying computer-executable instructions, which are not replaced (Compl. ¶18; '124 Patent, col. 4:30-40). By sending only these small modules to modify application behavior, the system avoids transmitting large executable files.
- Technical Importance: This architectural approach was designed to reduce network bandwidth utilization and improve the efficiency of modifying applications running on remote devices (Compl. ¶¶26-27).
Key Claims at a Glance
- The complaint asserts at least independent claim 1 (Compl. ¶33).
- The essential elements of claim 1, a method, include:- Displaying a first prompt by running a terminal application, which comprises first computer-executable instructions and first code.
- Accepting a first data entry associated with the prompt.
- Communicating information from the terminal machine to a service provider machine running a provider application, which comprises second computer-executable instructions and second code.
- Storing at least a portion of the information in memory.
- Receiving, at the terminal machine, a terminal dialogue module 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, and first updated code must comprise intermediate code.
 
- The complaint does not explicitly reserve the right to assert dependent claims for this patent.
U.S. Patent No. 10,831,468 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"
- Issued: November 10, 2020
The Invention Explained
- Problem Addressed: The patent addresses the same technical challenges as the ’124 Patent: the inefficiency and difficulty of distributing large software updates to remote, networked devices, especially over bandwidth-constrained wireless networks (Compl. ¶¶14-16; ’468 Patent, col. 2:25-65).
- The Patented Solution: The patented solution is a method for conducting a dialogue between a terminal machine and a service provider machine. The terminal application, comprising executable instructions and translatable "first code," receives a "third code" from an update server. This third code replaces or supplements a portion of the first code, but not all of it, to produce an updated code that adapts the application for a modified dialogue sequence ('468 Patent, Abstract). This allows for targeted updates without replacing the entire application. FIG. 2 of the patent illustrates the structure of an application comprising directly executable instructions (224) and translatable code (222) (Compl. ¶18, p. 7).
- Technical Importance: The method provides a way to modify remote software functionality that is efficient in its use of network resources, which is critical for systems with many distributed client devices (Compl. ¶26).
Key Claims at a Glance
- The complaint asserts at least independent claim 1 (Compl. ¶52).
- The essential elements of claim 1, a method, include:- Displaying a first prompt via a terminal application comprising first computer-executable instructions and first code, where the first code comprises information to be translated.
- Receiving a first data entry.
- Communicating information to a provider application comprising second computer-executable instructions and second code.
- Receiving, at the terminal machine, a third code that replaces or supplements a portion (but not all) of the first code to produce first updated code.
- The first updated code adapts the terminal application to conduct a modified dialogue sequence.
- The third code is received after the terminal machine satisfies a trigger condition and is received from an update server machine separate from the terminal and service provider machines.
 
- The complaint does not explicitly reserve the right to assert dependent claims for this patent.
U.S. Patent No. 11,210,082 - "Modification of Terminal and Service Provider Machines Using an Update Server Machine"
- Issued: December 28, 2021
- Technology Synopsis: This patent claims a method of conducting a dialogue sequence focused on the service provider machine. The provider application receives information from a user, and then receives a "second code" that supplements its existing code to adapt the application for a modified dialogue. The patent further claims sending a "third code" to a recipient (e.g., the terminal machine) to facilitate the recipient's portion of the modified dialogue (Compl. ¶¶79, 82-83).
- Asserted Claims: At least independent claim 1 is asserted (Compl. ¶77).
- Accused Features: The accused functionality involves the Defendant's server application (a .NET application) receiving information (e.g., a new favorite location) from a user's device. This information, allegedly formatted as JSON, is claimed to be the "second code" that updates the server application's code and adapts it to a new dialogue sequence (e.g., displaying the updated list of favorite locations) (Compl. ¶¶79, 82).
U.S. Patent No. 11,662,995 - "Network Efficient Location-Based Dialogue Sequence Using Virtual Processor"
- Issued: May 30, 2023
- Technology Synopsis: This patent claims a method for conducting a dialogue sequence between at least two user devices, facilitated by one or more provider applications. A provider application receives "second code" from a first user device without requesting it, which supplements the provider application's code. After determining that a second user device satisfies certain criteria, the provider sends it "third code," also without a request, to facilitate the second part of the dialogue (Compl. ¶¶97, 100, 104).
- Asserted Claims: At least independent claim 1 is asserted (Compl. ¶96).
- Accused Features: The accused functionality is a user saving a favorite location on the Defendant's website (the first user device), which sends code to the Defendant's server. The server then sends code representing the new item to the user's mobile app (the second user device), facilitating a continuous dialogue (e.g., a synchronized list of favorite locations) across devices without the server or app explicitly requesting the update code (Compl. ¶¶100, 104).
III. The Accused Instrumentality
- Product Identification: The accused instrumentalities are the "Jack in the Box" mobile applications for Android and iOS (the "Defendant app") and the associated backend computing systems, including servers and software, that support the app's functionality (the "Accused System") (Compl. ¶¶8-9).
- Functionality and Market Context: The complaint focuses on the technical functionality that allows users to manage personalized data, such as "favorite location list items," "Saved Delivery Addresses," "Favorite Orders," and "Recent Orders" (Compl. ¶¶35, 54, fn. 8). This functionality requires communication between the Defendant app on a user's device (identified as the "terminal machine") and Defendant's backend servers (identified as the "service provider machine") (Compl. ¶37). The complaint alleges that the Android app's bytecode constitutes "code," while the Android Runtime (ART) comprises "computer executable instructions" (Compl. ¶35). Similarly, it alleges the backend .NET application program constitutes "code" while its execution environment (e.g., the Common Language Runtime) comprises "computer-executable instructions" (Compl. ¶37). The complaint alleges Defendant derives a significant portion of its revenue from services provided through these applications (Compl. ¶4).
IV. Analysis of Infringement Allegations
U.S. Patent No. 9,940,124 Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| a method comprising 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 | A user is prompted with a list of favorite location items within the Defendant app. The app allegedly consists of computer-executable instructions (Android Runtime) and first code (the app's bytecode). | ¶35 | col. 7:56-61 | 
| accepting a first data entry at the terminal machine, wherein the first data entry is associated with the first prompt | A user selects an action, such as deleting a favorite location item from the displayed list. | ¶36 | col. 8:1-3 | 
| communicating information associated with the first data entry from the terminal machine to the service provider machine... [which] uses a provider application comprising second computer-executable instructions and second code | The information regarding the deleted location is communicated to the Defendant's server, which runs a .NET application alleged to comprise executable instructions (CLR) and second code (.NET program). | ¶37 | col. 8:13-23 | 
| 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 Defendant app on the user's device receives information from the server (e.g., in JSON format) representing an updated list of favorite locations. This is alleged to be a "terminal dialogue module" that updates the app's bytecode. | ¶39 | col. 8:63-9:3 | 
| 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 | The updated code allows the user to access and interact with a new list of favorite location items, which constitutes the second prompt in a modified dialogue. | ¶39 | col. 9:3-9 | 
| wherein at least one of the first code, the second code, and the first updated code comprise intermediate code | The app's bytecode is alleged to be intermediate code. | ¶39 | col. 4:26-29 | 
- Identified Points of Contention:- Scope Questions: Does a standard data object like JSON, transmitted from a server to an app to update a list, meet the structural and functional requirements of a "terminal dialogue module" as defined in the patent and construed in prior litigation? A central question may be whether this data transfer constitutes "updating... code" or is merely the data upon which existing code operates.
- Technical Questions: What evidence does the complaint provide that the app's bytecode and the server's .NET program are "information that must be translated" rather than being directly executed by a virtual machine? While this aligns with a general understanding of these technologies, the specific implementation will be subject to discovery and technical analysis.
 
U.S. Patent No. 10,831,468 Infringement Allegations
| Claim Element (from Independent Claim 1) | Alleged Infringing Functionality | Complaint Citation | Patent Citation | 
|---|---|---|---|
| a method comprising displaying a first prompt on a terminal display of the terminal machine...by running a terminal application comprising first computer-executable instructions and first code..., wherein the first code comprises information to be translated | A user is prompted with a list of favorite location items in the Defendant app. The app's bytecode is alleged to be the "first code" comprising "information to be translated." | ¶54 | col. 7:53-60 | 
| receiving, at the terminal machine, third code that replaces or supplements at least a portion but not all of the first code to produce first updated code | The app receives data (e.g., in JSON format) from the server that adds a new favorite location. This is alleged to be the "third code" that supplements a portion, but not all, of the app's existing bytecode. | ¶57 | col. 8:36-42 | 
| wherein the first updated code adapts the terminal application to conduct a modified dialogue sequence | The updated code allows the user to access the new list of favorite items, which is alleged to be the modified dialogue sequence. | ¶57 | col. 8:43-47 | 
| wherein...the third code is received from an update server machine that is separate and distinct from the terminal machine...and the service provider machine | The complaint alleges the third code is received from an "update server machine," providing as an example "an Android, iOS or other smart phone or other computing device accessing the Accused System." | ¶60 | col. 4:11-17 | 
| wherein the terminal machine and the service provider machine include different types of processors, whereby the first computer-executable instructions are not able to be executed on the service provider machine and the second...are not able to be executed on the terminal machine | The complaint alleges the mobile device uses an ARM-based processor while the server uses an x86 processor, and that the respective executable instructions are not cross-compatible. | ¶61 | col. 12:47-59 | 
- Identified Points of Contention:- Scope Questions: Does the architecture described in the complaint satisfy the "update server machine that is separate and distinct" limitation? The complaint's example of another user device acting as the update server (Compl. ¶60) raises a question of whether this configuration maps to the three-entity system disclosed in the patent's specification (e.g., '468 Patent, FIG. 1).
- Technical Questions: As with the ’124 Patent, a key question will be whether the receipt of a JSON data payload constitutes receiving "third code that replaces or supplements...first code" in the technical sense required by the claim, versus simply receiving data to be processed by existing, unmodified code.
 
V. Key Claim Terms for Construction
- The Term: "code" - Context and Importance: This term is foundational to the patents' alleged point of novelty, distinguishing the invention from methods that update entire executable files. The complaint asserts this term was previously construed to mean "information that must be translated before it can be executed on a processor" (Compl. ¶18, fn. 6). The dispute will likely focus on whether the accused bytecode and .NET programs meet this definition and whether JSON data payloads can be considered "code."
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The general use of "code" in the software field can be very broad.
- Evidence for a Narrower Interpretation: The specification explicitly states, "[t]he code represents at least some information that must be translated by the software application before it can be implemented on the machine processor" (’468 Patent, col. 4:26-30). This provides a specific, functional definition within the patent itself.
 
 
- The Term: "dialogue module" - Context and Importance: The infringement theory depends on casting the JSON data exchanged between the app and server as a "dialogue module." Practitioners may focus on this term because the Defendant will likely argue that a simple data object lacks the structural characteristics of a "module." The complaint highlights a prior court ruling that the term refers to "a particular type of structure rather than to any structure for performing a function" (Compl. ¶22).
- Intrinsic Evidence for Interpretation:- Evidence for a Broader Interpretation: The specification states a "dialogue module" can "contain code or other data and can be communicated" (Compl. ¶22), suggesting it can be a data container.
- Evidence for a Narrower Interpretation: The emphasis on a "particular type of structure" from prior litigation, combined with figures in the patent showing the module as a distinct component (e.g., '124 Patent, FIG. 2, item 202), could support an argument that it must be more than a mere data payload.
 
 
VI. Other Allegations
- Indirect Infringement: The complaint alleges inducement by, inter alia, promoting and instructing customers to download and use the Defendant app with knowledge that its operation would infringe the patents (Compl. ¶¶45, 70, 89, 110). It also alleges contributory infringement on the basis that the accused instrumentalities are not staple articles of commerce and are especially made or adapted for infringement (Compl. ¶¶46, 71, 90, 111).
- Willful Infringement: Willfulness is alleged based on Defendant's knowledge of the patents and infringement, at least as of the filing date of the complaint (Compl. ¶¶32, 51, 76, 95). The prayer for relief explicitly requests a finding of willfulness (Compl. p. 41, ¶C).
VII. Analyst’s Conclusion: Key Questions for the Case
- A core issue will be one of architectural mapping: Can a standard two-tier, client-server system, where a mobile app communicates with a backend, be mapped onto the patents' more specific three-entity architecture requiring a "terminal machine," "service provider machine," and a "separate and distinct" "update server machine"? The plaintiff's characterization of these components will be a central point of contention.
- A key evidentiary question will be one of definitional scope: Does the transmission of a standard data-interchange format object (e.g., JSON) from a server to an application to update a user interface constitute the receipt of a structured "dialogue module" that "updates...code," as the term "code" has been narrowly construed in prior litigation? The case will likely turn on whether this common software interaction falls within the specific, and potentially limited, scope of the patented method.