“A common convention in software is that new major version number of a platform indicates that software from earlier major versions may require changes, often quite significant, to function” is pretty easy for non-technical people to understand.
Is it working or not? Usually that's what they care about.
So it was ok in the old system but now there is an improved super shiny trendy best superpower new one and the previous ok is not ok anymore? [puzzled faces]
This type of user is actually usually, IME, easier to explain it to:
“It’s a different platform and our software will not work without changes”. The less they “give a faint fart” about details, the easy it is to tell them the effects and have them accept and move on.
At most, you might occasionally need to invoke a car analogy: it’s like trying to use accessories designed for an older model year, when there has been a design change between model years – some things just don’t fit right anymore.
I get that techies sometimes have preferences for perfect and eternal backward compatibility within a named product line, but trying to pass this off with “how will you explain this to non-techies”, and then treating non-techies as both more ignorant and more concerned with technical details than they are, is not a good way to promote that preference.
Upgrade it today as I'm off to play golf."
That sounds like an outlier, though. Typically, consoles were not compatible between generations. PS1 games didn't play on PS2. PS2 games didn't play on PS3. Etc.
- dotnet try-convert: https://github.com/dotnet/try-convert
- dotnet upgrade assistant: https://dotnet.microsoft.com/en-us/platform/upgrade-assistan...
Why would a non-technical person care?