In der Werkstatt des Softwareunternehmens: Neuigkeiten von BlueMind und laufende Arbeiten – Teil 2

Zweiter und letzter Teil unserer Reise in die Werkstatt von BlueMind. Überblick über die kürzlich durchgeführten und die laufenden Arbeiten.

Titelbild: Foto von Kateryna Babaieva, Pexels

Zweiter (und letzter) Teil unserer Reise in die Werkstatt von BlueMind (Teil 1 lesen). Im Mittelpunkt unserer Tätigkeit steht die permanente Verbesserung und Konsolidierung der Lösung, die über 70 % der täglichen Arbeit eines Softwareunternehmens ausmacht. In diesem zweiten Teil werden die folgenden kürzlich durchgeführten oder laufenden Arbeiten vorgestellt:

1. Perfektionierung des Kalenders

Wie ein E-Mail-System kann auch ein gemeinsam genutzter Kalender auf den ersten Blick ganz einfach erscheinen. In Wirklichkeit handelt es sich aber um eine äußerst komplexe Funktion mit z. B. der Verwaltung von Wiederholungen (und Ausnahmen von Wiederholungen), von Freigaben und Delegierungen, Sitzungen und Workflow-Einladungen, Synchronisierungen auf verschiedenen Peripheriegeräten (Internet, mobile Geräte, Outlook usw.), jedes mit ihren Modellen und nicht veränderbaren Vorgaben.

Eine der Herausforderungen einer Kalenderanwendung ist es, diesen Funktionsreichtum kompatibel mit den verschiedenen Clients anzubieten und dabei bedienerfreundlich und verständlich zu bleiben.

Zu diesem Zweck haben wir vor kurzem mehrere Arbeiten zur Anreicherung und Vereinfachung unternommen:

  • Die Möglichkeit der Duplizierung von Ereignissen, unabhängig davon, ob es sich um ein einfaches Ereignis, eine Sitzung oder eine Reihe von Ereignissen handelt.
  • Die Einführung des Begriffs des Terminentwurfs, der die Vorbereitung eines Termins oder einer Sitzung sowie seine Speicherung ohne Versand von Einladungen gestattet, um ihn später zu ergänzen oder fertigzustellen. Diese Funktion ersetzt auch die den Benutzern unklar erscheinende Möglichkeit, ohne Antwortschreiben einen Termin zu akzeptieren.
  • Die Verbesserung und Vereinfachung der Verwaltung von Terminserien (wiederholende Termine), die für jeden Vorgang (Änderung oder Löschung) die Wahl des Umfangs anbietet: alle Termine der Serie, den aktuellen Termin und die folgenden Termine oder nur den aktuellen Termin..
  • Die Optimierung der Synchronisierung externer Kalender mit dem Google Kalender.
  • Die Wiedereinführung der Verwaltung gemeinsam genutzter Kalender auf mobilen Geräten ab BlueMind 4.3. Da das ActiveSync-Protokoll den Begriff der Freigaben nicht verwendet, zeigen wir die gemeinsam genutzten Kalender so an, als würden sie dem Benutzer gehören.

2. Fortschritte beim neuen Webmailer

Seit fast zwei Jahren arbeiten wir an der Neugestaltung der Webschnittstelle von BlueMind, angefangen mit einem neuen Webmailer. Dieses Projekt, das von einem eigenen Team aus Ergonomikern, Grafikdesignern und Entwicklern getragen wird, verfolgt einen neuen Entwicklungsansatz, dessen Schwerpunkt die Benutzererfahrung (UX) ist. Alle Schnittstellen und Funktionen werden spezifiziert und modelliert, bevor mit dem nächsten Entwicklungsschritt begonnen wird.

Diese neue Webmailer wird in der Beta-Version ab dem 4. Quartal 2020 zur Verfügung stehen (sie befindet sich bei BlueMind bereits seit einigen Monaten in der Produktion) und bietet neben den Standardfunktionen:

  • Ein neues Design und eine neue Benutzeroberfläche, die einfache Bedienung und modernste Technik in sich vereinen
  • Reaktionsfreudigkeit, da sie (mit spezifischen Verhaltensweisen) auch für mobile Geräte konzipiert und angepasst wurde
  • Die technologischen Standards von BlueMind: Java, Javascript und API (das Aus für PHP bei BlueMind)
  • Verwaltung des Offline-Modus
  • Funktionsweise über API/Webservices (und nicht mehr IMAP)
  • Verwaltung der Umstellung: nach Benutzergruppen aktivierbar, Nutzung parallel zur aktuellen Webmailer, direkter Wechsel zwischen beiden per BlueMind-Option
  • Verschiedene Anzeigen in Form einer Liste oder nach Konversation

