Entwicklung

Hier finden Sie Beiträge rund um das Thema Entwicklung.
Kategoriesuche
Verwandte Themen

KI trifft Salesforce: Was passiert, wenn Codeium auf Einstein for Developers trifft?

KI trifft Salesforce
Quelle: Bild generiert mit Hilfe von KI (OpenAI)

Von unseren Entwickler:innen mit Neugier, Tests und einer Prise Zukunftsmusik

Wie viel Entwickler steckt in Künstlicher Intelligenz? Und wie verändert sie konkret unseren Alltag im Salesforce-Universum? In einer aktuellen wissenschaftlichen Arbeit wollten wir es genau wissen – und haben zwei vielversprechende KI-Tools direkt miteinander verglichen: Codeium und Einstein for Developers.

Das Ziel: Herausfinden, was die Tools wirklich können – jenseits von Buzzwords – und wie sie uns helfen können, effizienter, sauberer und einfach besser zu entwickeln.

Mobile Apps als neuer Verkaufskanal im E-Commerce: Potenziale und Praxisbeispiel mit Salesforce & Flutter

Beispielskizze für Headless-Commerce

In der digitalen Welt von heute reicht ein reiner Webshop oft nicht mehr aus. Kunden erwarten Flexibilität – und Unternehmen, die begeistern wollen, müssen dort präsent sein, wo ihre Zielgruppe unterwegs ist: auf dem Smartphone. Doch wie lassen sich Mobile Apps sinnvoll in bestehende E-Commerce-Architekturen integrieren?

Diese Frage stand im Zentrum einer wissenschaftlichen Arbeit bei dotSource, die den Einsatz mobiler Anwendungen als zusätzlichen Verkaufskanal im Salesforce Commerce-Umfeld untersuchte – inklusive eines technischen Proof of Concept mit Flutter und Salesforce Headless.

Mit KI zu besseren Testdaten: Wie generative AI die Arbeit von Salesforce-Entwicklern erleichtert

Entwicklung der Promptstruktur
Entwicklung der Promptstruktur

„Nur am Ende einer Entwicklung Performance-Tests durchzuführen, ist wie eine Blutuntersuchung bei einem längst Verstorbenen.“
Dieses Zitat von Software-Test-Vordenker Scott Barber bringt es auf den Punkt: Wer Software erst spät testet, handelt zu spät.

Auch bei dotSource ist Testen ein fester Bestandteil der täglichen Entwicklungsarbeit. Besonders wichtig dabei: gute Testdaten. Diese helfen dabei, Fehler frühzeitig zu erkennen und kostspielige Nacharbeiten zu vermeiden. Doch gerade das Erstellen dieser Testdaten kann aufwendig sein – ein Job, der bisher oft manuell erledigt wurde.

VMs in Minuten statt Tagen – Wie Infrastructure as Code den Entwickleralltag verändert

Konfiguration der Vargantfile
Konfiguration der Vargantfile

Virtuelle Maschinen neu gedacht: Wie wir mit Infrastructure as Code den Setup-Prozess revolutionieren

Entwicklungsumgebungen sind das Rückgrat jedes Projekts. Doch wer schon einmal eine Entwickler-VM von Grund auf manuell aufgesetzt hat, weiß: Das ist alles andere als effizient. Die Konfiguration verschlingt Zeit, ist fehleranfällig – und bei größeren Teams oder Projekten potenziert sich der Aufwand schnell.

In einem aktuellen dotSource-Praxisprojekt haben wir uns gefragt: Geht das nicht auch besser – schneller, automatisierter und skalierbarer?

Die Antwort: Ja. Mit dem richtigen Tool und einem Infrastructure-as-Code-Ansatz.

Optimieren von Node.js-basierten Webservern in Shopsystemen mit C++

dotsource_labs_uebersicht_nodejs_ereignischschleife.jpg
Übersicht Node.js Ereignisschleife

