Waterfall some are saying is beginning to fall in popularity when it comes to software development. One of the reasons is that due to its nature of producing software as one big release there are times when defects/bugs that could be identified earlier are not however, using Agile as a methodology defects/bugs are found earlier and put into the next sprint to prevent issues. Agile is gradually becoming known as the proactive approach dealing with issues early and helps to build team moral when developer tasks that sprint are presented to the team.
Another major criticism of Waterfall is its assumption that at the first stage every team member will know all requirements needed for a project which is unrealistic and hence, is why Agile is more practical because requirements can change and a project needs to be able to tweak this sooner rather than later.
Agile in the future looks like it will become more refined but, the approach will vary more based on the companies way of working and business objectives.