Can you trace every line of code to executables, issues, test cases and the people behind them? What auditing capabilities do you have?
Enterprise customers need auditing at the code level. It’s about the right level of security. But it’s also about knowing that relevant requisites, adequate test cases and active projects are correctly tied to the executables.
Do you have automated release scheduling, making sure constraints are met and deployments are prioritized and scheduled?
When deploying mission-critical software, you can’t afford to risk service disruptions at any moment. That’s what automated scheduling is for.
Automated scheduling is the enabler of a Continuous Deployment implementation. You can’t just ship whithout an orchestrated process that is timed right.
Do your people stay late / come at night to release software?
Another classic of broken DevOps. Releasing software should not culminate in an extraneous, late night ordeal. The final dot in the release process should just be a simple, fearless process that can be easily managed and rollback.
Are there people in your department who are key to the change and configuration process? What do you do if they are not available?
That’s a symptom of a broken DevOps process. Whatever can be scripted should be in one place. Manual steps should also be documented, planned and triggered by software, so all pieces play together.
Do you rely heavily on email and meetings when setting up a release?
Changing actors throughout a process and relying on various media to share business critical information generate lots of process latency. Every well of information may slow things down from hours to days to weeks… Getting the whole IT department on the same page is Clarive’s full time job.
Do you have a single point of access and dashboard to all the lifecycle tooling that can tell you what everyone is up to in a single point in time?
It’s important to have one place to look when so many tools are needed. Research indicates that IT departments are the least automated of an organization. ERP is automated. Finance is automated. Customer interaction is automated. But IT is still manually glued-together, with operations costs continuing to outpace capital investments.
How do you detect dependencies between application themselves and its infrastructure?
You need to know what depends on everything else. If base libraries are changed in production, do you retest dependent application? How about changes in API? Are services retested and redeployed? Manually or automatically?
How do make sure infrastructure changes are aligned with code changes in a release?
Often, releasing software also mean provisioning the underlying infrastructure. It’s crucial to have an integrated process for both.
Do you have all your scripts processes all in one place?
How do you make sure that what was tested is actually what is being shipped?
Making sure that every line of code shipped to production has gone through static code analysis. Or that the release has run through performance testing with a tool like LoadRunner© requires a good load of orchestration.
How do you rollback changes when they involve many different servers, databases, CRMs, Portals, etc.?”
Rollback is a tough business. Clarive has cracked it. How? By wiring it into the tool from the first moment. By making sure that rollback checkpoints are in place and that we can come back to them at any given moment.
How about manual steps? By implementing fine-grained job error trapping and step executions, be them manual or automatic.
That’s our secret sauce.
How long does it take to go from change request to deployment?
The Continuous X movement is a big thing. Release early, release often has arrived at even the largest organization. Why? Customers expect it. The business needs it. Have you heard of…
- Continuous Build?
- Continuous Deployment?
- Continuous Delivery?
- Continuous Assessment?
- Continuous Feedback?
All these concepts are oriented towards one thing: time-to-market.
What’s your application lifecycle like? Any difficulties putting a release into production?
Sometimes it’s not enough to have a complete release management toolset. There are so many things to factor in when building and releasing applications, that most companies need a centralized, orchestration entity that coordinates every aspect of the full process.