.

3. Technische Weiterentwicklungen, Pflege und Aktualisierung der Basis 

Die Weiterentwicklung der technischen Struktur und der Softwarearchitektur, ihre Fortschreibung auf dem neuesten Stand, der Abbau der technischen Schulden und die Unterstützung neuer Linux-Versionen oder Komponenten sind Teil der permanenten und kontinuierlichen Aufgaben eines Softwareunternehmens – insbesondere für eine Lösung wie BlueMind, die zahlreiche Komponenten umfasst.

Zu den jüngsten Weiterentwicklungen gehören:

  • Hinzugefügte Unterstützung folgender Distributionen: Debian 10, Ubuntu FOCAL (20.04 LTS), RedHat Entreprise Linux 8 und CentOS 8. Die Unterstützung einer neuen Distribution ist eine wichtige Aufgabe, die folgende Schritte erfordert:
    • Sicherstellung/Bereitstellung der richtigen Versionen der Komponenten
    • Test der Komponenten sowie der globalen Funktionsweise
    • Anpassung an die Besonderheiten des BS wie z. B. das Startsystem
    • Integration des Ganzen in die kontinuierliche Integrationskette von BlueMind, um bei jedem Build der Lösung Teil der Projektergebnisse und der Tests zu werden
    • Berücksichtigung der neuen Distribution bei den Aktualisierungen
  • Aktualisierung der Version 11 von PostgreSQL auf die Version 12. Diese Aktualisierung erbringt verschiedene Leistungsverbesserungen, insbesondere des Partitionierungssystems, das künftig von BlueMind verwendet wird
  • Aktualisierung auf netty 4.1.51 und Vert.x 3.9.2 (Version, die von BlueMind erstellte Patches umfasst)
  • Aktualisierung von JDK auf Version 8u252
  • Aktualisierung der Bibliothek LDAP-API auf Version 1.0.3.
  • Aktualisierung von NGinx auf Version 1.18.0 und Verwendung von systemd für das bm-nginx-Paket
  • Hinzufügung der Unterstützung von HTTP2
  • Die Verbesserung der Performance. Diese Komponente wird nicht mehr verwendet und automatisch gelöscht.
  • external-url wird künftig nicht mehr per /etc/bm/bm.ini konfiguriert. Der Wert wird in der Datenbank über die Verwaltungskonsole oder bm-cli sysconf geändert.
  • Die Standarddomäne wird künftig nicht mehr in /etc/bm/bm.ini konfiguriert. Die Änderung des Werts „Standarddomäne“ wird künftig ohne Neustart berücksichtigt.
  • Automatische Verwaltung einer technischen Domäne für jede Domäne, um spätere Änderungen an den Domänen (Namensänderung usw.) zu vereinfachen
  • Automatisierte Verwaltung des Edge-Servers: BlueMind kann künftig die komplette Konfiguration des Edge-Servers vornehmen. Die Konfiguration des nginx-Servers erfolgt von nun an automatisch. Eine vorhandene Installation wird nicht automatisch von BlueMind verwaltet, um ihren Betrieb nicht zu beeinträchtigen. Die Verwaltung eines Edge-Servers durch BlueMind kann durch Hinzufügung des Tag „bm/nginx-edge“ zum Server mithilfe der Verwaltungskonsole vorgenommen werden.
  • Webanwendung (Kalender, Kontakte usw.): Wir verwenden künftig die „Service Workers“, um die Dateien der Webanwendungen im Cache hinzuzufügen. Das vorherige „Application Cache API“-System wird von den jüngeren Browsern als störend empfunden.

4. Verbesserungen des integrierten TICK-Monitoring

BlueMind integriert eine Monitoring-Konsole, die den internen Betrieb der Lösung überwacht, um bei der Diagnose Hilfe zu leisten und das Verhalten der Anwendungen und Komponenten zu überprüfen. Sie finden hier den vollständigen Artikel zum Thema Monitoring, hier den Vortrag, den unser technischer Leiter dazu gehalten hat, und wenn Sie nicht viel Zeit haben, hier eine Zusammenfassung in 2 Minuten!

