9. DevOps & accountability framework Flashcards

1
Q

What is accountability framework?

A

Accountability framework is one way to sustain the collaboration

It defines roles and
processes for building and
using the digital platform

  • Exploiting and coordinating their different talents
  • Combining individual components
  • Developing digital offerings depend not on standardized processes, but rapid
    innovation – from instruction to empowerment
  • Empower people to identify, create, and manage digital offerings – and coordination of
    team efforts&raquo_space; design accountabilities to meet corporate business objectives

”This goal of empowering people while coordinating their individual efforts is why
companies need an accontability framework (…) Companies avoid chaos by developing
an accountability framework, which we can define as distribution of responsibilities for
digital offerings and components that balances autonomy and alignment”
(Ross et al:2019:78-79)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What includes in building an accountability framework for a dynamic working environment?

A

Making someone acountable - they have to answer to what they did do or did not do
- What needs to be done

Responsibility
- Internal goal
- Do this cause you think its the right way to do it
- How is the task done

Balance between alignment and autonomy
External and internal goals

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are key mechanisms in accountability framework?

A

Source: Ross et al.
Mechanisms you need to be able to have a good accountability framework

Missions: what will my tema do?
* Establish metrics,
* Define processes,
* Assess outcomes

Formalized knowledge sharing
- for collaboration and trust

Modular Architecture
- continuous code release - experiments

Empowered teams (in the middle)
- A component owner team throughout the life of the component: you made it, you own it (‘mini-CEO’)

Key software components and
digital offerings: Living
(changing) assets with a life
cycle – and updates to
components

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the 8 principles for the accountability framework?

A

Source. Ross et al. (2019), p. 82

  1. Component owners - not project managers
  2. Mission - not structure
  3. Metrics - not directives
  4. Experiments - not major launches

DevOps environment
5. Continuous release - not scheduled releases
6. Fully resourced - not matrixed
7. Collaboration - not hierarchy
8. Trust - not control

“In short developing an accountability framework involves a major cultural change” (p. 93)

There is continuous change in accountabilities as new digital offerings emerge or disappear and missions are updated

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How to develop an Accountability Framework?

A

Source: Ross et al (2019)

  • Distinguish responsibility for internal processes from responsibility for new offerings
    operational backbone/DP)
  • Implement gradually – IT, seperate digital units/organisations – codify the principles of AccF
  • Create coaching roles
  • Rethink governance, teams should demonstrate value (MVP’s)

”It may take time for people accustomed to
fairly stable organizational structures to
become comfortable with constantly evolving
accountabilities (Ross et al:2019:99)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

GETTING IT RIGHT – LOOK AT YOUR CASES

A

Consider what would be your case company’s first step on the journey of making an
accountability framework:

Situation: if they have a digital platform/ would build one
Issue/focus: how do they work with digital offerings, experiements now?

Possible next steps: (Getting Accountability Right: p. 99-100 in Ross et al., 2019)
- assigning ownership for living assets/ adoption of agile methodologies
- empowering teams through clear missions to minimize team interdependencies
- fully resourcing teams working with digital innovation – financial commitment
- start small and allow for learning
- coaching is the new management core competence, not hiearchical decisions; help your people to become good coaches

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the fundamental of DevOps?

A

DevOps is more like project management philosophy - not a fixed set of tools

The fundamental principles of DevOps as generally agreed upon by the most influential
early members of the DevOps community, were summed up in the acronym “CAMS.”

CAMS = Culture, Automation, Measurement, Sharing

Jez Humble later suggested adding an “L” to the acronym, changing it to “CALMS.”
Culture
Automation
Lean
Measurement
Sharing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does DevOps work?

A

Business Analyst –> pass requirements
Requirements collection, documentation, design of product, etc.

Application Development –> pass code
Agile teams, application developers, software engineers, etc.

SW testing and QA –> pass approved code for release
Testers, QA people, programmers write new code which performs tests to make sure everything that has been developed works OK

Release Engineering/ Development –> pass final product
Release engineers, technicians who bridge Application Dev (created) and IT environment (live)

