# mrwnmoh/dvld architecture

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

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

## Overview

DVLD is a WinForms licensing-department management system organized into presentation, business-logic, and data-access layers. Operators authenticate, then manage people and users, create and progress licensing applications through tests, issue or maintain licenses, and handle international permits and detention/release. The README documents the broader testing and enforcement capabilities; sampled code confirms application startup, service-form dispatch, license lookup, and BLL-to-DAL access. Most feature wiring is unsampled, so uncertain calls are not drawn.

Main entry points: [`DVLV/DVLV/Applications`](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications) (Application services), [`DVLV/DVLV/Main/Forms`](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Main/Forms) (Main workspace), [`DVLV/DVLV/Login/Forms`](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Login/Forms) (Login and settings), [`DVLV/BussneicsLayer/clsPerson.cs`](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsPerson.cs) (People and identity)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_presentation["Desktop UI"]
  node_program["Application startup<br/>[Program.cs]"]
  node_login["Login and settings"]
  node_main["Main workspace"]
  node_people_ui["People management"]
  node_users_ui["User management"]
  node_app_ui["Application services"]
  node_license_ui["License services"]
end

subgraph group_business["Business Logic"]
  node_people_bll["People and identity<br/>[clsPerson.cs]"]
  node_application_bll["Application lifecycle<br/>[clsApplication.cs]"]
  node_test_bll["Tests and appointments<br/>[clsTests.cs]"]
  node_license_bll["License rules<br/>[clsLicens.cs]"]
  node_enforcement_bll["Detention registry"]
  node_intl_bll["International permits"]
end

subgraph group_data["Data Access"]
  node_people_dal["People data access<br/>[clsPersonData.cs]"]
  node_license_dal["License data access<br/>[clsLicensData.cs]"]
  node_sql[("SQL Server")]
end

subgraph group_domain["Licensing Operations"]
  node_application_ops["Local applications"]
  node_testing_ops["Testing pipeline"]
  node_international_ops["International licensing"]
  node_detention_ops["Detention and release"]
  node_license_maintenance["Renewal and replacement"]
end

node_operator(("Department operator"))

node_operator -->|"signs in"| node_login
node_program -->|"launches"| node_login
node_login -->|"opens workspace"| node_main
node_main -->|"opens"| node_people_ui
node_main -->|"opens"| node_users_ui
node_main -->|"opens"| node_app_ui
node_app_ui -->|"manages"| node_application_ops
node_app_ui -->|"opens"| node_international_ops
node_app_ui -->|"opens"| node_detention_ops
node_app_ui -->|"dispatches"| node_license_maintenance
node_license_ui -->|"looks up license"| node_license_bll
node_application_ops -->|"manages applications"| node_application_bll
node_testing_ops -->|"records tests"| node_test_bll
node_international_ops -->|"manages permits"| node_intl_bll
node_detention_ops -->|"handles detention"| node_enforcement_bll
node_people_ui -->|"manages people"| node_people_bll
node_users_ui -.->|"uses identity"| node_people_bll
node_people_bll -->|"reads and writes"| node_people_dal
node_license_bll -->|"reads and writes"| node_license_dal
node_people_dal -->|"queries"| node_sql
node_license_dal -->|"queries"| node_sql

