Link to home
Create AccountLog in
Avatar of Gautam
GautamFlag for India

asked on

Reversibility in software development

Dear Experts

In software development what does reversibility means, if we have to develop application what are the measures on reversibility,  please help us to understand this and best practices.

Thanks in advance
ASKER CERTIFIED SOLUTION
Avatar of dpearson
dpearson

Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account
Avatar of Gautam

ASKER

Thanks for the details, really helpful, can we a tool like github or bitbucket and push the changes to production post UAT and still any issues found in the production after the new release we can revert if we use github or bitbucket please suggest.
SOLUTION
Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account
Avatar of dpearson
dpearson

Yes if you're looking to be able to reverse back to an earlier version in your release pipeline - doing those releases through a source control system (like github) is an excellent first step.

However, that's usually not sufficient to get reversibility, if you have some form of state - a database or use of the file system to store data.

For those, you will also need some formal process to ensure you know how to either revert them (which may be impossible for a database, as reverting would generally mean deleting data that you had collected) or ensuring that your software is backwards compatible with database changes.  For that, you just need to test it explicitly.  i.e. Run a test where you update the database schema, run the new software against it and then revert the software back one revision and see that it still works with the updated database schema.

If you include tests like those together with a source control based release pipeline, you should be fine.

Doug
Avatar of Gautam

ASKER

We have been asked by customer detailed possible use cases of reversible can you please list few,
so you are offering your customer reversibility without Knowing what it was, how to implement,  or where to use?
Avatar of Gautam

ASKER

I know to some extent but would be helpful if i get more inputs,
SOLUTION
Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account