Die dotSource GmbH entwickelt Shopsysteme mit Node.js, das seit 2009 existiert und zur OpenJS Foundation gehört. Diese Systeme laufen in der Cloud und nutzen einen Microservices-Ansatz, bei dem bei hoher Auslastung zusätzliche Server gestartet werden. Da Betreiber die Kosten niedrig halten wollen, sollte die Anzahl der Server möglichst gering sein. Dies gelingt, indem einzelne Server leistungsstärker werden. Eine Möglichkeit dazu ist der Einsatz von C++-Addons. Diese Arbeit untersucht, wann und wie solche Addons sinnvoll eingesetzt werden können. Dazu werden Tests durchgeführt, um die Leistung von reinem Node.js mit JavaScript mit der von Node.js mit C++-Addons zu vergleichen.

Die Tests zeigen, dass C++ die Leistung bei rechenintensiven Aufgaben wie der Preisberechnung verbessert, aber bei I/O-intensiven Prozessen wie dem Data Mapping keine Vorteile bringt. Wer C++ nutzen will, muss einige Dinge beachten: Die Entwicklung erfordert Fachwissen und kann teuer sein. Zudem birgt die manuelle Speicherverwaltung Risiken wie Speicherlecks. Oft ist es sinnvoller, bestehende npm-Pakete mit C++-Optimierung zu verwenden, anstatt eigene Addons zu entwickeln. Alternativ können Workerthreads genutzt werden, um rechenintensive Aufgaben auszulagern. Eine Kombination aus Workerthreads und C++ wäre ebenfalls möglich, um die Leistung weiter zu steigern.

Statische Code-Analyse in der CI/CD Pipeline eines Salesforce-Projektes

Beispielhafte Vorgänge in einem Runner für eine Pipeline
Beispielhafte Vorgänge in einem Runner für eine Pipeline

Die stetig wachsende IT-Branche bringt nicht nur innovative Softwarelösungen, sondern auch komplexere Schwachstellen mit sich. Um Sicherheitsrisiken frühzeitig zu erkennen und hohe Kosten durch späte Analysen zu vermeiden, fokussieren sich IT-Unternehmen auf die frühzeitige Erkennung von Schwachstellen im Entwicklungsprozess.

In dieser Arbeit wurde die Integration von Static Application Security Testing (SAST), einer Methode zur statischen Code-Analyse, in eine CI/CD-Pipeline untersucht. Ziel war es, Salesforce-Projekte durch die frühzeitige Identifikation unsicherer Code-Muster sicherer zu gestalten.

Nach einer Analyse und Auswahl geeigneter SAST-Tools unter Berücksichtigung spezifischer Anforderungen der dotSource SE, wurde ein Tool implementiert und evaluiert. Der erstellte Konzept-Job, der mit Docker arbeitet, ermöglicht eine schnelle Durchführung von Sicherheitstests.

Zukünftig soll das Konzept weiterentwickelt werden, um über ein YAML-Template die Anwendung für weitere Projekte zu vereinfachen. Auch die Visualisierung der Ergebnisse soll optimiert werden. Die Arbeit stellt einen wichtigen Schritt dar, um die Cybersicherheit innerhalb der DevOps-Prozesse zu stärken, und legt die Basis für weitere Maßnahmen wie die Integration dynamischer Sicherheitstests.

Migrationkonzept einer Salesforce B2B

beitrag_migrationskonzept_salesforce_b2b

Die IT-Branche wandelt sich ständig: Neue Technologien entstehen, bestehende entwickeln sich weiter. Unternehmen müssen Schritt halten, was oft teuer und zeitintensiv ist.

Ein aktuelles Beispiel ist die Umstellung von Salesforce Aura Runtime auf die modernere Lightning Web Runtime (LWR) für digitale Erlebnisse. Ein Kunde von dotSource GmbH hat deshalb entschieden, seinen B2B-Shop auf die LWR zu migrieren.

Das Ziel dieser Arbeit: Ein Migrationskonzept zu entwickeln, das eine reibungslose Umstellung einer bestehenden Salesforce-Storefront auf die LWR ermöglicht. Dabei wird die Funktionalität der Komponenten gewährleistet, ohne auf spezifische Datenmigrationen einzugehen.

Zunächst werden Salesforce, Aura und LWR mit ihren Vor- und Nachteilen erklärt. Danach folgt die Analyse des aktuellen Shops und die Konzeptentwicklung. Das Konzept wird an einer Shop-Komponente getestet und abschließend evaluiert.

