DevOps Maturity Assessment

Which organisation do you work for?

What is DevOps? 

 
Eric's principles: 'Three ways to move around' (The Phoenix Project)
 
1. The 'First Way'
 
  1. Left-to-right flow of work: Work flows from Development to IT Operations to the customer.
  2. Maximize flow: Focus on maximizing the flow of work by adopting certain practices.
  3. Small batch sizes: Break work into smaller batches to enhance efficiency.
  4. Work intervals: Implement regular intervals of work to maintain a steady flow.
  5. No defects passed downstream: Ensure that defects are not transferred to downstream work centers.
  6. Optimize for global goals: Prioritize global goals over local goals, such as completion rates, find/fix ratios, and availability measures.
  7. Continuous build, integration, and deployment: Implement practices for continuous building, integrating, and deploying software.
  8. On-demand environment creation: Create environments as needed instead of relying on predefined setups.
  9. Limit work in process: Restrict the amount of work in progress to avoid bottlenecks and optimize efficiency.
  10. Building safe systems and organizations: Establish systems and organisations that are adaptable and resilient to change.
 
2. The 'Second Way'
 
  1. Constant flow of fast feedback: Emphasise the continuous flow of feedback from right-to-left throughout the value stream.
  2. Prevent problems and enable faster detection and recovery: Utilise feedback to prevent problems from recurring and enable quick detection and recovery.
  3. Quality at the source: Foster a culture of quality by embedding knowledge and creating or enhancing it where necessary.
  4. "Stopping the production line": Pause production when builds and tests fail in the deployment pipeline to address issues promptly.
  5. Improvement of daily work over daily work: Prioritise and invest in improving the daily work processes rather than solely focusing on completing tasks.
  6. Fast automated test suites: Develop and implement automated test suites to ensure that code is always in a deployable state.
  7. Shared goals and shared pain: Foster collaboration and shared responsibility between Development and IT Operations by establishing shared goals and addressing challenges together.
  8. Pervasive production telemetry: Implement comprehensive monitoring systems to provide visibility into code and environment performance, ensuring alignment with customer goals.
 
3. The 'Third Way'
 
  1. The Third Way is about creating a culture that nurtures two things: continual experimentation, which requires taking risks and learning from success and failure, and understanding that repetition and practice are the prerequisites to mastery.
  2. Experimentation and risk-taking allow us to relentlessly improve our system of work, often requiring us to do things differently from decades-old practices.
  3. When things go wrong, our consistent repetition and daily practice enable us to retreat to a place of safety and resume normal operations.
  4. The necessary practices include fostering a culture of innovation and risk-taking (as opposed to fear or mindless order-taking) and building high levels of trust (as opposed to low trust and command-and-control structures).
  5. Allocating at least twenty per cent of Development and IT Operations cycles towards nonfunctional requirements, and constantly reinforcing that improvements are encouraged and celebrated, are also crucial.

What is DevOps? 

 
Eric's principles: 'Three ways to move around' (The Phoenix Project)
 
1. The 'First Way'
 
  1. Left-to-right flow of work: Work flows from Development to IT Operations to the customer.
  2. Maximize flow: Focus on maximizing the flow of work by adopting certain practices.
  3. Small batch sizes: Break work into smaller batches to enhance efficiency.
  4. Work intervals: Implement regular intervals of work to maintain a steady flow.
  5. No defects passed downstream: Ensure that defects are not transferred to downstream work centers.
  6. Optimize for global goals: Prioritize global goals over local goals, such as completion rates, find/fix ratios, and availability measures.
  7. Continuous build, integration, and deployment: Implement practices for continuous building, integrating, and deploying software.
  8. On-demand environment creation: Create environments as needed instead of relying on predefined setups.
  9. Limit work in process: Restrict the amount of work in progress to avoid bottlenecks and optimize efficiency.
  10. Building safe systems and organizations: Establish systems and organisations that are adaptable and resilient to change.
 
