Architektur von Web Dynpro 
Web Dynpro ist das Programmiermodell von SAP NetWeaver für Benutzungsoberflächen.
Das Web-Dynpro-Programmiermodell basiert auf dem Model-View-Controller-Paradigma und geht über das klassische Dynpro-Modell u.a. in folgenden Punkten hinaus:
klare Trennung von Business- und Anzeigelogik
einheitliches Metamodell für alle Arten von Benutzungsoberflächen
Ausführung in einer Vielzahl von Client-Plattformen
weitestgehende Plattformunabhängigkeit der Schnittstellen
Web Dynpro unterstützt Sie bei der Entwicklung der Web-Darstellung einer betriebswirtschaftlichen Anwendung. Sie beschreiben mit Hilfe spezieller Werkzeuge die Eigenschaften einer Web-Dynpro-Anwendung in Form von Web-Dynpro-Metadaten und erhalten automatisch den notwendigen Quelltext, welcher zur Laufzeit ausgeführt wird. Neben den durch das Framework angebotenen Ereignissen können Sie auch eigene Ereignisse für eine Web-Dynpro-Anwendung definieren. In jedem Fall aber programmieren Sie die Ereignisbehandlung in separaten Quelltextbereichen, die zur Laufzeit automatisch bei der Auslösung des Ereignisses ausgeführt werden.
In Web Dynpro ist jede Benutzungsoberfläche immer aus denselben Grundelementen aufgebaut. Diese Elemente des Metamodells können statisch mit Hilfe von Web-Dynpro-Werkzeugen deklariert werden.
Zusätzlich ist es möglich, Elemente des Metamodells zur Laufzeit dynamisch zu ändern oder neu einzubinden. Mit Hilfe solcher Implementierungen können Sie eine deklarativ erstellte Benutzungsoberfläche beliebig ändern oder erweitern, indem Sie zur Laufzeit neue Interface-Strukturen erzeugen.
Sie können also deklarative Vorgehensweisen und Implementierung von Quelltext miteinander verbinden.
Um den deklarativen Ansatz zu unterstützen, enthalten sowohl das SAP NetWeaver Developer Studio als auch die ABAP Workbench eine Reihe von Web-Dynpro-Werkzeugen. Damit können Sie weite Teile einer Web-Dynpro-Anwendung werkzeugunterstützt aufbauen, ohne selbst Quelltext zu erstellen. Dies gilt u.a. für folgende Teile:
Datenfluss zwischen Front- und Backend
Layout der Benutzungsoberfläche
Eigenschaften von Oberflächenelementen
Die Web-Dynpro-Werkzeuge ermöglichen innerhalb generierten Quelltexts das manuelle Erstellen von Quelltext-Bereichen. Diese Bereiche werden bei einer erneuten Generierung des Quelltexts nicht geändert.
Durch den Einsatz von Web Dynpro erreichen Sie eine klare Trennung von Business- und Anzeigelogik. Eine Web-Dynpro-Anwendung läuft auf dem Frontend und besitzt über einen Service einen lokalen oder einen Remote-Zugriff auf das Backend-System. Das heißt, die gesamte Anzeigelogik ist in der Web-Dynpro-Anwendung enthalten, wohingegen die Business-Logik sowie die Persistenz der Business-Objekte im Backend-System ablaufen. Derzeit sind folgende Verbindungsmöglichkeiten zwischen Web-Dynpro-Anwendungen und Backend-Systemen realisiert:
ein durch einen adaptiven RFC erzeugtes Interface, durch das BAPIs eines SAP-Systems aufgerufen werden können
ein Interface zum Aufruf von Web Services
ein selbst erstelltes Interface
Für Web Dynpro Java kann der für die Anbindung der Web-Dynpro-Anwendung notwendige Quelltext auch aus einer UML-Definition des Web-Dynpro-Interfaces generiert werden. Eine UML-Definition kann dann als XMI-Datei in die Web-Dynpro-Werkzeuge importiert werden.
Jede Web-Dynpro-Anwendung ist nach dem Model-View-Controller-Programmiermodell strukturiert:
Das Model bildet die Schnittstelle zum Backend-System und ermöglicht so den Zugriff der Web-Dynpro-Anwendung auf die Daten.
Die View ist für die Darstellung der Daten im Browser verantwortlich.
Der Controller liegt zwischen View und Model. Er bereitet die Daten des Models auf, die in der View angezeigt werden sollen, verarbeitet die vom Benutzer vorgenommenen Eingaben und gibt sie an das Model zurück.