IT Operations (infrastruct.) –> product finally makes it to the users or customers
Sys admin, network engineers, technicians responsible for keeping everything up and
running and fix it if it breaks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is lean about?

A

Lean is about moving waste?

Two of Lean’s major tenets include:
1. Manufacturing lead time is best predictor of quality, customer satisfaction and
employee happiness.
2. Best predictor for short lead times is small batch sizes of work.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are agile key principles?

A

“Deliver software frequently, from a couple of months to a couple of weeks, with a
preference to the shorter timescale”.

  • Small batch sizes
  • Incremental releases

Emphasis on small, self-motivated teams working in a high-trust management model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are DevOps foundations?

A
  • Lean movement (manufacturing lead time; small batch size; system thinking)
  • Agile movement (deliver frequently; small batch size ; incremental; motivated small
    teams; trust-management)
  • Continuous Delivery Movement (linking development with deployment in pipeline)
  • Improvement Kata (continuous self-improvement)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What includes in DevOps?

A

High-trust, high- performance culture
- Unified mission; aligned incentives across departments and teams; little
fear/failure/blame, high quality of work life

IT capabilities = strategic assets, not cost centers
- Projects, features and work flow through fast cycles times, systems are “antifragile,”
IT processes & capabilities are aligned with overarching organizational needs

Highly automated processes; mature deployment pipeline
- Technical phases of projects supported by common tools and automation processes,
collaboration replaces handoffs, codebase/IT infrastructure is agile and functional by default

Continuous delivery of software and IT value
- Features, projects and IT work follow a regular, iterative flow. Cycle time is short,
workflow favors small frequent changes

Commitment to continuous learning & improvement
- Disciplined feedback loops quickly travel back upstream for inclusion. Tools for
monitoring, measurement and alerting implemented & effective. Shared knowledge
repositories.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does the DevOps team do?

A

Business Analyst:
Helps with requirements not just for the end product but also for automated tests as well as infrastructure requirements.

App Developer:
Develops code for the end product, but responsibility does not end with submitting code –>continuous support. Helps all the way to the successful deployment.

SW tester and Q&A:
Is no longer a separate department from development, but works jointly to setup automated tests (quality gates) for developers to check their work automatically for immediate feedback

IT operations:
No longer the “final step” for a product, but part of the team. Infrastructure matches the
development environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What do Ops see?

A
  • Fragile applications are prone to failure
  • Long time required to figure out which bit
    got flipped
  • Too much time required to restore services
  • Too much firefighting and unplanned work
  • Planned work cannot be completed
  • Frustrated customer leaves
  • Market share goes down
  • Business misses shareholder promises
  • Business makes even larger promises
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What do Devs see?

A
  • More urgent date-driven projects put into the
    queue
  • Even more fragile code put into production
  • More releases have increasingly turbulent installs
  • Release cycle slow to catch up with cost of
    deployments
  • Failing deployments difficult to diagnose
  • Fewer IT resources due to cut-backs
  • Ever increasing backlog of infrastructure projects
  • Ever increasing amount of tension between Dev
    and Ops
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is positively reinforcing feedback loops?

A
  • Fragile artifacts become more fragile
  • Technical debt grows
  • Date-driven application projects focus only on features, sacrificing non-functional
    requirements, which results in more fragile artifacts in production
  • Application deploy take longer, become more turbulent, and continually gets worse
  • IT Ops is mired in firefighting, and therefore cannot do preventive work or new projects
  • Long feature delivery cycle times result in more political decision making, meaning
    more focus on features (vs. non-functional requirements)
17
Q

What is DevOps?

A

DevOps is a set of practices that automates the processes between software development and IT teams, in order that they can build, test, and release software faster and more reliably.

The concept of DevOps is founded on building a culture of collaboration between teams that historically functioned in relative siloes.

18
Q

Why is Devops good for IT?

A

Measuring DevOps and IT Performance:
-Deploy frequency (not delivery)
-Mean Time To Recover (MTTR)
-Lead Time for Change (deploy lead time)
-Change fail rate / Change accuracy (%C/A)

