Industry Thoughts
CD is fatally flawed. It’s time for Dynamic Delivery.
Andrew Fong
Continuous Delivery & Deployment have three fatal flaws which make them unsuited for modern software delivery.
Fatal flaw #1: CD is static
The first flaw is the static nature of CD systems. CD pipelines are like driving on cruise control: it works great when the road is straight and clear, but when there’s an obstacle in your path, you’re in trouble.
Static pipelines are not equipped to handle dynamic production environments. When unexpected turns arise, humans are involved. Lack of predictability and incomplete automation means outages, unplanned rollbacks, and lower release efficacy.
To compensate, legacy CD systems increase complexity for the operator—CD’s second fatal flaw.
Fatal flaw #2: Operator Complexity
Initially, starting a pipeline can be pretty straightforward. However, your product and infrastructure evolve over time. To keep up with the dynamic nature of production environments, engineers introduce control flows, synchronization barriers, and entire domain-specific languages to handle branching within pipelines. This level of customization is not scalable across organizations.
Now, you, as the engineer, have the added expectation to be subject matter experts in setting up, managing, and operating complex pipelines and associated dependencies.
This complexity is unnecessary. It drives inefficiencies in engineering, lowers confidence in releases, and ultimately prevents your product from reaching your customers. Plus, hiring people with the full set of skills you need to operate in such a complex environment is incredibly challenging.
Fatal flaw #3: Inconsistent Workflows
The third flaw is inconsistent workflows across technology stacks and teams. Point solutions have become the norm, with workflows tightly coupled to the underlying tech stack, e.g. Argo is tightly coupled to Kubernetes. This causes engineering teams to pick specific tools in each environment to handle releases. Moving a project or technology stack requires relearning deployment flows and increases costs.
Prodvana’s Dynamic Delivery Platform solves CD’s fatal flaws.
Dynamic Delivery works like Waze, constantly adapting to the world and finding the best route for you. Set a destination, hit go, and the route is (re)computed when the environment changes.
Dynamic Delivery uses a declarative desired state, aka your destination, for your application. The Dynamic Delivery Platform evaluates the production environment pulling in dependencies from services, databases, and other policies. Prodvana uses this information to compute the best delivery path intelligently. At each step, Prodvana re-evaluates to ensure goals are met. Instead of following a static pipeline path, Prodvana lets you define the desired outcome. CD gets stuck on the process, Prodvana delivers outcomes.
Prodvana fundamentally changes the delivery landscape. In less than one hour, you can run applications with Prodvana. As maturity increases through policies or additional dependencies, the Dynamic Delivery Platform adapts to your infrastructure and matures your release processes globally.
And finally, Prodvana uses the same workflow regardless of the backend — zero overhead for an engineer!
CD’s time is over. We need a new generation system that can keep up with ever-evolving software development and the complexities of the modern cloud. Prodvana’s Dynamic Delivery Platform is this system.
Sign up here to learn more about Prodvana’s Dynamic Delivery Platform and talk to us about your needs!