The Challenges Faced by DevOps Today

By Ashley Lipman

With the rise in Agile adoption, the need for a streamlined process around the software development life cycle, through development and testing to production is paramount.  The capabilities that make up DevOps are provided by people, defined practices and automation tools, according to the DevOps for Dummies. (Source: DevOps for Dummies by Sanjeev Sharma, Bernie Coyne)

DevOps Reference Architecture
Source: DevOps for Dummies

While shifting to a DevOps approach is ideal for agile team to deliver value to customer faster, it can cause problems within a project development team. In fact, it’s been known to cause a few problems during the production implementation.

Here are some of the challenges faced by DevOps teams today.

Clearly Defined Roles and Permissions

Not having clearly defined roles and permissions for a DevOps teams can cause many problems.

When it comes down to it, developers and operations teams have different roles that sometimes overlap. It’s important to address these overlaps so that everyone knows not only what they’re responsible for, but what they aren’t permitted to do. For example, developers shouldn’t be able to access the same logs as sysadmins (source: https://papertrailapp.com/log-management).

Roles will allow DevOps teams to utilize applications that will encourage access rights management that promote effectiveness and compliance.

Choosing the Right Projects

While starting to implement DevOps, it’s important to take a gradual, strategic approach. Rather than trying to transfer all new projects to the new management system, choosing a few projects and analyzing the benefits and challenges is key. From there, refining the implementation process and expanding will help make DevOps successful.

That being said, not all projects are meant for a DevOps approach. Many businesses are faced with challenges when it comes to change management. While one of those challenges is letting go of the old way, another is often identifying when the old approach works better for a specific project.

Attention to Detail and Testing

One of the main benefits of DevOps is the ability to finish projects quicker through a continuous feedback loop. However, quicker isn’t always better, especially during the early days. When aiming to move more efficiently, it’s critical that DevOps teams don’t neglect the testing process. Quality assurance testing to ensure that everything is bug-free is one of the most important steps in development, and the DevOps approach doesn’t always put this task in the limelight.

When releasing an app with bugs, it can cause a bad user experience. This can cause a blame game with the development and operations teams, creating a negative team dynamic that will impact future projects.

Legacy Infrastructure and Tools

DevOps challenges - legacy infrastructure

Focusing too much on the tools and not enough on the team dynamic is a unique challenge that many organizations face when switching to a DevOps culture. However, not putting enough attention into the infrastructure and tools can also be detrimental. 

Using legacy infrastructure while trying to modernize standard operating procedures can be a significant limiting factor, even if the current infrastructure has been useful for years. The businesses that have the most success with DevOps are those that switch to a micro-services approach, implementing automation and innovating their old applications. 

Of course, making these changes can be a monumental task, and can often lead to a “chicken or the egg” conundrum when trying to determine which practices versus which infrastructure should be changed first. Managing all of these changes without getting distracted by the wide array of tools meant to assist with DevOps can be time-consuming and costly.

Successful DevOps

Creating a successful DevOps culture isn’t an overnight process. It can take months of creating a culture of positive communication and cohesion between teams, and even longer to take a sustainable approach to scaling. 

However, by focusing on the team itself, having the right foundation in place, and testing rigorously, DevOps can change the face of a business for the better.

Virtual Project Consulting

Please subscribe to Virtual Project Consulting not to miss future articles, tips and success stories!

Are you Facing these Agile Challenges?

It’s only in recent years that I started working on Agile projects following the Scrum approach. And what a journey it has been so far! Challenging that traditional way of working mindset of being a PMP (Project Management Professional) for 14 years working mostly on ‘waterfall’ type projects.

You find yourself facing common struggles while going through the motions of changing your mindset which really is essential for successfully adoption an agile approach.

Companies who provide consultation and training around Agile, realise that teams are faced with many challenges when making the transition to Agile. At Knowledge Train they have published an e-book with stories from Industry experts who shared about their challenges with Agile and the solutions they use to overcome it.

Below is an Infographic with some of the most common challenges!

Please click on the Infographic to reach the article where you may download the e-book: “The Challenges with Agile”.

The challenges with Agile

Chaos to Chaos: The age of agile incrementalism

By Sakhile Malinga

Agile - changeAs globalisation snowballs, organisations continue to enter the exciting age of complexity, a chaotic business landscape which is different from the two prior eras in strategy development.

The Eras in Strategy Development

#1 Era of grand design and systematic planning

The desire to over-elaborate the planning was made redundant by constant strategic drift. IBM and the mainframe was the king of the castle. Management approaches included detailed strategic plans with limited support from a changing internal and external environment. The analysis of SWOT (Strength Weakness, Opportunities and Threats) created historical context with a strong sense of hubris if the previous period was successful. Remediation if challenged.

#2 Era of Strategic Positioning

The era gave us value chain analysis, which created the technology giants such as Microsoft, IBM and Cisco. This era capitalised on large enterprise solutions that were meant to facilitate delivery in a Porter Value chain, looking at the 5 forces as a key driver of value (threat of substitute, new entrance, bargaining power of suppliers, bargaining power of customers, intensity of rivalry), with clear distinct variations of stratagem, which was focus, differentiate and cost leadership.

#3 Era of Complexity (Chaos)

The new era of a connected business world, with organic rather than hierarchic tendencies has led to the rise of social architectures that gave rise to the Facebook, Twitter, LinkedIn, Skype and cloud computing. This era is where agile incrementalism raises to the fore. A complex construct with too many unknowns, where change is welcomed and not feared and ownership is shared not assigned.

Leadership in Agile Incrementalism

Agile quoteThe main change is primarily from transactional to transformational leadership. 1

Transaction emphasises contingent rewards, and managing by exception. Transformation exhibits charisma, developing a vision, engendering pride, respect and trust, inspires and pays attention to the followers needs.

Agile incrementalism is transformational and it is incremental and not iterative, the fundamental difference is it does not predict what you want, just builds it better and quicker.

The key principle is the fact that individuals and interactions are preferred over process and tools. Chaos if not thought through. Customer collaboration is preferred over contract negotiations. Responding to change is preferred over following a plan. Working product is preferred over comprehensive documentation. Chaos if underestimated.

Agile affects strategy

  1. Capital Planning – The financial returns on investment of software projects becomes more about “fixing of the problem” rather than finding a solution package.
  2. Productivity – A general prediction of 25% boost in productivity 2 in software delivery.
  3. Minimum Viable Product (MVP) vs Scope, you deliver what matters first and might not deliver the entire scope. The focus is working software.
  4. Resources – Agile has people and not resources. The approach is more about predictable change and less stress in introducing change.
  5. It’s about the Customer5– The time to respond to competition is swift and exciting as this becomes the focus of the team.

Agile

Software is a massive contributor to competitive advantage and any organisation that links it to an emerging strategy3 will dominate its market.

The challenges of Agile

  1. You will lose a sense of control, trusting the judgement of the teams to deliver. Allocated capital to solve a problem rather than to deliver a predefined thing will require maturity.
  2. Executive support and buy-in, for the existence of teams not business or IT. The concept of IT and business becomes archaic. The lines cannot be drawn, this becomes objective driven teams.
  3. Requirement will not be required. This translates to business needs; the business will need to have specific needs to be solved.
  4. Scope is variable; hence the power lies not with “completion”, but completing enough to enable the business.
  5. Change will not be welcomed; agile environmental changes will lead to resistance. Chaos does that to people. Training will be necessary for the teams.
  6. Different language, different delivery. The key to delivery will be a common language, whatever you call a thing, let it be a thing.
  7. Embracing Failure – accepting this faster than later in the process is what makes it acceptable.

The age of chaos is exciting, it’s every day that you wake up and expect Apple, or Facebook, Snapchat, Google and Twitter to release a new feature. They use agile, one day we will all use it.

Conclusion

Using any method to achieve an outcome is a good reaction to environmental changes, however locating the reason why a particular method is the right method; helps clarify why the procedures and techniques are vital. Software Agile approaches are methods designed bring a logical approach to a chaotic world.

***************************************************************************

About the Author:

Sakhile Malinga is a leader with a strong affinity to all things involving strategy, projects and digital. His purpose is to build stuff and people.

Sources:

  1. Bass, B. (1990). ‘From transactional to transformational leadership: learning to share the vision.’ Organizational Dynamics, (Winter), 19–31.
  2. http://www.deltamatrix.com/why-are-agile-teams-25-more-productive
  3. Johnson G. Managing strategic change—strategy culture and action. Long Range Plan 1992; 25(1):28-36.
  4. Ghobadian, A and O’Regan, N. “ John Lewis Partnership lessons in logical incrementalism and organic growth: A case study and interview with the Chairman, Mr Charlie Mayfield’ Journal of Strategy and management (2008).
  5. Anderson JC, Kumar N, Narus JA. Value Merchants: Demonstrating and Documenting Superior Value in Business Markets. Harvard Business School Press.