Wir geben unseren Kunden eine hochmoderne Entwicklungsumgebung an die Hand

Mit HDevelop bietet MVTec seinen Kunden eine Entwicklungsumgebung, die in der Welt der Machine Vision einzigartig ist. Im Augenblick arbeitet das Unternehmen an deren Neuentwicklung und auch seiner HALCON Engine. Warum die Neuentwicklung mit dem Namen HDevelopEVO notwendig wurde und worauf sich Kunden freuen dürfen, erklären Johannes Dieterich, Director Product Development, und Hannes Cmarits, Product Owner HALCON IDE, im Gespräch.

MVTec stellt im Rahmen seiner Machine-Vision-Software HALCON die integrierte Entwicklungs- umgebung HDevelop bereit. Diese wird im Augenblick neu entwickelt. Als Frage vorweg: Welche Vorteile bietet eine Entwicklungsum- gebung überhaupt den Kunden?

Enger Austausch im Team – Johannes Dieterich (ganz links) und Hannes Cmarits (ganz rechts).

Johannes Dieterich: Integrierte Entwicklungsumgebungen, oder kurz IDEs für Integrated Development Environments, spielen in der Automatisierungsbranche eine wichtige Rolle. Denn damit können Entwickler komplette Softwareanwendungen selbst erstellen beziehungsweise programmieren. Das Alleinstellungsmerkmal unserer Entwicklungsumgebung HDevelop ist es, dass sie speziell auf die Bedürfnisse von Softwareentwicklern der industriellen Bildverarbeitung zugeschnitten ist. Eine zentrale Rolle unserer IDE spielt der Zugriff auf die MVTec-Bildverarbeitungsbibliothek. Diese umfasst über 2.100 Operatoren, sodass sich damit fast alle Machine-Vision-Aufgaben lösen lassen.

Hannes Cmarits: Den entscheidenden Mehrwert für die Bildverarbeitungsbranche liefern wir mit unserer Software HALCON. Mit der Entwicklungsumgebung und der HALCON Engine, die neue Version heißt übrigens HALCON Skript Engine, können Entwickler von Bildverarbeitungslösungen HALCON einsetzen.

HDevelopEVO bietet, wie bereits die Vorgängerversion HDevelop, gegenüber anderen IDEs mehrere Vorteile: Einfache Visualisierung der Bilddaten, dazu zählen beispielsweise: Bilder, Regionen und Kanten. Eine leistungsstarke Autocompletion, welche beim Einfügen und Parametrisieren von HALCON Operatoren unterstützt, sowie Debugging mit einer Edit & Continue-Funktionalität, die kein anderes Produkt am Markt bietet.

Jetzt entwickelt ihr die Entwicklungsumgebung neu. Auf welche Neuheiten dürfen sich die Kunden freuen?

Johannes: Wir können selbstbewusst sagen, dass unsere Bildverarbeitungssoftware MVTec HALCON eines der bekanntesten und leistungsstärksten Produkte am Markt ist. Dieses Leistungsversprechen wollen wir auch in Zukunft halten. Mit der Neuentwicklung können wir unseren Kunden eine zeitgemäße Entwicklungsumgebung zur Verfügung stellen, die aktuelle Technologien wie etwa Künstliche Intelligenz beinhaltet und sich leichter in die Entwicklungsprozesse integrieren lässt. Gleichzeitig war es uns wichtig, dass unsere Kunden so einfach wie möglich mit unserer Entwicklungsumgebung arbeiten können.

Hannes: Mit HDevelopEVO werden wir Bewährtes behalten, aber auch einen großen Schritt nach vorne machen. Eine Entwicklungsumgebung umfasst, neben der bereits erwähnten Visualisierung, weitere Elemente wie einen Editor, einen Debugger, ein Versionskontrollsystem und einen Interpreter. Bei uns ist das die HALCON Engine, die ebenfalls neuentwickelt wird. Und hier beginnen auch schon unsere Neuheiten: Beim Editor von HDevelopEVO nutzen wir das Framework Theia, das dem weit verbreiteten VS-Code ähnelt. Dieser bringt einiges an neuer Funktionalität mit. Ebenso wird das Editieren durch Multi-line Editing und Widescrollbar, erleichtert. Gleichzeitig wird das Entwickeln durch die Einführung von Code Snippets vereinfacht. Eine weitere Neuerung von HDevelopEVO wird auch die Unterstützung von Versionskontrollsystemen sein. Die Integration von Git ermöglicht es, die an einem Skript vorgenommenen Änderungen zu verfolgen, auf ältere Versionen des Codes zu wechseln und somit auch den Verlauf des Projekts zu dokumentieren. Alle Aktionen können direkt in der IDE durchgeführt werden, wodurch kein Toolwechsel nötig ist. Zudem, auch im Hinblick auf die einfachere Prozessintegration, wird es eine Browser-Variante geben.

