Software Quality

January 30, 2011

Architecture is a process, not an artifact

Filed under: Case Study, Practices — David Allen @ 10:57 am

Architecture varies with the project

As a developer, if you work on small projects, you probably play many roles, including architect. Those are nice gigs because you have a close relationship with yourself (I hope). The feedback loop is short and efficient.

If you work on large projects, architecture may be a specialized role played by one or more people. The minute the architect is someone other than the developer, things begin to get challenging. Many modern software development projects involve the integration of several different technology platforms, with the efforts of large numbers of people divided into many different kinds of teams.

This post is a tale of architectural neglect and possible solutions.


January 25, 2011

Agile as an excuse for not gathering requirements

Filed under: Case Study, Practices — David Allen @ 7:52 am

Over the last two years, I have observed RUP and Scrum processes in action and I can make some comparisons. And they have more in common than you might think. In particular, the factors that cause them to succeed or fail are very similar. (more…)

January 16, 2011

Code Freeze 2011 was Great! The theme this year was TESTING

Filed under: Practices, Presentations, Testing — David Allen @ 7:42 pm

The latest Code Freeze 2011 was a great event. The University of Minnesota hosted it again, and it was sold out.  We lead several code dojos. The one I assisted with was intended to demonstrate TDD and pair programming techniques. The audience engaged us with a healthy dose of skepticism.  Here were some of their concerns and reactions.   As usual, I am not satisfied with how we answered them on the spot, so I am reprising the Q & A session here with responses that are more thoughtful and informed by the collective responses of the other dojo leaders I heard. (more…)

January 5, 2011

Minneapolis talks about Architecture

Filed under: Practices — David Allen @ 11:17 pm

So at the Twin Cities Practical Agility meeting tonight, we had a lively discussion on Architecture. I expected more fire and argument. But we all seemed to agree that architecture was important and that agile methods don’t give much emphasis or guidance for this important activity.  The meeting was well-attended as always. But it was not as contentious as it normally is. I think many of us felt out of our depth discussing architecture. We’ve done enough to know it is important and interesting. And there were actually several people with real architecture experience.  But when we addressed questions like “Have you seen architecture done well on an agile project? What did that look like?”  or “How do you staff an agile project for architecture, and what do architects do?”  We were not quite as confident as we have been on other topics.

As always, I enjoyed the fellowship with great people, and was impressed by the speakers who gave lightning talks. What a great city to live and work in! This is one reason I moved to Minneapolis 20+ years ago – the opportunity to socialize with really talented and bright computer professionals and problem solvers.

In my lightning talk I mentiond the game “Hard Choices” that I mentioned in a previous blog post. But mostly, I talked about my experience with the lessons I have recently learned about architecture, and my recent interest in learning more about it.

Blog at