Barrierefreie Softwareentwicklung mit Java, C#, Python und JavaScript nach EN 301 549 und WCAG 2.2 – Anleitungen 2024

In diesem Blogartikel gibt es detaillierte Informationen zur barrierefreie Softwareentwicklung mit den Programmiersprachen Java, C#, Python und JavaScript.

Was ist eine Software?

Eine Software ist eine Sammlung von Anweisungen oder Programmen, die einem Computer oder einem anderen elektronischen Gerät sagen, was es tun soll. Stell dir vor, dass Software wie die „Gehirne“ eines Computers ist. Sie ermöglicht es einem Computer, verschiedene Aufgaben auszuführen, von einfachen Berechnungen bis hin zur Verarbeitung von komplexen Daten. Beispiele für Software sind die Textverarbeitung „Word“ und die Tabellenkalkulation Excel des Unternehmens Microsoft.

Eingabemaske programmiert mit der Programmiersprache Python und dem Framework Qt um Daten zu einer Person einzugeben. Zu sehen sind 7 Eingabefelder und 3 Schaltflächen

Eingabemaske programmiert mit der Programmiersprache Python und dem Framework Qt um Daten zu einer Person einzugeben.

Software kann auch als Programm, Anwendung oder Applikation bezeichnet werden.

Was ist Softwareentwicklung?

Softwareentwicklung ist der Prozess, bei dem Computerprogramme oder Software erstellt werden. Stellen Sie sich vor, dass Softwareentwicklung wie das Entwerfen und Bauen eines Hauses ist, nur dass hier digitale Werkzeuge und Anweisungen verwendet werden, die ein Computer ausführen kann. Andere Begriffe für Software-Entwicklung sind Programmentwicklung oder Anwendungsentwicklung.

Was ist eine Programmiersprache?

Eine Programmiersprache ist eine spezielle Art von Sprache, die von Menschen verwendet wird, um Anweisungen zu schreiben, die ein Computer verstehen und ausführen kann. Stellen Sie sich vor, dass eine Programmiersprache wie eine Art „Kommunikationsmittel“ zwischen Menschen und Computern ist.

Was ist Digitale Barrierefreiheit?

Digitale Barrierefreiheit bezieht sich auf die Gestaltung und Entwicklung von digitalen Technologien, wie Websites, Apps und Programme, sodass sie für alle Anwender, einschließlich Personen mit Behinderungen oder anderen Einschränkungen, zugänglich und nutzbar sind. Falls Sie im Internet mal den Begriff digitale Zugänglichkeit lesen, dies ist ein Synonym für digitale Barrierefreiheit und erfordert das Gleiche. Zugänglichkeit in der digitalen Welt erfordert, dass keine Hindernisse bestehen, die Anwender daran hindern könnten, die Technologie effektiv zu nutzen. Digitale Zugänglichkeit setzt voraus, digitale Produkte und Dienstleistungen so zu gestalten, dass sie für eine Vielzahl von Benutzern zugänglich sind, unabhängig von ihren körperlichen Beeinträchtigungen oder Einschränkungen. Die digitale Zugänglichkeit zielt darauf ab, Chancengleichheit und Inklusion in der digitalen Gesellschaft zu fördern, indem sie sicherstellt, dass jeder die gleiche Möglichkeit hat, auf Informationen zuzugreifen, zu kommunizieren und zu interagieren, unabhängig von seinen individuellen Bedürfnissen. Digitale Zugänglichkeit  ist im Jahr 2024 sehr wichtig.

Was ist eine barrierefreie Software?

Eine barrierefreie Software, ist eine Software, die für alle Personen, auch Personen mit Behinderungen oder anderen körperlichen Beeinträchtigungen bedienbar ist.

Mit welchen Programmiersprachen kann barrierefreie Software entwickelt werden?

In der Entwicklung barrierefreier Software gibt es verschiedene Programmiersprachen, die dafür verwendet werden können, um sicherzustellen, dass Anwendungen für alle Benutzer zugänglich sind.

Die Wahl der Programmiersprache hängt oft von den Forderungen des Projekts und den Fähigkeiten des Entwicklungsteams ab. Letztendlich ist das Ziel die Entwicklung von Software, die für alle Anwender zugänglich und benutzbar ist.

Hier sind einige häufig verwendete Programmiersprachen:

Die Programmiersprache Python

Python ist bekannt für seine Einfachheit und Flexibilität. Python erfüllt die Anforderungen, dass Entwickler mit Python und dem grafischen Framework Qt Benutzeroberflächen gestalten, die für Anwender mit unterschiedlichen Behinderungen bedienbar sind.