2. The 'Second Way'
 
  1. Constant flow of fast feedback: Emphasise the continuous flow of feedback from right-to-left throughout the value stream.
  2. Prevent problems and enable faster detection and recovery: Utilise feedback to prevent problems from recurring and enable quick detection and recovery.
  3. Quality at the source: Foster a culture of quality by embedding knowledge and creating or enhancing it where necessary.
  4. "Stopping the production line": Pause production when builds and tests fail in the deployment pipeline to address issues promptly.
  5. Improvement of daily work over daily work: Prioritise and invest in improving the daily work processes rather than solely focusing on completing tasks.
  6. Fast automated test suites: Develop and implement automated test suites to ensure that code is always in a deployable state.
  7. Shared goals and shared pain: Foster collaboration and shared responsibility between Development and IT Operations by establishing shared goals and addressing challenges together.
  8. Pervasive production telemetry: Implement comprehensive monitoring systems to provide visibility into code and environment performance, ensuring alignment with customer goals.
 
3. The 'Third Way'
 
  1. The Third Way is about creating a culture that nurtures two things: continual experimentation, which requires taking risks and learning from success and failure, and understanding that repetition and practice are the prerequisites to mastery.
  2. Experimentation and risk-taking allow us to relentlessly improve our system of work, often requiring us to do things differently from decades-old practices.
  3. When things go wrong, our consistent repetition and daily practice enable us to retreat to a place of safety and resume normal operations.
  4. The necessary practices include fostering a culture of innovation and risk-taking (as opposed to fear or mindless order-taking) and building high levels of trust (as opposed to low trust and command-and-control structures).
  5. Allocating at least twenty per cent of Development and IT Operations cycles towards nonfunctional requirements, and constantly reinforcing that improvements are encouraged and celebrated, are also crucial.
How would you rate your organisation's current maturity level in terms of DevOps practices and release management?
 

 
Beginner
Organisations at this level may require guidance and support to establish foundational DevOps practices and implement effective release management processes. They may focus on basic automation, collaboration, and gradual improvement.

Intermediate

Organisations at this level have already implemented some DevOps practices and release management processes. They can further enhance their approach by adopting more advanced automation, improving collaboration and communication, and implementing more robust release orchestration.

Advanced

Organisations at this level have a high level of maturity in DevOps practices and release management. They may leverage advanced automation, continuous integration and delivery (CI/CD) pipelines, comprehensive monitoring, and strong collaboration between development and operations teams.

Beginner: Indicates a lower level of experience with DevOps practices and release management. The organization may need more guidance and support in implementing and adopting these approaches.
Intermediate: Suggests a moderate level of familiarity with DevOps practices and release management. The organization may have implemented some processes but could benefit from further improvements and best practices.
Advanced: Indicates a high level of maturity in DevOps practices and release management. The organization is likely experienced and has well-established processes in place.
Not sure
What are your primary goals for implementing DevOps and release management in your Salesforce project? (Select all that apply)
 

The primary goals identified in the survey will shape the specific focus areas within the DevOps and release management approach. For example:

 

Faster and more frequent deployments

This goal may drive the adoption of agile development methodologies, automated testing, and deployment pipelines to enable rapid and frequent releases.

Improved collaboration

Organisations with this goal may emphasize cross-functional team collaboration, communication tools, and shared ownership of the release process.

Enhanced stability and reliability

This goal may involve implementing robust testing strategies, release validation processes, and rollback mechanisms to ensure stable and reliable releases.

Efficient change management

Organisations with this goal may focus on version control, change tracking, and documentation to manage and govern changes effectively.

Improved visibility and traceability

This goal may drive the implementation of release management tools and dashboards to provide visibility into the release pipeline and track changes throughout the process.

Minimised risks and impact

Organisations pursuing this methodology may emphasise risk assessment, change impact analysis, and comprehensive testing to minimise the impact of deployments on business and technical operations.

