Dear Mohan,
It is not a good practice for both the employer and employee to make a salary increment agreement for 3 years or any multiple years.
If you have an agreement that states for the next 3 years, the annual salary increment is on average 15%, the employer must fulfill this agreement regardless of whether the economy is up or down, or whether the company is profitable or not. This commitment will cause a financial burden to the company.
Similarly, if the company performs exceptionally well with significant growth but still only pays at the average rate, this will lead to morale and motivation issues, resulting in employee dissatisfaction and ultimately turnover.
Annual salary increments are still the best practice as they are flexible and should be linked to the performance of the economy and the company.
Regarding your comment on "to avoid unwanted conflicts" - conflicts mainly arise due to a lack of or insufficient communication. Therefore, improve your employee communications, and these conflicts should be reduced.
Autumn Jane