Pleasantly surprised that I’m able to call DAC a big success for agile hardware.
Agile Evolution in the Verification Academy Booth
It started monday evening with the Agile Evolution panel in the Mentor Verification Academy booth. We were shooting for a half-hour open discussion where we went through some of the concerns people have with agile development (thanks to my work colleagues for helping come up with a list to get us started). Now that it’s over – and worked great – I can admit that I was a little nervous about the format. I knew the key would be people jumping in with their opinions because without that it would have been a boring half hour of one way conversation. Fair to say we did it though thanks to a great job from Dennis Brophy as moderator, Harry Foster as expert and me playing the role of ‘that other guy’.
To give you a feel for the topics we discussed, here’s a snapshot of the first couple slides…
Altogether, we talked about feature definition, the split between design and verification, pair programming, scaling agile to huge SoC teams, starting agile with pilot projects, how agile offers greater product visibility and applicability beyond design and verification. Notable highlights were me discovering a team that’s using SVUnit for unit testing and the many conversations we had in the follow-up. Always hard to tell if people left convinced, but there’s no doubt the vibe was positive.
Agile IC Methodology Forum
Tuesday morning was the agile IC methodology panel organized by Randy Smith of Sonics. But first was an office tour hosted by Davis Frank of Pivotal. Davis was the software expert on the panel and graciously offered to show us around to see a real agile team at work.
A few pictures from the tour…
This is the first time I’ve seen an agile workspace first hand. There was real energy. People were talking and working together. Information was visible (including build information on dedicated monitors). It just looked like a really inviting atmosphere.
From there, it was back to the moscone center for the panel discussion. Randy opened with a good summary view of agile development, the benefits we can be looking for in hardware and touched on the work EDA companies can do to help support a new development approach. Next up was Davis to give a view of what it’s like to work day-to-day with an extreme programming team. The message from Davis was tight feedback loops and I think it came across well. I continued down the XP path by sharing my experience in getting started with agile and the practices I’ve used to solidify my belief that agile hardware is the way to go: weekly cycles, incremental development and test-driven development. Andrew Putnam brought us home with a good rundown of how he and his team at Microsoft are using FPGA accelerators with their Bing search engine. Andrew was particularly practical in how he framed agile as a necessity for FPGA teams working with fast moving software teams, but also mentioning concerns.
Just like the verification academy panel, we had lots of questions to close and discussions to follow.
Meeting New Friends
The final cool part of the 2 days we spent at DAC was meeting new agile hardware friends. A few were people that I’ve been back and forth with several times but never met in person, like Chris Higgs of Potential Ventures (with Chris doing live demos in the Aldec booth, I finally had the chance to see his python based Cocotb in action). Others were friends I hadn’t met yet, like Bodo Hoppe from IBM in Germany who had an agile hardware poster session. And most of the people I talked to mentioned how they were happy to see they weren’t the only ones experimenting with agile development. People are seeing their interest grow into a community. That’s pretty awesome.
Looking forward to taking the next step in Austin next year!
-neil
Thanks Neil, the pleasure was on my side. It was great meeting you and a lot of other people who are seeing a lot of value in applying agile concepts in hardware development and thinking about how to make this work in their development environment. Getting people in the same room is a big catalyst for the successful application of Agile methodology in the cases I have seen. I’d love to exchange experiences and ideas with teams looking for ways how to make this work in a distributed team, as we are experimenting with it.