At the Agile 2017 conference this week Lynn Winterboer was kind enough to invite me to her workshop which explored how to apply agile strategies in the data space. She did a great job of facilitating the group of about 40 people through identifying the challenges currently faced by teams. The main issues that the group explored were:
- Product ownership and data
- Agile data architecture
- Data testing and tooling support
- How to include data people, and activities, in development
Lynn will soon be blogging about the results so I’m not going to dive into that here. I suspect that her blog post will be very interesting.
What I’d like to do here is share a few thoughts about what I observed:
- The discussion was very healthy. This was a group of very smart people coming from different backgrounds. Everyone was interested in sharing their experiences and working together to solve some tough problems.
- Context counts. “Agile and data” is a big topic. A few people were dealing with the issue of how to address data issues on application development projects, some were focused on agile data warehousing/business intelligence, and some were focused on complex data analytics. In our conversations it was very clear that strategies which worked for app development wouldn’t work for analytics, and vice versa. This is why Context Counts is one of Disciplined Agile’s fundamental principles.
- The challenges are tough. Everyone was working in organizations that were struggling with these challenges. For each of issue we could have spent much longer exploring the potential solution(s).
- Every challenge we discussed are solved issues. I’ve always found it frustrating when people, who are very smart and who have been struggling with a problem for awhile, have clearly never thought to simply google “database testing tools” or “agile architecture” to find out what advice is already out there. When we discussed testing I even asked why people hadn’t done such as search, and then pointed out that there are a lot of tools available and even a few people maintaining lists of such tools (such as 40+ database testing tools). All of these challenges, and more, have solutions described by techniques of the Agile Data and Agile Modeling methods from about 15 years ago. These techniques have of course been adopted, and put into context, by the Disciplined Agile (DA) framework and in particular Disciplined Agile Delivery (DAD).
- The “factions” behaved differently. Long ago I pointed out that there’s a cultural impedance mismatch between the data and developer communities, and it was pretty easy to observe during this workshop. For example, during the workshop we were asked to identify solutions to the challenges. Lynn wanted us to write this information on flip-chart paper so that she could later scan it and share it with others. For awhile the groups dominated by data people discussed the solutions without writing anything down. Their conversations were good, but they quickly got stuck in analysis paralysis mode because they seemed to be afraid to write down information for fear that they couldn’t easily update it (the challenge with having paper to write on instead of whiteboards). The groups dominated by agile people, the ones focused on development and architecture, started by writing on sticky notes and putting them on the flip chart paper. This fundamental agile modelling strategy enabled them to visualize and share their work transparently, enhancing their conversation and enabling them to move forward easily.
- Database (tool) vendors need to up their game. Speaking out tools, database vendors and data warehouse tool vendors really need to up their game. Here’s a few very harsh questions: Does your database tool vendor or ETL tool vendor offer testing tools that enable both black box and white box database testing? Answer: very likely no, because their customers don’t demand that of them. Did your data team even think to ask for such tools? Answer: very likely not. How many database testing books do you think have been written? Answer: very few, go do a search and see for yourself. Why does the data community have such a huge blind spot when it comes to testing? Answer: this is a huge side effect of the cultural impedance mismatch.
I’m very happy to see that Lynn is actively trying to bridge the agile and data communities, helping us to learn from each other. This is something she’s been doing for years and doing it quite well. My experience is that both communities would benefit greatly from more collaboration with each other.