<!-- https://abap2ui5.github.io/docs/advanced/insights/32-from-its-to-abap2ui5 -->

# #32 From ITS to abap2UI5

Twenty-seven years of SAP user interfaces, laid out end to end — because the
shape of this line is easy to misremember, and the misremembering is usually
"everything moved to the browser and stayed there".

**ITS, 1996.** Dynpro screens rendered as HTML by the server. Every interaction
a full page from the server. Still in warehouses today, on scanners,
outliving several of its successors without any fuss about it.

**BSP, 2001.** HTML and JavaScript written inside the ABAP stack, with ABAP
embedded for logic. Server-side rendering again, with real control over the
markup.

**Web Dynpro ABAP, 2006.** Views, context and controllers defined in ABAP. A
component model rather than a page model — and still the server building the
HTML.

**UI5 Freestyle, 2012.** The rendering moves. JavaScript, XML views and UI5
controls run in the browser; the backend delivers data through OData and stops
having an opinion about the screen.

**RAP and Fiori Elements, 2019.** The UI definition returns to ABAP as CDS
annotations, and a runtime in the browser turns them into the app.

**abap2UI5, 2023.** The backend sends the XML view itself, and a static UI5 app
renders it.

![Twenty-seven years, and the one move that did not reverse.](/insights/32-timeline.svg)

*Twenty-seven years, and the one move that did not reverse.*

Read as a line, it is not a march away from the server. For the first fifteen
years ABAP built the HTML. Then rendering left for the browser, where it stays
— because that is where a modern UI belongs, and nobody is seriously proposing
otherwise. What has been moving back ever since is not the rendering but the
**definition** of the screen: first as annotations, then as the view itself.

Which makes Over-the-Wire less of a new idea than a returning one, arriving
with the part the old server-rendered world never had — a real control library
in the browser.
