Barrierefreie Softwareentwicklung mit Java, Grundlagen (1/3)

Dieser Artikel ist der erste von dreien, der erläutert, wie sich mit der Programmiersprache Java barrierefreie Software entwickeln lässt.

Das Gesetz

am 1. Mai 2002 trat ein Behindertengleichstellungsgesetz (BGG) in Kraft. Dort gab es einen §11 Barrierefreie Informationstechnik. Hier wurde u. a. festgelegt, dass Träger öffentlicher Gewalt dazu verpflichtet sind ihre Webseiten barrierefrei zu gestalten. Dies war die Geburtsstunde vom „barrierefreie(n) Webdesign“.

Dieses Jahr wurde das Behindertengleichstellungsgesetz (BGG) überarbeitet. Der ehemalige Paragraph 11 ist jetzt Paragraph 12:

§ 12 Barrierefreie Informationstechnik

(1) Träger öffentlicher Gewalt im Sinne des § 1 Absatz 2 Satz 1 gestalten ihre Internetauftritte und -angebote sowie die von ihnen zur Verfügung gestellten grafischen Programmoberflächen, einschließlich Apps und sonstiger Anwendungen für mobile Endgeräte, die mit Mitteln der Informationstechnik dargestellt werden, nach Maßgabe der nach Satz 2 zu erlassenden Verordnung schrittweise technisch so, dass sie von Menschen mit Behinderungen grundsätzlich uneingeschränkt genutzt werden können. Das Bundesministerium für Arbeit und Soziales bestimmt durch Rechtsverordnung, die nicht der Zustimmung des Bundesrates bedarf, nach Maßgabe der technischen, finanziellen und verwaltungsorganisatorischen Möglichkeiten

die in den Geltungsbereich der Verordnung einzubeziehenden Gruppen von Menschen mit Behinderungen,

die anzuwendenden technischen Standards sowie den Zeitpunkt ihrer verbindlichen Anwendung,

die zu gestaltenden Bereiche und Arten amtlicher Informationen.

(2) Träger öffentlicher Gewalt im Sinne des § 1 Absatz 2 Satz 1 gestalten ihre allgemeinen, für die Beschäftigten bestimmten Informationsangebote im Intranet sowie ihre elektronisch unterstützten Verwaltungsabläufe, einschließlich Verfahren zur elektronischen Vorgangsbearbeitung und elektronischen Aktenführung, schrittweise barrierefrei. Hierzu ist die Barrierefreiheit entsprechend den allgemein anerkannten Regeln der Technik, insbesondere bei Neuanschaffungen, Erweiterungen und Überarbeitungen, bereits bei der Planung, Entwicklung, Ausschreibung und Beschaffung zu berücksichtigen. Von dem Gebot der barrierefreien Gestaltung kann abgesehen werden, wenn die barrierefreie Gestaltung unverhältnismäßigen technischen Aufwand erfordert. Die Regelungen zur behinderungsgerechten Einrichtung und Unterhaltung der Arbeitsstätten zu Gunsten von Menschen mit Behinderungen in anderen Rechtsvorschriften, insbesondere im Neunten Buch Sozialgesetzbuch, bleiben unberührt. Die obersten Bundesbehörden erstellen bis zum 30. Juni 2021 Berichte über den Stand der Barrierefreiheit der Informationsangebote und Verwaltungsabläufe nach Satz 1 und verbindliche und überprüfbare Maßnahmen- und Zeitpläne zum weiteren Abbau von Barrieren.

(3) Die Bundesregierung wirkt darauf hin, dass auch gewerbsmäßige Anbieter von Internetseiten sowie von grafischen Programmoberflächen, die mit Mitteln der Informationstechnik dargestellt werden, durch Zielvereinbarungen nach § 5 ihre Produkte entsprechend den technischen Standards nach Absatz 1 gestalten.

Anmerkung zum Paragraph 12 von Markus Lemcke: Träger öffentlicher Gewalt sind Behörden, Hochschulen und Universitäten. In Absatz 1 werden Träger öffentlicher Gewalt dazu verpflichtet Webseiten, Programme und jetzt sogar Apps barrierefrei zu programmieren. In Absatz 2 werden Träger öffentlicher Gewalt dazu verpflichtet, ihr Intranet und andere Abläufe barrierefrei zu gestalten. Ein Intranet ist ein Netzwerk von Computern, dass nicht öffentlich zugänglich ist, unabhängig vom öffentlichen Netz benutzt werden kann und andere, zusätzliche oder eingeschränkte Funktionen bietet.

Absatz 3 bedeutet auf gut deutsch, dass die Bundesregierung zu feige ist, Unternehmer dazu verpflichten ihre Webseiten, Programme und Apps barrierefrei zu gestalten.

Im obigen Paragraph ist von „grafischen Programmoberflächen“ die Rede. Damit ist Software gemeint.

Barrierefreie Softwareentwicklung – Definition

Barrierefreie Software-Entwicklung bedeutet, es entsteht eine Software, die für Menschen mit unterschiedlichen Behinderungsarten bedienbar ist. Die Zielgruppe für barrierefreie Software-Entwicklung sind Menschen mit Behinderungen. Aber auch Menschen im fortgeschrittenen Alter können körperliche Einschränkungen bekommen, bei denen eine barrierefrei entwickelte Software sehr hilfreich ist.

Richtlinien zur barrierefreien Softwareentwicklung mit Java

