Salute e malattia
Questo diagramma classi UML completo modella i core actors, entità, e relazioni per un moderno hospital management system (HMS), supportando workflow clinici, amministrativi, e finanziari.
+----------------+
| Actor: Paziente |
+----------------+
* Attributi:
- PatientID: String
- Nome: String
- DataNascita: Date
- Genere: Enum
- Indirizzo: Address
- Telefono: String
- Email: String
- Assicurazione: InsurancePolicy
- ContattoEmergenza: ContactInfo
* Operazioni:
+ Registra()
+ AggiornaProfilo()
+ RichiediAppuntamento()
+ VisualizzaCartellaClinica()
+ VisualizzaStoricoFatturazione()
+ PagaFattura()
+ FornisciConsenso()
+-------------------+
| Actor: Medico |
+-------------------+
* Attributi:
- DoctorID: String
- Nome: String
- Specialità: SpecialtyEnum
- Dipartimento: Department
- NumeroLicenza: String
- AnniEsperienza: Integer
- Orario: Schedule
* Operazioni:
+ DiagnosticaPaziente()
+ PrescriveTrattamento()
+ EsegueProcedura()
+ VisualizzaCartellePazienti()
+ GestisciAppuntamenti()
+ FirmaDocumentazione()
+ OrdinaEsami()
+----------------------+
| Classe: Appuntamento |
+----------------------+
* Attributi:
- AppointmentID: String
- PatientID: String
- ProviderID: String
- DateTime: DateTime
- Durata: Integer
- Tipo: AppointmentType
- Status: AppointmentStatus
- Locazione: Location
- Motivo: String
* Operazioni:
+ Schedule()
+ Reschedule()
+ Cancel()
+ CheckIn()
+ Complete()
+ GetDetails()
+--------------------------+
| Classe: CartellaClinica |
+--------------------------+
* Attributi:
- RecordID: String
- PatientID: String
- Incontri: List<Encounter>
- Diagnosi: List<Diagnosis> (ICD-10)
- Allergie: List<Allergy>
- Farmaci: List<Medication>
- Immunizzazioni: List<Immunization>
- ListaProblemi: List<Problem>
* Operazioni:
+ AggiungiIncontro()
+ AggiungiDiagnosi()
+ AggiornaListaProblemi()
+ GeneraRiassunto()
+ ExportCCD()
+------------------+
| Classe: Trattamento |
+------------------+
* Attributi:
- TreatmentID: String
- PatientID: String
- ProviderID: String
- Diagnosi: Diagnosis
- Piano: PianoCura
- Farmaci: List<Prescrizione>
- Ordini: List<Ordine>
- Status: TreatmentStatus
* Operazioni:
+ CreaPiano()
+ AggiornaPiano()
+ AggiungiPrescrizione()
+ AggiungiOrdine()
+ GetStorico()
+----------------+
| Classe: Fattura |
+----------------+
* Attributi:
- BillID: String
- PatientID: String
- EncounterID: String
- LineItems: List<BillLineItem>
- TotaleAddebiti: Decimal
- PagamentiAssicurazione: Decimal
- ResponsabilitàPaziente: Decimal
- Status: BillingStatus
* Operazioni:
+ Genera()
+ InviaClaim()
+ RegistraPagamento()
+ Rettifica()
+ GeneraEstrattoConto()
+---------------------------+
| Classe: Ospedale |
+---------------------------+
* Attributi:
- HospitalID: String
- Nome: String
- Indirizzo: Address
- Telefono: String
- NumeroLicenza: String
- NumeroLetti: Integer
- Dipartimenti: List<Department>
- Provider: List<Provider>
* Operazioni:
+ GestisciRisorse()
+ GeneraReport()
+ ConfiguraWorkflow()
+ AuditCompliance()
Nota implementazione: Questo modello allinea con risorse HL7 FHIR (Patient, Practitioner, Encounter, CarePlan, MedicationRequest, Claim) per interoperabilità.
Ospedali