Failure to effectively transition to Agile development is often based on a fundamental failure to understand what a User Story is. Allow me to explain. The most important aspect of a User Story is that it's an independently *schedulable* unit of requirement (feature). The key to achieving the "independently schedulable" characteristic of a user story is that you express it in terms of how a "user" would use it. This leads you to a unit of functionality that's implemented end-to-end (UI to backend) that a user can actually interact with. Not surprisingly, because of the focus on how a user would think about a feature, a user stories are highly readable - and could very well be written by the users themselves. However, the other important and less obvious aspect of a User Story is the emphasis on communication with the end-user and getting confirmation on the acceptance criteria. Describing all the requirements as User Stories for a decent sized product is rig...
Software IS Magic. Almost literally magic! If you can imagine it, you can make it happen with software. My passion is to explore how to use software to imagine solutions to all problems - and tackle them with software products, one by one. And along the way, build a startup/business, where money is the 2nd Derivative - the solution to a problem is the 1st.