When developing an application using agile techniques, what if any initial modelling/architecture activities do you do, and how do you capture that knowledge??
I’m not after a bullet list about XP, Scrum, Crystal, DSDM..etc as I’m familiar with the methodologies. But what do you do above and beyond the guidance given by these.
I find I work best by thinking the system through first, but also like the benefits of timeboxing, story cards, pairing, tdd.
The closest thing I’ve seen so far is Scott Ambler’s Initial Architecture Modelling, but was wondering what alternatives are used out there?
I think that a reasonably complete set of wireframes is indispensible up-front. It gives you a way to communicate with the customer before you start your coding sprints, and gives them some concept of what you’re planning to build.
We just did this for a 9 month project and it went really well as a result. We weren’t constrained by the design, and could branch out in different directions as we saw improvements. At the same time our customer had a visual idea of what work was done and what was yet to be done. The wireframes were especially valuable when it came time to prioritize the backlog.