By Federico Kereki, Big Data Studio at Globant
Reducing friction in development implies more streamlined processes, with less waste, and a higher user satisfaction. The mere fact of applying Agile methodologies is the first step to reducing friction, the next one is a well-managed software development process to progressively enhance the methods in use. Continuous Delivery (CD) with its focus on always having a deliverable product, and a high emphasis on automated testing and deployment, should be considered:
- Quality is improved, because the development team is forced to solve problems earlier instead of leaving them for later.
- Risks are decreased with earlier releases, because problems are found sooner.
- Flexibility is increased, because the enterprise can release the software at any time with minimal added costs or risks.
- Efficiency is also increased, because of the involvement of the complete team (development, operations, QA, etc.) in the delivery process.
- Complications in the release process are smoothed over, and the automatic processes make delivery simple instead of traumatic.
Applying these techniques, reduces the following points of friction:
- Release is possible even with unfinished work, by using simple techniques as “feature toggles”, which allow development to proceed without halting deployment.
- Arbitrary division in “snapshot” and “release” builds disappears, since every build can be released into use.
- Pace for deployment can be tailored as desired: CD does not necessarily imply “Continuous Deployment”, in which all releases are always deployed.
- Conflicts between development and operation teams are reduced — and CD can be a tool for attaining DevOps, for an even more harmonious total process.
Reducing friction is an important goal, and it must be applied at all levels, since the inception of a new idea, through its implementation, and at the final user level. It embodies concepts of Quality, Efficiency, Usability, Agility, and general users’ satisfaction, so the search for frictionless processes and products is mandatory in today’s computing environments.by