A good processes can be destroyed when mindsets aren’t developed, let alone sustained. The rules of the 'Agile' game are easy to understand . The hard part is understanding why it works and how to make it work. If you implement only the right side of the Agile Manifesto you’ll be having a very hard time making it work. More important than the rules and roles is the spirit and the mindset of Agile .
Tuesday, September 26, 2017
Monday, September 25, 2017
What is the role of a DevOps coach? Part 1(4) : What is #DevOps ?
By : Liat Palace (Director, Delivery Technology Office Agile/DevOps Coaching Team Lead – Amdocs) & Shirly Ronen Harel (Co-Founder & Agile / DevOps Coach -WeChange)
The
first major issue we encounter when we start implementing DevOps is the need to
gain a basic understanding of what DevOps is and what it brings.
I’ve been asked many times: Is it something that will disappear after a while? Why is it so important and why is it different?
I’ve been asked many times: Is it something that will disappear after a while? Why is it so important and why is it different?
Our friend Thomas Cagley @TCagley, in his article DevOps
Primer: Definition,
states
that if you ask 20 people the definition of DevOps, you will get 12 different definitions
and 10 people who are not familiar with the term.
He then quotes David Herron, who provided a simple
definition: “(DevOps is)…an integrated approach to software delivery that
include process, tools, technology, resources.”"
For
a long time it was a world of size, and big organizations had a clear advantage
over small ones, sometimes even a monopoly.
Now with the fast pace of changes in the market, the game
has changed. The organizations that are fast enough to react to changes and stay
relevant have the advantage.
In a fast moving environment, where speed is a necessity
and quality is not negotiable, organizations need to find a way to move
from ideation to delivery as fast as they can, with the highest quality.
Which actions should be taken to move towards adopting DevOps?
First we need to remove some barriers. There are barriers between Dev (that wants to change the code, and add to it) and Ops (that wants to keep everything stable). We need to break down and adjust the boundaries between the developers and the operations people, so that they work together. We want to deliver products with good quality and fast time to production, and at the same time create trust between these groups.
First we need to remove some barriers. There are barriers between Dev (that wants to change the code, and add to it) and Ops (that wants to keep everything stable). We need to break down and adjust the boundaries between the developers and the operations people, so that they work together. We want to deliver products with good quality and fast time to production, and at the same time create trust between these groups.
We then need to remove some more barriers.
The whole ecosystem should speak the same language and move the organization
towards the same goal.
Marketing, finance, HR, learning services, procurement, and legal should all change in order to support rapid delivery and the DevOps changes.
For example, we see situations where the finance budget plan is approved once a year, and cannot be aligned with the rapid changes the DevOps chain requires.
Marketing, finance, HR, learning services, procurement, and legal should all change in order to support rapid delivery and the DevOps changes.
For example, we see situations where the finance budget plan is approved once a year, and cannot be aligned with the rapid changes the DevOps chain requires.
So we can add tools. We can add them
everywhere, making sure that there is no break down on the way to production.
Tools play an important role in building awareness of quality. We can create
continuous integration for every line of code, continuous delivery for any
functionality added and tested, health monitoring, better logs and more.
But I’m afraid that tools are not enough. Why?
Because we need to know where to employ these tools. What is a valuable application of these tools? How do we determine this? We need to know our production line. We need to identify production line bottlenecks, understand and set up the right process. Imagine we are a chocolate factory - we can add cocoa but still not deliver chocolate if the mixer isn’t working properly.
Because we need to know where to employ these tools. What is a valuable application of these tools? How do we determine this? We need to know our production line. We need to identify production line bottlenecks, understand and set up the right process. Imagine we are a chocolate factory - we can add cocoa but still not deliver chocolate if the mixer isn’t working properly.
Tools, processes and barriers are only a
small part of it. Why? Because we need people to be part of DevOps adoption.
And they need to have the right mindset to be able to deliver the right
feedback.
Why? Because in a rapidly changing
environment, we need people to give us feedback from every part of the
production line, whenever needed. In this complex environment, issues
arise, change and being develop differently throughout the production line.
Therefore we need people to understand the DevOps mindset and raise flags, when
necessary. We need to quickly identify problems and solutions. We can only do this
when we have the right mindset, and when everyone is on board and knows
what they need to do and why. In this complex environment we need all the
different professional perspectives to be available to us for fast decision
making. We need to know where to use our tools according to accurate feedback
and recognized bottlenecks, what to change and why. Without the right people
and mindset, we are limited in our ability to do so. To reach this state, everyone
needs to work together to create a culture of collaboration, to deliver value
fast. Without the right mindset, we may still succeed, but will still generate
a great deal of waste in the process, and reach our goals more slowly.
In extreme cases (and I have seen such cases), the entire
organization gets stuck due to a lack of collaboration, to the point where they
are not able to deliver.
So what is DevOps?
"DevOps means that there are no walls,
no gates, no transitions, and no ceremony between Development and Operations.
They are seamlessly integrated (when viewed from ’above‘) into a single, value
delivering, IT entity."
“(DevOps is)…an integrated approach to
software delivery that include process, tools, technology, resources.”
DevOps includes rapid collaborative
development without hassles, continuous testing, continuous deployment and
continuous monitoring, and it can't work without a proper mindset in place, one
that aims to allow everyone to collaborate to deliver value faster.
It cannot work without E2E organizational
support to make it happen. This means that DevOps is not only about Dev to Ops;
it involves the entire organization’s culture and functions: HR, Sales, Marketing
and more.
This is a huge challenge, but it is doable.
Part
2: What is Holistic #DevOps ?
Saturday, September 23, 2017
#Agile & #DevOps posts of the month - Sep 2017
Many people wants to read quality and good agile or DevOps related content on the web. We have compiled for you some of what we think are good reading Agile and DevOps posts of this month.
Wednesday, September 20, 2017
Agile and Production Support Best Practices
"In an ideal world, a Scrum team should be dedicated and exposed as little as possible to external disturbances. But in most cases, teams must focus on developing new software and support earlier versions of the software application in production". So what is a development team charged with application support to do?
Saturday, September 16, 2017
The new role of HR in the agile organization
"The impact of corporate Human Resources (HR), on Agile adoptions are often overlooked. In fact, Agile practitioners often bypass HR in their zeal to quickly change the way they work and the related people processes.R to a hole new level...There is a misconception that Agile exclusively falls under the IT domain; overlooking the fact that the core of Agile is about the people and culture – the sweet spots of the HR profession."
10 #Scrum Master Interview Questionnaires to choose from
Thursday, September 14, 2017
The different roles of the spotify model.
Spotify Chapter lead vs. tribe lead vs. functional manager vs. Team lead vs. Functional manager etc.
Sunday, September 10, 2017
What the role of a #DevOps coach? Part 2 (4) : What is Holistic #DevOps ?
By : Liat Palace (Director, Delivery Technology Office Agile/DevOps Coaching Team Lead – Amdocs) & Shirly Ronen Harel (Co-Founder & Agile / DevOps Coach -WeChange)
“DevOps does not just mean the technical practices and
tools to put your code into production with confidence. It is much more than
that. It is an overall approach where the entire organization must acknowledge
the existence of DevOps. Starting from sales and marketing, DevOps must be an
integral part of their processes to be included in every project. It must be
taken seriously. Eventually, when the project is passed on to the next party
taking responsibility of the project, it is essential to have best DevOps practices
in place.”
DevOps practices exist throughout the lifecycle of a
product, from sales to support. They don’t focus on one person or on a
small part of the organization; instead they address the entire production
line, providing end to end value stream cultural change. When an organization adopts
DevOps, this affects different parts of the organization. It is a culture, a
mindset and practices that should be present across the board. It means
removing barriers and building a collaborative culture that affects much more
than just Dev to Ops.
Adopting DevOps is hard. It requires management support, a
company-wide mindset change, and of course coaching.
If DevOps is a culture of collaboration, then we cannot
limit the close collaboration and continuous feedback to development, testing
and operations. We also need to include accounting, marketing, sales and more
in the loop; otherwise the organization will sell and market deliverables that
the Delivery group will not be able to deliver. This would leave us in the same
place we were when Agile was implemented on development only, while testing and
operation were out of the loop. This is good but limited, and we no longer want
any limitations.
If we want to achieve Faster, Cheaper, and Better, this requires
the entire production line to be involved. As an example, the Sales department
cannot enter into a ‘silo’ contract with a customer, while Delivery delivers a small
chunk of working software each sprint. All parties in the organization must be
aligned with the same mindset.
Defining job titles such as “DevOps engineer” and
“Director of DevOps”, and creating DevOps training and certification programs, are
not sufficient. DevOps is a culture; it’s not silos of specific people
developing tools or collaborating among themselves. It means that everyone in
the organization is part of a single approach call DevOps. Everyone is expected
to act according to the principles and values of the DevOps approach. However, a DevOps coach is a sufficient term, it's a leading role in transforming
an organization into a DevOps organization, using a holistic approach,
addressing system thinking, and focusing on the end result.
תוויות:
agile coach,
agilecoach,
DevOps,
Scrum
Monday, September 4, 2017
Matrix Resource Management and #Agile
As matrix management encroaches upon Agile management the philosophical view points on resource allocation are contrary to each other.
Sunday, September 3, 2017
The #agilefamily team - Stories from 2017
How do
some families and individuals incorporating agile methodologies into modern
family life in 2017?
What is it like to work ( #agile ) with Ukraine?
Subscribe to:
Posts (Atom)