# Class CIM_SoftwareFeature
extends CIM_LogicalElement

The CIM_SoftwareFeature class defines a particular function or capability of a product or application system. This class captures a level of granularity describing a unit of installation, rather than the units that reflect how the product is built or packaged. The latter detail is captured using a CIM_SoftwareElement class. When a SoftwareFeature can exist on multiple platforms or operating systems (for example, a client component of a three tiered client/server application that runs on Solaris, Windows NT, and Windows 95), the Feature is a collection of all the SoftwareElements for these different platforms. In this case, the users of the model must be aware of this situation since typically they will be interested in a sub-collection of the SoftwareElements required for a particular platform. SoftwareFeatures are always defined in the context of a CIM_Product, using the CIM_ProductSoftwareFeature association. Features are delivered through Products. Optionally, SoftwareFeatures from one or more Products can be organized into ApplicationSystems using the CIM_ApplicationSystemSoftwareFeature association.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_SoftwareFeature

## Direct Known Subclasses

CIM_AGPSoftwareFeature
CIM_BIOSFeature
CIM_VideoBIOSFeature

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | The CIM_SoftwareFeature class defines a particular function or capability of a product or application system. This class captures a level of granularity describing a unit of installation, rather than the units that reflect how the product is built or packaged. The latter detail is captured using a CIM_SoftwareElement class. When a SoftwareFeature can exist on multiple platforms or operating systems (for example, a client component of a three tiered client/server application that runs on Solaris, Windows NT, and Windows 95), the Feature is a collection of all the SoftwareElements for these different platforms. In this case, the users of the model must be aware of this situation since typically they will be interested in a sub-collection of the SoftwareElements required for a particular platform. SoftwareFeatures are always defined in the context of a CIM_Product, using the CIM_ProductSoftwareFeature association. Features are delivered through Products. Optionally, SoftwareFeatures from one or more Products can be organized into ApplicationSystems using the CIM_ApplicationSystemSoftwareFeature association.
UMLPackagePath | string | CIM::Application::DeploymentModel
Version | string | 2.6.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
IdentifyingNumber | string |
Description | string | The scoping Product's identification.
Key | boolean | true
MaxLen | uint32 | 64
Propagated | string | CIM_Product.IdentifyingNumber
Name | string |
Description | string | The Name property defines the unique label by which the SoftwareFeature is identified. This label should be a human-readable name that uniquely identifies the element in the context of the element's namespace.
Key | boolean | true
MaxLen | uint32 | 256
Override | string | Name
ProductName | string |
Description | string | The scoping Product's commonly used name.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_Product.Name
Vendor | string |
Description | string | The scoping Product's supplier.
Key | boolean | true
MaxLen | uint32 | 256
Propagated | string | CIM_Product.Vendor
Version | string |
Description | string | The scoping Product's version.
Key | boolean | true
MaxLen | uint32 | 64
Propagated | string | CIM_Product.Version

### Inherited Properties

Name | Data Type
--- | ---
Caption | string
CommunicationStatus | uint16
Description | string
DetailedStatus | uint16
ElementName | string
Generation | uint64
HealthState | uint16
InstallDate | datetime
InstanceID | string
OperatingStatus | uint16
PrimaryStatus | uint16
Status | string
OperationalStatus | uint16[]
StatusDescriptions | string[]

## Class Methods