19
Q

How can IT performance be measured?

A
  • Throughput and stability, both are possible, simultaneously.
  • Contributes to organisational performance ($$$)
  • Culture is a key predictor of both IT Performance and Organisational Performance
  • Automation and tooling are important
20
Q

What is CI, CD and CDE?

A

CI = Continuois intregration
- CI server
- Build

CD = Continuous delivery
- Acceptance test (manual)
- Production (manual)

CDE = Continuous Deployment
- Acceptance test (automatic)
- Production (automatic)

21
Q

What challenges does CD (Continuous delivery) have?

A

People
* Different interests across departments (Chen 2015)
* General mindset of the company, old habits, uncertainty of benefits of CD (Debbiche 2014)

Process
* Changes must go through a change advisory board prelonging the process (Chen 2015)
* Domain constraints and diversity of customers influence the deployment process (Leppänen 2015)
* Changing team roles, pressure, team coordination and documentation of processes (Claps 2015)

Technology
* Outdated SW tools and equipment (Olsson 2012)
* Some products do not facilitate CD capabilities, e.g. critical safety systems
* Tests , e.g. user interaction testing are challenging to automate (Leppänen 2015)

22
Q

What benefits does CD (Continuous delivery) have?

A

Accelerated time to market
-Increased release frequency. Release cycles shortened.

Building the right product
-More frequent releases provide more feedback from customers, resulting in more focussed work on useful features.

Improved productivity and efficiency
-The CD pipeline sets up development and test environments, standardising and automating work.

Reliable releases Frequent releases make finding bugs and problems
easier.
-Amount of change per release is thereby decreased.

Improved product quality
-Problems in the codes are spotted during tests earlier, allowing developers to fix problems more frequently, improving quality.

Improved customer satisfaction
-Customer satisfaction is increased due to more frequent product updates and increased product quality.

23
Q

Mention 3 ways of how to DevOps

A

Fast left to right flow
Fast and constant flow of feedback
Generative high trust culture

24
Q

Mention 4 categories of work

A
  • Planned Work — these are typically business projects or new features
  • Internal Projects — server migrations, software updates and so on
  • Changes — usually driven by feedback on already completed work (%C/A)
  • Unplanned Work — support escalations and emergency outages
25
Q

What is the technology value stream?

A

“… the process required to convert a business hypothesis
into a technology-enabled service that delivers value to
the customer.”

Business Objective; concept; idea; hypothesis… –>

User stories and feature specification –>

Implement in code into the application or service –>

Check into version control repository –>

Deployment into production –>

26
Q

Describe the first way - the principles of flow

A
  • Make work visible –> kanban board
  • Limit Work In Progress (WIP) –> limit the number of tasks in a given column
  • Reduce Batch Size
    Another way to reduce WIP and improve flow is
    to decrease the batch sizes of the work—the
    requirements, designs, code, tests, and other
    work items that move through the system.
    Small batches go through the system more
    quickly and with less variability, which fosters
    faster learning.
    The reduced variability results from the smaller
    number of items in the batch. Since each item
    has some variability, the accumulation of a large
    number of items has more variability.
  • Reduce Number of Handoffs
  • Continually Identify and Elevate our Constraints
  • Eliminate Hardship and Waste in the Value Stream
  • Partially done work – WIP
  • Extra Processing – work that does not add value (e.g. documentation not used later)
  • Extra Features – unnecessary features
  • Task Switching – cognitive cost
  • Waiting – waiting at a bottleneck
  • Motion – amount of effort to move information or material
  • Defects – incorrect, missing or unclear information
  • Non-Standard or Manual Work – testing, building servers, etc.
  • Heroics - overtime
27
Q

Describe the second way - the principles of feedback

A
  • Work Safely within Complex Systems
  • See Problems as they occur
  • Swarm and Solve problems to build new Knowledge
  • Keep Pushing Quality Closer to the Source
  • Enable Optimising for Downstream Work Centres