System Context
What is sensed, controlled, reported, maintained, or operated, and where does it physically happen?
Architecture selection starts when two plausible designs both seem reasonable. One puts more work at the edge, another centralizes it in the cloud, and a third adds gateways, brokers, or domain services. The right answer depends on the evidence, not on the nicest diagram.
Begin with the decision that will need defending later. Name the latency, reliability, cost, security, privacy, interoperability, and support constraints. Then use the selection framework to show why the chosen reference architecture fits those constraints better than the alternatives.
Architecture selection is not a vote for cloud, edge, gateway, or a favorite reference model. It is a review of what the system must do, where each flow belongs, what must keep working during disruption, and who can prove that the selected pattern is still valid.
Choose the simplest architecture pattern that satisfies the hardest flow, then record what the choice hides and which evidence would require another review.
A single IoT system can contain several different flows. Periodic telemetry can tolerate delay, but a bounded local-control flow may need to continue when upstream services are unavailable. Diagnostics may need operating records, while analytics can often run centrally after data is buffered. Treating every flow as if it has the same timing, autonomy, and ownership need is the usual source of weak architecture choices.
For example, a campus building system might publish zone temperature telemetry over MQTT every minute, keep actuator setpoints inside a BACnet or Modbus gateway, and send nightly energy summaries to a time-series service. Those flows can share device identity, timestamp conventions, and inventory records, but their placement proof is different: outage logs for local control, buffer-drain evidence for telemetry, schema checks for analytics, and support records for operations. The selection record should keep those proofs separate instead of hiding them under one pattern label. It should also name which deployment inventory changes would invalidate the comparison.
What is sensed, controlled, reported, maintained, or operated, and where does it physically happen?
Separate telemetry, commands, alerts, configuration, diagnostics, updates, and user workflows.
Decide what must continue if connectivity, cloud services, or operators are unavailable.
Name the owner, trace, outage drill, contract, or operating record that proves each placement choice.
The practical move is to split the system by flow before comparing patterns. Telemetry, alerts, commands, configuration, diagnostics, analytics, and user workflows can share infrastructure only where their timing, autonomy, data-quality, and ownership needs are compatible.
The hardest flow sets the minimum local capability. The simplest flow should not force every other flow into the same tier.
Use when devices can report upstream, local action is limited, and disconnected operation has low consequence.
Use when local buffering, protocol translation, filtering, aggregation, or site-level ownership is needed.
Use when bounded local decisions must continue without waiting for upstream connectivity or remote services.
Use when several sites, business units, or operational domains need local control plus shared coordination.
For a building monitoring system, local comfort control may need gateway or edge logic because occupants expect bounded local behavior during upstream outages. Environmental telemetry can be buffered and uploaded later. Maintenance diagnostics need device health, stale-reading, calibration, and replacement records. Analytics can often sit in central data services because historical aggregation does not block local operation.
Make the split visible in the record. For each flow, write the tolerated delay, local fallback, data-quality rule, interface owner, and validation artifact. That keeps a practical hybrid from becoming a vague compromise and gives reviewers a concrete way to challenge the placement.
The under-the-hood question is not whether the pattern name sounds correct. It is whether the system can produce evidence that the selected placement still meets response, autonomy, data-quality, ownership, and operations requirements.
The reference model lens should expose the dominant review risk. A compact layer lens may be enough for broad device, network, processing, and application responsibilities. A service-support lens helps when registration, routing, support services, data handling, and applications need clear boundaries. A view-based lens helps when function, information, deployment, and operations views need separate reviewers. A constrained-device lens helps when energy, topology, retry behavior, local storage, or maintenance interval drives the design.
A testable selection has pass/fail evidence for each boundary it claims. If gateway autonomy is the reason for the pattern, the outage drill should show which commands continue, which telemetry queues, how stale readings are labeled, and when upstream reconciliation occurs. If central analytics is the reason, the evidence should show accepted schemas, duplicate handling, late-arriving data policy, and the owner of model or dashboard changes.
Recheck the architecture when a new flow appears, response targets tighten, autonomy requirements change, data quality becomes harder, ownership moves, operations staffing changes, or the validation evidence no longer reflects deployment reality.
IoT architecture selection is a structured review of flows, constraints, owners, and evidence. Start with what the system must do when it is connected, disconnected, controlled locally, reporting upstream, being updated, or being operated in the field. Split flows with different needs, choose the simplest pattern that satisfies the hardest flow, and select the reference model lens that exposes the dominant review risk.
Select an IoT architecture from flow evidence, not preference: map the flows, split mixed requirements, validate the selected pattern with traces and drills, and record the condition that requires another review.