Below are brief steps for the upgrade I have performed.
Note: All steps could not be generic, some steps could be specific to the way of my Liferay installation/setup

#############################
## Upgrade from 512 to 523
#############################
1. Backup liferay-512 database.
2. setup liferay-523 bundle. Delete all extra (except ROOT and tunnel-web) plugins from tomcat/webapps.
3. copy all plugins in tomcat/webapps
4. copy portal-ext.properties and system-ext.properties tomcat/webapps/ROOT/WEB-INF/classes
5. Merge all portal-legacy-5.1.properties into portal-ext.properties. Comment path related properties so they can be pointed to /data/ folder.
6. Copy liferay/jackrabbit and liferay/lucene folders from user's folder to liferay-home/data/ folder.
7. Execute below queries in database for a bug https://issues.liferay.com/browse/LPS-5498
1
2update Group_ set classNameId = (select classNameId from classname_ where value = 'com.liferay.portal.model.Group') where friendlyURL = '/guest';
3update Group_ set classPK = groupId where friendlyURL = '/guest';
4commit;
8. Point liferay-523 to existing mysql database of liferay-512: Copy Resource and mail configuration from liferay-512/tomcat/conf/Catalina/localhost/ROOT.xml to liferay-523/tomcat/conf/context.xml. Add JNDI property for database to portal-ext.properties.
9. Perform changes in theme as suggested by liferay. Refer "Upgrading From Liferay 5.1 to Liferay 5.2" from documentation page http://www.liferay.com/documentation/liferay-portal/5.2/administration/-/ai/upgrading-liferay-1
10. Start the server.
#############################
## Upgrade from 523 to 606
#############################
1. Backup liferay-523 database.
2. Setup liferay-606 bundle.
3. copy all plugins in tomcat/webapps.
4. Update plugins for version 606. Specifically configuration files of theme.
5. copy portal-ext.properties and system-ext.properties in tomcat/webapps/ROOT/WEB-INF/classes
6. Merge all portal-legacy-5.2.properties into portal-ext.properties. Specifically the property permissions.user.check.algorithm=5 is important.
7. Copy /data/jackrabbit and /data/lucene folders from 523 bundle to 606 bundle.
8. Point liferay-606 to existing mysql database of liferay-523:
Copy Resource and mail configuration from liferay-523/tomcat/conf/context.xml to liferay-606/tomcat/conf/context.xml. Verify that JNDI property in portal-ext.properties is pointing to correct database.
9. Also refer "Upgrading From Liferay 5.2 to Liferay 6.0" from http://www.liferay.com/documentation/liferay-portal/6.0/administration/-/ai/upgrading-lifer-4
10. Start the server.
+++++++++++++++++++++++++++++++++++++++++++++
++ Upgrade permission algorithm from 5 to 6
+++++++++++++++++++++++++++++++++++++++++++++
1. Backup liferay-606 database.
2. Execute permission algorithm migration from 5 to 6.
3. Set permissions.user.check.algorithm=6 in portal-ext.properties.
4. Restart the server and perform quick verification on permissions.
#############################
## Upgrade from 606 to 611
#############################
1. Backup liferay-606 database.
2. Setup liferay-611-GA2 bundle. Have a look at step-12 also, but you can try your luck

3. Copy all plugins in tomcat/webapps.
4. Upgrade plugins for version 611.
5. Copy portal-ext.properties and system-ext.properties in tomcat/webapps/ROOT/WEB-INF/classes.
6. Merge all portal-legacy-6.0.properties into portal-ext.properties. Make sure that image.hook.impl is set to the value of your 606 bundle, so it can be upgraded to 'document and media'. Some property name & value (related to document library and image gallery) have been modified/renamed.
Like, Replace the property
dl.hook.impl=com.liferay.documentlibrary.util.JCRHook
by (as the property name & value has been changed in Liferay-6.1.1)
dl.store.impl=com.liferay.portlet.documentlibrary.store.JCRStore
7. Copy /data/jackrabbit and /data/lucene folders from 606 bundle to 611 bundle.
8. Point liferay-611 to existing mysql database of liferay-606:
Copy Resource and mail configuration from liferay-606/tomcat/conf/context.xml to liferay-611/tomcat/conf/context.xml. Verify that JNDI property in portal-ext.properties is pointing to correct database.
9. Start the server. Perform some random checks.
10. Remove the property "image.hook.impl" from portal-ext.properties and restart the server.
11. Issue with upgrade of Blogs. The attribute Status doesn't have any value in BlogsEntry table, that's why blogs are not displayed in "Blogs Aggregator Portlet". Set it to approved status. [Liferay Bug or issue specific to my upgrade]
1
2update BlogsEntry set status = 0;
3commit;
12. There were some errors related to static data creation for new Document & Media, as stated below. I wonder why Liferay does this on server startup, rather than populating the values as part of upgrade process ! To get rid of this issue, I had to replace my liferay bundle with this one: https://www.lcepatchers.org/downloads. In this patched bundle, the defect is fixed.
1
214:03:10,962 ERROR [pool-2-thread-1][PortalInstances:468] com.liferay.portal.kernel.events.ActionException: com.liferay.portlet.dynamicdatamapping.StructureNameException
3com.liferay.portal.kernel.events.ActionException: com.liferay.portlet.dynamicdatamapping.StructureNameException
4 at com.liferay.portal.events.AddDefaultDocumentLibraryStructuresAction.run(AddDefaultDocumentLibraryStructuresAction.java:64)
------------------------------------------------------- The End

-------------------------------------------------------
Isn't it very quick
cheers,
Abhed
Firmi prego dentro per inbandierare questo come inadeguato.