Hier ein Video, in dem ich die zugängliche Anwendungsentwicklung mit Python und Qt6 erkläre:

Die Programmiersprache Java

Java ist eine weitverbreitete Programmiersprache, die ebenfalls die Anforderungen zur Entwicklung barrierefreier Anwendungen erfüllt. Java ist plattformunabhängig, das bedeutet, Anwendungen, die mit Java entwickelt wurden, können auf allen Betriebssystemen eingesetzt werden.  Entwickler können Benutzeroberflächen mit Java Swing und JavaFX erstellen, die für Anwender mit unterschiedlichen körperlichen Beeinträchtigungen bedienbar sind.

Die Programmiersprache C#

Die Programmiersprache C# gehört zum .Net-Framework und dieses wurde von Microsoft entwickelt. Microsoft hat mit dem .Net-FrameWork die Idee der Programmiersprache Java übernommen, allerdings ohne die Plattformunabhängigkeit umzusetzen, weil Microsoft nicht möchte, dass C#-Anwendungen auf allen Betriebssystemen einsetzbar ist. Das ist einer von vielen Gründen, warum ich kein großer Fan des Unternehmens Microsoft bin. Microsoft hat gehofft, mit der Entwicklung von C# bezüglich Programmiersprachen vorn mitreden zu können, C# ist aber in der Rangliste der Programmiersprachen sehr stabil auf Platz 4.

C# wird oft für die Entwicklung von Windows-Anwendungen verwendet. Die Programmiersprache C# erfüllt die Anforderungen, damit Entwickler Benutzeroberflächen mit WinForms und WPF erstellen, die für Anwender mit unterschiedlichen körperlichen Beeinträchtigungen bedienbar sind.

Die Programmiersprache JavaScript

JavaScript wird häufig für die Entwicklung von Webanwendungen verwendet. Durch die Verwendung von semantisch korrektem HTML und zusätzlichen Zugänglichkeitsfunktionen wie ARIA (Accessible Rich Internet Applications) können Entwickler zugängliche Webanwendungen erstellen. Diese Programmiersprachen bieten Möglichkeiten, zugängliche  Anwendung zu entwickeln, die von Anwender mit unterschiedlichen körperlichen Behinderungen und Beeinträchtigungen genutzt werden kann.

Was ist barrierefreie Softwareentwicklung?

Barrierefreie Softwareentwicklung setzt voraus, dass eine Software so entwickelt wird, dass sie von allen Menschen, auch Personen mit Behinderungen und anderen körperlichen Einschränkungen bedient werden kann. Ich bin großer Fan von der barrierefreien Softwareentwicklung und hoffe, dass ich mit meiner Artikelreihe Softwareentwickler begeistern kann, für alle Personen einen barrierefreien Zugang zur Software zur Verfügung zu stellen.

Wer ist die Zielgruppe?

Die Hauptzielgruppe von barrierefreier Anwendungsentwicklung sind Menschen mit Behinderungen. Da Senioren aufgrund Ihres fortgeschrittenen Alters auch oft körperliche Einschränkungen haben, die das Bedienen von Software erschweren, gehören Sie ebenso zur Zielgruppe. Mir persönlich ist es sehr wichtig, dass eine Anwendung für blinde Nutzer bedienbar ist. Blinde Anwender werden bei der Entwicklung von Programmen, ob vergessen, weil viele Softwareentwickler nicht wissen, dass blinde Nutzer Computer und Anwendungen bedienen können.

Was ist eine Behinderung?

Eine Körperbehinderung ist eine Beeinträchtigung des Körpers, die dazu führt, dass bestimmte körperliche Funktionen eingeschränkt sind. Dies kann beispielsweise dazu führen, dass jemand Probleme beim Laufen hat, sich nur eingeschränkt bewegen kann oder auf Hilfsmittel angewiesen ist, um sich fortzubewegen. Körperbehinderungen können angeboren sein oder im Laufe des Lebens durch Unfälle oder Krankheiten entstehen.

Blindheit bedeutet, dass jemand nicht sehen kann. Blinde Menschen haben Schwierigkeiten beim Bedienen von Software, da die meisten Programme visuell sind und auf dem Sehen basieren. Sie können unter anderem Probleme haben, Texte auf dem Bildschirm zu lesen oder Farben zu erkennen. Daher benötigen blinde Personen einen Screenreader. Was das ist, wird weiter unten in diesem Artikel erklärt. Blinde Menschen können keine Computermaus bedienen, deswegen muss eine barrierefreie Software nur per Tastatur bedienbar sein.

