First up, Yes you can Install Windows XP and Windows 7 side by side on the same system and be able to access your entire hard-drive from both OSs.
However from your post, you seem to be requiring the WindowsXP -just to be able to run a single (old) software..
You have to realize that this means you will always need to 'reboot' your system from Windows7 and get into WinXP just to use it (you'll get fed up of having to do this all the time- just to be able to run that software)
So my question- Are you sure you have tried the Compatibility settings And "Right Click on the Program - Run as Administrator" ?
If this still did not work, you may want to look up on google about compatibility issues with Windows7, and if you get a patch / fix that lets you run your software- perfect !!
If there is absolutely no fix/patch available for your software, then have you considered Installing a Virtual Machine software (such as VMWARE Player - and Run "Windows XP" within Windows 7
The advantage of this is that you dont have to reboot your system anytime just to be able to login to Windows XP and all you got to do is Start up VMWARE, and boot up your WinXP "virtual machine" and run the software you require..
Its very convenient and lets you have a full-fledged Windows XP Instance running in a 'virtual box' within Windows7 that you can power on or power off, just as when required..
If i had a choice of installing a physical windows xp next to my windows 7 OR Running WinXP through VMWare from within Win7, i'd go for the 2nd approach simply because of the convenience factor and the fact that it's really easy to setup