Domain Modelling Data Types

Let's now add type information to our class diagram.

Add Type Information to the Class Diagram

Here's what I came to in Miro:

Domain Diagram with Type Information

Formalize the Class Diagram

Here's the class diagram formalized as MermaidJs.

I've went with the Java-style way of declaring types in the formalized version:

classDiagram class Organizer { } class Attendee { } class Staff { } class User { UUID id String name String email } class Event { UUID id String name LocalDateTime start LocalDateTime end String venue LocalDateTime salesEndDate LocalDateTime salesEndDate EventStatusEnum status } class TicketType { UUID id String name Double price Integer totalAvailable } class Ticket { UUID: id TicketStatusEnum status LocalDateTime createdDateTime } class QrCode { UUID id LocalDateTime generatedTime QrCodeStatusEnum status } class TicketValidation { UUID id TicketValidationStatusEnum status LocalDateTime validationTime TicketValidationMethodEnum validationMethod } Organizer --|> User Attendee --|> User Staff --|> User Organizer "1" --* "0..*" Event: organizes Attendee --o Event: attends Staff --o Event: works at User "1" --* "0..*" Ticket: purchases Event "1" --* "0..*" TicketType: offers TicketType "1" --* "0..*" Ticket: categorizes Ticket "1" --* "0..*" TicketValidation: validated Ticket "1" --* "1..*" QrCode : has

Summary

  • Added data type information to the application's class diagram
© 2026 Devtiro Ltd. All rights reserved