click node_program "https://github.com/mrwnmoh/dvld/blob/main/DVLV/DVLV/Program.cs"
click node_login "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Login/Forms"
click node_main "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Main/Forms"
click node_people_ui "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Pepole"
click node_users_ui "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Users"
click node_app_ui "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications"
click node_license_ui "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/License"
click node_people_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsPerson.cs"
click node_application_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsApplication.cs"
click node_test_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsTests.cs"
click node_license_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsLicens.cs"
click node_enforcement_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsDetainedLicenses.cs"
click node_intl_bll "https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsInternationalLicnese.cs"
click node_people_dal "https://github.com/mrwnmoh/dvld/blob/main/DVLV/DataAccsesLayer/clsPersonData.cs"
click node_license_dal "https://github.com/mrwnmoh/dvld/blob/main/DVLV/DataAccsesLayer/clsLicensData.cs"
click node_application_ops "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/LocalDrivingLicens"
click node_testing_ops "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications"
click node_international_ops "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/International%20License"
click node_detention_ops "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/Detain%20Licenses"
click node_license_maintenance "https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/License/Forms"

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_app_ui,node_license_ui toneBlue
class node_people_bll,node_application_bll,node_test_bll,node_license_bll,node_enforcement_bll,node_intl_bll toneAmber
class node_people_dal,node_license_dal,node_sql toneMint
class node_application_ops,node_testing_ops,node_international_ops,node_detention_ops,node_license_maintenance toneRose
class node_operator toneIndigo
```

## Components

### Desktop UI

- [Application startup](https://github.com/mrwnmoh/dvld/blob/main/DVLV/DVLV/Program.cs): `DVLV/DVLV/Program.cs`
- [Login and settings](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Login/Forms): `DVLV/DVLV/Login/Forms`
- [Main workspace](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Main/Forms): `DVLV/DVLV/Main/Forms`
- [People management](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Pepole): `DVLV/DVLV/Pepole`
- [User management](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Users): `DVLV/DVLV/Users`
- [Application services](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications): `DVLV/DVLV/Applications`
- [License services](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/License): `DVLV/DVLV/License`

### Business Logic

- [People and identity](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsPerson.cs): `DVLV/BussneicsLayer/clsPerson.cs`
- [Application lifecycle](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsApplication.cs): `DVLV/BussneicsLayer/clsApplication.cs`
- [Tests and appointments](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsTests.cs): `DVLV/BussneicsLayer/clsTests.cs`
- [License rules](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsLicens.cs): `DVLV/BussneicsLayer/clsLicens.cs`
- [Detention registry](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsDetainedLicenses.cs): `DVLV/BussneicsLayer/clsDetainedLicenses.cs`
- [International permits](https://github.com/mrwnmoh/dvld/blob/main/DVLV/BussneicsLayer/clsInternationalLicnese.cs): `DVLV/BussneicsLayer/clsInternationalLicnese.cs`

### Data Access

- [People data access](https://github.com/mrwnmoh/dvld/blob/main/DVLV/DataAccsesLayer/clsPersonData.cs): `DVLV/DataAccsesLayer/clsPersonData.cs`
- [License data access](https://github.com/mrwnmoh/dvld/blob/main/DVLV/DataAccsesLayer/clsLicensData.cs): `DVLV/DataAccsesLayer/clsLicensData.cs`
- **SQL Server**

### Licensing Operations

- [Local applications](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/LocalDrivingLicens): `DVLV/DVLV/Applications/LocalDrivingLicens`
- [Testing pipeline](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications): `DVLV/DVLV/Applications`
- [International licensing](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/International%20License): `DVLV/DVLV/Applications/International License`
- [Detention and release](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/Applications/Detain%20Licenses): `DVLV/DVLV/Applications/Detain Licenses`
- [Renewal and replacement](https://github.com/mrwnmoh/dvld/tree/main/DVLV/DVLV/License/Forms): `DVLV/DVLV/License/Forms`

### Other components

- **Department operator**

## Connections

- Department operator → Login and settings: signs in
- Application startup → Login and settings: launches
- Login and settings → Main workspace: opens workspace
- Main workspace → People management: opens
- Main workspace → User management: opens
- Main workspace → Application services: opens
- Application services → Local applications: manages
- Application services → International licensing: opens
- Application services → Detention and release: opens
- Application services → Renewal and replacement: dispatches
- License services → License rules: looks up license
- Local applications → Application lifecycle: manages applications
- Testing pipeline → Tests and appointments: records tests
- International licensing → International permits: manages permits
- Detention and release → Detention registry: handles detention
- People management → People and identity: manages people
- User management → People and identity: uses identity
- People and identity → People data access: reads and writes
- License rules → License data access: reads and writes
- People data access → SQL Server: queries
- License data access → SQL Server: queries
