Why is Perforce Adopting Continuous Delivery?
As you are probably aware, there is a new trend forming in software development - Continuous Delivery (CD). There is quite a groundswell forming out there!
That trend includes Perforce, as we have decided to also move to Continuous Delivery. But why? Before outlining the benefits, it might be helpful to first describe what CD means to us within the Engineering organization at Perforce.
Fundamentally, we see CD as taking the wildly-popular concept of Agile up to the next level of empowerment, iteration and flexibility. The major changes we will make are:
Creating fully empowered product teams. This comes in two parts:
Allowing each team to own product execution all the way from requirement to delivery, as well as making them solely responsible for the completeness and the quality of the releases.
Changing the purpose of the Engineering services organization. Instead of providing services such as build, porting, packaging, and releases to Engineering, this team instead focuses on developing and supporting self-serve infrastructures that allow the product teams to perform these services by themselves.
Removing all “friction” in the workflow that takes content from submit to delivery. This typically calls for removing the human involvement by fully automating build, test, packaging, and release processes.
In addition to releasing our standard “production” releases (e.g. Swarm 14.2), we will be delivering a continuous stream of frequent, low-risk increments to the product called “snapshot” releases. These snapshots will be made available to early adopters of our products.
Enhancing product feedback gained from customers via early access programs such as beta testing, by also incorporating feedback from snapshot releases and by integrating usage collection services into each of our products.
Why do this?
It’s a fast-moving world out there! We believe that adopting CD will allow Perforce to quickly, efficiently, and reliably adapt software in line with user feedback, shifts in the market, and changes to the business strategy.
The benefits are not all internal, however. We believe our customers will also significantly benefit from our move to CD:
- First and foremost, you get the right product from us – the one that you most want to use.
- For the early adopters out there, you get new functionality that is hot off the presses. In addition, you get to give early feedback on that functionality.
- Product quality will improve as a side effect of the expansive automated testing needed to sustain the CD model.
- The ease of creating releases will encourage a more frequent stream of product bug fixes so our customers don’t have to wait for a bundle of fixes all at one time.
We’ll be talking about many different aspects of our experience moving to Continuous Delivery in future blog posts. Check out the next article in this series - Continuous Delivery: The Power of Embedded Teams.
To hear about the experiences of some of our customers, take a look at our on-demand webinar - Expert Panel: Continuous Delivery Best Practices Revealed.