3. System Scope and Context

April 8, 2026 · View on GitHub

3.1 Business Context

Pitstop is used by employees of the fictitious "PitStop" garage. There are no external system integrations besides a simulated print service (PrestoPrint) for invoices and a simulated email server (MailDev).

Business Context

Diagram source: diagrams/03-business-context.puml

Actor / SystemDescription
Garage EmployeeUses the web application to manage customers, vehicles, and the workshop planning.
MailDevSimulated SMTP/POP3 server that captures all outbound emails (notifications and invoices). In production, this would be a real mail server.
PrestoPrintFictitious external printing company. Invoices are emailed to them as HTML. Simulated via MailDev.

3.2 Technical Context

Technical Context

Diagram source: diagrams/03-technical-context.puml

Channel / ProtocolFrom → ToDescription
HTTP/RESTBrowser → WebAppUser interaction via ASP.NET Core MVC frontend.
HTTP/RESTWebApp → APIsTyped HTTP clients (Refit) call Customer, Vehicle, and Workshop Management APIs. No API gateway (see ADR-0006).
AMQPAPIs → RabbitMQ → ServicesDomain events are published to RabbitMQ fanout exchanges and consumed by subscribing services.
TCP (TDS)APIs / Services → SQL ServerEach service uses its own logical database on a shared SQL Server instance.
SMTPNotification/Invoice Service → MailDevEmails are sent via SMTP to the MailDev test server.
HTTPAll services → SeqStructured log events are sent to the Seq log server (Serilog sink).

← Back to arc42 index