Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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!

share|improve this question
writing use cases is 'gathering requirements' – kevin cline Aug 16 '13 at 6:05
up vote 3 down vote accepted

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.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.