Internetanwendungen

Design und Entwicklung von Webanwendungen sind die am häufigsten gewählte Dienstleistung in aveneo. In den letzten Jahren haben Lösungen, die in Webbrowsern ausgeführt werden, andere Computerprogramme effektiv ersetzt: Desktop-Anwendungen (klassisch) und mobile Anwendungen. Dafür gibt es viele Gründe, doch einer der wichtigsten ist die unbegrenzte Verfügbarkeit ohne Kompromisse. Obwohl die Architektur unserer Lösungen aus vielen Schichten besteht, sollte bei unseren Webanwendungen besonderes Augenmerk auf die starke Trennung in zwei Schichten gelegt werden: Backend und Frontend. Dank dieses Ansatzes haben wir die UI- und UX-Schicht (Benutzeroberfläche) von der Geschäftslogik, dem Modell und der Datenbank oder der Integration mit anderen Lösungen getrennt.

Serverseite (Backend)

Der Teil der Webanwendung, der für die Logik von Geschäftsprozessen, Datenverarbeitung und -speicherung, Integration mit anderen Lösungen oder Rechenleistung für komplexe Vorgänge und künstliche Intelligenz verantwortlich ist. Das Ganze läuft auf der Server-Infrastruktur ab, die verteilt und frei skalierbar ist und somit nie eine Einschränkung für das Geschäft darstellen wird.

.NET

Microsoft .NET Core

Microsoft .NET Core ist eine solide Grundlage für jede unserer Lösungen. Die auf vielen Plattformen verfügbare Unternehmenslösung ist einfach skalierbar, sicher und vor allem effizient.

Erfahren Sie mehr über .NET Core

Serverseite (Backend)

Der Teil der Webanwendung, der für die Logik von Geschäftsprozessen, Datenverarbeitung und -speicherung, Integration mit anderen Lösungen oder Rechenleistung für komplexe Vorgänge und künstliche Intelligenz verantwortlich ist. Das Ganze läuft auf der Server-Infrastruktur ab, die verteilt und frei skalierbar ist und somit nie eine Einschränkung für das Geschäft darstellen wird.

.NET

Microsoft .NET Core

Microsoft .NET Core ist eine solide Grundlage für jede unserer Lösungen. Die auf vielen Plattformen verfügbare Unternehmenslösung ist einfach skalierbar, sicher und vor allem effizient.

Erfahren Sie mehr über .NET Core

Clientseite (Frontend)

Software, die im Webbrowserbereich läuft und für die visuelle Ebene verantwortlich ist, die das Benutzererlebnis in der Webanwendung gewährleistet. Es bietet nicht nur eine interaktive Oberfläche, sondern verbindet vor allem Menschen auf möglichst natürliche Weise mit Prozessen und Daten. Und es ist wunderschön.

React

ReactJS+Redux

Das ReactJS-Framework in Kombination mit Redux ist die Grundlage jeder unserer Weblösungen, einschließlich des aveneo.SDK. Dies ist eine der am häufigsten gewählten Lösungen, wenn Effizienz und Entwicklungsmöglichkeiten im Vordergrund stehen.

Erfahren Sie mehr über das ReactJS-Framework

Frontend basierend auf ReactJS, Redux und aveneo.SDK


Unzählige Komponenten

Durch die Entwicklung von aveneo.SDK haben wir eine sehr große Anzahl vorgefertigter Komponenten erstellt, die es uns ermöglichen, die Entwicklungszeit von Webanwendungen auf ein Minimum zu verkürzen. Datenvisualisierung, Formulare, Kommunikation, Benutzerauthentifizierung – das sind nur einige der Elemente, um deren Entwicklung Sie sich keine Gedanken machen müssen. Warum sollte man ein Projekt damit beginnen, jedes Mal einen Kreis zu entwerfen?

Dank dessen dauert die Erstellung einer Anwendung, die eine vollständige Datenverwaltung ermöglicht (CRUD – Erstellen, Lesen, Aktualisieren, Löschen), nur wenige Minuten. Darüber hinaus wurde eine Anwendung in einem schnellen Kesselplattenmodell erstellt, eine fertige API und wir haben in Rekordzeit ein Rezept für einen Prototypen.

