Tag: software delivery process

  • Six Tips for a Successful DevOps Implementation

    Six Tips for a Successful DevOps Implementation

    As we expand our digital world, there is an ever more urgent need to look after businesses that need to operate faster and with more agility. Because of this, DevOps has grown quickly and become central to a lot of organizations as they pursue a competitive advantage. However, some organizations struggle to implement DevOps as they are unsure how to approach them.

    Here are our top six tips on how your team can integrate DevOps successfully.

    Discipline and Process

    It isn’t just a case of installing DevOps and then getting started with the tools. Your whole company needs to have real clarity about what DevOps is and what exact business needs it can solve. Most importantly, all your team needs to be prepared to change the way things have been done in the past.

    Start this process by working out your current application value streams. This is the process needed to move your products from development to production. Being clear on what your constraints, bottlenecks and wait queues are will help you to identify activities to concentrate on.

    By identifying areas of inefficiency in your current delivery process, you have an opportunity to make changes in your organization. Encourage your team to ask questions: “Why do we do this? What’s its business value? How can we make it more efficient?”

    Release Rates

    Any initiative within DevOps should focus on your business’ requirements and be specific to you, not just about getting improved tools. Try not to launch a DevOps initiative before getting clear on the business reason for doing so.

    Instead of just focusing on release rates and how to do things faster, look at the business value that will enable. So, for example, an improved release rate could help your team to innovate more quickly. 

    Collaboration

    Many people associate DevOps with automation processes, but it is primarily about collaboration and communication. If you do not have strong collaborative practices that are embraced by everyone in the team, and across all stages of development, simply automating the processes will not give you the benefits that your business is looking for.

    By using collaboration, you can get the input of the whole team into which areas need the DevOps implementation first and what impact it can have to each stage of the development process.

    Communication and Culture

    Here we need to look at your company’s manual processes, which tend to be the most frequent cause of mistakes and delays. Look at your pipeline and keep an eye out for the word “manual.” This could be manual testing or deployment. Anywhere that involves your team communicating through a ticket process. These are classic problem areas for waste and may be where DevOps automation could lead to big rewards.

    To achieve this, you need to get your teams onboard with the changes, especially operations, as they are often overlooked when achieving buy-in. The whole organization needs to be excited about the changes and the same process needs to be implemented across the pipeline.

    Get Clear on Data

    Select metrics that are closely linked to your business goal. How long does it currently take for your product to get from idea to market? 

    There are three pieces of data to measure to determine this. The lead time, deployment frequency and mean time to recover. All three of these are key to understanding which parts of the process can have the biggest impact when you implement DevOps.

    Autonomy

    The important thing is to use the same automated system whenever a product goes to any stage of the pipeline, whether that’s development, quality assurance or production. You do not want team members having to manually click configuration steps, or copying software. Each deployment should have the same automation so that the process can operate smoothly.

    Starting first with the slowest part of your pipeline, introduce automation one stage at a time. Once the slowest has been automated, look at the next slowest. This way you are always improving processes but getting the biggest shifts each time.

    Provided that you have all team members in alignment with the purpose for DevOps, every new step of progress is a win. Then win more support for the bigger steps that the company may need to make.

    — Regina Raap

  • A Culture-Driven Approach to DevOps Transformation

    A Culture-Driven Approach to DevOps Transformation

    One of the most challenging aspects of a DevOps transformation isn’t automating and overhauling technology. The biggest challenge of DevOps is changing an organization’s culture and purpose. You can’t “buy a DevOps.” DevOps demands the involvement of people, process and tools working together.

    Unfortunately, I’ve seen too many companies get carried away with the latest shiny object and neglect the people aspect. So, the end results they were expecting do not come to fruition. Research from Google Cloud and Harvard Business Review supports the importance of a people-first DevOps strategy. This research confirms DevOps transformation projects are worthless without addressing the people aspect.

    Of course, such large-scale transitions are difficult. People have to put their reputations on the line to sell the transformation. Employees may become stressed or resist the cultural changes that come with a DevOps transformation. Therefore, communication throughout the entire transformation must be your primary goal. Communication includes measuring the effectiveness of the transformation vision and goals and sharing that information with your team. Keeping them informed ensures they understand the critical role they play in this vision, as well as the value of their work. These measurements need to also show how participation in change translates to value for the business.

    Here are some best practices for prioritizing people and process when working through your DevOps transformation.

    Communicate Every Step of the Way

    It’s important to establish a level of empathy for your employees and understand exactly how changes will affect them. Employees’ professional identities develop over many years, and you can’t expect them to change overnight. Here are some questions your employees are wondering about:

    • What happens to my job when we have to start adhering to this new process?
    • Will I lose my job when all this automation is implemented?
    • How am I going to learn the skills to be effective and contribute to this new way of working?

    Expect their questions and listen for more areas of concern. Be proactive about sharing both the questions and the answers with everyone.

    It’s critical that you keep an open channel of communication with your employees to help them through this change. Don’t view this as an add-on exercise–it should be the cornerstone. Focus on communication, and devote time to your staff, so they are completely integrated into the new DevOps process.

    Your communication strategy needs to include all the teams involved with application delivery. Hold regular meetings across all departments, not only development and operations teams. Think about how the DevOps transformation impacts departments such as marketing, human resources and finance. What challenges have they run into? Have there been any negative impacts thus far? Listening and addressing each issue in real time will ensure the transformation is moving in the right direction.

    Measure What Matters

    When it comes to measuring your success, don’t worry about what other companies may be doing. The metrics that matter are the ones that support your ultimate business goal, which in this case is a better software delivery process.

    Identifying metrics for your business demands you understand how your company’s process drives behavior. Ask questions such as: What corners were cut to get from development to production on time? Did meeting this deadline impact the timelines and performance of other teams and the quality of other applications?

    Meaningful metrics allow you better insight into your processes in the real world. And meaningful metrics help determine whether your pipeline is moving in the right direction to deliver high-quality, high-value software.

    Remember those regular meetings I mentioned earlier? These are also a great time to focus on metrics so employees understand how their work impacts the business. It’s also an opportunity to hear what’s happening on the ground in the delivery pipeline. This real-world information can determine progress, as well as test if the right metrics are being tracked.

    Conclusion

    A DevOps transformation requires changes to staffing, organizational structure, performance and culture. As a result, the success of your transformation involves moving the entire organization forward—building a strong culture ensures all people at all levels are invested in it. Measuring and communicating results must be the standard for every release you do.

    DevOps can fundamentally change any organization for the good. By continually communicating a clear vision of the goals and expectations of your transformation, people will feel confident they are on a winning track.

    — Tj Randall