Optimierung des Registrierungsprozesses für Salesforce B2B

Mögliche Benutzeroberfläche des Kontakt-Registrierungsformular

Die Digitalisierung hat E-Commerce für Unternehmen sehr wichtig gemacht. Immer mehr Menschen in Deutschland kaufen online ein, und die Zahl der Nutzer soll weiter steigen. Das bringt für Unternehmen mehr Arbeit bei der Verwaltung ihrer Onlineshops mit sich.

Ein besonders wichtiger Punkt ist der Registrierungsprozess. Er ist oft die erste direkte Interaktion eines Kunden mit dem Shop. Wenn der Prozess kompliziert oder fehlerhaft ist, kann das zu hohen Kosten und dem Verlust von Kunden führen.

In dieser Projektarbeit wird der Registrierungsprozess eines Salesforce B2B Shops untersucht. Ziel ist es, Schwachstellen zu finden und den Prozess zu verbessern. Das neue Konzept soll den Prozess einfacher und automatisierter machen. Anschließend werden die Änderungen getestet, um sicherzustellen, dass alles reibungslos funktioniert.

Entwurf und prototypische Umsetzung eines decoupled Frontend für einen Onlineshop auf Basis von Salesforce B2B Commerce

In der heutigen digitalen Welt sind Online-Shops unverzichtbar für Unternehmen aller Größen und Branchen. Eine erfolgreiche Online-Präsenz erfordert eine leistungsstarke und benutzerfreundliche Benutzeroberfläche.

Entwickler stehen vor der Herausforderung, die beste Lösung für ihre Projekte aus einer Vielzahl von Möglichkeiten auszuwählen. Die Integration in andere Systeme gestaltet sich oft schwierig aufgrund der Vielfalt von Programmiersprachen und Plattformen.

Daher ist die Verwendung einer Schnittstelle für benötigte Daten oft die bessere Wahl, um die Unabhängigkeit von verschiedenen Plattformen zu gewährleisten. Ein Ansatz zur Erstellung eines unabhängigen Online-Shops ist die Nutzung eines decoupled Frontends.

Decoupled Frontends trennen die Benutzerinteraktion und -darstellung von der Verarbeitung von Anfragen und Daten. Dadurch wird die Anwendung flexibler und wartbarer gestaltet.

In dieser Arbeit wird der Entwurf und die prototypische Umsetzung eines decoupled Frontends für einen Online-Shop auf Basis von Salesforce B2B Commerce behandelt.

Konzept
Konzept

Kostenloser Download der gesamten Praxisarbeit

GraphQL in einer Microservice-Architektur

Die steigende Komplexität von Softwaresystemen erschwert das Design und die Integration von Schnittstellen, die traditionell auf REST basieren. Die zunehmende Beliebtheit von GraphQL als Alternative zu REST, insbesondere in komplexen Microservicearchitekturen, ermöglicht eine vereinfachte API-Entwicklung. Unternehmen unterschiedlicher Branchen setzen GraphQL ein, um komplexe Prozesse abzubilden und die Entwicklung zu erleichtern. Dennoch zeigt GraphQL in solchen Projekten verschiedene Schwächen auf.

Diese Arbeit untersucht die Integration externer GraphQL-APIs in eine eigene Microservicearchitektur unter Verwendung von Apollo Federation. Dabei wird auch das „N+1“-Problem betrachtet und eine Lösung im Rahmen verteilter Graphen angestrebt. Die Funktionsweise von GraphQL wird erläutert, gefolgt von einer Beschreibung des aktuellen Einsatzes von GraphQL in verschiedenen Unternehmen, um Forschungsfragen zu identifizieren. Anschließend wird eine Lösung in Form eines Microservices beschrieben und hinsichtlich Machbarkeit und Performance evaluiert. Diese Arbeit richtet sich an Systemarchitekten und Entwickler mit grundlegenden Kenntnissen in Software- und Systemarchitekturen.

Ist-Stand - Statische Query
Ist-Stand – Statische Query

Kostenloser Download der gesamten Bachelorarbeit