| Pros |
| 1. Works very well if the application has isolated functional parts. |
| 2. Works well together with a parallel extension of existing functionality using .NET. |
| 3. No interoperability overhead between migrated ASP and COM components through all the layers. |
| 4. No conversion between complex data types, like dataset and recordset is needed. |
| 5. Usually less risky, compared with complete layer horizontal migration. |
| 6. Vertically migrated application part can be redesigned and take advantage of .NET benefits through all migrated layers. |
| Cons |
| 1. Interoperability overhead to communicate with the rest of the nonmigrated unmanaged code. |
| 2. Additional effort to refactor independent functionality for vertical migration. |
| 3. Migrated shared code has to be accessed through interoperability or duplicated. |
| 4. State synchronization is still needed. |
| 5. Security for a mixed environment has to be addressed. |
| 6. Deployment should be done for the mixed environment. |