I’m starting to work with agile iterative approach to software development and this question seems quite natural. After gathering the requirements I should write a few use cases to describe how the user interacts with the system while the requirements are being met. Now, how much time should we spent with this?
Should I spent something like a week figuring out the use cases, finish then and only then move to working with each of them to find the main objects? Or should I just write a few of them and get a small number to work with?
If I understood agile well, I think I should get just some of them and assure that the functionality being purposed there is indeed constructed and is already usable. Only then I should move to other use cases and review what was done in the use case finished. Am I right with this idea?
Thanks very much in advance!
1
Spend enough time developing use cases to get a reasonably complete understanding of the problem domain.
There is some benefit to having a big-picture view of the system as a whole. Therefore, I recommend that you complete your use case study first, before writing any code.
You can, however, begin identifying the objects from the use cases right away, as you will need some of those also before you begin coding. Working with the object definitions and use cases together will also help increase your confidence in the overall design.