1. Corporate Website und Business-Lösungen
  • Produkt
    Corporate Website und diverse Applikationen für Saia Burgess Controls.
    Zur Website
  • Aufgaben
    Produktentwicklung, Umsetzung, Dokumentation, Wartung und Support, laufende Weiterentwicklung
  • Technologien
    Backend: Node.js mit Loopback-Framework von IBM, MongoDB, PostgreSQL. Frontend: HTML5, CSS3, JavaScript/ES7, W3C Custom Elements, AngularJS.
Saia-Burgess Controls

Über Saia Burgess Controls

Saia-Burgess Controls AG mit Sitz in Murten fertigt Komponenten für Gebäudeautomation. Dank schlanken Produktionsmethoden und gelebter Lean-Kultur – agilen Ansätzen wie wir sie auch verfolgen – ist der Schweizer Produktionsstandort kompetitiv. Und erfolgreich: Der Jahresumsatz beläuft sich auf rund CHF 90 Mio.; das Unternehmen hat 250 Mitarbeiter, besteht seit 1920 und wurde 2012 vom Honeywell-Konzern übernommen. Die Produkte zeichnen Innovation und Qualität, offene Schnittstellen und eine extreme Langlebigkeit von bis zu 25 Jahren aus.

Saia Burgess Controls About
Saia-Burgess Controls in Murten

Unternehmenswebsite mit Mehrwerten

SBC haben wir nicht von Grund auf entwickelt, sondern im Kindesalter – kurz nach dem Release – übernommen von Netcase. Kinder haben Kinderkrankheiten. Diese behoben wir im ersten Halbjahr. Seither widmen wir uns der Wartung und insbesondere der Weiterentwicklung.

Websites verfolgen keinen Selbstzweck. So ist die Website von SBC auch dazu da, Prozesse zu optimieren, Kunden zu gewinnen, Supportanfragen zu reduzieren. Um diese vielschichtigen Anforderungen abzudecken, setzt SBC auf TYPO3 (als Content-Management-System für die Marketing-Seite) und IBM Loopback (als Framework für die Applikationen). Beide Teile spielen nahtlos zusammen – Besucher bemerken die Trennung nicht.

Saia Burgess Controls Product
Markus von Holtey

«Erfahrung, Kompetenz und Motivation – weil die Leute hinter Joinbox sehr eng mit ihren Kunden zusammenarbeiten, kommen diese drei Qualitäten bei jedem unserer gemeinsamen Projekte zum Tragen.

Die Lösungen, welche daraus entstehen, funktionieren. Und aus einer Idee wird so schnell eine nachhaltige, intuitive und überzeugende Web-Anwendung.»

Markus von Holtey Head of Marketing & Communication EMEA, SBC

Exkurs: Micro-Services

Wie bei anderen Projekten auch, setzen wir bei SBC auf Micro-Services – kleine Softwarekomponenten mit einer beschränkten, klar definierten Zuständigkeit und gut dokumentierten, getesteten und öffentlichen Schnittstellen. Über diese Schnittstellen kommunizieren die Komponenten untereinander. Diese strikte Unterteilung von Software in Komponenten bedingt eine saubere Planung und zwingt zu sauberer Arbeitsweise. Und bringt weitere Vorteile mit sich: Weniger manueller Testaufwand, Wartbarkeit, Erweiterbarkeit, Wiederverwendbarkeit; Software mit Zukunft.

Kurz: Micro-Services sind für uns eine notwendige Voraussetzung für ein Projekt dieser Grösse geworden.

Microservice-Architecture
Lina Marieke van der Weg

«Jede Software-Anpassung – sei’s ein Bugfix oder die Entwicklung eines neuen Features – kann Side-Effects haben: ungewollte Veränderungen an einem anderen Ort. Grosse Projekte wie SBC funktionieren nur, wenn wir diese Side-Effects minimieren.

Anders ist eine Weiterentwicklung nicht möglich. Automatisch getestete und gut dokumentierte Micro-Services spielen dabei die zentrale Rolle.»

Lina Marieke van der Weg Joinbox

Herausforderung Lebensdauer

Die avisierte Lebensdauer der SBC-Website ist zwar geringer als jene der SBC-Produkte, soll aber im Backend bei gut 10 Jahren liegen. Für Software ein beachtliches Alter. Dieses erreichen wir, indem wir

  • auf junge, doch erprobte Open-Source-Technologien mit einer starken Community setzen (Node.js, IBM Loopback),
  • neue technologische und architektonische Entwicklungen (z.B. Micro Services) berücksichtigen und unseren Code laufend aktualisieren,
  • nicht den schnellsten, sondern den abstrakteren und nachhaltigen Weg wählen,
  • jede neue Funktion im Vorfeld hinterfragen, sauber planen und dabei die Auswirkungen auf das ganze System berücksichtigen und
  • jede Anforderung und die gewählte Lösung laufend dokumentieren und begründen.
Lorenzo Kappeler

«Bei Joinbox fliesst viel Zeit und Energie in die Produktentwicklung, bevor mit der eigentlichen technischen Umsetzung begonnen wird. Das ermöglicht uns, Software nachhaltig aufzubauen und schafft Planbarkeit: für den Kunden, für Joinbox und für mich als Entwickler.

Gleichzeitig haben wir einen klaren Weg definiert, um die Softwarequalität und ihre Lebensdauer hoch zu halten: mit automatischem Testing, Micro-Services und disziplinierter Dokumentation.»

Lorenzo Kappeler Backend-Entwickler, Joinbox

«Am Anfang war das Gespräch.»

Um eine Website oder eine Applikation zu entwickeln, muss man das Geschäft dahinter verstehen: das Problem, das man lösen soll; und auch die aktuelle Lösung und deren Schwachstellen und Stärken.

Jede Neuentwicklung beginnt deswegen mit einem Gespräch. Mit allen Beteiligten. Mit unzähligen Fragen. Mit mehr Fragen und Rückfragen.

Darauf denken wir eine Lösung an, halten diese fest. Bereinigen sie intern und vereinfachen sie – berücksichtigen dabei Machbarkeit, Aufwand und andere Anforderungen. Diskutieren sie mit dem Kunden. Und bereinigen wieder. Bis das Problem eine konkrete Lösung hat, nachhaltig und intuitiv. Erst danach setzen wir um.

Diese intensive Vorbereitung braucht Zeit – wir sparen aber ein Vielfaches davon ein, indem die Fragen, weiteren Fragen und Rückfragen nicht während der Umsetzung aufkommen. Oder noch schlimmer: erst danach.

Saia Burgess Controls Spezifikation

Kan-bang!

SBC produziert in Murten. Schweizer Standort und trotzdem kompetitiv. Wie das? Dank schlanker Arbeitsweisen. Englisch: Lean Methodologies. Konkret: Just-in-Time-Produktion mittels Kanban. Erstaunlich: Wir setzen auf die gleichen Methoden – Kanban, schlanke Pipelines, kurze Produktzyklen.

Was heisst das? Wenn wir ein Projekt umsetzen, unterteilen wir dieses in kleine Aufgaben. Jede Aufgabe durchläuft einen Zyklus: Idee, Produktentwicklung, Review, Umsetzung, Review, Testing, Abnahme, Dokumentation, Release. In jedem dieser Schritte kann sich nur eine beschränkte Anzahl an Aufgaben befinden; innerhalb jedes Schritts werden die Aufgaben priorisiert. Die jeweils wichtigste wird erledigt und wechselt darauf zum nächsten Schritt; die wichtigste Aufgabe aus aus dem vorangehenden Schritt rutscht nach. Dieses einfache System visualisieren wir anhand von Kanban-Boards. Ein explosives Gemisch. Kan-bang.

Raphael Marti

«Kompetitiv trotz Schweizer Produktion – dank schlanker Arbeitsweise. Verschiedene Wirtschaftszweige, gleiche Grundlagen. Auch das verbindet SBC mit Joinbox. Ein perfekter Match.»

Raphael Marti Projektleiter SBC, Joinbox