Manufaktur Ausführungs System
Manufaktur Ausführungs System
Information
Standort:
Deutschland
Branche:
Produktion und Fertigung
Plattform:
Web Applikation
Arbeitsmodell:
Zeit und Material
Projektdauer:
Fortlaufend seit 2005
Team-Mitglieder:
Fünf Teams bestehend aus je 6 –7 Spezialisten
ID:
695
Verwendete Technologien
C++
С#
PL/SQL
Transact SQL
.NET Framework 3.5
Angular
Jquery
MS SQL
Java Script
Oracle

Herausforderung

Das Projekt beginnt im Jahr 2005, als ein US-amerikanischer MES-Anbieter auf ein Problem gestoßen war. Das System wurde Ende der 1990er Jahre gebaut und die Integration mit moderner Software wurde immer schwieriger.

Das Unternehmen suchte nach einem Entwickler mit Erfahrung in den Bereichen Leistungsanalyse, Graphgenerierung und Geschäftsprozessoptimierung. Als sie auf Elinext stießen, zeigten wir, dass wir über die richtigen Kompetenzen, Fähigkeiten und Ressourcen verfügen und wurden anschließend als Vendor ausgewählt.

Im Jahr 2014 wurde unser Kunde von einem multinationalen Konzern mit Hauptsitz in Deutschland übernommen, der Industrieanlagen und Software an große Hersteller lieferte. Dieses Unternehmen war mit unserer Arbeit und entschied sich, weiterhin mit Elinext zusammenzuarbeiten. Seitdem haben wir viel mehr an dem Projekt zu tun.

Lösung

Elinext hat für das Projekt fünf Teams zusammengestellt. Jedes Team bestand aus etwa sechs Personen (die Zahl hat sich im Laufe der Zeit geändert) und konzentrierte sich während eines Veröffentlichungszyklus auf ein einziges Bereitstellungsziel.

Wir sind an das Projekt mit dem groß angelegten Scrum (LeSS)-Entwicklungsmodell herangegangen. Die Entwicklung wurde in Release-Zyklen aufgeteilt, und jeder Zyklus bestand aus fünf Sprints, wobei jeder Sprint bis zu drei Wochen lang war. Die ersten vier Sprints drehten sich um die Entwicklung; während der letzten haben wir neue Funktionen für einen stabilen Betrieb konfiguriert.

Unsere Teams hielten durch tägliche Anrufe engen Kontakt mit dem Kunden. Bei jedem Meeting haben wir dem Kunden mitgeteilt, was wir getan haben, woran wir gearbeitet haben und welche Schritte wir als nächstes machen würden. Das hat uns geholfen, auf dem richtigen Weg zu bleiben, bei Bedarf zu schwenken und potenzielle Probleme im Keim zu ersticken.

Das System

Das MES verbindet mehrere Fertigungsstätten und Dienstleister auf einer einzigen Plattform. Durch den Zugriff auf diese Plattform können Betreiber Leistungseinblicke erhalten und verschiedene Geschäftsanwendungen ausführen.

  • Durch das MES können Hersteller:
  • Daten sammeln und speichern
  • Produktion starten und pausieren
  • Dokumentation verwalten
  • Personalressourcen verwalten
  • den Herstellungsprozess überwachen
  • Materialien, Geräten und Vorgängen verwalten
  • Qualität kontrollieren

Das MES basiert auf einer vor Jahrzehnten entwickelten Geschäftslogik, die überraschenderweise auch heute noch relevant ist. Die Logik ist als eine Reihe von Funktionen strukturiert, die auf einem C++-Server ausgeführt werden.

Systemadministratoren können Datenbanken, Abfragen und Transaktionen in einem visuellen Arbeitsbereich verwalten. Der Arbeitsbereich ist als Schichtkuchen strukturiert, wobei jede dieser Entitäten mit einer entsprechenden Klasse verknüpft ist. Das Erstellen von Klassen ist die nächste Stufe der Systemkonfiguration, auf der Sie auch die Logik der Anwendung optimieren und Elemente miteinander verknüpfen können.

Um ein vom MES aus administrierbares Netzwerk von Fertigungsstätten aufzubauen, legen seine Administratoren mehrere Schichten an.

Wir mussten die Anpassbarkeit mit dem Schutz des Systemkerns in Einklang bringen. Unser Team hat dafür gesorgt, dass Administratoren das System nur auf der Ebene konfigurieren können, auf der sie arbeiten dürfen und nichts im Kern kaputt macht.

Insgesamt konzentrierte sich unsere Arbeit auf die Verbesserung des MES-Modells und des Frameworks, um die Legacy-Technologie relevant zu halten und gleichzeitig das System mit moderner Software zu integrieren. Die Software lässt sich auf zwei Hauptmerkmale eingrenzen: statistische Prozesssteuerungsdiagramme (SPC) und eine Hochleistungs-Engine (HPE).

