Question

How do I analyze and design only a part of the system?

This component is dependent to other parts of the system and also has many dependencies in the system. The customer is suggesting to me which part should I do first.

How can I ensure that the components of the system are correct?

How can I minimize change (say half of works done) due to later user stories?

Was it helpful?

Solution

Agile is not just about developing system in chunks. There are many practices that you need to apply in cooperation in order to be successful.

For example, you architecture must be built to embrace change and your code should be sufficiently covered with the unit-tests to support constant refactoring.

E.g. http://wirfs-brock.com/blog/2011/08/26/agile-architecture-myths-4-because-you-are-agile-you-can-change-your-system-fast/

OTHER TIPS

Agile means to be able to develop a minimum functional requirement in a short cycle. In order words, build a feature/part of your system that provides value to the user and give him a something that he can see as soon as possible, so you will get an early feedback to go to the right direction.

To achieve that the architecture of your project must to be very flexible and their components must be cohesive but decoupled, so it is easy to change. Try to do what the client asked without thinking to much about the future or doing pre optimisations.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top