Level: Introductory to Intermediate
Ted Neward
Director, Developer Relations
Smartsheet.com
Fred Brooks said, "How do we get great designers? Great designers design, of course." So how do we get great architects? Great architects architect. But architecting a software system is a rare opportunity for the non-architect.
The kata is an ancient tradition, born of the martial arts, designed to give the student the opportunity to practice more than basics in a semi-realistic way. The coding kata, created by Dave Thomas, is an opportunity for the developer to try a language or tool to solve a problem slightly more complex than "Hello world". The architectural kata, like the coding kata, is an opportunity for the student-architect to practice architecting a software system. In this workshop, we'll do exactly that--architect. We'll first go over what architecture means and what the architect does, but then the focus will be on doing it. Participants will be given problems to solve, create an architecture to solve it, then defend their architecture against challenges and monkey-wrenches thrown at them from all corners.
In short, you'll be an architect without your job being on the line.
You will learn:
- Finally answer the question, "What is architecture?"
- Architecting in real-time
- Recognize when the architecture doesn't work, and how to refactor when necessary