Das System verwendet eine SPC-Diagramm-Engine eines Drittanbieters. Aber es war zu alt, und der Kunde wollte es durch ein neues, maßgeschneidertes Werkzeug ersetzen. Wir stellten fest, dass eine der deutschen Niederlassungen des Unternehmens bereits ein solches Produkt entwickelt hatte, um seine Bedürfnisse zu erfüllen, aber es würde nicht genau unseren entsprechen.

Anstatt das Rad neu zu erfinden, haben wir uns mit der deutschen Niederlassung in Verbindung gesetzt, um zu sehen, ob wir ihre Software wiederverwenden und weiterentwickeln können. Die Idee hat gut funktioniert. Wir haben ein Modell für die Integration des bestehenden MES in die Plattform der Deutschen entwickelt und Änderungen in ihrer API eingeführt und sie durchgehend beraten.

Nach der Anpassung hat die hauseigene SPC-Chart-Engine den Platz ihres Vorgängers eingenommen.

Das HPE war dafür verantwortlich, mehrere Datentransaktionen in einer Anfrage zusammenzufassen.

Cleaning up

Ein weiterer Teil unserer Aufgabe war es, die Fehler unserer Vorgänger zu umgehen, um das MES weiterzuentwickeln. Um diese Fehler zu beheben, müsste das System von ASP.net migriert werden, ein Prozess, der Jahre dauern würde.

Stattdessen haben wir die Generierung einiger Seiten automatisiert, um die manuelle Erstellung zu vermeiden und so einige Fehler zu vermeiden.

Anpassung

Technologieriesen wie Microsoft bieten ähnliche Standardsoftware (z. B. Dynamic CRM) an. Aber die Anpassung kostet viel Zeit und Geld. Darüber hinaus ist die Anpassbarkeit insgesamt eingeschränkt und Sie können sie aufgrund regionaler Besonderheiten für einige Märkte nicht richtig einstellen.

Im Gegensatz dazu können Hersteller das Produkt unserer Kunden bis ins kleinste Detail anpassen. Immer wenn ein neues Unternehmen das MES von unserem Kunden kauft, helfen wir ihm, das System an seine Bedürfnisse anzupassen.

Zu den Unternehmen, die dieses MES verwenden, gehören Medizingeräte- und Pharmahersteller, Forschungs-, Entwicklungs- und Laborzentren, Halbleiterhersteller und Elektronikhersteller.

Weitere Verbesserungen

Einige Unternehmen ziehen es vor, bei ihren eigenen visuellen Schnittstellen zu bleiben. Damit sie das System verwalten können, haben wir die Verbindung zum MES über die REST-API aktiviert.

Eine weitere Verbesserung, an der wir in letzter Zeit gearbeitet haben, ist die Containerisierung. Derzeit verwendet das System Windows-Server, die einige Unternehmen als zu teuer empfanden und eine Alternative angefordert haben. Unser Team sucht nach Möglichkeiten, den Anwendungsserver in einen Container zu verpacken, in dem er dann über Docker gestartet wird, was die Kosten für den Endkunden drastisch senken soll.

Testen

Wir haben das System ausgiebig getestet. Dazu gehören Funktionstests wie Singular- und Integrationstests, Regressionstests, Positiv-Negativ-, Blackbox- und Lokalisierungstests.

Um das Testen zu beschleunigen und Fehler beim Testen großer, monoton strukturierter Funktionen zu reduzieren, haben wir es automatisiert. Wir haben Test Runner und Specflow verwendet, als wir den Code in Visual Studio geschrieben haben.

Ergebnis

Das von uns entwickelte System hat außergewöhnliche Ergebnisse gezeigt: Der ROI erreicht bis zu 400 %. Unser Kunde bietet eine Vielzahl von Produkten und Dienstleistungen an, aber das MES allein macht 80–90% seines Gesamtumsatzes aus.

Heute arbeiten fünf Elinext-Teams an dem Projekt, bieten Support und Monitoring rund um die Uhr und helfen bei der Integration des MES in die Geschäftsumgebungen der Endkunden. Einige Teams entwickeln neue Funktionen wie Containerisierung, neue Modellierung, eine benutzerdefinierte REST-API und eine neue Plattform für die Migration oder das Klonen von Herstellungsprozessen zwischen Standorten.

Die Entwicklung des MES ist auf drei Jahre im Voraus geplant. Wir erwarten, dass bis Ende 2021 etwa 35 Elinext-Softwareingenieure daran arbeiten werden.

8-15
9-7
10-6
12-6
1-79
2-72
3-57
4-42
5-36
6-21
7-18
11-8
Haben Sie vor, ein gleiches Projekt zu schaffen?
Haben Sie eine Projektidee? Lassen Sie uns darüber diskutieren
Kontakt


    Insert math as
    Block
    Inline
    Additional settings
    Formula color
    Text color
    #333333
    Type math using LaTeX
    Preview
    \({}\)
    Nothing to preview
    Insert