@startuml 'maybe for sbruder since he did videoshop:inventory-increment' 'maybe TR0N-ZEN since he did videoshop:keyword-search' skinparam linetype ortho skinparam groupInheritance 2 package Spring { interface Model 'havent used Assert yet as in example' } package Salespoint { interface DataInitializer class Quantity interface UniqueInventory << T > UniqueInventoryItem >> class UniqueInventoryItem } package catering.catalog { interface CateringCatalog } package catering.inventory { class InventoryController { + InventoryController(inventory : UniqueInventory) + stock(model : Model) : String } class InventoryInitializer { + InventoryInitializer(inventory : UniqueInventory, catalog : CateringCatalog) + initialize() : void } } CateringCatalog "1 -cateringCatalog" <-- InventoryInitializer DataInitializer <|.. InventoryInitializer Quantity <.. InventoryInitializer UniqueInventoryItem <.. InventoryInitializer UniqueInventory "1 -inventory" <-- InventoryInitializer Model <.. InventoryController UniqueInventory "1 -inventory" <-- InventoryController @enduml