Finding the Heart of Agile

Even with its wide popularity across the software development world, there are more than a few programmers who simply don’t like Agile. The reasons for this antipathy range from a resistance to change, to simply being averse to the meetings and procedures typical of many Agile frameworks.

Bringing these prodigal sons – and daughters – back to fold is an important part of building a successful application engineering team. Some tech thought leaders feel returning to the simplicity of Agile in its earlier days will help. Let’s take a closer look at some of their concepts to see if they may help your staff.

The Modern Movement to return Agile to its Roots

There are two main movements hoping to lessen the animosity towards Agile by instead focusing on what caused its growth in the first place. Modern Agile is something we’ve talked about previously on the blog. Guided by four simple principles, this flavor of Agile is continuing to attract proponents hoping a simplified methodology leads to happy developers and a subsequent boost in productivity.

The other newer movement within the Agile community is called the Heart of Agile. It was first developed by Alistair Cockburn, one of the original authors of the Agile Manifesto. Like Modern Agile, the Heart of Agile also focuses on four simple principles Cockburn feels are essential to the original methodology.

The Four Keys to the Heart of Agile

In 2014, Cockburn began to feel Agile had become too dependent on procedures and policies; “overly decorated” was the term he used.  With Agile getting away from the simplicity he felt was vital to its initial success; it seemed like a good time to restate the core concepts of the methodology. Of course, Cockburn stays away from calling the Heart of Agile a framework, methodology, or process; instead he refers the curious to its four core actions: collaborate, deliver, reflect, and improve.

“Collaborate” is the first action and one many software engineering professionals feel is one of the most important aspects of Agile and related frameworks, like DevOps. “Deliver” is self-explanatory, and remains a focus at any software shop, including those striving to achieve continuous delivery.

“Reflect” is an important concept helping individual developers and software engineering teams understand their own previous project work and where they can become better. “Improve” is the fourth action to Cockburn’s new manifesto and serves as the natural result of any reflection.

Cockburn emphasizes that these four actions are practiced by anyone in the software development industry on a daily basis. “Each one unpacks into unendingly complicated skills, actions, tools, and all. Each is rich with nuance. And still, we can fold back up all the nuance and complications, and remind ourselves: ‘Collaborate. Deliver. Reflect. Improve.’” says Cockburn.

Ultimately, his most important point is to never lose sight of these four simple concepts no matter the relative complexity of an organization’s Agile framework or the increasing number of tools required to manage a mature DevOps organizational structure. They are words worthy of periodic reflection. Keep returning to them on a weekly or daily basis.

Thanks for reading this edition of the Betica Blog. Keep returning for additional insights and philosophies from the world of software development.

News from the World of Software Development – August 2017

Welcome to our regular look at interesting stories from the ever dynamic software development world; this time from the month of August. Hopefully, you find a bit of actionable information to help in your daily coding activities or perhaps the strategic direction of your organization. If interested in last month’s news digest, simply click on the following link.

New Product helps Companies keep track of DevOps Metrics

As DevOps continues to become part of the technology mainstream, companies struggle with determining the return on investment on their transition to a new methodology. DevOptics, a new product from CloudBees, aims to provide a means to track the efficacy of an organization’s DevOps processes and procedures. News about DevOptics appeared in August in Enterprise Times as well as other sources.

One of CloudBees’ major features is a real-time view of an organization’s software development pipeline, allowing managers and other key personnel to track the status of code changes as they are pushed from development to QA and eventually production. The hope is to lessen the number of meetings that tend to siphon productivity. Sacha Labourey, the CEO of CloudBees, commented on DevOptics.

“This is about data. We go through a lot of code changes, use a lot of tools, make a lot of modifications but all of the data vanishes. DevOps has been adopted in many, many cases as a feature that we replicate across the organizations. It’s a feature at scale not an enterprise solution. Now we are moving towards building a system of record for IT processes,” said Labourey.

If your organization is interested in how DevOptics can help keep a handle on your DevOps implementation, contact CloudBees to schedule a demo of the product. It just might be the missing piece of the puzzle for managing your software development projects.

Continuous Delivery – powered by AI – is the Future of Software Development

A recent article in The Next Web wonders if continuous delivery, assisted by artificial intelligence algorithms, is the future of software development. Considering how often we cover DevOps and continuous delivery here on the blog it is safe to wonder if that future is actually already here.

The Next Web article cites recent survey data from Evans Data that shows while a majority of companies – 65 percent – are using continuous delivery as part of their software development process, they only leverage it on a subset of their projects. Only 28 percent of surveyed organizations use it for all their applications.

Leveraging AI and machine learning as part of automation will play a key role in making continuous delivery commonplace. This is the opinion of Diego Lo Guidice of Forrester Research. “AI can improve the way we build current software; it will change the way we think about applications — not programming step by step, but letting the system learn to do what it needs to do — a new paradigm shift,” said Lo Guidice.

Expect artificial intelligence to continue to make inroads throughout the software development world, but especially in improving processes currently using automation. Once it does, continuous delivery – and DevOps for that matter – will truly become an industry standard.

Stay tuned to the Betica Blog for additional insights from the wide world of software development. As always, thanks for reading!