Dieses Monitoring wird anhand der Rückmeldungen aus der Praxis regelmäßig verbessert. Die jüngsten Verbesserungen:

  • Aktualisierung der Komponenten von TICK-Monitoring: – Telegraf 1.14 – Chronograf 1.8.4 – InfluxDB 1.8.0 – Kapacitor 1.5.4
  • Verbesserung der Metriken für Mail Insight. Ergänzung um die Zählung der aktiven EAS-Sitzungen
  • Hinzufügung des Monitoring-Speichers von bm-sds-proxy
  • Hinzufügung einer YSNP-Metrik, um die Reaktionszeit für die Bestätigung einer Authentifizierung zu erfahren
  • Hinzufügung eines Dashboards zur Abfrage des Zustands der internen Caches, die von BlueMind verwendet wurden
  • Hinzufügung eines Dashboards des Betriebszustands der Objektspeicherung (SDS)

5. Ergänzung der mobilen Synchronisierung um Freigaben

Im Protokoll Exchange Active Sync existiert der Begriff des gemeinsam genutzten Kalenders oder der gemeinsam genutzten Mailbox nicht. Der Support wurde jedoch in der Version 3.5 von BlueMind dergestalt hinzugefügt, dass gemeinsam genutzte Elemente angezeigt werden, als würden sie dem Benutzer gehören. Diese Funktion steht künftig auch in BlueMind 4.3 zur Verfügung. Wir haben die Möglichkeit vorgesehen, gemeinsame Mailboxen genauso zu abonnieren wie Kalender oder gemeinsam genutzte Adressbücher.

6. Verwaltung der Gültigkeitsdauer von Passwörtern

In BlueMind wurde die Verwaltung der Gültigkeitsdauer von Passwörtern hinzugefügt. Wenn diese Funktion aktiviert ist, ist der Benutzer gezwungen, sein Passwort zu ändern, sobald es abgelaufen ist. Ein Administrator kann die Gültigkeit eines Passworts sofort beenden, um einen Benutzer zu zwingen, das Passwort zu ändern. Die Einzelheiten der Konfiguration und Verwendung werden in der Dokumentation erläutert.

7. Verbesserung der Leistungen

Die Verbesserung der Leistungen ist ein allgegenwärtiges Thema bei BlueMind, um die immer größer werdenden Installationen zu unterstützen und gleichzeitig die kollaborativen Funktionen des E-Mail-Systems eines Unternehmens (im Unterschied zu den E-Mail-Systemen von Betreibern) zu schützen.

Bei der Objektspeicherung und auf Cyrus IMAP für die großen Installationen wurden bedeutende Optimierungen erzielt.

Damit die mobilen Peripheriegeräte mit BlueMind synchronisiert werden können, müssen alle Änderungen, die in den Adressbüchern, den Kalendern usw. vorgenommen wurden, gespeichert werden. Diese Änderungen werden in der Datenbank in der Tabelle t_container changeset gespeichert. Bei umfangreichen Installationen konnte diese Tabelle so groß werden, dass dem Benutzer Leistungsprobleme ins Auge fielen. BlueMind 4.3 partitioniert diese Tabelle in mehrere kleine Stücke, um auch bei großen Datenvolumen ein hohes Leistungsniveau zu bewahren.

Das Befehlszeilentool bm-cli wurde optimiert, um die Startzeit zu verkürzen.

Schlussfolgerung

Das war der sommerliche Rundgang durch die Werkstatt von BlueMind! Die Arbeit eines Softwareunternehmens geht nie zu Ende. Die Weiterentwicklung der technischen Struktur und der Softwarearchitektur, ihre Fortschreibung auf dem neuesten Stand, die Optimierung der Leistungen, der Abbau der technischen Schulden, das Hinzufügen neuer Tools und Schnittstellen, die Anreicherung der vorhandenen Tools und des Ökosystems – an laufenden Projekten fehlt es nicht.

Wenn Sie sich dazu mit uns austauschen oder uns Ihre aktuellen und künftigen Projekte vorstellen möchten, dann klicken Sie hier!

Picture of Leslie Saladin

Leslie Saladin

Teile diesen Artikel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

− 1 = 2

Über BlueMind

Unterstützung für alle E-Mail-, Web- und mobilen Clients, BlueMind bietet die beste kollaborative Unterstützung für Thunderbird und ist die einzige Lösung auf dem Markt, die zu 100% Outlook-kompatibel ist, ohne Konnektor.

Aktuelle Artikel

Folgen Sie uns in sozialen Netzwerken

Inscription à la newsletter

Un e-mail par mois pour rester au courant de toutes les nouveautés BlueMind