COMMON DIFFICULTIES IN CUSTOM SOFTWARE DEVELOPMENT AND EXACTLY HOW TO CONQUER THEM