Faster and more frequent deployments: The organization prioritizes speed and agility in delivering changes to the Salesforce environment.
Improved collaboration: Collaboration between development and operations teams is a key focus for the organisation.
Enhanced stability and reliability: The organisation aims to ensure stable and reliable releases with minimal disruptions.
Efficient change management: Effective change management and version control are critical for the organisation.
Improved visibility and traceability: The organization seeks better visibility and tracking of changes throughout the release process.
Minimised risks and impact: Mitigating risks and minimising the impact of deployments are important objectives.
How frequently do you plan to release changes to your Salesforce environment?
 

The desired release frequency will influence the adoption of automation, release orchestration, and testing strategies. Organisations aiming for frequent releases may require more advanced CI/CD pipelines, automated testing, and configuration management practices to support rapid and reliable deployments.

Multiple times per day: Indicates a need for frequent, rapid deployments.
Daily, weekly, bi-weekly, or monthly: Specifies a more structured release cadence based on the organisation's needs.
How large is your development team?
 

The size of the development team can impact the level of coordination and collaboration required. Smaller teams may have more streamlined communication, while larger teams may need more formalised processes, release roles, and specialised responsibilities.

Small (1-5 members)
Medium (6-20 members)
Large (21+ members)
Do you have separate teams for development and operations (e.g., dedicated release management team)?
 

The separation or combination of development and operations teams can influence how responsibilities are divided and the level of collaboration required. Separate teams may necessitate more structured handoffs, communication channels, and dedicated resources for release management.

Yes: Indicates a separation between development and operations teams, potentially requiring dedicated resources for release management.
No: Indicates a combined team responsible for both development and operations tasks.
What is the size and complexity of your project?
 

Size, budgetary constraints and complexity of the project will influence the level of automation, testing, and scalability required in the DevOps and release management approach. Larger and more complex projects may need more sophisticated release orchestration, extensive testing strategies, and advanced monitoring capabilities.

Small and simple (few customisations, limited data volume)
Medium-sized with moderate complexity (moderate customisations, moderate data volume)
Large and complex (extensive customisations, high data volume, integrations)
What is your preferred deployment method for Salesforce changes?
 

The chosen deployment method will determine the level of automation, tooling, and infrastructure required. Manual deployments may involve more manual effort and coordination, while fully automated deployments require robust CI/CD pipelines and configuration management practices.

Manual deployments: There is a reliance on ad hoc, manual processes for deploying changes to the Salesforce environment.
Partially automated deployments: Some level of automation is implemented using tools such ANT scripts.
Fully automated deployments: Emphasises a high level of automation using tools like Salesforce DX or third-party CI/CD tools, e.g. Gearset..
How important is it for your organisation to have a reliable rollback mechanism in case of deployment failures?
 

The importance placed on having a reliable rollback mechanism will drive the adoption of practices such as version control, feature toggles, and automated rollback procedures. Critical importance may necessitate more rigorous testing and validation before deploying changes.

Critical, we require a robust rollback mechanism
Important, but a rollback mechanism is not a top priority
Not a significant concern for our organisation
Are you utilising version control for your project's source code and configuration?
 

The usage of version control will impact the organisation's ability to manage changes effectively. Organisations already using version control can build upon that foundation, whereas those without version control may need to implement it as a fundamental practice for source code and configuration management.

Yes, we have a well-established version control system
Partially, but improvements are needed
No, we do not currently use version control
Please provide details.
How do you measure and track the success of your Salesforce releases?
 

The chosen success measurement metrics will guide the organization's focus on monitoring and reporting.

