Over the past week, I’ve put together a few thoughts about application design in an Agile workplace. There’s a lot more to this story than I could write down, but hopefully this serves at the starting point for discussion and thought on the topic. Design is hard; the best design is both adaptable enough to support reasonable cases, sturdy enough to push developers to write good code by default, and structured enough to be easy to understand and maintain. This is tough enough when business rules are stable, but in a flexible environment with ever-changing rules, design needs to be just as agile as application code itself.
The series, in links: