Schwerpunktthema

Resource Oriented Client Architecture (ROCA)

ROCA ist ein Architekturstil für Webanwendungen, der auf den grundlegenden Prinzipien und Technologien des Web aufbaut.

Webanwendungen konsequent mit Webstandards entwickeln

ROCA steht für Resource-Oriented Client Architecture und beschreibt einen Ansatz für Webanwendungen, der HTTP, HTML, CSS und JavaScript bewusst entlang ihrer jeweiligen Stärken einsetzt. Inhalte und Navigation bleiben dabei auch ohne JavaScript grundsätzlich zugänglich, zusätzliche Interaktion wird schrittweise ergänzt. ROCA verbindet damit Prinzipien wie REST, Progressive Enhancement und klare Ressourcengrenzen zu einer robusten Webarchitektur. Weitere Grundlagen finden Sie auf unseren Themenseiten zu Web, REST und HTTP, Frontend-Entwicklung, JavaScript und CSS.

Auf dieser Seite finden Sie Artikel, Podcasts und Vorträge rund um ROCA, Webarchitektur und Progressive Enhancement.

Unsere Leistungen

Wir beraten ehrlich, denken innovativ und entwickeln leidenschaftlich gern. Das Ergebnis sind erfolgreiche Softwarelösungen, Infrastrukturen und Geschäftsmodelle.

Case Studies

Case Study

Aufbau einer Lernplattform, die didaktische Weiterentwicklung ermöglicht

Case Study

In 8 Wochen zum MVP: eine Versicherungsplattform für E-Sportler

Technische Realisierung eines InsurTech-Start-Ups für E-Sportler

Häufige Fragen

Sie haben Fragen zum Thema Webarchitekturen? Hier finden Sie Antworten auf Fragen, die wir häufig gestellt bekommen.

Was macht eine gute Webarchitektur aus?

Eine gute Webarchitektur schafft klare Grenzen zwischen Komponenten und nutzt die Standards des Webs konsequent. Dazu gehören verständliche Ressourcenmodelle, klar definierte Schnittstellen und die passende Nutzung von HTTP-Methoden, Statuscodes und Caching. Das erleichtert nicht nur die Entwicklung, sondern sorgt auch dafür, dass Systeme langfristig wartbar und erweiterbar bleiben.

INNOQ unterstützt Teams bei der Konzeption und Weiterentwicklung solcher Architekturen: Softwarearchitektur und -entwicklung

Wann ist REST eine gute Wahl für eine API?

REST eignet sich besonders, wenn Systeme über klar definierte Ressourcen miteinander interagieren und Schnittstellen über längere Zeit stabil und unabhängig weiterentwickelbar bleiben sollen.

Wer die zugrunde liegenden Prinzipien vertiefen möchte, findet sie auch in unserer iSAQB®-Schulung Web-native Softwarearchitektur.

Welche Rolle spielt HTTP beim API-Design?

HTTP bringt bereits viele Mechanismen mit, die für robuste APIs benötigt werden: Methoden, Statuscodes, Header, Content Negotiation und Caching. Werden diese Möglichkeiten konsequent genutzt, müssen Teams weniger eigene Konventionen entwickeln. APIs werden dadurch verständlicher, interoperabler und leichter in bestehende Infrastruktur integrierbar.

In der Schulung Web-native Softwarearchitektur vermitteln wir, wie sich diese Prinzipien in der Praxis einsetzen lassen.

Woran erkenne ich eine schlecht geschnittene API?

Hinweise auf ungünstig geschnittene APIs sind eine hohe Kopplung zwischen Clients und Schnittstelle, Änderungen, die regelmäßig mehrere Endpunkte betreffen, sowie die direkte Abbildung interner Datenmodelle in der API. Auch eine große Zahl kleinteiliger Aufrufe oder spezifischer Sonderoperationen kann darauf hindeuten, dass Ressourcen und Verantwortlichkeiten nicht entlang fachlich sinnvoller Grenzen geschnitten sind.

Bei bestehenden Systemen hilft ein unabhängiges Software-Review, strukturelle Schwächen der API sichtbar zu machen und konkrete Verbesserungsmöglichkeiten abzuleiten. Mehr dazu: Software-Reviews

Warum sind Ressourcengrenzen in verteilten Systemen so wichtig?

Ressourcengrenzen beeinflussen, welche Teile eines Systems unabhängig voneinander verändert werden können. Sind Verantwortlichkeiten unklar oder Schnittstellen zu eng an interne Implementierungen gekoppelt, breiten sich Änderungen schnell über mehrere Systeme aus. Gut gewählte Grenzen reduzieren diese Kopplung und erleichtern die unabhängige Weiterentwicklung.

INNOQ betrachtet dabei nicht nur einzelne APIs, sondern auch deren Einbettung in die gesamte Softwarearchitektur: Softwarearchitektur und -entwicklung

Wie lassen sich Web-APIs von Anfang an sicher gestalten?

Security sollte bereits beim Entwurf der Architektur und der Schnittstellen berücksichtigt werden. Dazu gehören unter anderem Authentifizierung und Autorisierung, sichere Datenübertragung, ein bewusster Umgang mit Browser-Sicherheitsmechanismen sowie Schutz vor typischen Angriffen auf Webanwendungen und APIs.

INNOQ unterstützt bei der Analyse und Entwicklung sicherer Systeme: IT-Security

Für Entwickler bieten wir außerdem die Schulungen Web Security und OWASP Top 10 an.

Wie unterstützt INNOQ Teams bei Webarchitekturen?

Wir unterstützen Entwicklungsteams bei der Konzeption, Bewertung und Weiterentwicklung von Webarchitekturen und APIs. Dabei geht es nicht nur um einzelne Technologien, sondern um Fragen wie Ressourcengrenzen, Kopplung, Integrationsmuster, Security und langfristige Wartbarkeit. Je nach Ausgangslage arbeiten wir gemeinsam an der Architektur, führen Reviews durch oder vermitteln das notwendige Wissen direkt im Team.

Mehr dazu: Softwarearchitektur und -entwicklung, Software-Reviews und Web-native Softwarearchitektur.