La classe CIM_SoftwareFeature definisce una particolare funzione o capacità di un prodotto o un sistema applicativo. Questa ...

La classe CIM_SoftwareFeature definisce una particolare funzione o capacità di un prodotto o un sistema applicativo. Questa classe acquisisce un livello di granularità che descrive un'unità di installazione, anziché le varie unità corrispondenti alla modalità di realizzazione o di creazione del pacchetto del prodotto. Quest'ultimo dettaglio viene acquisito tramite una classe CIM_SoftwareElement. Nel caso di una funzionalità software che può esistere in più piattaforme o sistemi operativi (ad esempio, un componente client di un'applicazione client/server su tre livelli eseguito in Solaris, Windows NT e Windows 95), la funzionalità sarà una raccolta di tutti gli elementi del software per le diverse piattaforme. In questo caso, gli utenti del modello devono essere a conoscenza di questa situazione, perché saranno in genere interessati a una sottoraccolta di elementi del software necessari per una particolare piattaforma. 
Le funzionalità del software sono sempre definite nel contesto di una classe CIM_Product, tramite l'associazione CIM_ProductSoftwareFeature. Le funzionalità vengono fornite tramite i prodotti. Facoltativamente, le funzionalità del software di uno o più prodotti possono essere organizzate in sistemi applicativi tramite l'associazione CIM_ApplicationSystemSoftwareFeature.