When to Use Use Cases I can't imagine a situation now in which I would not use use cases. They are an essential tool in requirements capture and in planning and controlling an iterative project. Most of your use cases will be generated during that phase of the project, but you will uncover more as you proceed. Keep an eye out for them at all times. Every use case is a potential requirement, and until you have captured a requirement, you cannot plan to deal with it.
Some people list and discuss the use cases first, then do some modeling.
I sometimes do that, but I've also found that conceptual modeling with users helps uncover use cases. I recommend that you try it both ways and see which works best for you. Different designers make use of use cases with varying degrees of granularity. In a recent project of about the same magnitude, I had more than 100 use cases. I prefer smaller-grained use cases because they make it easier to work with the commitment schedule.