Soft2Soft Docs Practical knowledge base
Технические задания

How to Write a Technical Specification for Integrating Two Enterprise Systems

15 views
ТЗ интеграция систем документация

Start the Specification with Integration Boundaries and a Verifiable Result

To write a technical specification for integrating two enterprise systems, first define not the technologies, but the business objective, participants in the data exchange, data, processing rules, and acceptance criteria. A good technical specification allows developers to implement the integration without verbal clarifications, and allows customers to verify the result against previously agreed conditions.

The minimum document structure should answer these questions:

  • which systems participate in the integration;
  • which process is being automated;
  • which data is transferred and in which direction;
  • when and under what conditions the exchange is performed;
  • how correctness of operation is verified;
  • who is responsible for approval and operation.

Do not start a technical specification with API descriptions, message formats, or field names. First define the business scenario and expected result, otherwise technical details may describe the wrong task.

1. Describe the Participants and Purpose of the Integration

In the first section of the specification, provide the initial project information. The systems between which the data exchange is performed must be clearly identified.

Example section structure:

  • Source system: the application where data is created or modified.
  • Target system: the application where data is transferred.
  • Process owner: the department or role responsible for the business result.
  • Integration goal: which action should become automated.

The goal statement should be verifiable. For example, instead of "synchronize customers", it is better to specify: "enable transfer of information about new customers from system A to system B after the record creation condition is met".

2. Define Data Exchange Scenarios

Describe each scenario separately. One scenario should answer the question: what happens from the moment an event occurs until the result is received.

For each scenario, specify:

  1. the event that triggers the exchange;
  2. the data source;
  3. validation checks before sending;
  4. the set of transferred data;
  5. the action of the target system;
  6. the successful execution result;
  7. possible error cases.

Example:

Element Description
Event Creation of a new record in the source system
Data Identifier, name, status, modification date
Result Record is created or updated in the target system
Error Recording the reason for failure and enabling reprocessing

3. Create a List of Transferred Data

Field descriptions are one of the most important parts of a technical specification. For each value, specify its purpose and processing rules.

Field Description Required Processing Rule
external_id External object identifier Specified when required Used for record matching
status Current object state Defined by business rules Transferred using agreed values
updated_at Modification date Depends on the scenario Used to determine data relevance

Do not limit the description to the field name. You should specify:

  • data type;
  • allowed values;
  • required conditions;
  • value source;
  • transformation rules.

4. Describe the Interaction Architecture

The specification only needs to define the logical integration scheme. The specific implementation can be refined after analyzing the technical capabilities of the systems.

Specify:

  • exchange direction: one-way or two-way;
  • exchange trigger method: event, schedule, or request;
  • participants involved in processing;
  • requirements for operation logging;
  • need for error reprocessing.

If the exchange format has already been defined, add an example of the data structure. For example:

{
  "id": "12345",
  "name": "Example",
  "status": "active"
}

The example should demonstrate the message structure, not replace the description of processing rules.

5. Add Requirements for Errors and Control

The integration must be described not only for successful scenarios. The specification should define expected behavior when problems occur.

Describe:

  • which errors are considered critical;
  • how the occurrence of an error is recorded;
  • who receives information about the problem;
  • whether data processing can be repeated;
  • how successful operation completion is determined.

Example requirement wording:

"If a message cannot be processed, the system must store error information with the reason and the identifier of the source object for subsequent analysis."

6. Define Non-Functional Requirements

In addition to exchange logic, the specification should contain operational constraints. They help avoid different interpretations of the expected result.

This section may include:

  • integration availability requirements;
  • processing time limitations;
  • access security requirements;
  • log storage requirements;
  • data volume limitations.

Specify only agreed requirements. If exact values are not yet known, mark them as items requiring approval rather than filling them with assumptions.

7. Describe Testing and Acceptance Procedures

Acceptance criteria should be formulated so that the result can be verified.

Add the following to the specification:

  1. list of test scenarios;
  2. expected result for each scenario;
  3. conditions for successful completion of verification;
  4. persons responsible for confirming the result.

Example acceptance table:

Scenario Action Expected Result
Object creation Create a record in the source system The object appears in the target system
Data modification Change an agreed field The change is transferred according to the rules
Processing error Send invalid data The error is recorded according to requirements

8. Use a Ready-Made Technical Specification Structure Template

For most integration projects, the following document structure is suitable:

1. General information
- integration goal;
- participants;
- scope of application.


Process description




business scenarios;


events;


results.




Data exchange requirements




objects;


fields;


transformation rules.




Technical requirements




interaction scheme;


limitations;


security requirements.




Error handling




error types;


logging;


reprocessing.




Testing and acceptance




verification scenarios;


successful completion criteria.




Responsible persons




customer;


contractor;


approvers.

Checklist Before Sending the Specification to Development

  • The integration goal is formulated through the expected result.
  • Participating systems and their roles are specified.
  • All main exchange scenarios are described separately.
  • The data structure contains processing rules, not only field names.
  • Errors and their handling procedures are documented.
  • Acceptance criteria allow verification of the completed result.
  • Undefined requirements are marked as items requiring approval.

Such a specification becomes a working document between process owners, analysts, and developers: it defines the expected integration behavior and allows the result to be accepted according to clear conditions.