Eine Sehbehinderung bedeutet, dass die Sehfähigkeit einer Person eingeschränkt ist. Dies kann verschiedene Ursachen haben, wie zum Beispiel Kurz- oder Weitsichtigkeit, Farbenblindheit oder sogar Blindheit. Menschen mit Sehbehinderung haben Schwierigkeiten beim Lesen von kleinen Texten, der Unterscheidung von Farben oder dem Erkennen von Details auf dem Bildschirm. Beim Bedienen von Software können sie Probleme haben, wenn die Schrift zu klein ist, der Kontrast nicht ausreichend ist oder wichtige Informationen nur durch Farben dargestellt werden. Es ist daher wichtig, dass Software mit Bedacht erstellt wird, um auch Menschen mit Sehbehinderung eine barrierefreie Nutzung zu ermöglichen.

Welche Richtlinien gibt es für die barrierefreie Anwendungsentwicklung?

Richtlinien sind Regeln oder Standards, die helfen, Software so zu entwickeln, dass sie von allen Menschen genutzt werden kann, unabhängig von ihren Fähigkeiten oder körperlichen Einschränkungen. Diese Richtlinien sind wichtig, um sicherzustellen, dass Menschen mit unterschiedlichen körperlichen Beeinträchtigungen die Anwendung problemlos bedienen können. Für zugängliche Anwendungsentwicklung gibt es spezifische Richtlinien, abhängig vom Zielmarkt der Software:

EN 301 549

Diese Richtlinie EN 301 549 wird verwendet, wenn eine Software für den europäischen Markt barrierefrei entwickelt wird. Sie definiert spezifische Prüfschritte, um sicherzustellen, dass die Software den Barrierefreiheitsanforderungen entspricht.

WCAG 2.2

Wenn die Software für einen nicht europäischen Markt entwickelt wird, insbesondere für den internationalen Einsatz, sollte die Richtlinie WCAG 2.2 (Web Content Accessibility Guidelines) angewendet werden. Diese Richtlinie legt ebenfalls Prüfschritte fest, um sicherzustellen, dass die Software barrierefrei ist.
Damit eine Software für alle Anwender mit Beeinträchtigungen bedienbar ist, muss die EN 301 549 und die WCAG 2.2 angewandt werden.
Diese Richtlinien sind entscheidend, um sicherzustellen, dass zugängliche  Software entwickelt wird, die die Bedürfnisse aller Benutzer berücksichtigt.

Was ist ein Screenreader?

Der Begriff Screenreader kommt in allen 4 Blogartikeln vor, deswegen möchte ich ihn hier erklären. Ein Screenreader ist eine spezielle Software, die blinden Nutzer hilft, Informationen auf einem Computerbildschirm zu verstehen und zu nutzen. Ein Screenreader liest den Inhalt des Bildschirms laut vor, einschließlich Texte, Schaltflächen und andere Elemente. Dadurch können blinde Nutzer den Inhalt einer Webseite, einer Anwendung oder eines Dokuments verstehen, auch wenn sie den Bildschirm nicht sehen können.
Der Screenreader funktioniert, indem er den Bildschirminhalt in Sprache oder Brailleschrift umwandelt. Auf diese Weise können blinde Nutzer mit einem Computer interagieren und Informationen erhalten, die sonst visuell wären. Screenreader sind eine wichtige Technologie für die digitale Zugänglichkeit, da sie Menschen mit Sehbeeinträchtigungen den Zugang zu digitalen Inhalten ermöglichen.

Häufig gestellte Fragen

In diesem Abschnitt werden häufig gestellte Fragen zur barrierefreien Softwareentwicklung beantwortet.

Was bedeutet Barrierefreiheit allgemein?

Barrierefreiheit oder auch Zugänglichkeit heißt, dass Menschen mit Behinderungen die gleichen Möglichkeiten und Chancen haben wie Menschen ohne Behinderungen. Das heißt, dass keine Hindernisse vorhanden sind, die es ihnen schwer oder unmöglich machen, sich in ihrer Umgebung zu bewegen oder Dienstleistungen zu nutzen. Zugänglichkeit  betrifft unter anderem den Zugang zu öffentlichen Gebäuden, die Gestaltung von Websites oder die Benutzung von öffentlichen Verkehrsmitteln. Durch die Schaffung von barrierefreien Strukturen wird die Teilhabe von Menschen mit Behinderungen am gesellschaftlichen Leben erleichtert und gefördert.

