The main reason for this is that the new generation of players are better equipped to deal with International cricket than the previous generation. As BD are still a developing Test nation (12 years), every 3-5 years there is a new batch of young players (usually promoted straight from the U19s) debuting in their teens, replacing previous generation players. However what we are now seeing is that more of the previous gen of players are being kept and the newer players are debuting at an older age than previous debutants:
Gen 1: Pre Test players that played ODIs and made their Test debuts once BD became a Test nation e.g. Habibul Bashar, Khaled Mashud, Mohamed Raffique, Javed Omar
Gen 2: Ashraful, Mortaza, Alok Kapali, Aftab Ahmed,
Gen 3: Mushfiqur, Shakib, Tamim, Siddique, Raquibul Hasan
Gen 4: Anamul, Mominul, Abul Hasan
In 4 years time, from the team that has been playing the past few years, I can only see Shakib, Tamim and Mushfiqur (might have to stop keeping and play as batsman only) being definite first teamers.
I'm confident that Nafees, Kayes, Siddique, Nazimuddin etc won't be anywhere near the National Squad, and even players such as Mashrafe Mortaza, Mahmadullah Riyad, Abdur Razzak, and Naeem Islam struggling to stay in the team.
I expect the bulk of the National Team (for all 3 formats) to be made up of; Shakib, Tamim, Mushfiqur, Nasir, Elias Sunny, Sohag Gazi, Rubel Hossain, Anamul, Mominul, Abul Hasan, Sabbir Rahman, Alauddin Babu, Asif Ahmed, Soumya Sarker and Taskin Ahmed.
I expect the likes of Nurul Hasan, Noor Hossain, Abu Jayed, Abu Haider, Liton Das, Al Amin Jr and Mosaddek Hossain to be pushing for a place in the National Squad.