Damit eine Software barrierefrei entwickelt werden kann, werden Kriterien benötigt. Diese Kriterien werden in Richtlinien zusammengefasst. Zur barrierefreien Softwareentwicklung mit Java gibt es Richtlinien von Oracle, dem Unternehmen, welches Java entwickelt. Das Unternehmen IBM hat auch Richtlinien, die sich auf die Programmiersprache Java beziehen.

Wenn ich in Sachen Barrierefreiheit bei Java Kunden berate, nehme ich immer die Richtlinien von Oracle. Grundsätzlich nehme ich immer Richtlinien des Unternehmens, welches auch die Programmiersprache entwickelt hat. Leider gibt es bei der barrierefreien Softwareentwicklung noch immer keine Allgemein gültigen Richtlinien, so wie es bei “barrierefreies Webdesign” der Fall ist.

Wie arbeiten Blinde und Sehbehinderte am Computer?

Die größte Herausforderung der barrierefreien Software-Entwicklung ist es, eine Software so zu entwickeln, damit Blinde und Sehbehinderte mit ihr arbeiten können. Deswegen möchte ich erklären wie blinde und sehbehinderte Menschen am Computer arbeiten. Sie, lieber Leser, können ein kleines Experiment machen: Schließen Sie die Augen und versuchen den Mauszeiger zur rechten oberen Ecke des Programmfensters zu bewegen. Na, hat es geklappt? Nein, natürlich nicht. Das ist der Grund warum Blinde und auch sehr viele Menschen mit einer Sehbehinderung den kompletten Computer mit der Tastatur bedienen. Das bedeutet, Software welche von Blinden und Sehbehinderten bedient werden soll, muss komplett per Tastatur bedienbar sein.

Doch wie bekommen Blinde mit, was auf dem Bildschirm zu sehen ist? Sie haben eine Software, die sich „Screenreader“ nennt, auf deutsch „Bildschirmleser“. Wie der Name verrät: die Software kann nur lesen. Das bedeutet, dass eine Programmoberfläche Texte enthalten muss, welche die Programmoberfläche beschreiben. Der Screenreader kann diese hinterlegten Texte vorlesen oder an eine Braillezeile schicken. Die Braillezeile ist ein Computer-Ausgabegerät, welches den gelesenen Text in Blindenschrift, genannt Brailleschrift, darstellt. Die Buchstaben werden mit Stößel dargestellt, die aus einer Fläche herausragen. Diese Stößel können mit den Fingerkuppen ertastet werden.

Wenn Sie Lust haben Ihre Software mit einem Screenreader zu testen, dann können Sie den kostenlosen Screenreader NVDA http://www.nvaccess.org/download/ herunterladen.

Welche Anforderungen muss die Programmiersprache Java erfüllen, damit barrierefreie Software entwickelt werden kann?

In diesem Abschnitt möchte ich erklären, welche Anforderungen die Programmiersprache Java erfüllen muss, damit mit ihr barrierefreie Software entwickelt werden kann.

Es gibt Menschen mit unterschiedlichen Behinderungsarten, die in den Einstellungen des Betriebssystems Windows Anpassungen vornehmen, damit sie besser mit dem Computer arbeiten können.

Menschen mit einer Sehbehinderung stellen große Systemschrift ein, bei Einstellungen → Bildschirm. Nach dieser Änderung werden alle Schriften im Betriebssystem größer dargestellt.

Windows Einstellungen Bildschirm
Windows Einstellungen Bildschirm

Menschen mit einer Farbsehschwäche oder einer starken Sehbehinderung haben den Wunsch, einen höheren Farbkontrast einzustellen. Dies kann im Betriebssystem Windows in Einstellungen → Erleichterte Bedienung → Hoher Kontrast erreicht werden. Nach dieser Einstellung ist in der ganzen Oberfläche ein hoher Farbkontrast vorhanden.

Windows Einstellungen Kontrast
Windows Einstellungen Kontrast

Die Sache hat nur einen Haken; was nützen diese ganzen Systemeinstellungen, wenn die Software diese Einstellungen nicht übernimmt? Hier kommt die gute Nachricht: Die Programmiersprache Java kann das. Es gibt eine bestimmte Java-Befehlszeile, die dafür sorgt, dass Einstellungen des Betriebssystems übernommen werden. Wie das konkret funktioniert, erkläre ich im dritten Artikel. Wir halten fest: Die Programmiersprache Java ist in der Lage, Einstellungen des Betriebssystems zu übernehmen.

Damit blinde Menschen, mit Hilfe des Screenreaders, erfahren, wie eine Programmoberfläche beschaffen ist, müssen in dieser Texte hinterlegt sein, welche sie beschreiben.

Die Swing-Komponenten besitzen Eigenschaften, denen Texte zugewiesen werden können, welche dann vom Screenreader ausgelesen werden.

Damit der Screenreader diese Texte auslesen kann, wird eine Java Access Bridge benötigt. Was das genau ist, wie sie installiert und aktiviert wird und welche Barrieren es geben kann, erfahren Sie im zweiten Artikel.

Autor: Markus Lemcke
Link: www.marlem-software.de

Über Christian Ullenboom

Ich bin Christian Ullenboom und Autor der Bücher ›Java ist auch eine Insel. Einführung, Ausbildung, Praxis‹ und ›Java SE 8 Standard-Bibliothek. Das Handbuch für Java-Entwickler‹. Seit 1997 berate ich Unternehmen im Einsatz von Java. Sun ernannte mich 2005 zum ›Java-Champion‹.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.