DevOps The Modern Way of Developing Services...

What is Devops...
DevOps is the bridge between development and operations, hence the word DevOps. Devops is a set of working practices to automate and monitor all phases of Software Development LifeCycle [SDLC]. Devops enables software to be delivered using The Twelve Factor APP principles given below.. The main emphasis is on..
  1. Automated Environment provision
  2. Automated Testing
  3. Automated Monitoring capabilities
  4. Simple / controlled deployment workflows
  5. Instant feedback to all technical / non technical staff
Latest Posts...
Latest Devops Posts
The Twelve Factors
# Factor Description
I Codebase Only one codebase stored in a version control system for a deployed service, with the resulting deployment artifact used for many deployments.
II Dependencies All dependencies should be declared / included, with no reliance on system tools or libraries.
III Config Configuration that varies between deployments should be stored in the environment, or in a centrally managed location.
IV Backing services All backing services are treated as attached resources and attached and detached by the execution environment.
V Build, release, run The delivery pipeline should strictly consist of build, test, deploy to test environment, release, run.
VI Processes Applications should be deployed as one or more stateless application or service with persisted data stored on a backing service.
VII Port binding / Service discovery Self-contained services should make themselves available to other services by specified ports or service discovery methods like DNS, centralised configuration manager.
VIII Concurrency Concurrency is advocated by scaling individual service instances without having deadlock situations.
IX Disposability Fast startup and shutdown capabilities for a more robust / resilient / scallable system.
X Dev/Prod parity All environments should be as similar as possible, like OS / Hardware spec / Firewall / Security. If they are different then a configuration management system system should automate the configuration.
XI Logs Applications should produce logs as event streams and leave the execution environment to aggregate.
XII Admin Processes Any needed admin tasks should be kept in source control and packaged with the application or should allowed to be executed remotely using API or tools.
Developer's portal
For all those interested in developing and reading about technology and agile practices and techniques, we have a new Developer Portal..