Architecture with Agility Workshop by Kevlin Henney @ Agile India 2013 Conference

Kevlin Henney is an author, presenter, and consultant on software development. He has written on the subject of computer programming and development practice for many magazines and sites, including Better Software, The Register, C/C++ Users Journal, JavaSpektrum, C++ Report, Java Report, EXE, and Overload. He is a member of the IEEE Software Advisory Board. Henney is also coauthor of books on patterns and editor of ’97 Things Every Programmer Should Know’.

Kevlin's Books

Henney has given keynote addresses at a number of conferences, including ACCU, DevWeek, Embedded Systems Club, GeeCON, GOTO, JAOO, Jfokus, NLUUG, OOP, PHPNW, SDC, Software Architect, and XP Day.

We are really excited to have Kevlin present his workshop on ‘Architecture with Agility’ at Agile India 2013.

Kevlin Henney

This week we interviewed Kevlin and got some more information about his workshop.

1. Agile practices talk about emergent design and iterative production, how does architecture fit into this model? Is agile architecture emergent?

Process influences and is influenced by what you build and what you can build is influenced by process. Software architecture can best be considered the set of significant design decisions, where significance relates to cost and difficulty of change. Agile projects that do not consider their architecture are not likely to remain agile for long. If an agile project focuses on delivering functionality at the expense of a design that supports incremental development, it will find itself struggling to deliver functionality. Of course, what constitutes a significant design decision is not obvious up front, so establishing an architecture is necessarily a dynamic that flows through the whole development rather than a fixed activity locked into an early phase of development. Architecture embodies knowledge, knowledge is acquired by learning and learning takes time; a development process structures this time.

2. What are some of the misconceptions about agile architecture?

The most obvious misconception is that a good architecture will just happen and emerge miraculously from a succession of iterations, without focused responsibility and effort. Agile architecture requires guidance and nurturing, shaping a system through a succession of changes, each considered to be an experiment against a hypothesis, each considered to be open to review and change.

3. What is the key take away for the attendees from the workshop?

An architecture will constrain or enable the process of development. If you want to be agile, want to make changes frequently and sustainably, want to deliver and get feedback more often, then you need an architecture that supports rather than frustrates such a process. And, like most things in life, if you want good architecture, you have to care about it.

Past talks by Kevlin:

Kevlin’s workshop has limited seats so go ahead and book at http://booking.agilefaqs.com before it is too late!

This entry was posted in Agile India, Agile India 2013 and tagged , by Naresh Jain. Bookmark the permalink.

About Naresh Jain

Naresh Jain is an internationally recognized Technology & Product Development Expert. Over the last decade, he has helped streamline the product development practices at many Fortune 500 companies like Google, Amazon, HP, Siemens Medical, GE Energy, Schlumberger, EMC, CA Technologies, to name a few clients. These days, he is more focused on engineering excellence and product innovation. In a nutshell, hire him as a consultant/mentor, if your entire organization wants to move beyond the Agile and Lean mindset. Naresh is leading two tech-startups, which build tablet-based adaptive educational apps for kids, conference management software and social-media search tool. His startups are trying to figure out the secret sauce for blending gamification and social learning using the latest gadgets. Naresh founded the Agile Software community of India, a registered non-profit society to evangelize Agile, Lean and other Light-weight Software Development methods in India. Naresh is responsible for conceptualizing, creating and organizing 50+ Software conferences worldwide.