How alamin200290/teaching-sadp-summer2025-2026-sec-ab works
UniRide is a ride-booking backend: HTTP routes expose ride, driver, support, health, and metrics operations. The tree shows booking, driver matching, pricing, payment, notification, geocoding, audit, and support subsystems. Sampled source confirms route dispatch and matching’s repository lookup, but not the wiring between booking and those subsystems; those connections are therefore omitted. The graph uses the week-11 tree as its representative version.
Main entry points: routes.ts HTTP routes · MatchingEngine.ts Driver matching · RideController.ts Ride controller · DriverController.ts Driver controller
Components 24
HTTP API
- HTTP routes
week-11/uniride-backend/src/http/routes.ts - Ride controller
week-11/uniride-backend/src/http/controllers/RideController.ts - Driver controller
week-11/uniride-backend/src/http/controllers/DriverController.ts - Support controller
week-11/uniride-backend/src/http/controllers/SupportController.ts - Health controller
week-11/uniride-backend/src/http/controllers/HealthController.ts - Metrics controller
week-11/uniride-backend/src/http/controllers/MetricsController.ts
Booking Domain
- Ride request
week-11/uniride-backend/src/app/RequestRideUseCase.ts - Booking facade
week-11/uniride-backend/src/app/RideBookingFacade.ts - Booking saga
week-11/uniride-backend/src/app/BookingSaga.ts - Driver matching
week-11/uniride-backend/src/matching/MatchingEngine.ts - Driver repository
week-11/uniride-backend/src/drivers/DriverRepository.ts - Ride service
week-11/uniride-backend/src/rides/RideService.ts - Ride repository
week-11/uniride-backend/src/rides/RideRepository.ts - Fare policies
week-11/uniride-backend/src/rides/FarePolicy.ts
Services
- Payment service
week-11/uniride-backend/src/payments/PaymentService.ts - Notifications
week-11/uniride-backend/src/notifications/NotificationDispatcher.ts - Geocoding
week-11/uniride-backend/src/geocoding/GeocodingPort.ts - Support agent
week-11/uniride-backend/src/ai/RagSupportAgent.ts - Ride audit ledger
week-11/uniride-backend/src/blockchain/RideAuditLedger.ts
Platform
- Event broker
week-11/uniride-backend/src/messaging/EventBroker.ts - IoT edge processor
week-11/uniride-backend/src/iot/EdgeProcessor.ts - HTTP server
week-11/uniride-backend/src/http/HttpServer.ts - Metrics registry
week-11/uniride-backend/src/observability/MetricsRegistry.ts
Other components
- API caller
Connections 7
- API caller → HTTP routes: HTTP request
- HTTP routes → Ride controller: dispatches rides
- HTTP routes → Driver controller: dispatches drivers
- HTTP routes → Support controller: dispatches support
- HTTP routes → Health controller: dispatches health
- HTTP routes → Metrics controller: dispatches metrics
- Driver matching → Driver repository: queries candidates