Working with one of my clients our process and platform seem to suffer from the a small set of problems, which seem to jump up and bite us way too often.
These can all be addressed technically, but we lack the focus and commitment to do so.
1. XSLT files are deployed via form submitting using a legacy tool. Firefox render HTML entities as the actual characters instead of the entity forms they originally came in. So fixing a comma or something requires that you validate the complete style sheet prior to clicking the submit button, best way is to do this in an external editor or by copy-pasting the actual source from Firefox
2. Some applications are reserved for special customer groups, so unless we have accounts available with the proper credentials we are not able to validate and examine services in test and production. Test accounts are normally available during project time, but are terminated when projects are closed so maintenance are left with nothing
3. Some applications are huge distributions of several applications gathered under a name space, this mean that if you update a single application and you want to deploy it using our tools (Module::Build) instead of copying files manually you have to be sure you do not break something in the environment onto which you are deploying
We have become increasingly good of sticking things in CVS and CVS is becoming the repository from where the latest code can be retrieved, but we do have situations where we are more than one developer working on something, which is distributed together - branches should be able to handle this, but we lack the discipline to go this way - and branching and merging in CVS is not as fun as in SVN - and we are using CVS.
There are probably other things I have forgotten, but we these where the most popular ones - I would love to improve these tools - I have talked to techie working with the client about open sourcing the framework, so I could throw in some extra curricular hours and Google days, but so far he has not been supportive of the idea, I think mostly because of personal relation to the source code, a lot of people prefer things to be perfect before showing it to others - I am more of the opinion that perfection is a practically unreachable state.