Skip to main content

Search...

Architecture, Integration & Data Quality

Quality often depends less on individual features than on how things fit together: interfaces, legacy systems that have grown over years, data flows, and architecture decisions that either make a system testable or don't. This hub looks at software quality through the lens of architecture, integration, and data.

The articles and podcast episodes range from microservices, contract testing, and cloud migrations to technical debt, legacy systems, and architecture documentation, and on to test data management, synthetic test data, data warehouse testing, and assessing data quality. They are for people in architecture, development, and testing who think about quality while designing structures and data flows. The foundation page on integration testing offers a methodical starting point.

Articles

Test Data: First a Radical Cure, Then AI
Test Data: First a Radical Cure, Then AI

Test Data: First a Radical Cure, Then AI

Test data problems won't vanish with AI. First ask which data you really need, delete the rest and build a data architecture that works across systems.

Testing AI and Testing with AI: Rethinking Quality
Testing AI and Testing with AI: Rethinking Quality

Testing AI and Testing with AI: Rethinking Quality

AI in software testing helps with test cases, test data and error analysis. Testing AI systems means rethinking quality criteria such as data quality.

Legacy Systems: Why Hardly Any Company Modernizes Them
Legacy Systems: Why Hardly Any Company Modernizes Them

Legacy Systems: Why Hardly Any Company Modernizes Them

Legacy systems grow through adapters and wrappers into technical debt. Modernization rarely pays off in the short term, so few companies dare to start.

Complicated Became Complex: Why We Work Agile Today
Complicated Became Complex: Why We Work Agile Today

Complicated Became Complex: Why We Work Agile Today

Software and its framework conditions have turned from complicated to complex. Agile working helps teams deal with what they cannot know in advance.

Object-Oriented Technology: Promises Only Partly Kept
Object-Oriented Technology: Promises Only Partly Kept

Object-Oriented Technology: Promises Only Partly Kept

Object-oriented technology promised big productivity gains and near-zero maintenance. Studies show partial success, with gains in reuse and portability.

UML Metrics: Measuring Size, Complexity, and Quality
UML Metrics: Measuring Size, Complexity, and Quality

UML Metrics: Measuring Size, Complexity, and Quality

UML metrics count classes, states, and relationships across UML diagram types and measure a design's size, complexity, and quality before it is built.

Podcast Episodes

AI-Generated Code: Quality Assurance Must Keep Pace
AI-Generated Code: Quality Assurance Must Keep Pace

AI-Generated Code: Quality Assurance Must Keep Pace

More AI-generated code means more defects, and only about 30% of AI review comments help. Static analysis, test selection and reviews must scale too.

API Testing: Agent-Optimized Design Cuts Token Costs
API Testing: Agent-Optimized Design Cuts Token Costs

API Testing: Agent-Optimized Design Cuts Token Costs

API testing depends on the protocol: REST, GraphQL, webhooks or MCP. It runs more stably than browser testing, and agent-friendly APIs save tokens.

Testing Complex Systems: Ship Small and Learn Fast
Testing Complex Systems: Ship Small and Learn Fast

Testing Complex Systems: Ship Small and Learn Fast

Testing complex systems: complex vs complicated, and why software behaves more like weather than a bridge. Safe-to-fail experiments help teams learn.

Test Coverage: Process Mining Shows What Really Runs
Test Coverage: Process Mining Shows What Really Runs

Test Coverage: Process Mining Shows What Really Runs

Test coverage needs the right denominator. Process mining shows which workflows run in production, and the top 10 of 600 runs cover about 80 percent.

Startup Software Testing: Why Testability Comes First
Startup Software Testing: Why Testability Comes First

Startup Software Testing: Why Testability Comes First

Startup software testing begins with testability and customer focus, not formal processes. Outnumbered testers have to speak up, even to management.

Pekka Klärck: Why Robot Framework Has a Generic Core
Pekka Klärck: Why Robot Framework Has a Generic Core

