CSI System Design & Architecture 3 — Questions and Answers
Question 1: Which integration middleware pattern uses a central hub to route messages between systems, creating a hub-and-spoke topology?
- Enterprise Service Bus (ESB) (Correct answer)
- Message Broker
- Point-to-Point integration
- Publish-Subscribe
Correct answer: Enterprise Service Bus (ESB)
An ESB acts as a central hub orchestrating message routing, transformation, and protocol mediation between connected spoke systems.
Question 2: A system must handle 10,000 concurrent users during peak hours but only 500 during off-peak. Which architecture strategy best addresses this requirement?
- Vertical scaling only
- Horizontal auto-scaling with elastic infrastructure (Correct answer)
- Over-provisioning for peak load permanently
- Caching all dynamic content
Correct answer: Horizontal auto-scaling with elastic infrastructure
Horizontal auto-scaling dynamically adds or removes instances based on load, efficiently handling variable traffic without over-provisioning.
Question 3: What is the key difference between synchronous and asynchronous integration patterns?
- Synchronous uses REST; asynchronous uses SOAP
- Synchronous waits for a response before proceeding; asynchronous sends and continues without waiting (Correct answer)
- Synchronous is faster; asynchronous is more reliable
- Synchronous uses queues; asynchronous uses direct calls
Correct answer: Synchronous waits for a response before proceeding; asynchronous sends and continues without waiting
Synchronous integration blocks the caller until a response is received, while asynchronous integration allows the caller to continue processing without waiting.
Question 4: In database design for integrated systems, which normalization form ensures that every non-key attribute is fully dependent on the entire primary key?
- First Normal Form (1NF)
- Second Normal Form (2NF) (Correct answer)
- Third Normal Form (3NF)
- Boyce-Codd Normal Form (BCNF)
Correct answer: Second Normal Form (2NF)
Second Normal Form (2NF) requires that all non-key attributes be fully functionally dependent on the complete primary key, eliminating partial dependencies.
Question 5: Which architectural pattern stores state changes as an immutable sequence of events rather than the current state snapshot?
- CQRS
- Event Sourcing (Correct answer)
- State Machine Pattern
- Outbox Pattern
Correct answer: Event Sourcing
Event Sourcing persists every state change as an immutable event, allowing the current state to be rebuilt by replaying the event log.
Question 6: When designing a RESTful API for a system integration, which HTTP status code should be returned when a resource is successfully created?
- 200 OK
- 201 Created (Correct answer)
- 204 No Content
- 202 Accepted
Correct answer: 201 Created
HTTP 201 Created is the correct response when a POST request successfully creates a new resource.
Question 7: In a multi-tier architecture, what is the primary role of the middleware tier?
- Storing persistent application data
- Rendering the user interface
- Handling business logic and mediating between presentation and data tiers (Correct answer)
- Managing network routing and DNS
Correct answer: Handling business logic and mediating between presentation and data tiers
The middleware tier processes business logic, coordinates workflows, and serves as an intermediary between the presentation layer and data storage.
Which integration middleware pattern uses a central hub to route messages between systems, creating a hub-and-spoke topology?