A DBMS has evolved into a complex software system and its development typically requires thousands of human years of development effort. What is always the optimal solution to manage databases?