What do you like best?
Speed, Quality, Patterns and the amount of code which gets generated.
For basic CRUD operations, If you are clear about your domain models and their relations, i bet it wont let you write a single line of java code. if will just create the entire application for you end to end.
WIth STS you can push in all the aspects if you dont like them
What do you dislike?
lot of Dojo code gets generated in jsps which is not easily editable
Recommendations to others considering the product
1.I dont see ROO gaining traction mostly due to complexity
2.It heavily relies on AoP, almost entire code is generated in the form of Aspects
3. you will need Spring STS to remove aspects and convert it back to normal Java/J2ee project.
4.if you are developing Web MVC project, it will generate a lot of Dojo+jsp code which is entirely useless if you dont know dojo. you will have to rewrite entire UI layer+jsps.
What business problems are you solving with the product? What benefits have you realized?
I used it extensively when i was working for Samsung Research and Development Institute, it was an RnD institute and we had to develop prototypes which can be scaled to production level applications, and the development had to be really fast.
After some research i ended up using Spring ROO around 3 year ago and i never looked for any other RAD tool.
It lets you choose from vast variety of technologies, patterns, libraries to create your Spring based application. Spring ROO in conjunction with Spring STS is really powerful.
It has capability to create applicaitons which are 'almost' prod ready and fully blown.