@startuml
skinparam componentStyle uml2
package "Система «Корпоративная библиотека»" {
[Auth & Access Module\n(Управление доступом)] as Auth
[Catalog & Storage Module\n(Каталогизация и хранение)] as Storage
[Versioning & Review Module\n(Версионность и рецензирование)] as Versioning
[Search & Indexing Module\n(Поиск и индексация)] as Search
interface "IAuthService" as IAuth
interface "IStorageService" as IStorage
interface "IVersionService" as IVersion
interface "ISearchService" as ISearch
' Предоставляемые интерфейсы (Круг / Ball)
Auth -down- IAuth
Storage -down- IStorage
Versioning -down- IVersion
Search -down- ISearch
' Зависимости и требуемые интерфейсы (Полукруг / Socket через пунктир)
Storage ..>(IAuth : <<use>>
Versioning ..>(IAuth : <<use>>
Versioning ..>(IStorage : <<use>>
Search ..>(IStorage : <<use>>
}
@enduml