肖哥弹架构 跟大家“弹弹” DDD领域模型设计,需要代码关注
欢迎 点赞,点赞,点赞。
关注公号Solomon肖哥弹架构获取更多精彩内容

通用域图
支撑域图
src/|-- application/| |-- features/ // 业务特性相关的应用层代码| |-- services/ // 应用服务层|-- domain/| |-- core/ // 核心域| | |-- accounting/ // 财务管理| | |-- traffic_control/ // 交通控制| | |-- public_transport/ // 公共交通| | |-- road_maintenance/ // 道路维护| | |-- safety_regulation/ // 安全规章| | |-- toll_management/ // 收费管理| | |-- vehicle_registration// 车辆注册| | |-- incident_management// 事件管理| | |-- environmental_monitoring// 环境监测| |-- common/ // 通用域| | |-- identity/ // 身份认证| | |-- notification/ // 通知服务| | |-- user_management/ // 用户管理| | |-- access_control/ // 访问控制| | |-- configuration/ // 配置管理| | |-- logging/ // 日志记录| | |-- messaging/ // 消息传递| | |-- security/ // 安全服务| | |-- audit/ // 审计服务| |-- supporting/ // 支撑域| | |-- data_analytics/ // 数据分析| | |-- reporting/ // 报告| | |-- integration/ // 系统集成| | |-- backup/ // 数据备份| | |-- infrastructure/ // 基础设施管理|-- infrastructure/| |-- persistence/ // 数据持久化| | |-- repositories/ // 仓储接口实现| |-- external_integrations/ // 外部系统集成|-- presentation/| |-- web/ // Web界面| |-- api/ // API接口|-- shared/| |-- dtos/ // 数据传输对象| |-- exceptions/ // 异常类| |-- utils/ // 工具类|-- tests/|-- Main.java // 应用启动类
1、核心域划分1.1 划分规则
核心域包含智慧城市交通管理系统中最关键的服务和功能,直接影响市民的出行体验和城市的交通运行效率。
1.2 核心域Accounting子域:财务记录、预算管理、收入分配、支出跟踪、审计管理界限上下文:财务管理上下文实体:Account、Transaction值对象:MonetaryValue、Date聚合:FinancialAccount(聚合根)领域服务:AccountingService应用服务:FinanceApplicationService领域事件:FundsTransactionRecorded仓储:AccountingRepository工厂:AccountCreationFactoryTraffic Control子域:信号控制、流量监控、违章检测、事故报告、紧急响应界限上下文:城市交通控制上下文实体:TrafficSignal、ViolationRecord值对象:SignalTiming、TrafficVolume聚合:TrafficSignalSystem(聚合根)领域服务:TrafficControlService应用服务:TrafficControlApplicationService领域事件:TrafficSignalChangeRequested仓储:TrafficSignalRepository工厂:TrafficSignalCreationFactoryPublic Transport子域:时刻表管理、车辆调度、票价系统、乘客信息、路线规划界限上下文:公共交通服务上下文实体:Schedule、TransportVehicle、FareSystem值对象:TimeTable、RouteMap聚合:PublicTransportNetwork(聚合根)领域服务:PublicTransportService应用服务:PublicTransportApplicationService领域事件:ScheduleUpdated仓储:PublicTransportRepository工厂:TransportScheduleFactoryRoad Maintenance子域:维修计划、施工管理、路况报告、资源分配界限上下文:道路维护管理上下文实体:MaintenancePlan、RoadConditionReport值对象:MaintenanceResource、ConditionStatus聚合:RoadMaintenanceManagement(聚合根)领域服务:RoadMaintenanceService应用服务:RoadMaintenanceApplicationService领域事件:MaintenanceTaskCreated仓储:MaintenanceRepository工厂:MaintenancePlanFactorySafety Regulation子域:规章制定、违章处理、安全教育、事故预防界限上下文:交通安全规章上下文实体:Regulation、ViolationCase值对象:RegulationText、PenaltyType聚合:SafetyRegulationSystem(聚合根)领域服务:SafetyRegulationService应用服务:SafetyRegulationApplicationService领域事件:NewRegulationPublished仓储:RegulationRepository工厂:RegulationCreationFactoryToll Management子域:收费点设置、收费率计算、收费记录、资金流动界限上下文:收费管理系统上下文实体:TollBooth、TollTransaction值对象:TollRate、TransactionTime聚合:TollManagementSystem(聚合根)领域服务:TollManagementService应用服务:TollManagementApplicationService领域事件:TollRateAdjusted仓储:TollBoothRepository工厂:TollBoothFactoryVehicle Registration子域:车辆登记、牌照管理、车辆检验、车主服务界限上下文:车辆注册管理上下文实体:VehicleRegistry、LicensePlate值对象:VehicleDetails、InspectionStatus聚合:VehicleRegistrationSystem(聚合根)领域服务:VehicleRegistrationService应用服务:VehicleRegistrationApplicationService领域事件:VehicleRegistered仓储:VehicleRepository工厂:VehicleRegistrationFactoryIncident Management子域:事故报告、应急响应、事故分析、恢复计划界限上下文:事故管理系统上下文实体:IncidentReport、EmergencyResponse值对象:IncidentType、ResponseTime聚合:IncidentManagementSystem(聚合根)领域服务:IncidentManagementService应用服务:IncidentManagementApplicationService领域事件:IncidentReported仓储:IncidentRepository工厂:IncidentReportFactoryEnvironmental Monitoring子域:排放监测、噪音监测、环境影响评估、污染控制界限上下文:环境监测系统上下文实体:EmissionMonitor、NoiseMonitor值对象:EmissionReading、NoiseLevel聚合:EnvironmentalMonitoringSystem(聚合根)领域服务:EnvironmentalMonitoringService应用服务:EnvironmentalMonitoringApplicationService领域事件:PollutionLevelExceeded仓储:EnvironmentalDataRepository工厂:MonitorInstallationFactory2、通用域划分2.1 划分规则通用域提供了整个系统运行所需的基础服务和功能,支持不同核心域的业务操作。
2.2 通用域Identity子域:用户认证、权限验证、身份信息管理界限上下文:身份管理系统上下文实体:UserIdentity、AuthenticationRecord值对象:PasswordHash、SecurityToken聚合:UserAccount(聚合根)领域服务:IdentityService应用服务:IdentityApplicationService领域事件:UserLoggedIn仓储:UserRepository工厂:UserCreationFactoryNotification子域:消息通知、邮件服务、短信服务界限上下文:通知服务上下文实体:NotificationChannel、MessageTemplate值对象:NotificationContent、RecipientList聚合:NotificationSystem(聚合根)领域服务:NotificationService应用服务:NotificationApplicationService领域事件:MessageSent仓储:NotificationRepository工厂:NotificationChannelFactoryUser Management子域:用户注册、用户资料、用户反馈界限上下文:用户管理系统上下文实体:UserProfile、UserFeedback值对象:UserDetails、FeedbackContent聚合:UserManagementSystem(聚合根)领域服务:UserManagementService应用服务:UserManagementApplicationService领域事件:UserProfileUpdated仓储:UserManagementRepository工厂:UserProfileFactoryAccess Control子域:角色管理、权限分配、访问日志界限上下文:访问控制系统上下文实体:Role、Permission值对象:AccessLogEntry、ActionType聚合:AccessControlList(聚合根)领域服务:AccessControlService应用服务:AccessControlApplicationService领域事件:PermissionChanged仓储:AccessControlRepository工厂:RoleFactoryConfiguration子域:系统配置、特性开关、参数管理界限上下文:配置管理系统上下文实体:ConfigurationProfile、FeatureToggle值对象:ConfigValue、ToggleState聚合:ConfigurationSetting(聚合根)领域服务:ConfigurationService应用服务:ConfigurationApplicationService领域事件:ConfigurationUpdated仓储:ConfigurationRepository工厂:FeatureToggleFactoryLogging子域:日志记录、日志审计、日志分析界限上下文:日志记录系统上下文实体:LogEntry、LogArchive值对象:LogSeverity、LogMessage聚合:LoggingSystem(聚合根)领域服务:LoggingService应用服务:LoggingApplicationService领域事件:LogRecorded仓储:LogRepository工厂:LogEntryFactoryMessaging子域:消息队列、事件发布、消息消费界限上下文:消息传递系统上下文实体:MessageQueue、EventSubscriber值对象:MessagePayload、SubscriptionCriteria聚合:MessagingSystem(聚合根)领域服务:MessagingService应用服务:MessagingApplicationService领域事件:MessagePublished仓储:MessageQueueRepository工厂:EventSubscriberFactorySecurity子域:数据加密、安全策略、入侵检测界限上下文:安全管理系统上下文实体:SecurityPolicy、IntrusionDetectionLog值对象:EncryptionAlgorithm、PolicyRule聚合:SecurityFramework(聚合根)领域服务:SecurityService应用服务:SecurityApplicationService领域事件:SecurityBreachDetected仓储:SecurityRepository工厂:SecurityPolicyFactoryAudit子域:审计日志、审计分析、合规性检查界限上下文:审计服务上下文实体:AuditLog、ComplianceCheck值对象:AuditEvent、CheckResult聚合:AuditTrail(聚合根)领域服务:AuditService应用服务:AuditApplicationService领域事件:ComplianceViolationDetected仓储:AuditRepository工厂:AuditLogFactory3、支撑域划分3.1 划分规则支撑域为系统提供了非核心但必要的功能,以确保系统的稳定运行和可维护性。
3.2 支撑域Data Analytics子域:数据挖掘、趋势分析、预测模型、决策支持界限上下文:数据分析服务上下文实体:DataAnalyticsModel、AnalyticalResult值对象:DataSample、StatisticMeasure聚合:AnalyticsEngine(聚合根)领域服务:DataAnalyticsService应用服务:DataAnalyticsApplicationService领域事件:InsightGenerated仓储:AnalyticsRepository工厂:DataModelFactoryReporting子域:报告生成、报告调度、报告分发、报告模板界限上下文:报告服务上下文实体:ReportGenerator、ReportInstance值对象:ReportParameter、ReportFormat聚合:ReportingSystem(聚合根)领域服务:ReportService应用服务:ReportingApplicationService领域事件:ReportGenerated仓储:ReportRepository工厂:ReportInstanceFactoryIntegration子域:第三方集成、API管理、数据交换、服务协调界限上下文:集成服务上下文实体:IntegrationEndpoint、APIDefinition值对象:IntegrationEvent、APIRequest聚合:IntegrationSystem(聚合根)领域服务:IntegrationService应用服务:IntegrationApplicationService领域事件:APIRequestReceived仓储:IntegrationRepository工厂:EndpointFactoryBackup子域:数据备份、备份验证、灾难恢复、备份计划界限上下文:数据备份服务上下文实体:BackupService、BackupJob值对象:BackupConfiguration、RestorePoint聚合:BackupSystem(聚合根)领域服务:BackupService应用服务:BackupApplicationService领域事件:BackupCompleted仓储:BackupRepository工厂:BackupJobFactoryInfrastructure Management子域:硬件管理、软件管理、资源监控、设施维护界限上下文:基础设施管理系统上下文实体:InfrastructureComponent、MaintenanceRecord值对象:ResourceMetric、MaintenanceSchedule聚合:InfrastructureManagementSystem(聚合根)领域服务:InfrastructureManagementService应用服务:InfrastructureManagementApplicationService领域事件:ComponentFailureDetected仓储:InfrastructureRepository工厂:ComponentFactory