Dan,
We have two JDE installations (separate Enterprise Servers, Deployment Servers, Web Servers, Dtabase Servers and Admin/development Clients) one for production (one environment, thus one pathcode and one database) and one for test/development (four environments, four pathcodes, five databases - one for each pathcode and one for system wide tables). However, I keep them in synch. As far as CNC time/effort goes, we are basically a one man JDE shop - me. We don't have a great amount of development. If I haven't the time for it, we outsource it. I am rarely required to work long hours.
Now as to the reason for this, it is a policy of the organisation for which I work to keep production and test/development systems separate. There are a number of advantages to this: system wide changes can be tested without effecting production (eg security); processing intensive tasks can be done without bring production to it's knees; Access to production is not possible for outsourced resources. Changes/updates to machine hardware and operating systems can be tested first before being done in production. Even highly trusted, highly competent, highly skilled people can make mistakes.
Granted, these things do not happen all the time, but they do happen and having separate production and test/development installations allow them to happen, without effecting production.
However, we do not use multiple OLs in the one installation of JDE.