Use the DDK if you have a hardware device that is not 100 percent compatible with the devices supported by the Windows 3.1 retail device drivers, or if you want to offer Windows users access to unique features of your device.
Independent hardware vendors (IHV) use the DDK to create device drivers and virtual devices for new hardware devices. Independent software vendors (ISV) use the DDK to customize existing drivers and virtual devices so that their applications can take better advantage of the device.