Day two of the conference was equally rich. We kicked off the morning with Model-Driven Architecture (MDA), Object Design, and Agile User Requirements (read User Stories). I weighed in on my opinion of MDA as a lost cause; that stems largely from my close brushes with OptimalJ while subcontracting through Compuware. I think this was the point where I shared that if software development ever became so devoid of its aspects of art and craft that reliable, flexible, scalable, and maintainable software were crafted simply from drawing UML diagrams, I would leave the trade and pursue something else, like being a brickmason. No kidding, that's really what I think. At the point that this field became that miserable and devoid of soul, I'd want out. I have interviewed a couple of long-time programmers who are currently using WebLogic Integration (WLI), my inclinations about MDA's promises have been confirmed. Bruce made some comments about MDA related to linear algebra and Gödel's incompleteness theorems that I'd love to see unpacked in a blog entry or article sometime.
I spoke about user stories at length (maybe too much) and how they have been more worthwhile to me than use cases in providing low barriers to entry for requirements participation from business persons as well as technical persons. We also talked about how user stories break down the work into easily-prioritizable chunks of work that fit well within iterative development. Mike Cohn's User Stories Applied For Agile Software Development has been my invaluable reference in adopting user stories.
Agile Software Development was a natural segue. Regrettably, my notes are rather sparse. Must've been talking too much again 8^). I came away with quite a list of books and tools to check out:
- Slack : Getting Past Burnout, Busywork, and the Myth of Total Efficiency - Tom deMarco
- Peopleware - deMarco and Lister
- Domain-Driven Design - Eric Evans
- Secrets of Consulting - Gerald M. Weinberg
- Don't Make Me Think - Steve Krug