Erik Sowa will talk about “Feature Bits: Enabling Flow Within and Across Development Teams“.
“Feature Bits” is the technique we use at Lyris for deploying latent code to our SaaS application. Latent code allows us to separate rolling code to production from releasing features to customers. The flow of product development work is enabled by eliminating many of the collision points that would otherwise require intensive coordination and big-bang deployments. We review the business context for this technique, the solution design, and the coding patterns we use to implement it. We present some usage statistics and observations based on 1.5 years of experience. Attendees will take home knowledge and data sufficient to decide when and how to apply this technique in their work.
Erik Sowa is Director of Engineering at Lyris, Inc. in Emeryville, CA. Erik has led product development and professional services teams for SaaS products for over a decade, first at DigitalThink (eventually acquired by Convergys) and now at Lyris. In that work, Erik has focused on building great teams that deliver great products using repeatable, scalable, and sustainable processes based on lean thinking and appropriate for multi-tenant hosted solutions. Erik has also led teams building client-server solutions and has developed computational materials science programs on massively parallel supercomputers. Erik holds a Ph.D. in Physics from U.C. Berkeley.
Derick Bailey will be speaking on “Decoupling Complex Workflow In WinForms For Iterative Development And Incremental Delivery“.
One of the most significant challenges of working within a release-per-feature project lifecycle is managing features as independent parts of the development cycle. At some point, the various features will need to be integrated into the trunk or master source code branch. When this occurs we want the different features to integrate as smoothly as possible. To accomplish this we look to design and implementation patterns that provide reduced coupling between our features while still providing the ability for them to communicate and work together. In this presentation we will walk through the use of an Application Controller, Event Aggregator and Command Pattern in combination with a good IoC Container, to show how we can reduce the coupling between forms in desktop systems. These patterns, among others, will help us to develop interconnected software modules that can be developed and managed independently.
Derick Bailey is a software architect and technology leader living in Waco, TX. He has more than 12 years of professional software development experience and more than 20 years of experience writing code. Derick has been active in both the Austin and Dallas area communities where he has given presentations on topics such as the SOLID design principles, complex workflow scenarios with IoC containers and Application Controllers, and more. Derick is currently a blogger with LosTechies.com, providing experience reports and theoretical discussions on progressive software development techniques and agile/lean management practices.
Derick has been promoting and implementing various principles and practices from various agile methodologies such as Scrum and XP, and most recently including principles from lean thinking and lean software development. He has facilitated the implementation of Kanban systems in two enterprise system teams in the last year, has coached additional teams in agile and lean methodologies, and is continuously looking for opportunities to help others become more productive.
David Laribee will be speaking on “The Evolving Concurrent Releases Toolkit“.
True flow in software at any kind of scale requires concurrent releases (AKA release-per-feature).
Achieving this level of maturity requires more-sophisticated product design and implementation practices. For one: work-in-progress may confuse users. Without the batch blanket you’ll need to hide or eliminate unfinished software from production builds. On the complex end of the spectrum, when your throughput increases you have to cope with constraints outside the development organization such as sales force, marketing and customer education.
Starting with a brief economic argument for concurrent releases, we’ll dive into solutions both product and technical. Areas covered include: user experience, multi-dimensional Kanban boards, composite architectures, distributed version control and continuous deployment.
Liz Keogh will be speaking about “Behaviour Driven Development: A Lean Toolkit“.
BDD, often described as “TDD done well”, is strongly aligned with Lean principles. It’s a pull-based approach to delivering software that matters through the whole software lifecycle, from vision to code. It minimises rework and over-delivery, bakes quality in, and is founded on respect for people in their various roles and the language that we use to collaborate and communicate. BDD has its origins in NLP and the Sapir-Whorf hypothesis: the idea that the words we use affect the
cognitive model of our work. It decouples the learning associated with TDD and Acceptance Testing from the word “test”, using the more natural vocabulary of examples and behaviour to elicit requirements and create a shared understanding of the domain.
In this talk Liz will introduce BDD, show how to model it using PDCA, and talk about how its practices can provide quicker feedback and help us to turn a vision into reality faster.
Liz Keogh is a Lean and Agile Coach with a strong technical background. She is a well-known blogger and international speaker, a core member of the BDD community and a contributor to a number of open-source projects including JBehave.