Defect rates and user feedback
Time to deploy and release frequency
Application performance and stability metrics
Customer satisfaction and adoption rates
Other
Please Specify:
Are there any specific compliance or regulatory requirements that impact your DevOps and release management approach?
Yes, we have specific compliance requirements
No, compliance requirements are not a concern for our organisation
What are the biggest challenges or pain points you currently face in your Salesforce release management process?
Lack of automation and manual effort
Difficulty in coordinating and synchronising releases
Inadequate visibility and control over changes
Limited testing and validation processes
Other
Please Specify:
Please upload any assets related to your existing environment strategy or release process.
{"name":"DevOps Maturity Assessment", "url":"https://www.supersurvey.com/QPREVIEW","txt":"Which organisation do you work for?, What is DevOps?    Eric's principles: 'Three ways to move around' (The Phoenix Project)   1. The 'First Way'   Left-to-right flow of work: Work flows from Development to IT Operations to the customer. Maximize flow: Focus on maximizing the flow of work by adopting certain practices. Small batch sizes: Break work into smaller batches to enhance efficiency. Work intervals: Implement regular intervals of work to maintain a steady flow. No defects passed downstream: Ensure that defects are not transferred to downstream work centers. Optimize for global goals: Prioritize global goals over local goals, such as completion rates, find\/fix ratios, and availability measures. Continuous build, integration, and deployment: Implement practices for continuous building, integrating, and deploying software. On-demand environment creation: Create environments as needed instead of relying on predefined setups. Limit work in process: Restrict the amount of work in progress to avoid bottlenecks and optimize efficiency. Building safe systems and organizations: Establish systems and organisations that are adaptable and resilient to change.   2. The 'Second Way'   Constant flow of fast feedback: Emphasise the continuous flow of feedback from right-to-left throughout the value stream. Prevent problems and enable faster detection and recovery: Utilise feedback to prevent problems from recurring and enable quick detection and recovery. Quality at the source: Foster a culture of quality by embedding knowledge and creating or enhancing it where necessary. \"Stopping the production line\": Pause production when builds and tests fail in the deployment pipeline to address issues promptly. Improvement of daily work over daily work: Prioritise and invest in improving the daily work processes rather than solely focusing on completing tasks. Fast automated test suites: Develop and implement automated test suites to ensure that code is always in a deployable state. Shared goals and shared pain: Foster collaboration and shared responsibility between Development and IT Operations by establishing shared goals and addressing challenges together. Pervasive production telemetry: Implement comprehensive monitoring systems to provide visibility into code and environment performance, ensuring alignment with customer goals.   3. The 'Third Way'   The Third Way is about creating a culture that nurtures two things: continual experimentation, which requires taking risks and learning from success and failure, and understanding that repetition and practice are the prerequisites to mastery. Experimentation and risk-taking allow us to relentlessly improve our system of work, often requiring us to do things differently from decades-old practices. When things go wrong, our consistent repetition and daily practice enable us to retreat to a place of safety and resume normal operations. The necessary practices include fostering a culture of innovation and risk-taking (as opposed to fear or mindless order-taking) and building high levels of trust (as opposed to low trust and command-and-control structures). Allocating at least twenty per cent of Development and IT Operations cycles towards nonfunctional requirements, and constantly reinforcing that improvements are encouraged and celebrated, are also crucial., How would you rate your organisation's current maturity level in terms of DevOps practices and release management?     Beginner Organisations at this level may require guidance and support to establish foundational DevOps practices and implement effective release management processes. They may focus on basic automation, collaboration, and gradual improvement. Intermediate Organisations at this level have already implemented some DevOps practices and release management processes. They can further enhance their approach by adopting more advanced automation, improving collaboration and communication, and implementing more robust release orchestration. Advanced Organisations at this level have a high level of maturity in DevOps practices and release management. They may leverage advanced automation, continuous integration and delivery (CI\/CD) pipelines, comprehensive monitoring, and strong collaboration between development and operations teams.","img":"https://www.supersurvey.com/3012/CDN/101-4980915/generic-devops-pipeline.png?sz=1200"}
Make your own Survey
- it's free to start.