No Assumptions on Architecture Without Load Testing
Source: Dev.to
Approach
A client asked how effective the proposed conceptual solution architecture was.
We addressed this question primarily from the perspective of load endurance. A reasonably confident answer can only be given after conducting load testing.
Prerequisites for Load Testing
- Representative data population in databases and data buses to simulate a real system.
- Load indicators that the system should be able to withstand.
- System usage scenarios to develop a load profile that closely mirrors real‑world conditions.
- Minimal infrastructure setup for testing, including computing power, key services, and load‑testing tools.
Qualified Specialist Responsibilities
- Define pass/fail criteria.
- Configure tools such as Gatling, Yandex Tank, or JMeter.
- Analyze the results.
Client Requirements
The client must provide both:
- Functional requirements (e.g., data access scenarios).
- Non‑functional requirements (e.g., target load indicators).
Only after successful load testing can we conclude that the solution architecture is capable of handling the required load.
Additional Quality Factors
Evaluating architecture does not stop at load testing. The overall quality of the solution also depends on other critical factors, including:
- Scalability
- Maintainability
- Graceful degradation
- Other characteristics that require thorough analysis.