Monday, February 20, 2017

DevOps and Continuous Integration

What is DevOps ?


DevOps is a combination of software development and operations and it uses the practices and tools that enhance an organization's ability to deliver applications and services faster.

Rather than seeing these as two distinct groups who are responsible for their specific tasks but don’t really work together, the DevOps method recognizes the interdependence of the two groups. By integrating development and operation as one team or department, DevOps helps an organization deploy software more frequently, while maintaining service stability and gaining the speed necessary for more innovation.


And, in the end, everyone is able to deliver the best results and overall experience possible to the customer.


Benefits of DevOps 

  1. Speed
  2. Rapid delivery of applications. (Continuous Integration and Continuous Delivery)
  3. Reliability
  4. Scale
  5. Security

What is Continuous Integration ?


Initially developer's update their code to the code repository once a day. Without continuous integration, the odds of one developer’s changes conflicting with another developer’s changes are very high. When long periods of time go by without integration, the problems that surface can be huge and costly to track down and fix.


A developer starts by checking their code out of the depository, makes the changes needed, tests and, fi the code passes all tests, checks in the changed code and tests again to ensure that other programmers’ changes aren’t in conflict. Because everyone is starting from the freshest code available and checks their code in frequently, bugs are easier to track down and it’s easier to revert back to known good code.



Continuous integration offers these benefits:
  1. It reduces the risk of project derailment.
  2. It helps prevent integration problems cropping up at release when everyone tries to make incompatible versions work together.
  3. Developers communicate better.
  4. Changes are always made to the freshest code base rather than obsolete code.
  5. Problems and bugs are found faster because the size of the changed code is smaller. 

With continuous integration, the code that’s checked into the repository is always ready to be deployed to end users, leading to continuous deployment.

--- Ashen Jayasinghe ---

1 comment: