Dec
27
2016
By abernal
Plan
- What DevOps is
- How to implement DevOps
- The 3 ways
- The 1st way
- The 2nd way
- The 3th way
- The Phoenix Project
- The DevOps Hand Book
- The Goal
What DevOps is ?
There is not a given definition about DevOps, however I will borrow an idea from Ben Lambert
DevOps is the philosophy of the efficient development, deployment and operations of the highest quality software possible
There is no a right way to implement DevOps
What no to do
The First Way : The pinciples of Flow
- Make our work visible
- Use Boards
- Limit Work in progress
- Avoid multi tasking
- Reduce Batch Size
- Why is it better to make an envelope first rather than a single process first
- Reduce the number of handoffs
- Avoid unnecesary steps even more if those include other people or areas like authorizations
- Continually Identify and elevate our constraints
- Pinpoint those bottlenecks and work on improve them as much as possible
- Environment creation
- Code deployment
- Test setup and run
- Overly tight architecture
- Eliminate hardships and waste in the value stream
- These are some of the stuff that can be considered as waste
- Partially done work
- Extra processes
- Extra features
- Task switching
- Waiting
- Motion
- Defects
- Nonstandard or manual work
- Heroics
- These are some of the stuff that can be considered as waste
The Second Way : The principle of Feedback
- Working safely within complex systems
- Complex work is managed so that problems in design and operations are revealed
- Problems are swarmed and solved, resulting in quick construction of new knowledge
- New local knowledge is exploided globally throughout the organization
- Leaders create other leaders who continually grow these types of capabilities
- See problems as they occur
- Encourage feedback
- Swarm and solve problems to build new knowledge
- prevent the problem to spread
- prevent the work center to start new work
- solve the problem right away
- this can be accomplish with proper testing, once a test is failing it will ring the bell
- Keep pushing quality closer to the source
- Quality must be on the hands of the people that is directly related to the feature
- Avoid validation form high command managers that do not have idea about the feature itself
- Enable optimizing for downstream work centers
- architecture
- performance
- stability
- testability
- configurability
- security
The Third Way : The Principles of Continual Learning and Experimentation
- Enable an organizational learning and safety culture
- By removing blame, you remove fear, by removing fear you encourage honesty and honesty is the mother of clarity and improvement
- Institutionalize the improvement of daily work
- If there is we do not improve then we are moving backward
- Even more important than daily work is the improvement of daily work
- Transform local discoveries into Global improvements
- share documentation so that everyone could gain benefit from it is a key component for this tenent
- Inject resilence patterns into our daily work