aveneo.SDK-Front-End-Architekturdiagramm

Extrem einfaches Backoffice

Unsere Backoffice-Lösungen sind bis zum Äußersten standardisiert. Alle Tabellendaten sehen auf Wunsch gleich aus und verhalten sich gleich. Das Erkunden und Verwalten von Daten war noch nie so einfach und angenehm. Darüber hinaus merken wir uns Benutzer- und Geräteeinstellungen, sodass sie nur das sehen, was für sie am wichtigsten ist.

Leistung und Verfügbarkeit

Die Besonderheit der auf ReactJS mit Redux basierenden Lösung ist der virtuelle DOM-Baum und reaktive Aktualisierungen, wenn sich der Anwendungsstatus ändert. In der Praxis bedeutet dies, dass alle Änderungen an den Daten zu sofortigen Aktualisierungen der Anwendung und Datenvisualisierung führen, ohne dass auf das „Laden“ der Seite gewartet werden muss.

Mehrsprachigkeit und Globalisierung

Mehrsprachigkeit und die Möglichkeit, eine Benutzeroberfläche in jeder beliebigen Sprache bereitzustellen, sind bei unseren Lösungen Standard. Wir gehen jedoch noch einen Schritt weiter – wir übersetzen nicht nur, sondern präsentieren Daten auch abhängig vom Standort des Benutzers. Wir ordnen Daten der Geolokalisierung zu und entwickeln so internationale Lösungen mit Fokus auf lokale Märkte.

aveneo.SDK-Komponenten

Komponenten bieten vollständige Funktionalität mit einer Benutzeroberfläche. Wir verfügen außerdem über eine eigene Standardvorlage, mit der wir innerhalb weniger Tage eine fertige Geschäftslösung liefern können. Dies kann beispielsweise durch generische Formulare (Formulare werden automatisch basierend auf Modellmetadaten generiert) und Raster mit vollständiger Unterstützung für Sortierung, Filterung, Paginierung und viele andere Funktionalitäten erreicht werden.

Sehen Sie, wie das aveneo.SDK aussieht

aveneo.SDK-Bibliotheken

Wir haben eine Menge Code, den wir zwischen Projekten teilen. Framework-Erweiterungen, Algorithmen, Entwurfsmuster, mehrschichtige Architektur. Wir stellen alles zur Verfügung, was intern wiederverwendet werden kann. Bei der Entwicklung eines solchen Codes halten wir hohe interne Standards ein, dokumentieren ihn und schulen dann das gesamte Team in der Verwendung.

Erfahren Sie mehr über die Struktur von aveneo.SDK

Backend basierend auf .NET Core und aveneo.SDK


aveneo.SDK-Bibliotheken

Wir haben eine Menge Code, den wir zwischen Projekten teilen. Framework-Erweiterungen, Algorithmen, Entwurfsmuster, mehrschichtige Architektur. Wir stellen alles zur Verfügung, was intern wiederverwendet werden kann. Bei der Entwicklung eines solchen Codes halten wir hohe interne Standards ein, dokumentieren ihn und schulen dann das gesamte Team in der Verwendung.

Erfahren Sie mehr über die Struktur von aveneo.SDK

Mehrschichtige modulare Monolitharchitektur

Die modulare Monolith-Architektur bedeutet, dass wir eine Lösung mit spürbaren Modulgrenzen bereitstellen, die sich aus den Geschäftswerten der Aktivität ergeben, deren Anforderungen die Software erfüllt. Das bedeutet, dass wir versuchen, Software nachhaltig in Module zu granulieren, die im Laufe der Zeit individuell skalierbar sind, separate Datenressourcen nutzen können, über eigene Integrationen verfügen und sogar vollständig austauschbar sein können. Dank der Kommunikation auf Basis eines externen Busses bleiben sie unabhängig und gegenseitig zuverlässig, was den Nutzungskomfort der Lösung zusätzlich erhöht und die Integration mit Lösungen von Drittanbietern erleichtert.