Pekka Klärck: Why Robot Framework Has a Generic Core

Pekka Klärck began Robot Framework as his master's thesis in 2004. Over 80 companies now back its foundation, and its generic core fits mixed stacks.

Test Automation Strategy: Start with the Problem
Test Automation Strategy: Start with the Problem

Test Automation Strategy: Start with the Problem

A test automation strategy starts with the problem, not the tool. Map current and target state on the test pyramid; the gap is your scope of work.

Dynamic Analysis: Embedded Coverage on Real Hardware
Dynamic Analysis: Embedded Coverage on Real Hardware

Dynamic Analysis: Embedded Coverage on Real Hardware

Dynamic analysis on real hardware: embedded trace measures code coverage in integration testing without the timing side effects of instrumentation.

Cypress to Playwright: Migrate Critical Paths First
Cypress to Playwright: Migrate Critical Paths First

Cypress to Playwright: Migrate Critical Paths First

Switching test automation frameworks mid-product is messy, yet a Cypress to Playwright move works. Pricing forced it, AI translated the tests.

Developer Friendliness: Invest Time, Save Time
Developer Friendliness: Invest Time, Save Time

Developer Friendliness: Invest Time, Save Time

Developer friendliness costs time short term, saves it long term and makes teams happier. REST mocks and test interfaces show how it works.

Security by Design: Why Custom Encryption Adds Risk
Security by Design: Why Custom Encryption Adds Risk

Security by Design: Why Custom Encryption Adds Risk

Security by design starts with threat modeling any team can run, layered defenses and secure defaults. Security bolted on in the last 10% stays thin.

Microservices Testing at REWE: Fewer End-to-End Tests
Microservices Testing at REWE: Fewer End-to-End Tests

Microservices Testing at REWE: Fewer End-to-End Tests

Microservices testing at REWE: unit and API tests per service, few end-to-end tests on the money path, flaky tests in quarantine, production monitoring.

Migrating from Cypress to Playwright: The Real Effort
Migrating from Cypress to Playwright: The Real Effort

Migrating from Cypress to Playwright: The Real Effort

Migrating from Cypress to Playwright took a team over a year alongside daily QA. The main hurdles: session handling, request interception, legacy tests.

CI/CD Pipelines in Embedded C: Tests as a Safety Net
CI/CD Pipelines in Embedded C: Tests as a Safety Net

CI/CD Pipelines in Embedded C: Tests as a Safety Net

CI/CD pipelines for embedded C at Marquardt run on CMake, Google Test and generated mocks. Every bug fix starts with a test that reproduces the bug.

Accessibility Act: Blind Testers Find What Tools Miss
Accessibility Act: Blind Testers Find What Tools Miss

Accessibility Act: Blind Testers Find What Tools Miss

Accessibility testing can't be fully automated. Accessible components can still break once combined, and blind testers catch it with screen readers.

Software Analysis: Assessing an Inherited Ticket Shop
Software Analysis: Assessing an Inherited Ticket Shop

Software Analysis: Assessing an Inherited Ticket Shop

Software analysis of an inherited ticket shop: static analysis gave a first verdict in 1.5 days. Then a third of the code turned out to be a black box.

Form Testing: Model-Based Test Data via SMT Solver
Form Testing: Model-Based Test Data via SMT Solver

Form Testing: Model-Based Test Data via SMT Solver

Form testing for over 255 tax form variants across 16 states: an SMT solver derives valid test data from the model and exposes contradictory rules.

Minimum Viable Test Strategy
Minimum Viable Test Strategy

Minimum Viable Test Strategy

Test strategy via workshop instead of a hundred-page document: How a collaborative format quickly brings teams to a common test picture.

Speech Recognition Testing: Every Fix Means Retraining
Speech Recognition Testing: Every Fix Means Retraining

Speech Recognition Testing: Every Fix Means Retraining

Speech recognition testing means testing a black box: every fix costs days of retraining. Golden test sets and generated variations find errors early.