Enterprise AI Project Wiki · Requirements and business scenarios
Interface requirement
Also calledInterface requirements · Interface constraint · External interface requirement · System interface requirement
An interface requirement is a normative statement of an interaction that must or must not occur between entities on opposite sides of a boundary. It identifies who exchanges what with whom under which conditions, how both sides interpret, protect, acknowledge, and handle failure, and what jointly verifiable, traceable, and change-controlled result determines conformity.
An interface requirement governs whether both sides of a boundary can work together, not merely an API address
Interfaces occur where responsibility, ownership, or implementation boundaries meet. A procurement service sending an application and an ERP receiving it describes only the visible flow. The requirements must also say which party initiates in which state, what business fact the message represents, how receipt and acceptance differ, how duplicate or out-of-order delivery is handled, what each side preserves during an outage, and who owns the next decision.
NASA treats interface requirements as internal or external functional, physical, and performance requirements developed during technical requirements definition, with compatibility maintained by the interfacing parties. In enterprise software, the boundary can be a synchronous API, event stream, file, shared data source, sign-on service, device, user operation, or human handoff. Interface must not silently mean REST or JSON.
A requirement states the necessary result and constraint without prematurely fixing every design choice. “The receiver shall uniquely identify the application, its version, and the sending organisation” is a requirement. A URL, field name, or broker can remain a design choice unless an approved interoperability constraint, external standard, or existing-system contract makes it mandatory.
Build an interface inventory before deciding how deeply each boundary must be specified
Project interfaces include more than backend APIs: file exchanges, messages, identity, human handoffs, and operational channels also cross boundaries. Listing sender, receiver, business object, and owner reveals which interfaces this phase builds, which depend on a customer or supplier, and which changes require both sides.
External systems and third-party services
Existing ERP, CRM, identity, payment, logistics, messaging, model, OCR, search, or regulatory platforms. Record each party, service region, ownership, degree of control, and contractual dependency.
Internal systems and components
Business applications, workflow, rules, databases, queues, model orchestration, knowledge services, and audit services. Even one organisation needs a contract where elements can change or deploy independently.
Data and file exchange
Bulk import and export, object storage, database views, reports, spreadsheets, and archive packages. Define naming, encoding, schema, integrity, duplicates, delivery windows, and acknowledgements.
Messages and events
Publish-subscribe, queues, webhooks, notifications, and streams. Define the event fact, producer, consumers, ordering, delivery semantics, backlog, replay, and dead-letter handling.
Device and physical interfaces
Sensors, terminals, scanners, network ports, and mechanical, electrical, or environmental connections. Units, tolerances, coordinates, loads, power, misconnection prevention, and safety can matter more than fields.
Human-system interfaces
Operators, maintainers, or business users receive information, supply decisions, confirm consequential actions, and recover from faults. This entry establishes interface obligations, not the complete interaction design or usability study.
Human and team handoffs
AI escalation, on-call escalation, supplier support, and business approval cross responsibility boundaries too. Define the trigger, context, owner, receipt acknowledgement, and safe state when nobody accepts.
- Are both sides named and owned?
Do not write only “connect to the customer system.” Identify the system, service, organisation, role, and current accountable contact.
Check the system context, interface register, and responsibility matrix.
- Have all operating modes been considered?
Normal, peak, maintenance, degraded, disconnected, recovery, migration, and retirement modes may use different paths.
Check the operational concept, exception scenarios, and retirement plan.
- Have implicit interfaces been found?
Copy-and-paste work, shared accounts, temporary spreadsheets, email attachments, and operations scripts are often real dependencies missing from formal design.
Check observation, logs, operating procedures, and support history.
A complete interface contract coordinates several dimensions at once
Matching field names proves only that both sides can parse some data. Working together also requires shared business meaning, identity, timing, error, and recovery behaviour. An interface contract is therefore a bilateral responsibility, not a provider's technical note.
Parties, direction, and ownership
Identify producer, consumer, caller, responder, and authoritative source; assign environment, credential, change-notice, support, and incident decisions. Specify each direction separately.
Trigger, precondition, and mode
State whether a business action, schedule, state transition, operator action, or external event initiates exchange and in which state, region, tenant, and maintenance mode it is permitted.
Business semantics and data definition
Define what each object, field, event, enumeration, null, default, unit, precision, timezone, identifier, and provenance value means and which system has interpretive authority.
Representation, transport, and physical characteristics
Specify format, encoding, schema, media type, protocol, discovery, connection, compression, signature, dimensions, frequency, bandwidth, units, and tolerances only where interoperability requires them.
Interaction sequence and state transition
Define request, response, callback, acknowledgement, cancellation, compensation, and human steps; say which states can repeat, be skipped, or reverse, and who retains correlation.
Performance and capacity bounds
Attach response, event latency, throughput, batch size, concurrency, backlog, timeout, and rate limits to a defined workload and environment and trace them to performance requirements.
Identity, security, and privacy
Define how system and user identities are conveyed and verified, where authorization is enforced, and how data is minimized, encrypted, isolated, logged, and retained. Errors must not leak sensitive internals.
Success, rejection, and failure semantics
Distinguish received, accepted, processing, completed, partially completed, retryable, and permanent failure. Stable errors must let the consumer choose a deterministic action.
Compatibility, version, and retirement
Define contract and schema versioning, the effect of additions and removals on older consumers, support windows, deprecation notice, migration, overlap, and shutdown approval.
Evidence, observability, and support
Define correlation identifiers, logs, metrics, receipts, and time sources used across parties; assign on-call ownership, escalation, evidence retention, and protection.
What a verifiable interface requirement records
“Integrate with ERP” cannot be estimated or accepted directly. A verifiable requirement says which event causes one party to send which versioned object to another, how receipt is confirmed, and which state each side preserves after failure or timeout. That makes a contract, data, or responsibility failure identifiable.
Stable requirement and interface identifiers
Use a requirement ID independent of current field names, and identify the interface, both entities, direction, internal or external status, and system level.
Condition, trigger, and normative subject
State the mode, state, role, location, or time condition and the single obligation assigned to one side. Separate obligations that need independent verification.
Exchange object and semantic reference
Identify information, event, command, file, energy, or material and cite controlled dictionaries, schemas, units, tolerances, or rule versions. One sample message is not the authority.
Interaction and state result
Specify observable results of sending, receipt, acknowledgement, processing, and final state, including correlation, ordering, atomicity, consistency, and forbidden side effects.
Failure and recovery responsibility
Cover invalid, unauthorized, duplicate, out-of-order, timed-out, throttled, unavailable, and partial outcomes, including retry, compensation, quarantine, human handoff, and reconciliation ownership.
Quality and protection conditions
Trace performance, capacity, availability, integrity, confidentiality, privacy, safety, and audit constraints and define measurement boundaries and exclusions.
Version and compatibility policy
Record the current contract version, compatibility envelope, consumer inventory, deprecation and migration rules, overlap period, and destructive-change approval.
Source, allocation, and bilateral approval
Trace scenarios, system requirements, risks, law, or external constraints; identify provider and consumer owners, status, decisions, and evidence.
Verification method and evidence
Specify inspection, analysis, demonstration, or test plus simulators, contract tests, integration environment, representative data, fault injection, verdict, and evidence location.
Derive interface requirements from system boundaries and actual interactions
Existing documentation often records an ideal call while real operation includes manual entry, overnight files, redelivery, and legacy compatibility. Follow a business object through its lifecycle and compare logs, incidents, and work on both sides to find interactions carrying responsibility outside the document.
Map the system context and responsibility boundaries
Use business scenarios, the operational concept, and the system boundary to identify external entities, independently changing internal elements, and people. Do not assume the current API catalogue contains every interaction.
Trace information, control, and state end to end
For normal and exception paths, find where an input originates, where it becomes authoritative, who consumes and acknowledges it, and what record remains at the end.
Check actual systems and constraints
Review supplier specifications, schemas, rate limits, networks, identity, licences, maintenance windows, and support commitments, then probe a sandbox where possible to compare documentation with behaviour.
Interview both sides separately
Ask business, development, security, data, operations, and suppliers to explain fields, states, failures, and responsibilities. Record conflicting meanings, assumptions, and unresolved decisions.
Establish semantics and the failure model
Agree objects, identifiers, states, units, time, and success before choosing transport. Enumerate invalid, unauthorized, missing, conflicting, duplicate, late, and unavailable conditions.
Allocate without losing shared responsibility
State what the provider guarantees, how the consumer must use the interface, and what a platform or network supplies. Do not phrase an external dependency as a result one party can guarantee alone.
Walk through examples and counterexamples
Have both parties interpret the same normal, boundary, exception, and old-version cases. Samples expose ambiguity, but the approved rules and schema remain normative.
Baseline both sides and the change process
Approve version, owners, open parameters, verification environment, and decision record before implementation; subject later changes on either side to impact analysis.
Retries, duplicates, ordering, and partial failure must be explicit at the interface
A network timeout means the sender did not receive an answer; it does not prove the receiver did nothing. Blind retry can duplicate an order, payment, or message. Both sides define request identity, retry conditions, final-state lookup, and compensation responsibility instead of assuming the other side handles it.
Across a boundary, a missing response does not reveal whether the operation executed: the request may not have arrived, or it may have completed while the response was lost. IETF HTTP semantics therefore distinguish safe, idempotent, and non-idempotent operations. A client must not automatically retry a non-idempotent request without a business guarantee or a way to establish the previous outcome. Messages, files, and human handoffs have the same uncertainty.
Idempotency does not mean every response is identical. It means repeating the same intent does not create an additional intended business effect. Specify who generates the key, its scope and retention, the duplicate response, races between concurrent duplicates, and how to query or compensate for a partial original operation.
Errors must enable the next action. Beyond transport status, distinguish invalid syntax, failed identity, insufficient authority, business rejection, conflict, throttling, temporary outage, permanent failure, and unknown outcome. Do so without returning stacks, credentials, personal data, or exploitable internal structure.
Timeout is not cancellation
A caller ceasing to wait does not stop receiver processing. If cancellation exists, define its subject, cutoff, acknowledgement, and compensation for effects already committed.
Receipt is not business completion
A queue acknowledgement, successful HTTP response, or file arrival proves one stage only. Distinguish received, validated, accepted, processing, completed, and failed.
Ordering cannot be assumed
State whether order is global, partitioned, or per entity; define detection of stale events, gaps, and late arrival, plus replay behaviour.
Partial success must reconcile
Batch and multi-step operations need per-item results and common correlation. Specify continuation, failed-item resubmission, whole-operation rollback, or human decision.
Backlog and backpressure need a safe result
At queue, connection, rate, or resource limits, specify queuing, rejection, degradation, or deferral. Never silently discard work or create an unbounded retry storm.
Interface security requirements begin with trust boundaries and business impact
Authentication proves a credential, not that it may view this customer, change this object, or export these fields in bulk. Continue from the credential to business object and action: least privilege, sensitive data, audit, revocation, and the real consequence of compromise.
- Does each hop establish the other party?
Define how user, service, device, and organisation identities are established, bound, conveyed, verified, and revoked. Internal network location is not identity.
Check identity flows, credential lifecycle, and service-to-service authentication tests.
- Does authorization match the business object?
Define which tenant, object, fields, and actions a subject can use. A downstream service must not trust an upstream role string without verification.
Check resource, action, and cross-tenant negative tests.
- Is only necessary data exchanged?
Review each field for purpose, sensitivity, masking, encryption, region, cache, log, retention, and deletion. Debugging convenience is not an automatic purpose.
Check data flows, dictionaries, privacy review, and logging.
- Are input and output treated as untrusted?
Constrain size, type, structure, rate, and executable content; verify signatures and origin; address injection, parser differences, malicious files, and resource exhaustion.
Check schema validation, fuzzing, throttling, and content-security tests.
- Can credentials rotate and become invalid?
Define issuer, audience, scope, lifetime, storage, rotation, revocation, compromise response, and clock skew. Tokens and secrets must not enter ordinary logs or errors.
Check credential inventory, rotation exercise, and revocation test.
- Can incidents correlate without excessive disclosure?
Use correlation identifiers, protected logs, and a common time basis across parties. Public responses expose stable consumer information; detailed diagnostics stay in controlled channels.
Check responses, logs, and alerts in normal and adversarial cases.
Constructed procurement-service to ERP interface requirements
This customer-independent procurement-to-ERP interaction shows both parties agreeing object identity, version, acknowledgement, and failure recovery. Names, fields, and times are placeholders. The important distinction is that transmission, business acceptance, and final persistence are not the same result.
IF-101: authority boundary for application creation
When an authorized applicant submits and the procurement service reaches ‘awaiting ERP receipt,’ it shall send a creation intent containing unique application ID, tenant ID, submitted revision, and approved schema V1. The ERP remains authoritative for the formal document number and financial receipt state.
IF-102: semantics and time
The bilateral dictionary shall define currency unit and precision, tax meaning, supplier identity, organisational timezone, date boundary, nulls, and enumerations. Sent, received, and business-effective time are recorded separately rather than inferred from local server time.
IF-103: identity and least privilege
The procurement service uses an approved service identity limited to creation for the specified tenant; the ERP independently verifies audience, scope, and object authority. User identity and approval evidence are minimized, and neither side logs tokens or sensitive material ordinarily.
IF-104: duplicate and unknown outcome
Each creation intent carries key I1 generated by the procurement service. Repeating the same intent within retention R1 must not create a second formal document. After timeout, the service queries I1 and retries only when the contract establishes no prior execution.
IF-105: rejection and failure
The ERP distinguishes invalid schema, unauthorized, business rejection, conflict, throttling, temporary outage, and unknown outcome with a stable type, correlation ID, and actionable handling. The procurement service must not turn unknown into failed and allow unconditional re-creation.
IF-106: status return and ordering
ERP status events include application ID, document number, event ID, object revision, and business time. The procurement service detects duplicates and stale events by object revision; gaps enter reconciliation rather than allowing an old late event to overwrite current state.
IF-107: performance and capacity pending approval
Message size S1, normal and peak workloads W1/W2, response T1, rate Q1, backlog B1, and maintenance windows require approval from observed ERP capability, business tolerance, and capacity evidence and must trace to a performance requirement.
IF-108: version and change
A proposed change to required fields, semantics, authorization, errors, rate, or states must notify both owners and complete consumer impact, contract, and integration regression. A breaking version needs an overlap period, migration evidence, and approval to stop the old version.
Joint verification, release, and continuing governance of an interface
A one-sided mock test does not prove that two production systems can operate together. Both sides use the same contract and representative data for positive, exceptional, and recovery tests, coordinate version, capacity, and rollback at release, and retain enough correlation to diagnose incidents across the boundary.
Perform a static consistency review
Both parties review names, meaning, direction, units, timezones, schema, states, errors, identity, capacity, version, and responsibility. Close TBDs or assign an owner and deadline.
Verify early with contracts and simulators
Provider and consumer use machine-readable schemas, examples, stubs, and contract tests so field and state differences appear before a complete integration environment exists.
Integrate in representative conditions
Use approved versions, credentials, networks, data scale, and time configuration; cover normal, boundary, failure, concurrent, and older-consumer cases with logs and correlation from both sides.
Create faults and uncertain outcomes
Exercise timeout, disconnection, duplicate, disorder, throttle, invalid credential, partial completion, dependency recovery, and replay. Confirm no unauthorized or duplicate business effect and no irreconcilable state.
Verify reconciliation, capacity, and security
Compare bilateral records with authoritative state, load-test against performance requirements, and test identity, authorization, leakage, malicious input, and audit evidence.
Record acceptance against the interface version
Record the requirements baseline, build or service versions on both sides, environment, data, configuration, results, open deviations, and bilateral confirmation. One successful call is not interface acceptance.
Observe and rehearse after release
Monitor success, rejection, latency, backlog, duplicates, unknown outcomes, reconciliation differences, and version adoption. Maintain escalation, credential rotation, dependency-outage, and manual fallback paths.
Both sides assess interface changes; provider compatibility alone is insufficient
A provider may call a new field additive while a strict consumer fails on it. A changed error meaning or default order can alter business outcomes without changing the schema. Compatibility is judged against actual use, semantics, and operational risk on both sides—not merely whether the endpoint returns 200.
Identify every provider and consumer
Discovery can assist, but register batch jobs, scripts, reports, partners, mobile clients, old versions, and manual work that may be invisible at runtime.
Judge breaking change by semantics
An optional field can still alter signatures, strict parsers, or decisions. Enumeration, default, precision, order, state, error, and authorization changes can break behaviour without changing shape.
Assess technical, business, and operational impact
Consider migration, historical replay, performance, security, privacy, monitoring, support, training, supplier terms, and continuity after retiring the old interface.
Manage deprecation, migration, and shutdown
State when use ceases to be preferred, when support ends, how consumers discover notice, the destination, proof of migration, and who approves extension.
Preserve bilateral decisions and configuration status
An interface working group or accountable owners record approval, rejection, assumptions, deviations, and evidence. One party must not silently alter a jointly controlled interface.
Enterprise AI interface requirements cover models, knowledge, tools, and human boundaries
Enterprise AI crosses several trust boundaries: internal material enters retrieval, retrieved content enters a model, the model proposes tool actions, and failures route to a person. Each crossing can change data authority, state, and responsibility, so a model request schema alone is not a complete interface.
Model-service interface
Specify provider, region, model and capability identifier, input and output types, context limits, streaming events, stop reasons, errors, quota, timeout, content retention, and version changes. A marketing model name is not a stable contract.
Knowledge and retrieval interface
Specify source objects, accessing subject, tenant and document permissions, content version, freshness, deletion propagation, citation identifiers, insufficient retrieval, and conflict states. Generation must not bypass source authorization.
Tool-execution interface
Declare each allowed action, parameter schema, object authorization, preview and confirmation, idempotency, timeout, partial completion, compensation, and audit. Model-suggested arguments confer no execution authority.
JSON-shaped output is still untrusted input
Braces and field names do not prove that types, enumerations, evidence, or business meaning are valid. Define required values, nulls, permitted ranges, validation failure, and degraded results, and have the consumer validate again. Failed output must not flow directly into records or tool parameters.
Safety and policy interface
Define where input and output checks occur; how allow, refuse, and require-human states are returned; and how policy version and evidence are recorded. A policy-system failure is not the same as no business result.
Human-handoff interface
Transfer task, verified facts, sources, unknowns, system actions, risk, user identity, and correlated records. Specify recipient, acknowledgement time, and the safe stop or holding state if nobody accepts.
Supplier change and degradation
Model, embedding, region, quota, price, content policy, or interface version changes trigger compatibility, quality, safety, performance, and cost regression. A backup provider needs more than field compatibility.
Privacy and prompt-injection boundary
Minimize data crossing model, knowledge, and tool boundaries by purpose and authority. Treat retrieved content and model output as untrusted input; embedded instructions cannot grant tool authority or reveal other context.
End-to-end correlation and actionable failure
Use protected identifiers across retrieval, model, tool, policy, and human steps. Distinguish missing evidence, model refusal, supplier failure, tool failure, and business rejection so operations can take the right action.
Interface requirements and neighbouring concepts
An API specification, data model, integration design, and service level may each describe part of an interface, but none alone is the full requirement. Interface requirements govern how both sides fulfil business responsibility and connect technical structure, operating quality, and change control.
| Concept | Boundary from an interface requirement |
|---|---|
| Interface | The boundary or connection through which entities interact. An interface requirement normatively states the behaviour, physical characteristics, information, performance, and responsibilities the boundary must satisfy. |
| API | One programmatic interface through which software offers capabilities. Interface requirements also cover messages, files, data, devices, users, and human handoffs, and an API description does not automatically define business ownership. |
| Endpoint and message schema | They describe location and representation as part of design or specification. Field types alone do not establish semantics, authority, sequence, failure, capacity, or change. |
| Interface Design Description (IDD) | Describes how an interface is implemented, including structures, elements, and design features. Requirements state what both sides must satisfy and the design traces to them, even when one controlled document contains both. |
| Interface Requirements Document (IRD) | A controlled information item that can organise scope, precedence, responsibilities, change authority, and bilateral requirements. The document name alone does not make its content complete. |
| Interface Control Document (ICD) | Often records and controls agreed requirements and design information. Usage differs by organisation, so the project declares the contents and precedence of ICD, IRD, and IDD. |
| Systems integration | The activity of connecting elements and demonstrating that they work together. Interface requirements are its contract, while discrepancies found during integration may lead to controlled requirement changes. |
| Functional requirement | States what a system does. Cross-boundary functions derive send, receive, and acknowledge behaviour, but interface requirements also coordinate bilateral semantics, protocol, responsibility, and compatibility. |
| Performance requirement | Quantifies response, latency, throughput, and capacity. An interface can trace to those measures, but latency cannot replace field, identity, and error semantics. |
| User-interface requirement | Governs input, output, and use conditions between people and an interactive system and can be an interface category. Full screen design, information architecture, and usability evaluation remain separate. |
| Data model and dictionary | Define structure, meaning, relationships, and governance. The interface references exchanged parts and adds direction, timing, state, protection, and bilateral ownership. |
| SLA and supplier contract | May define service levels, commercial responsibility, exclusions, and remedies and cite interface availability. Technical interface requirements do not automatically create contractual rights or duties. |
Sources and scope
This entry explains interface requirements in systems and software requirements engineering: requirements for the information, energy, material, control, or human actions exchanged across a boundary between systems, subsystems, software, devices, people, or external services, together with the semantics, representation, sequence, timing, security, performance, failure, compatibility, and responsibilities both sides must observe. An interface is not limited to an HTTP API; it can be a message, file, database exchange, device connection, electrical or mechanical boundary, user interaction, or human handoff. This entry does not fully define API design, an interface design description, an interface control document, user-interface design, systems integration, a data model, network architecture, a security design, performance requirements, an SLA, test cases, or supplier contracts. Protocols, fields, thresholds, permissions, versions, and approval authority require evidence and agreement from the actual interfacing parties.
- ISO/IEC/IEEE 29148:2018: requirements engineering, system and software specifications, external interfaces, verification, traceability, and change; confirmed current in 2024
- NASA Interface Management: define and control internal and external functional, physical, and performance interfaces, maintain compatibility, and govern bilateral changes
- NASA Systems Engineering Handbook Appendix L: IRD scope, precedence, bilateral responsibility, change authority, description, units, tolerances, and requirements on both sides
- NASA Software Requirements Specification: interface identity, source and destination, range, units, timing, format, data, and communication characteristics
- NASA SWE-050: hardware, user, operator, and system interfaces across operating environment, off-nominal, safety, fault tolerance, function, and quality
- NASA SWE-112: interface design traces to system and software interface requirements and records type, data elements, compatibility, and safety design
- OpenAPI Specification 3.2: human- and machine-readable HTTP API description covering paths, operations, parameters, schemas, responses, security, callbacks, and versions
- IETF RFC 9110 HTTP Semantics: method semantics, safety, idempotency, caching, status codes, and limits on retrying non-idempotent requests
- IETF RFC 9457 Problem Details for HTTP APIs: machine-identifiable problem types, instances, status, extensions, and security boundaries
- IETF RFC 9745 Deprecation: HTTP resource deprecation notice and coordination with Sunset information for consumer migration
- NIST SP 800-204: authentication, authorization, secure communication, monitoring, throttling, resilience, discovery, and session controls for microservice APIs
- NIST SP 800-228: risk identification and basic and advanced API protection controls during development and runtime
- NIST AI RMF Core: AI components, third-party software and data, system requirements, actor responsibility, supplier change, measurement, and monitoring