It is not a good practice both for the employer and employee to make a salary increment agreement for 3 years or any multiple years.
If you have an agreement that says for the next 3 years, the annual salary increment agreement is average 15%, the employer has to fulfill this agreement disregard whether the economy is up or down; or whether the compay is profitable or not. This commitment will caused a financial burden to the company.
Similarly, if the company did exceptionally well with huge growth but still maintain to pay only at the average, this will cause morale and motivation issue, which will leads to employee dissatisfaction and finally turnover.
Annual salary increment is still the best practice as it is flexible and it should be link with performance of the economy and company.
As for your comment on "to avoid unwanted conflicts" - conflicts arise mainly due to lack of or insufficient communications. So, beef up your employee communications and this conflicts should be reduced.