Actually, I have changed my stance on the timing of releasing new hardware. They could release a new Xbox One every single year. At first I was like, wait, they shouldn't do that, wait like 2.5-3 years before doing that but then that would be very close to the situation that we have now, it would feel like a whole "generation" gap and people would get mad that they bought one early because of the wait is not that short and the gain isn't that big. But if they literally did it every year where the box itself isn't that much more powerful people wouldn't feel that bad. And within 5 years time the different between XBO 2013 v. XBO 2018 would be a "generation" by normal standards.
Now I know some may be thinking about the dev compatibility issue. Well, if the developer develops toward the UWP, it would be up to the developer to choose what system they support (a la min requirements of PC) instead of MS. MS is just making the hardware and provides the API that has the ability to scale their code. Obviously it would be wise for them to start with the 2013 XBO (duh) as it has more people. And because the increments are smaller and the power isn't a huge jump, the dev isn't really worrying about year 1 to year 3 (usually AAA dev cycle) where they change the code a bunch. They can release their game and sell it to the millions who have XBO '13, '16', '17.
Then the last piece is making sure MS updates UWP for Xbox in a way that's beneficial to developers that want their games to scale (we currently don't have the knowledge around that right now in detail...only some). Also they have to make sure that the OS updates as well (they have been good about that). Each update doesn't necessarily mean only game updates but OS getting better because of the power involved. Also this also keeps the price up for the "big version" and give a healthy 2nd hand market to the other versions for retailers (including MS) and give better prices on the previous' year version (like Bgamer90 said). Also because there's a new version per year, that also means that they can't make many feature additions (that change a lot of the system) in one version so that developers can reasonably dev and test those features if they choose to use them.
So basically what I'm saying is that a yearly update to the XBO system can work because:
1. Difference in power in minimal from year to year
a. Gamers won't feel jipped because they bought last years version (maybe by 3rd)
b. Developers don't have to worry about power difference that much but it is dependent on...
c. Microsoft making UWP scale easier for developers. Also MS has to make the innovations for developers to take advantage of the differences between versions but not too many that it would be overwhelming for dev.
2. Allows Microsoft to innovate in hardware (not everything needs to be a power boost)
-----------------------------------------------------------------------------------------
Also a big portion is missing in this thread is that we all talk about AAA devs (which are already slow to do creative things) are now that XBO is going to be open up to more Indy devs this year, we'll see indy devs take advantage of the hardware innovations that MS does moreso than AAA that will most likely focus on the biggest population (XBO '13).