enterprise applications challenges