{"id":10713,"date":"2025-12-18T07:42:13","date_gmt":"2025-12-18T06:42:13","guid":{"rendered":"https:\/\/medtech-ingenieur.de\/?p=10713"},"modified":"2025-12-18T07:42:13","modified_gmt":"2025-12-18T06:42:13","slug":"softwareentwickler-usability-debug-interfaces-embedded-entwicklung","status":"publish","type":"post","link":"https:\/\/medtech-ingenieur.de\/en\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/","title":{"rendered":"Usability in Embedded Development: How good debug interfaces save developers and testers time and frustration"},"content":{"rendered":"<p>Usability is generally highly valued \u2013 yet it is still often neglected.<\/p>\n<p><strong data-end=\"522\" data-start=\"501\">Why is that?<\/strong> Because usability often only becomes noticeable when it&#039;s missing. It&#039;s difficult to measure, isn&#039;t always specified \u2013 and in everyday life is frequently overshadowed by technical feasibility, time constraints, or habit. Yet we all quickly realize how important it is when we&#039;re personally affected.<\/p>\n<h3>The best features are the ones nobody notices.<\/h3>\n<p>I know this from my own daily life. In the morning, I want to quickly heat up a cup of milk \u2013 actually a simple task. But the microwave oven turns it into a little test of patience:<\/p>\n<p>First, I have to &quot;wake up&quot; the touch panel. And instead of simply reusing the last settings, I have to adjust the power and select the time every time. The touch fields are either sluggish or too fast, and sometimes I accidentally skip a selection.<\/p>\n<p>Being half asleep when you wake up is incredibly frustrating. I told the kitchen fitter this. His response: &quot;Be glad you even got this model. The newer ones are even worse.&quot;\u201e<\/p>\n<p>Hmm \u2013 that doesn&#039;t really help me. Should I write to the manufacturer after all?<\/p>\n<p><span style=\"\"><img decoding=\"async\" alt=\"\" data-id=\"10836\" width=\"516\" data-init-width=\"1350\" height=\"413\" data-init-height=\"1080\" title=\"Usability for software developers\" loading=\"lazy\" src=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png\" data-width=\"516\" data-height=\"413\" style=\"aspect-ratio: auto 1350 \/ 1080;\" mt-d=\"0\" ml-d=\"0\"\/><\/span><\/p>\n<h3>Debug interfaces: The underestimated usability focal point<\/h3>\n<p>And that&#039;s precisely why it&#039;s worthwhile to take the topic of usability seriously in software development.<\/p>\n<p>We often hear people say: &quot;The HMI design comes from the customer; we just implement it.&quot; But wait \u2013 there are also the internal interfaces. A debug interface, for example.<\/p>\n<p>And I&#039;ve experienced quite a bit there:<\/p>\n<ul>\n<li>Commands that must be typed flawlessly \u2013 including exact capitalization. Not a single extra space!<\/li>\n<li>Entered a parameter in decimal? Tough luck, the interface expects hexadecimal.<\/li>\n<li>One command requires optional parameters without a hyphen, the next requires one.<\/li>\n<li>Feedback on whether the command was executed successfully? None.<\/li>\n<\/ul>\n<p>This is all incredibly annoying. But why do developers define interfaces that they themselves have to use every day? The answer could be: &quot;Because they can.&quot; Or rather: &quot;Because they actually can&#039;t,&quot; and their tolerance for frustration is practically limitless.<\/p>\n<\/p>\n<h3>Small but mighty: Usability for internal tools<\/h3>\n<p>or: Hex, Dec, Enum \u2013 make it easy for the user (even if they are a developer)<\/p>\n<p>But what does good usability of such an interface look like? Here are a few suggestions \u2013 implemented in a current, real-world project:<\/p>\n<ol type=\"1\">\n<li lang=\"de-AT\" value=\"1\">Case doesn&#039;t matter<\/li>\n<li lang=\"de-AT\">Commands can be abbreviated. As soon as two or more letters are sufficient for a command (i.e., only one command begins with these letters): Success!<\/li>\n<li lang=\"de-AT\">Hot tip: Backspace can also work via Serial Terminal<\/li>\n<li lang=\"de-AT\">Hexadecimal and decimal numbers allow<\/li>\n<li lang=\"de-AT\">\u201e&quot;Descriptive&quot; identifiers for, e.g., I2C clients. Then a command to set registers could look like this: &quot;i2c audio 0x4 32&quot;\u201c<\/li>\n<li lang=\"de-AT\">If a command allows a list of options, then the command without parameters should list the options. This saves tedious searching in the documentation. A little tip: If the parameter is an enum type, make it iterable and provide a `c_str()` function. More on this in another blog post.<\/li>\n<li lang=\"de-AT\">In general, the debug interface should be self-documenting. For example, &quot;help all&quot; lists all commands and their respective help documentation.<\/li>\n<li lang=\"de-AT\">Does the project have a proper file system? If so, please implement the commands &quot;dir&quot;, &quot;del&quot;, &quot;cat&quot;, and &quot;copy&quot;. It&#039;s not complicated, but incredibly helpful later in the project or for the testers. This allows you to quickly create a backup of a configuration file and restore it later.<\/li>\n<li lang=\"de-AT\">Aliases for commands: Linux users often use &quot;rm&quot;, Windows users &quot;del&quot;. Hey \u2013 why not make life easier for both? Be nice to each other ;-)<\/li>\n<\/ol>\n<p>Let me tell you this upfront: The testers will be at your feet. And if customers or other suppliers also have to work with the interface, you&#039;ll definitely be in their good graces!<\/p>","protected":false},"excerpt":{"rendered":"<p>Usability steht allgemein hoch im Kurs \u2013 und wird dennoch immer wieder stiefm\u00fctterlich behandelt. Warum ist das so? Weil Usability oft erst dann auff\u00e4llt, wenn sie fehlt. Sie l\u00e4sst sich schwer messen, wird nicht immer spezifiziert \u2013 und im Alltag h\u00e4ufig durch technische Machbarkeit, Zeitdruck oder Gewohnheit \u00fcberlagert. Dabei merken wir alle sehr schnell, wie [&hellip;]<\/p>\n","protected":false},"author":31,"featured_media":10836,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","tve_updated_post":"<div class=\"thrv_wrapper thrv_text_element\"><div class=\"tcb-plain-text\">Usability steht allgemein hoch im Kurs \u2013 und wird dennoch immer wieder stiefm\u00fctterlich behandelt.<br><br><\/div><p><strong data-end=\"522\" data-start=\"501\">Warum ist das so?<\/strong> Weil Usability oft erst dann auff\u00e4llt, wenn sie fehlt. Sie l\u00e4sst sich schwer messen, wird nicht immer spezifiziert \u2013 und im Alltag h\u00e4ufig durch technische Machbarkeit, Zeitdruck oder Gewohnheit \u00fcberlagert. Dabei merken wir alle sehr schnell, wie wichtig sie ist, wenn wir selbst betroffen sind.<\/p><h3 class=\"\">Die besten Features sind die, die keiner bemerkt<\/h3><p>Ich kenne das zum Beispiel aus meinem Alltag. Am Morgen will ich mir schnell eine Tasse Milch aufw\u00e4rmen \u2013 eigentlich eine simple Aufgabe. Aber der Mikrowellenofen macht daraus ein kleines Geduldsspiel:<\/p><p>Erstmal das Touchpanel \u201ewecken\u201c. Und anstatt die letzten Einstellungen einfach wieder zu verwenden, muss ich jedesmal wieder die Leistung einstellen und die Zeit w\u00e4hlen. Die Touchfelder reagieren tr\u00e4ge oder zu schnell, manchmal \u00fcberspringe ich versehentlich eine Auswahl.<\/p><p>Wenn man noch halb verschlafen ist, sorgt das f\u00fcr ordentlich Frust. Ich hab das dem K\u00fcchenbauer gesagt. Seine Antwort: \u201eSeien Sie froh, dass Sie dieses Modell \u00fcberhaupt noch bekommen haben. Die neueren sind noch schlimmer.\u201c<\/p><p>Hmm - das hilft mir jetzt nicht wirklich weiter. Sollte ich dann doch mal dem Hersteller schreiben?<\/p><\/div><div class=\"thrv_wrapper tve_image_caption tve-image-caption-below\" data-css=\"tve-u-197c0b03a1c\" style=\"\"><span class=\"tve_image_frame\" style=\"\"><img decoding=\"async\" class=\"tve_image wp-image-10836 tcb-moved-image\" alt=\"\" data-id=\"10836\" width=\"516\" data-init-width=\"1350\" height=\"413\" data-init-height=\"1080\" title=\"Usability f\u00fcr Softwareentwickler\" loading=\"lazy\" src=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png\" data-width=\"516\" data-height=\"413\" style=\"aspect-ratio: auto 1350 \/ 1080;\" mt-d=\"0\" ml-d=\"0\" data-css=\"tve-u-197c0b04d73\"><\/span><\/div><div class=\"thrv_wrapper thrv_text_element\"><h3 class=\"\">Debug-Interfaces: Der untersch\u00e4tzte Usability-Brennpunkt<\/h3><p>Und genau deshalb lohnt es sich, das Thema Usability auch in der Softwareentwicklung ernst zu nehmen.<\/p><p>Oft hei\u00dft es bei uns: \u201eDas HMI-Design kommt vom Kunden, wir setzen nur um.\u201c Aber halt \u2013 es gibt ja auch die internen Schnittstellen. Ein Debug-Interface zum Beispiel.<\/p><p>Und da habe ich schon einiges erlebt:<\/p><ul class=\"\"><li>Befehle, die man \u2013 inklusive exakter Gro\u00df- und Kleinschreibung \u2013 fehlerfrei eintippen muss. Kein Leerzeichen zu viel!<\/li><li>Ein Parameter in Dezimal eingegeben? Pech, das Interface erwartet Hexadezimal.<\/li><li>Der eine Befehl will optionale Parameter ohne Bindestrich, der n\u00e4chste mit.<\/li><li>R\u00fcckmeldung, ob der Befehl erfolgreich ausgef\u00fchrt wurde? Fehlanzeige.<\/li><\/ul><p>Das alles nervt gigantisch. Aber warum definieren Entwickler solche Interfaces, die sie selbst tagt\u00e4glich nutzen m\u00fcssen? Die Antwort k\u00f6nnte lauten: \"Weil sie's k\u00f6nnen\". Oder besser: \"Weil sie's eben doch nicht k\u00f6nnen\" und die Leidensf\u00e4higkeit schier grenzenlos ist.<\/p><p><br><\/p><h3 class=\"\">Klein, aber oho: Usability f\u00fcr interne Tools<\/h3><p>oder: Hex, Dez, Enum \u2013 macht\u2019s dem User einfach (auch wenn er Entwickler ist)<\/p><p>Aber wie kann gute Usability einer solchen Schnittstelle dann aussehen? Hier ein paar Vorschl\u00e4ge - in einem aktuellen, real existierenden Projekt so umgesetzt:<\/p><ol type=\"1\" class=\"\"><li lang=\"de-AT\" value=\"1\">Gro\u00df-\/Kleinschreibung ist egal<\/li><li lang=\"de-AT\">Befehle k\u00f6nnen abgek\u00fcrzt werden. Sobald zwei oder mehr Buchstaben f\u00fcr einen Befehl gen\u00fcgen (also nur ein Befehl mit diesen beginnt): Treffer!<\/li><li lang=\"de-AT\">Ganz hei\u00dfer Tipp: Backspace kann auch via Serial Terminal funktionieren<\/li><li lang=\"de-AT\">Hexa- und Dezimalzahlen erlauben<\/li><li lang=\"de-AT\">\"sprechende\" Bezeichner f\u00fcr z.B. I2C-Clients. Dann k\u00f6nnte ein Befehl, zum Setzen von Registern so aussehen: \"i2c audio 0x4 32\"<\/li><li lang=\"de-AT\">Wenn ein Befehl eine Liste von Optionen erlaubt, dann sollte der Befehl ohne Parameter die Optionen auflisten. Das erspart l\u00e4stige Suche in der Dokumentation. Geheimtip: Ist der Parameter ein Enum-Typ, dann macht den iterierbar und stellt eine \"c_str()\"-Funktion zur Verf\u00fcgung. Dazu mehr in einem anderen Blog-Artikel.<\/li><li lang=\"de-AT\">\u00dcberhaupt: Das Debug-Interface sollte sich selbst dokumentieren. \"help all\" listet zum Beispiel alle Befehle und die jeweilige Hilfe dazu.<\/li><li lang=\"de-AT\">In dem Projekt gibt's ein richtiges Filesystem? Na, dann bitte die Kommandos \"dir\", \"del\", \"cat\", \"copy\" implementieren. Ist nicht aufw\u00e4ndig, aber ungemein hilfreich im weiteren Projektverlauf oder f\u00fcr die Tester. Dann kann man schnell ein Backup einer Config-Datei anlegen, um sie sp\u00e4ter wiederherzustellen.<\/li><li lang=\"de-AT\">Aliases f\u00fcr Befehle: Die Linuxer verwenden gerne \"rm\", Windows-User \"del\". Hey - warum nicht beiden das Leben erleichtern? Seid nett zueinander ;-)<\/li><\/ol><p>So viel vorweg: Die Tester werden euch zu F\u00fc\u00dfen liegen. Und wenn dann auch noch die Kunden oder andere Zulieferer mit dem Interface arbeiten m\u00fcssen, habt ihr mit Sicherheit einen Stein im Brett!<\/p><\/div>","tve_custom_css":"@media (min-width: 300px){.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper { width: calc(33.3333% - 13.3333px); }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:nth-child(n+4) { margin-top: 20px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:not(:nth-child(n+4)) { margin-top: 0px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:not(:nth-child(3n)) { margin-right: 20px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:nth-child(3n) { margin-right: 0px !important; }[data-css=\"tve-u-197c0b03a1c\"] { width: 516px; display: block; --tve-alignment: center; float: none; z-index: 3; position: relative; margin-left: auto !important; margin-right: auto !important; margin-bottom: 50px !important; }[data-css=\"tve-u-197c0b03a1c\"] .tve_image_frame { height: 100%; }[data-css=\"tve-u-197c0b04d73\"] { margin-top: 0px; margin-left: 0px; width: 100% !important; max-width: none !important; }}@media (max-width: 767px){.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper { width: calc(100% + 0px); }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:nth-child(n+2) { margin-top: 20px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:not(:nth-child(n+2)) { margin-top: 0px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:not(:nth-child(n)) { margin-right: 20px !important; }.tcb-post-list[data-css=\"tve-u-18d31773283\"] .post-wrapper.thrv_wrapper:nth-child(n) { margin-right: 0px !important; }}","tve_user_custom_css":"","tve_globals":{"e":"1","font_cls":[]},"tcb2_ready":1,"tcb_editor_enabled":1,"tve_landing_page":"","_tve_header":"","_tve_footer":""},"categories":[2,780,6,468,8,205],"tags":[781,783,782,35,778,292,272,206,779],"class_list":["post-10713","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-embedded","category-software","category-testen","category-tools","category-usability","tag-debug","tag-debug-interface","tag-debugging","tag-embedded","tag-hmi","tag-software-architektur","tag-software-entwicklung","tag-usability","tag-welzenbach","post-wrapper","thrv_wrapper"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen - MEDtech Ingenieur GmbH<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/medtech-ingenieur.de\/en\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen - MEDtech Ingenieur GmbH\" \/>\n<meta property=\"og:description\" content=\"Usability steht allgemein hoch im Kurs \u2013 und wird dennoch immer wieder stiefm\u00fctterlich behandelt. Warum ist das so? Weil Usability oft erst dann auff\u00e4llt, wenn sie fehlt. Sie l\u00e4sst sich schwer messen, wird nicht immer spezifiziert \u2013 und im Alltag h\u00e4ufig durch technische Machbarkeit, Zeitdruck oder Gewohnheit \u00fcberlagert. Dabei merken wir alle sehr schnell, wie [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/medtech-ingenieur.de\/en\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/\" \/>\n<meta property=\"og:site_name\" content=\"MEDtech Ingenieur GmbH\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/medtechIngenieur\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-18T06:42:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1350\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"J\u00fcrgen Welzenbach\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MedtechIng\" \/>\n<meta name=\"twitter:site\" content=\"@MedtechIng\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"J\u00fcrgen Welzenbach\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/\"},\"author\":{\"name\":\"J\u00fcrgen Welzenbach\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/person\\\/dd3cdc59cbb669fb0280a19479a5b1ab\"},\"headline\":\"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen\",\"datePublished\":\"2025-12-18T06:42:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/\"},\"wordCount\":648,\"publisher\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Usability-fuer-Softwareentwickler.png\",\"keywords\":[\"Debug\",\"Debug-Interface\",\"Debugging\",\"Embedded\",\"HMI\",\"Software Architektur\",\"Software Entwicklung\",\"Usability\",\"Welzenbach\"],\"articleSection\":[\"Allgemein\",\"Embedded\",\"Software\",\"Testen\",\"Tools\",\"Usability\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/\",\"name\":\"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen - MEDtech Ingenieur GmbH\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Usability-fuer-Softwareentwickler.png\",\"datePublished\":\"2025-12-18T06:42:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#primaryimage\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Usability-fuer-Softwareentwickler.png\",\"contentUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/Usability-fuer-Softwareentwickler.png\",\"width\":1350,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#website\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\",\"name\":\"MEDtech Ingenieur GmbH\",\"description\":\"Ingenieursdienstleister f\u00fcr Medizintechnik\",\"publisher\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\"},\"alternateName\":\"MEDtech\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/medtech-ingenieur.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#organization\",\"name\":\"MEDtech Ingenieur\",\"alternateName\":\"MEDtech\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/logo-700x700-1.png\",\"contentUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/logo-700x700-1.png\",\"width\":700,\"height\":700,\"caption\":\"MEDtech Ingenieur\"},\"image\":{\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/medtechIngenieur\",\"https:\\\/\\\/x.com\\\/MedtechIng\",\"https:\\\/\\\/www.instagram.com\\\/medtech.ingenieure\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/37871229\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/#\\\/schema\\\/person\\\/dd3cdc59cbb669fb0280a19479a5b1ab\",\"name\":\"J\u00fcrgen Welzenbach\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/04\\\/cropped-Med_Mit-013-scaled-1-96x96.jpg\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/04\\\/cropped-Med_Mit-013-scaled-1-96x96.jpg\",\"contentUrl\":\"https:\\\/\\\/medtech-ingenieur.de\\\/wp-content\\\/uploads\\\/2025\\\/04\\\/cropped-Med_Mit-013-scaled-1-96x96.jpg\",\"caption\":\"J\u00fcrgen Welzenbach\"},\"description\":\"J\u00fcrgen hat nach seinem Elektrotechnikstudium in Erlangen seine Diplomarbeit in Kooperation mit einem Hersteller von ophthalmologischen Ger\u00e4ten und der Universit\u00e4tsaugenklinik durchgef\u00fchrt. In zwei Erlanger Unternehmen fand er zur Embedded Software und hat vor allem HMIs f\u00fcr Baumaschinen und Laboranalyseger\u00e4te entwickelt.\",\"url\":\"https:\\\/\\\/medtech-ingenieur.de\\\/en\\\/author\\\/jwelzenbach\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Usability in Embedded Development: How good debug interfaces save developers and testers time and frustration - MEDtech Ingenieur GmbH","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/medtech-ingenieur.de\/en\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/","og_locale":"en_US","og_type":"article","og_title":"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen - MEDtech Ingenieur GmbH","og_description":"Usability steht allgemein hoch im Kurs \u2013 und wird dennoch immer wieder stiefm\u00fctterlich behandelt. Warum ist das so? Weil Usability oft erst dann auff\u00e4llt, wenn sie fehlt. Sie l\u00e4sst sich schwer messen, wird nicht immer spezifiziert \u2013 und im Alltag h\u00e4ufig durch technische Machbarkeit, Zeitdruck oder Gewohnheit \u00fcberlagert. Dabei merken wir alle sehr schnell, wie [&hellip;]","og_url":"https:\/\/medtech-ingenieur.de\/en\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/","og_site_name":"MEDtech Ingenieur GmbH","article_publisher":"https:\/\/www.facebook.com\/medtechIngenieur","article_published_time":"2025-12-18T06:42:13+00:00","og_image":[{"width":1350,"height":1080,"url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png","type":"image\/png"}],"author":"J\u00fcrgen Welzenbach","twitter_card":"summary_large_image","twitter_creator":"@MedtechIng","twitter_site":"@MedtechIng","twitter_misc":{"Written by":"J\u00fcrgen Welzenbach","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#article","isPartOf":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/"},"author":{"name":"J\u00fcrgen Welzenbach","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/person\/dd3cdc59cbb669fb0280a19479a5b1ab"},"headline":"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen","datePublished":"2025-12-18T06:42:13+00:00","mainEntityOfPage":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/"},"wordCount":648,"publisher":{"@id":"https:\/\/medtech-ingenieur.de\/#organization"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#primaryimage"},"thumbnailUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png","keywords":["Debug","Debug-Interface","Debugging","Embedded","HMI","Software Architektur","Software Entwicklung","Usability","Welzenbach"],"articleSection":["Allgemein","Embedded","Software","Testen","Tools","Usability"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/","url":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/","name":"Usability in Embedded Development: How good debug interfaces save developers and testers time and frustration - MEDtech Ingenieur GmbH","isPartOf":{"@id":"https:\/\/medtech-ingenieur.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#primaryimage"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#primaryimage"},"thumbnailUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png","datePublished":"2025-12-18T06:42:13+00:00","breadcrumb":{"@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#primaryimage","url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png","contentUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/06\/Usability-fuer-Softwareentwickler.png","width":1350,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/medtech-ingenieur.de\/softwareentwickler-usability-debug-interfaces-embedded-entwicklung\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/medtech-ingenieur.de\/"},{"@type":"ListItem","position":2,"name":"Usability in Embedded Development: Wie gute Debug-Interfaces Entwicklern und Testern Zeit und Frust sparen"}]},{"@type":"WebSite","@id":"https:\/\/medtech-ingenieur.de\/#website","url":"https:\/\/medtech-ingenieur.de\/","name":"MEDtech Ingenieur GmbH","description":"Engineering service provider for medical technology","publisher":{"@id":"https:\/\/medtech-ingenieur.de\/#organization"},"alternateName":"MEDtech","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/medtech-ingenieur.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/medtech-ingenieur.de\/#organization","name":"MEDtech Engineer","alternateName":"MEDtech","url":"https:\/\/medtech-ingenieur.de\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/logo\/image\/","url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2024\/01\/logo-700x700-1.png","contentUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2024\/01\/logo-700x700-1.png","width":700,"height":700,"caption":"MEDtech Ingenieur"},"image":{"@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/medtechIngenieur","https:\/\/x.com\/MedtechIng","https:\/\/www.instagram.com\/medtech.ingenieure\/","https:\/\/www.linkedin.com\/company\/37871229\/"]},{"@type":"Person","@id":"https:\/\/medtech-ingenieur.de\/#\/schema\/person\/dd3cdc59cbb669fb0280a19479a5b1ab","name":"J\u00fcrgen Welzenbach","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/04\/cropped-Med_Mit-013-scaled-1-96x96.jpg","url":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/04\/cropped-Med_Mit-013-scaled-1-96x96.jpg","contentUrl":"https:\/\/medtech-ingenieur.de\/wp-content\/uploads\/2025\/04\/cropped-Med_Mit-013-scaled-1-96x96.jpg","caption":"J\u00fcrgen Welzenbach"},"description":"After completing his electrical engineering studies in Erlangen, J\u00fcrgen wrote his diploma thesis in cooperation with a manufacturer of ophthalmic devices and the university eye clinic. He then worked for two companies in Erlangen, where he discovered embedded software and primarily developed HMIs for construction machinery and laboratory analysis equipment.","url":"https:\/\/medtech-ingenieur.de\/en\/author\/jwelzenbach\/"}]}},"_links":{"self":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/10713","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/users\/31"}],"replies":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/comments?post=10713"}],"version-history":[{"count":28,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/10713\/revisions"}],"predecessor-version":[{"id":11737,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/posts\/10713\/revisions\/11737"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/media\/10836"}],"wp:attachment":[{"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/media?parent=10713"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/categories?post=10713"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/medtech-ingenieur.de\/en\/wp-json\/wp\/v2\/tags?post=10713"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}