Sign up for weekly AppOps insights.

Sign up for weekly AppOps insights.

Agile Data Release Management. What the h*ck is it??

Tori Bealer

March 4, 2020

What is agile release management?

Release management is the process and set of business operating procedures used to plan, coordinate, verify, and deliver a functional piece of software to a production environment so it can be used by a customer. This process spans all stages (cycles) of development, including testing, QA, deploying software through different environments to fully verify a functional build, and finally, scheduling a release of the production ready build. While specific roles may vary, in large enterprises, a release manager or program manager oversees this vast coordination of efforts, working with product owners and project managers directly to ensure the release is shipped on schedule and at the highest quality.

Development teams that have adopted an agile release management framework, typically iterate by planning work time-boxed “sprints” to build, test, and deploy a functional piece of software into a branch of software that can be routinely QA’d before it is released into a production environment.

Businesses have started to realize that many of the modern release management principles adopted by software development teams can also be adopted by the IT organization responsible for managing in-house agile app development and internal tools.

Why is agile release management a necessary part of business operations?

The goal of the modern agile software product & engineering team is to deliver value to its end users as fast as possible and with the highest quality. Agile is the development philosophy that many software companies have adopted to accomplish this goal. By constantly iterating in more frequent time-boxed development cycles, teams aim to deliver a shippable product at the end of every iteration. This paradigm shift has led many organizations to ship software in more frequent releases. Compounding this is the rate at which enterprise systems grow more complex, more distributed, and require constant integration.

If you find yourself asking if new dedicated resources need to be justified to help oversee this evolving and complex flow of development, release management may be the answer you’re looking for. The greater the complexity of your operational infrastructure the greater the risk that the release of new functionality into production will break something, hence the greater need to adopt release management practices so that the goal of deliver value, innovation, and a competitive edge can be realized.

Benefits of agile release management

  • More frequent and smaller product releases
  • Shorter response times to changes in requirements and/or priorities
  • Reduced post production support due to inherent Quality Assurance
  • Fewer defects
  • Reduced costs

What is AppOps agile release management?

Non-code based development on the Salesforce platform continues to evolve at a rapid pace as more businesses realize the power of deploying “no code” declaratively configured applications like CPQ, FSL, B2B. These next-generation apps are primarily declaratively configured (with point & click) as opposed to the legacy solutions that are primarily programmatically configured (with code). These apps offer a never before possible degree of business agility because they can be deployed and iterated much faster. Moreover, businesses have started to realize that many of the modern release management principles that are being adopted software development teams can also be adopted by the IT organization responsible for managing in-house agile app development and internal tools.

IT teams & application owners operate sprints and apply agile development methodologies to stream-line workflows, iterate, and deploy changes across Salesforce orgs. By applying the same rigor to no-code and low-code application development in their business systems, companies are embarking on digital transformation journeys to transform the customer experience.

Why do companies implement AppOps?

AppOps does for low-code applications what DevOps does for complex software development, solving the little-known gaps exposed in declaratively configured applications: configuration information that used to be stored as metadata (code) is now stored as data. The result is a new type of data called configuration data or reference data. Configuration data is data that ought to be treated with the same change management rigor as metadata. A mistake in configuration data has far reaching consequences. Just like a “bug” in code it can bring down a revenue-generating, mission-critical application.

AppOps enables effortless deployments of configuration data between Salesforce orgs which improves speed, reliability, and auditability of application releases. Admins and other non-technical users can release changes faster and more reliably which ultimately delivers more agility in their businesses.

  • Release faster & more often – Release reference-based configuration changes more quickly to improve speed to market and release of new features
  • Reduce deployment errors – Mitigate risk, minimize disruption & save hours of time having to undue work because of a faulty deployment
  • Maximize ROI – Continual focus on usability by putting the power in the hands of non-technical users so customers can see quicker ROI on their purchased Salesforce and CPQ applications
  • Simplify – Takes the guesswork out of managing and deploying complex Salesforce objects graphs and relationships for configuration data stored in custom objects