Fixed length of sprints. implementation of features isn't prioritized just for their value, but also for their size (it fits into the sprint). Fixed length sprints can also force into splitting of features which doesn't actually add any value.
Implementation of Scrum usually begins with a training session and then with "by-the-book" -implementation. This is usually a extreme change to previous work processes. Better way might be use value stream mapping and actually find out what the process is currently, and then decide what is the smallest step we can take to make it better.
So called continuous improvement, which actually is just phased improvement. It happens every two weeks, not continuously.
The value stream map for worst case if implementation goes right shows pretty well how much waste and waiting is involved in Scrum:
Idea | | Backlog | | Planning session (First prioritization) | | Sprint (Idea sits in backlog) | | Planning session (not important enough) | | Sprint (Idea sits in backlog) | | Planning session(made to be more important) | | Sprint (Story sits in backlog) | | Planning session (Didn't fit into sprint, splitted and designed) | | Sprint (Do first half of splitted feature) | | Planning session (do the rest) | | SprintWhat phases did actually add value? How long did it take to from idea to release?
There's a lot good in Scrum, I wont deny it. It gives a clear structure for development and you don't have to think what you do in the beginning, you just try to implement the process. You'll probably fail, but that's life.