You can emulate many Workplace Shell characteristics in a straightforward PM program. For example you can:
Although a PM program can participate to some extent with the Workplace Shell, there are still things the user may want to do that cannot easily be implemented without developing the application using SOM and WPS.
Consider a PM program that displays some icons in a container window representing customers of a particular branch of a company. The user sees these icons in a window that looks very much like a WPS folder. He may reasonably expect to be able to drag the icon of a customer in whom he is particularly interested onto the desktop or into another folder.
How can a PM program handle this? The Workplace Shell supports the OS/2 File rendering mechanism, but that is not really suitable for customers, whose details are more likely to share a database table than to occupy a separate file each. The PM program may allow the drag to take place, but cannot support any rendering mechanism that a WPS folder will understand, so the user sees the "inhibited" pointer while the customer icon is over the desktop and is not allowed to drop it.
This confuses the user, who expects to be able to put any object anywhere he chooses.