@startuml allowmixing skinparam PackageStyle Frame package EpisodeActionApi { package EpisodeActionController {} package EpisodeActionService {} package EpisodeActionDAO {} } package SubscriptionsApi { package SubscriptionController {} package SubscriptionService {} package SubscriptionDAO {} } package AuthenticationApi { package AuthenticationController {} package AuthenticationService {} package AuthenticationDAO {} } package Model {} database Database class PSEApplication () HTTPS HTTPS -down- PSEApplication Model .o Database: ORM PSEApplication --> EpisodeActionController PSEApplication --> SubscriptionController PSEApplication --> AuthenticationController AuthenticationController --> AuthenticationService AuthenticationService --> AuthenticationDAO AuthenticationDAO --> Database SubscriptionController --> SubscriptionService SubscriptionService --> SubscriptionDAO SubscriptionDAO --> Database EpisodeActionController --> EpisodeActionService EpisodeActionService --> EpisodeActionDAO EpisodeActionDAO --> Database hide AuthenticationController hide AuthenticationService hide AuthenticationDAO hide SubscriptionController hide SubscriptionService hide SubscriptionDAO hide EpisodeActionController hide EpisodeActionService hide EpisodeActionDAO hide Model hide Util @enduml