Es gibt noch so viele weitere Neuheiten, deren detaillierte Erklärungen den Rahmen hier sprengen würden. Kurz erwähnen möchte ich sie trotzdem: Es wird ein neues Dokumentationssystem geben und wir arbeiten auch daran, das Prototyping durch KI-Unterstützung zu verbessern. Hierfür wollen wir einen Chatbot zur Verfügung stellen, aber auch an anderen Stellen KI-Unterstützung anbieten. HDevelopEVO soll den Anwender bei der Lösung von Bildverarbeitungsaufgaben vollumfänglich unterstützen, und zwar innerhalb der gesamten User Journey. Hier ist Benutzerfreundlichkeit ein entscheidendes Qualitätsmerkmal.

Kannst du das Thema der Benutzerfreundlichkeit, also „Usability“, genauer beschreiben?

Der neue Editor bietet eine vertraute Umgebung und alle zeitgemäßen Funktionalitäten einer Entwicklungsumgebung.

Hannes: Die Usability ist ein entscheidender Faktor für Softwareprodukte, insbesondere für integrierte Entwicklungsumgebungen. Eine gute Usability sorgt dafür, dass Entwickler effizienter arbeiten, weniger Fehler machen und insgesamt eine bessere Benutzererfahrung haben. Mit HDevelopEVO verfolgen wir den Ansatz, auf bewährte Konzepte zu setzen und diese anzupassen, wenn wir darin einen Mehrwert oder eine Notwendigkeit sehen. Durch Design Sprints, Feedback und Kundenwünsche sowie explizite Kundengespräche zum Thema User Journey und HDevelopEVO, haben wir eine klare Vorstellung davon bekommen, was entstehen soll. Ein Beispiel: Unsere Anwender arbeiten bereits mit verschiedenen IDEs, um ihre Bildverarbeitungsaufgaben zu erfüllen. Mit HDevelop war das nicht immer möglich. Das wollten wir natürlich ändern. Da wir auch den Einstieg in unsere IDE erleichtern wollten, war es sinnvoll, bekannte Designs und Konzepte zu nutzen, um die Usability zu verbessern. Hier setzen wir auf unsere UX-Designerinnen und UX-Designer, die bewährte Konzepte übernehmen und anpassen, wenn nötig.

Wie war das Feedback der Kunden zu HDevelopEVO?

Hannes: Wir sind mit dem Thema Neuentwicklung offensiv umgegangen und haben Kunden frühzeitig informiert und als Input- und Feedbackgeber, etwa bei ersten Design Sprints, eingebunden.

Gerade am Anfang war es wichtig, die Wünsche und Anregungen der Anwender aufzunehmen. In weiteren Gesprächen mit unseren Kunden haben wir versucht festzustellen, ob es Lücken gibt, beispielsweise in der Customer Journey.

Hier lautete die Frage: Haben wir alle Aspekte abgedeckt, wie unsere Kunden mit der bisherigen Entwicklungsumgebung arbeiten? Im nächsten Schritt haben wir den Prototypen vorgestellt und hierzu Feedback gesammelt. Neben Änderungswünschen gab es aber auch viel positives Feedback. Eine witzige Anekdote: In den Gesprächen haben wir immer mal wieder die Kunden gefragt, wie die neue DIE aussehen sollte, ohne dass sie zuvor etwas davon gesehen hatten. Die Antwort lautete oft: „Wir wünschen uns das Design von VS-Code“. Die Kunden waren dann immer sehr erfreut, als wir die Entwürfe von HDevelopEVO vorgestellt haben.

Wer war an der Entwicklung alles beteiligt?

Das Grafikfenster zeigt nun während des Debuggings die entsprechenden Bilder an, was eine intuitivere und visuelle Fehlersuche ermöglicht.

Johannes: Die Neuentwicklung von HDevelopEVO ist sicher eines der größten Entwicklungsprojekte von MVTec in den letzten Jahren. Eben weil es sehr viele Details gibt und HDevelop sehr, sehr viel an Funktionalität bereitstellt. Worauf ich wirklich stolz bin, ist der Einsatz unserer Mitarbeiterinnen und Mitarbeiter. Es waren faktisch alle Abteilungen des Unternehmens involviert. Neben klassischen Softwareentwicklern haben auch UX-Designer mitgewirkt, um die hohe Usability sicherzustellen. Bei der Entwicklung waren und sind unsere agilen Strukturen natürlich hilfreich. Scrum Master und Product Owner sind nur zwei der Rollen, die zur bisher sehr erfolgreichen Entwicklung beigetragen haben. Zudem haben uns unsere Produktmanager unter anderem mit Input und als Schnittstelle zu den Kunden unterstützt. Für Tests haben Kolleginnen und Kollegen aus der Abteilung Customer Services mitgewirkt und für die Kommunikation nach außen war die Abteilung Market Communication involviert.

Das Projekt ist somit auch eine tolle Gelegenheit für unsere Kollegen, neue Methoden zu testen und etwas völlig Neues auszuprobieren. Das ist uns auch als Unternehmen wichtig, denn wir bei MVTec achten sehr darauf, uns stetig weiterzuentwickeln und unseren Mitarbeiterinnen und Mitarbeitern eine abwechslungsreiche Arbeitsatmosphäre zu bieten.