Diagramm der mehrschichtigen Architektur des modularen Monolithen aveneo.SDK
Module können ausgetauscht werden
Eigenständige Modulentwicklung
Unbegrenzte Integrationen
Beliebige Skalierbarkeit
Rest Logo

+

Web Socket Logo

Kommunikation über REST API und WebSocket

Für die Kommunikation zwischen Frontend und Backend verwenden wir zwei Protokolle – verbindungsloses HTTP mit REST-Architektur und Verbindungs-WebSockets. Die erste Technologie funktioniert sehr gut beim Herunterladen und Versenden großer Datenmengen. Die zweite ermöglicht es uns, Lösungen bereitzustellen, deren Inhalt sich in Echtzeit ändert und der übertragene Inhalt auf nur die notwendigen Daten minimiert wird. Dadurch können die Lösungen in Echtzeit auf sich ändernde Daten reagieren und in verschiedenen Situationen reagieren, beispielsweise bei fehlendem Zugriff auf Netzwerk und Server.

(zu)Freiheit zur Integration mit anderen Lösungen

Die Internetlösung bietet unbegrenzte Integrationsmöglichkeiten. Serverseitige Software kann mit Lösungen von Drittanbietern kommunizieren, von lokaler, vorhandener Software bis hin zu Cloud-Lösungen und Diensten von Unternehmen wie Google, Amazon und Microsoft.

Diagramm möglicher Integrationen von aveneo.SDK mit anderen Lösungen

Skalierbarkeit und plattformübergreifend

Das Backend unserer Webanwendungen kann auf nahezu jeder Hardwareplattform ausgeführt werden. Alles dank der .NET-Plattform, die sowohl für native Microsoft-Systeme – Windows und Windows Server, als auch für Linux/Unix- und macOS-Plattformen verfügbar ist. Darüber hinaus verpacken wir Lösungen in Containern und können diese in zwei Dimensionen skalieren – in Längs- und Breitenrichtung. Ohne besonderen Programmiereingriff – einfach so.

Windows Logo

Windows

Linux Logo

Linux

macOS Logo

macOS

UNIX Logo

UNIX

Docker Logo

Docker

Kubernetes Logo

Kubernetes

Sicherheit

Benutzer- und Datensicherheit ist das wichtigste Merkmal von Software, auf das jeder achten sollte, der Probleme vermeiden möchte. Die Verwendung einer integrierten zweistufigen Authentifizierung, die Integration mit externen Anmeldeinformationszentren mithilfe von OAuth oder OpenID und schließlich die Authentifizierung mithilfe von Google-/Microsoft-/Facebook-/Apple-Konten. Ende-zu-Ende-Verschlüsselung der Kommunikation, Speicherung von Daten in verschlüsselten Containern sind nur einige der von uns eingesetzten Lösungen. Unsere Webanwendungen wurden wiederholt sehr strengen Sicherheitsüberprüfungen unterzogen, die nach dem „Ethical Hacking“-Modell durchgeführt wurden, und es wurden nie ernsthafte Schwachstellen entdeckt, die die Sicherheit von Daten, Organisationen oder Benutzern gefährden.

SSL 3.0-Verschlüsselung
Zweistufige Benutzerauthentifizierung
Ende-zu-Ende-Verschlüsselung
Redundanzorientierte Architektur
DDOS-Schutz
„Ethisches Hacking“-Audits

„Legacy“-Technologien


Die technologische Welt entwickelt sich dank des sich ändernden Umfelds und der Benutzererwartungen sehr dynamisch. Wir haben die folgenden Technologien aus vielen verschiedenen Gründen als veraltet identifiziert: Sie erfüllen nicht die Sicherheitsstandards, sie werden von ihren Entwicklern nicht unterstützt und weiterentwickelt, sie sind nicht übertragbar oder sie sind nicht so effizient wie neuere Lösungen. Aufgrund der Tatsache, dass wir in der Vergangenheit Software in den folgenden Technologien entwickelt haben, können wir deren Support und Wartung sowie im Rahmen der Entwicklung die oben angegebene Migration auf neuere Lösungen anbieten.

Fallstudie


Sind Sie bereit, über Ihr Projekt zu sprechen?