Source-derived document; reported behaviour, inference and evidence gaps are identified in the text.
Return to: Component cooperation
Component cooperation
In this document
Which internal components cooperate, what are their responsibilities, and what passes between them?
This view identifies the application modules that are explicitly evidenced as components and the database interactions documented for customer, order, and reporting work. E0001 E0002 The source supports implemented customer persistence, order creation and item persistence, and two report paths, while stock operations and several order and report operations remain stubs. E0002 The main menu exposes Customer, Orders, Stock, and Reports, but menu entries alone do not prove runtime calls between those modules. E0001 E0002
The database schema and framework implementations are absent, so table semantics, transaction completeness, report execution, and the exact behavior of generated SQL remain unresolved. E0001 E0002 The shared global-state component is included because the source describes application-level storage for customers, orders, items, stock, states, and report options, but no unproven cooperation edge is added for it. E0001 E0002
Diagram
Preparing diagram…
View Mermaid diagram source
flowchart LR
n10591f1eb7158c323ed8["D4_Cust"]
n2673709448e65ba98ae2["D4_Orders"]
n65a135cb361287c338d4["D4_Stock"]
n333108f80c43b4005ef6["D4_Report"]
n6472a11b7902b5a713c9["D4_Globals"]
n9172b9f85bb920151be6["stores7 database"]
n10591f1eb7158c323ed8 -->|"Customer persistence"| n9172b9f85bb920151be6
n2673709448e65ba98ae2 -->|"Order persistence"| n9172b9f85bb920151be6
n333108f80c43b4005ef6 -->|"Report data access"| n9172b9f85bb920151be6
Elements
D4_Cust
Kind: component
Basis: reported
Description: Customer management component implementing customer creation, query and browsing, update, deletion, validation, and database persistence. Deletion checks related orders before removing a customer, although the supplied query counts all orders rather than demonstrably active orders. E0001 E0002
Evidence: E0001 E0002
D4_Orders
Kind: component
Basis: reported
Description: Order component implementing customer selection or creation, order-header entry, line-item collection, order insertion, item insertion, transaction handling, customer-based order viewing, and invoice generation. Order update and deletion are exposed but explicitly unimplemented in the retained implementation. E0001 E0002
Evidence: E0001 E0002
D4_Stock
Kind: component
Basis: reported
Description: Stock-management component defining add, query, update, and delete handlers, but each retained handler reports that the operation is not implemented. Stock records can nevertheless be preloaded and selected during order processing. E0001 E0002
Evidence: E0001 E0002
D4_Report
Kind: component
Basis: reported
Description: Reporting component containing implemented mailing-label and accounts-receivable report logic. Backlog and stock-list report handlers are present as menu-level operations but report that they are not implemented. E0001 E0002
Evidence: E0001 E0002
D4_Globals
Kind: component
Basis: reported
Description: Shared application-state component that retrieves or initializes customer and order values, item, stock, and state arrays, counts, and the report output option through the application global map. Its lifecycle, persistence, and thread-safety behavior are not established. E0001 E0002
Evidence: E0001 E0002
stores7 database
Kind: component
Basis: reported
Description: Database endpoint selected by the application through the alias stores7; the retained source references customer, orders, items, stock, manufacturer, and state data, but does not include the database schema. E0001 E0002
Evidence: E0001 E0002
Relationships
Customer persistence
From: D4_Cust
To: stores7 database
Relation: calls
Basis: reported
Description: The customer component uses Java SQL operations and performs customer insertion, selection, update, deletion checks, and deletion against database data. E0001 E0002
Evidence: E0001 E0002
Information: Customer records and related-order counts. E0002
Mechanism: SQL statements executed through database connectivity classes. E0001 E0002
Control: Customer deletion is blocked when the related-order count is nonzero, although the intended meaning of “active” is unresolved. E0002
Evidence type: Source-described implementation. E0002
Order persistence
From: D4_Orders
To: stores7 database
Relation: calls
Basis: reported
Description: The order component begins a transaction, inserts an order, obtains a serial number, inserts item rows, and commits; rollback is attempted when order or item insertion reports failure. E0002
Evidence: E0001 E0002
Information: Order headers, generated order identifiers, and line-item data. E0002
Mechanism: Database transaction and SQL persistence operations. E0002
Control: Commit and rollback handling are present in the component, but the absent framework code prevents confirmation that every failure path is covered. E0002
Evidence type: Source-described implementation with framework limitation. E0002
Report data access
From: D4_Report
To: stores7 database
Relation: calls
Basis: reported
Description: The reporting component contains database-backed report logic, including customer predicates used for mailing-label output and accounts-receivable reporting. E0002
Evidence: E0002
Information: Customer and accounts-receivable data used to produce report rows. E0002
Mechanism: SQL query construction and report-output processing. E0002
Control: Output mode is selected through the shared print_option values for file, printer, or screen, while the report framework lifecycle is not available for independent confirmation. E0002
Evidence type: Source-described implementation with missing framework evidence. E0002
Gaps
The supplied evidence does not establish direct runtime calls between D4_Main and the operational modules, or between D4_Cust, D4_Orders, D4_Stock, D4_Report, and D4_Globals; menu registration and shared-state definitions are insufficient to assert those relationships. E0001 E0002
The database schema is missing, so the meanings of order status, active orders, stock relationships, manufacturer data, state data, and report predicates remain uncertain. E0001 E0002 The customer-deletion rule is therefore unresolved because the implementation counts all related orders while the message refers to active orders. E0002
The framework implementations are missing, preventing firm conclusions about SQL escaping in Construct, transaction rollback coverage, report lifecycle completion, and the behavior of shared global state. E0001 E0002 The evidence also conflicts with broad capability descriptions: order update/delete, stock CRUD, backlog reporting, and stock-list reporting are documented or exposed but not implemented in the retained implementations. E0002 Further source for the missing interfaces, framework classes, schema, and report implementation is required. E0002
Recovery limitations
- Some identified concepts have no supported connection.
Sources
- E0001 — SHA256
26c6795c3bc4cc1018c05a3a14a9e8bfd1a7ac99525d062262c695930de1f2d0 - E0002 — SHA256
94dd964106462ec595f965ac2acdca80c48d31234c90d9f93ef18c5d0f26cf01
Harten documentation of the Informix 4GL and Java source repository, from the retained 17 October 2026 export. The exact upstream revision analysed is not established. Source findings do not establish runtime behaviour or equivalence between the implementations.
Evidence identifiers are retained for traceability. The underlying analysis records are not included in this public edition; credential values are redacted. About this case study.