Architects May Come and Architects May Go

At some point in any presentation on AWS migration you will be confronted with the above diagram. On many levels it is an awful diagram. The color scheme is incoherent, it assumes a left-to-right flow–except for the things that don’t flow left to right, and why is there a decision node with only one outcome? I have never had a presenter actually try to walk an audience through the details of the diagram. Myself, I will take you this far into the picture: We are currently at the left-most blue node, “Discover/Assess/Prioritize Applications”. That is the work I described last week that is being carried out by Dana Doten and the AWS Focus Team. Our calendar has this workstream ending on April 8th, which means we need to get to the second left-most node, “Determine Migration Path.” And that node involves anyone with a resource in the Vance datacenter, and a feeble mnemonic known as the 6 Rs.

AWS refers to the 6 Rs frequently when discussing migration. The 6 Rs are the six alternatives for migrating applications. AWS has contrived to have each option start with an R: Rehosting, Replatforming, Repurchasing, Refactoring, Retire, Retain. Again, a world of confusion. No one, including the people who make their living as migration consultants, can keep the terms straight. What does the fourth ‘R’ stand for—Rewrite? Redesign?  And what does Replatform mean? Is it moving to the Salesforce platform? (No.) Thus, a supposed memory aid forces us to remember even more things.*

Because of this, I am going to refer to each option by a coherent term. It makes for a lousy mnemonic: The 2 Ls, the 1 S and the 3 Rs. However, when we refer to Lift and Shift, you won’t be floundering to recall what’s involved.

Lift and Shift Rehosting

This is the super-uncool choice. Take your server or VM and move it up to AWS with no changes. No changes to the operating system, no code rewrites, no microservices, no devops. Lift-and-shift is what you hire movers to do. Movers are not glamorous. Movers generally don’t go three-hundred-percent over budget, either. Or end up three hundred days past deadline.

Lift and Tinker Replatforming

Lift and Shift’s slightly more glamorous sibling. Perhaps you upgrade from Red Hat Linux version 6 to version 7 before you move to AWS. Or you transfer your database back end to an AWS RDS instance after you move to AWS.

Switch Repurchasing

This option is easier to describe than to name. Move from a local version of Confluence to the cloud version. Buy an off-the-shelf cloud application to replace your datacenter-bound version. Move to Salesforce. 

Rearchitect Refactoring

This is the most dangerous option, the glamorous choice. Architects are glamorous. Zaha Hadid, Penn’s own Louis Kahn. Since you’re moving to the cloud, why not rewrite your application entirely and optimize it for the cloud? Before you do this, you should evaluate your resources. Do you completely revamp all your applications annually? Will your applications stop having bugs or needing enhancements while you are rewriting from the ground up? If not, where are extra person-hours going to come from to do this work? Think carefully before you take the visionary choice.

Relocate Retain

Don’t move to the cloud. AWS calls this Retain. In our scenario, with the Vance datacenter disappearing on the ninth hour of the first day of the fifth month of 2020, there will be no retaining. If you do not want to move your resource to the cloud you will need to find a new home for it. A good candidate is ISC (Information Systems and Computing). They run two data centers—one in Huntsman Hall and one at the Pennovation Works. The responsibility will be on you to arrange for relocation. Wharton Computing will work with ISC to facilitate the move once you have arranged your destination.  

Retire

That’s right. Get rid of it. Does your application to curate cat videos no longer spark joy? Let it go. 

Why Do You Care?

Within the next month we will be reaching out to the owners of resources. It is your resource; the decision on what to do with it is yours. We will help guide you through the options. The migration team will be organizing and doing Lift and Shift and Lift and Tinker this summer. We want to have all of the 2 Ls done by August 16th, 2019. If you choose the S or one of the 3 Rs the work will need to be completed by May 1, 2020. If you want to Retire your server or application, we will work with you at any time. It will be your responsibility to secure development resources if you want to Rearchitect. If you are going to Switch to Salesforce, or a cloud version of your application, it will be incumbent on you to manage that transition. And if you want to Relocate your resource, you will need to make those arrangements.


* The six terms don’t even have the same tense, with the first four using the present participle and the last two using the base form. (Unless the first four are gerunds and thus nouns, and the last two are verbs. In which case they aren’t even the same parts of speech.)