Was bedeutet Barrierefreiheit in der IT?

Barrierefreiheit in der IT erfordert, dass alle Menschen Zugang zu digitalen Inhalten und Technologien haben, unabhängig von ihren individuellen Einschränkungen., dass Webseiten, Programme, Apps und Betriebssysteme so gestaltet sind, dass sie von allen Menschen, unabhängig von ihren individuellen Fähigkeiten oder Einschränkungen, genutzt werden können. Das betrifft zum Beispiel die Verwendung von Screenreadern für Blinde oder die Anpassung von Schriftgröße und Farben für Menschen mit Sehschwierigkeiten. Durch barrierefreie IT wird sichergestellt, dass alle Menschen gleichermaßen von den digitalen Möglichkeiten profitieren können.

Was bedeutet barrierefrei bei Software?

Barrierefrei bei Software bedeutet, dass Software so gestaltet ist, dass alle Menschen sie leicht verwenden können, auch Menschen mit Handicaps. Das beinhaltet zum Beispiel, dass die Benutzeroberfläche gut lesbar für Screenreader sein muss und es Funktionen geben muss, die auch von Menschen mit Seh- oder Hörbehinderungen genutzt werden können. Barrierefreie Software ermöglicht also allen Menschen, unabhängig von ihren individuellen Einschränkungen, den vollen Zugang und die volle Nutzung der Anwendung.

Was ist eine barrierefreie Gestaltung?

Barrierefreie Gestaltung bei Software erfordert, dass die Software so gestaltet ist, dass Menschen mit unterschiedlichen Einschränkungen sie problemlos nutzen können. Das bedeutet zum Beispiel, dass die Software auch von Menschen mit Sehbehinderung oder motorischen Einschränkungen leicht bedienbar ist. Dies wird durch die Verwendung von klaren Strukturen, ausreichend Kontrasten und Bedienelementen ermöglicht, die auch mithilfe von Hilfstechnologien wie Screenreadern genutzt werden können. Damit wird sichergestellt, dass alle Nutzer die Software ohne Hindernisse verwenden können.

Was gehört alles zur Barrierefreiheit?

Zur Barrierefreiheit oder auch Zugänglichkeit gehören verschiedene Maßnahmen, die es Menschen mit einer Behinderung ermöglichen, sich in Gebäuden und öffentlichen Räumen frei zu bewegen und alle Angebote nutzen zu können. Dazu zählen unter anderem Rampen an Treppen, breite Türen und Aufzüge für Rollstuhlfahrer, kontrastreiche Beschilderungen für Sehbehinderte und Menschen mit Farbfehlsichtigkeit, induktive Höranlagen für Hörbehinderte und barrierefreie Toiletten. Zugänglichkeit betrifft auch digitale Angebote wie Internetseiten, Software und Apps. Sie sollten ebenfalls barrierefrei gestaltet sein, damit sie von Menschen mit Behinderung genutzt werden können. Insgesamt geht es bei der Barrierefreiheit darum, ein inklusives Umfeld zu schaffen, in dem alle Menschen gleichberechtigt teilhaben können.

Leider ist im Jahr 2024 die Barrierefreiheit in Deutschland noch immer nicht vollständig umgesetzt.

Barrierefreie Software-Entwicklung – die 4 Blogartikel

Quellen

In diesem Abschnitt finden Sie die Links und Quellen, auf die ich mich bei der Erstellung dieses Blogartikels bezogen habe. Sie bieten zusätzliche Informationen und weiterführende Lektüre zu den im Artikel behandelten Themen.

Schlussbemerkung

Barrierefreie Softwareentwicklung ist sinnvoll und macht Spaß. Ich hoffe dass meine neuen Blogartikel und YouTube-Videos dazu beitragen, dass mehr zugängliche Software entwickelt wird.

Wenn Sie Fragen zu obige Themen haben, schreiben Sie mir eine Mail an info@marlem-software.de oder rufen Sie mich an unter 07072/1278463 .

Autor: Markus Lemcke

Ich bin Markus Lemcke, Softwareentwickler, Webentwickler, Appentwickler, Berater und Dozent für barrierefreies Webdesign, barrierefreie Softwareentwicklung mit Java, C# und Python, Barrierefreiheit bei den Betriebssystemen Windows, Android, IOS, Ubuntu und MacOS.