# moazabdulsalam/dvld architecture

> Architecture diagram of the GitHub repository moazabdulsalam/dvld, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/moazabdulsalam/dvld
- Repository: https://github.com/moazabdulsalam/dvld

## Overview

DVLD is a Windows Forms system for managing people, users, driving-license applications, tests, drivers, and local and international licenses, including renewal, replacement, detention, and release. Its apparent user journey begins at login and continues through operational forms, while business-layer classes represent the domain and data-access classes persist records. The tree establishes these product areas, but the sampled excerpts do not show most form-to-business calls or menu dispatch, so those links are omitted. The sampled license and local-application data code does show SQL-backed persistence.

Main entry points: [`DVLD/Program.cs`](https://github.com/moazabdulsalam/dvld/blob/master/DVLD/Program.cs) (Application entry), [`DVLDDataAccessLayer/clsLicenseData.cs`](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLicenseData.cs) (License data), [`DVLDBusinessLayer/clsLicense.cs`](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsLicense.cs) (License lifecycle), [`DVLDDataAccessLayer/clsLocalDrivingLicenseApplicationData.cs`](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLocalDrivingLicenseApplicationData.cs) (Local application data)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_ui["Desktop interface"]
  node_program["Application entry<br/>[Program.cs]"]
  node_login["Login<br/>[frmLogin.cs]"]
  node_main["Main window<br/>[MainForm.cs]"]
  node_people_ui["People management"]
  node_users_ui["User management"]
  node_applications_ui["Application workflows"]
  node_licenses_ui["License workflows"]
  node_drivers_ui["Driver records"]
end

subgraph group_domain["Licensing domain"]
  node_people_domain["People and users<br/>[clsPerson.cs]"]
  node_application_domain["Applications<br/>[clsApplication.cs]"]
  node_local_domain["Local applications"]
  node_tests_domain["Tests and appointments<br/>[clsTest.cs]"]
  node_license_domain["License lifecycle<br/>[clsLicense.cs]"]
  node_special_domain["Detain and international"]
end

subgraph group_data["Data access"]
  node_people_data["People and user data<br/>[clsPeopleData.cs]"]
  node_application_data["Application data"]
  node_local_data["Local application data"]
  node_license_data["License data<br/>[clsLicenseData.cs]"]
end

subgraph group_shared["Shared services"]
  node_shared_util["Shared utilities<br/>[clsSharedUtil.cs]"]
  node_crypto["Cryptography<br/>[clsCryptography.cs]"]
end

node_operator(("Operator"))
node_sql[("SQL database")]

node_operator -->|"starts"| node_program
node_program -->|"runs"| node_login
node_license_domain -->|"reads and writes"| node_license_data
node_license_data -->|"queries"| node_sql
node_local_data -->|"queries"| node_sql

click node_program "https://github.com/moazabdulsalam/dvld/blob/master/DVLD/Program.cs"
click node_login "https://github.com/moazabdulsalam/dvld/blob/master/DVLD/Users/frmLogin.cs"
click node_main "https://github.com/moazabdulsalam/dvld/blob/master/DVLD/MainForm.cs"
click node_people_ui "https://github.com/moazabdulsalam/dvld/tree/master/DVLD/People"
click node_users_ui "https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Users"
click node_applications_ui "https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Applications"
click node_licenses_ui "https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Licenses"
click node_drivers_ui "https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Drivers"
click node_people_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsPerson.cs"
click node_application_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsApplication.cs"
click node_local_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsLocalDrivingLicenseApplication.cs"
click node_tests_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsTest.cs"
click node_license_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsLicense.cs"
click node_special_domain "https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsDetainedLicense.cs"
click node_people_data "https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsPeopleData.cs"
click node_application_data "https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsApplicationData.cs"
click node_local_data "https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLocalDrivingLicenseApplicationData.cs"
click node_license_data "https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLicenseData.cs"
click node_shared_util "https://github.com/moazabdulsalam/dvld/blob/master/Shared/clsSharedUtil.cs"
click node_crypto "https://github.com/moazabdulsalam/dvld/blob/master/Shared/clsCryptography.cs"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_program,node_login,node_main,node_people_ui,node_users_ui,node_applications_ui,node_licenses_ui,node_drivers_ui toneBlue
class node_people_domain,node_application_domain,node_local_domain,node_tests_domain,node_license_domain,node_special_domain,node_sql toneAmber
class node_people_data,node_application_data,node_local_data,node_license_data toneMint
class node_shared_util,node_crypto toneRose
class node_operator toneIndigo
```

## Components

### Desktop interface

- [Application entry](https://github.com/moazabdulsalam/dvld/blob/master/DVLD/Program.cs): `DVLD/Program.cs`
- [Login](https://github.com/moazabdulsalam/dvld/blob/master/DVLD/Users/frmLogin.cs): `DVLD/Users/frmLogin.cs`
- [Main window](https://github.com/moazabdulsalam/dvld/blob/master/DVLD/MainForm.cs): `DVLD/MainForm.cs`
- [People management](https://github.com/moazabdulsalam/dvld/tree/master/DVLD/People): `DVLD/People`
- [User management](https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Users): `DVLD/Users`
- [Application workflows](https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Applications): `DVLD/Applications`
- [License workflows](https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Licenses): `DVLD/Licenses`
- [Driver records](https://github.com/moazabdulsalam/dvld/tree/master/DVLD/Drivers): `DVLD/Drivers`

### Licensing domain

- [People and users](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsPerson.cs): `DVLDBusinessLayer/clsPerson.cs`
- [Applications](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsApplication.cs): `DVLDBusinessLayer/clsApplication.cs`
- [Local applications](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsLocalDrivingLicenseApplication.cs): `DVLDBusinessLayer/clsLocalDrivingLicenseApplication.cs`
- [Tests and appointments](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsTest.cs): `DVLDBusinessLayer/clsTest.cs`
- [License lifecycle](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsLicense.cs): `DVLDBusinessLayer/clsLicense.cs`
- [Detain and international](https://github.com/moazabdulsalam/dvld/blob/master/DVLDBusinessLayer/clsDetainedLicense.cs): `DVLDBusinessLayer/clsDetainedLicense.cs`

### Data access

- [People and user data](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsPeopleData.cs): `DVLDDataAccessLayer/clsPeopleData.cs`
- [Application data](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsApplicationData.cs): `DVLDDataAccessLayer/clsApplicationData.cs`
- [Local application data](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLocalDrivingLicenseApplicationData.cs): `DVLDDataAccessLayer/clsLocalDrivingLicenseApplicationData.cs`
- [License data](https://github.com/moazabdulsalam/dvld/blob/master/DVLDDataAccessLayer/clsLicenseData.cs): `DVLDDataAccessLayer/clsLicenseData.cs`

### Shared services

- [Shared utilities](https://github.com/moazabdulsalam/dvld/blob/master/Shared/clsSharedUtil.cs): `Shared/clsSharedUtil.cs`
- [Cryptography](https://github.com/moazabdulsalam/dvld/blob/master/Shared/clsCryptography.cs): `Shared/clsCryptography.cs`

### Other components

- **Operator**
- **SQL database**

## Connections

- Operator → Application entry: starts
- Application entry → Login: runs
- License lifecycle → License data: reads and writes
- License data → SQL database: queries
- Local application data → SQL database: queries
