Best practices for applying the IBM DevOps approach
Business needs, market trends, and customer demands are forcing organizations to develop and deploy applications, products, and services at a rapid rate. Increasing speed, though, can also increase human errors, failed deployments, and production outages.
IBM DevOps offers best practices to manage faster releases. You can apply DevOps practices anywhere — wherever your greatest friction, blockages, or pain points are.
Pain points — and remedies
"My development team often doesn’t get the right feedback early enough to respond quickly, nor achieve the right level of quality to truly deliver value."
Work together to stay aligned so you can optimize and maintain speed
Collaborative steering helps achieve "delivery at the speed of business"
Teams and teams-of-teams need to all stay focused on driving a project toward delivery of value — and do it quickly while lowering costs — a tall order! But by working together to achieve visibility they can maintain direction and make necessary adjustments along the way based on early feedback, and measure their activities to improve their agility and delivery predictability.
"I need to maintain a stable and secure IT production environment, but it's jeopardized when developers keep speeding up releases."
Collaborative development enables visibility
App status, app performance, build quality and status, production troubles, team efficiency, and bottlenecks should all be visible via dashboards, so the IT operations team knows what's coming and can prepare accordingly.
"My IT production team is tired of the inevitable 'release weekend.'
Continuous automation of release management ensures repeatability
Error-prone spreadsheets and legacy processes may be bogging your team down. Cut time, errors, and costs by automating the deployment of apps, middleware configuration, and database changes into development, test, and production environments. And with cloud, you can even automate the provisioning and deployment of the virtual machines, middleware, and application code.
"Everything is automated, except for quality."
Continuous testing ensures quality
All the automation in the world won't help you if you can't be sure that things work. You need to continuously test the VM configurations, the middleware installation, the deployment scripts and, of course, the application, software, or service.
Keep deployment scripts, infrastructure definitions for all environments, test cases, and code in an SCM system to enable rapid, error-free repeatability.
"Monitoring app performance late in the cycle leads to fire-fighting and finger-pointing"
Monitor and audit everything
Continuous monitoring ensures accountability
Agents monitor the application; audit logs capture the deployment actions; work items instrument teams' activities.