- provided (engl.) = "bereitgestellt"
- required (engl.) = "benötigt"
Heißt also, dass eine Komponente anderen Komponenten über ein "provided" Interface Funktionalität zur Verfügung stellen kann, aber auch Funktionalität über "required" Interfaces von anderen Komponenten benötigt, um funktionieren zu können. Als Beispiel für ein provided Interface denke da z.B. an eine java.util.ArrayList. Diese stellt etwa über das java.util.List Interface Funktionalität bereit. Und z.B. ein java.io.BufferedReader benötigt einen anderen java.io.Reader als required Interface, den er puffern soll, bietet in diesem Fall aber auch dieselbe Schnittstelle an.
Für eine Komponente A ist ein provided Interface also eine Schnittstelle, die andere Komponenten von A nutzen können und ein required Interface ist eine Schnittstelle, die A von anderen Komponenten nutzen muss.