Vision 2015: Barrierefreiheit in der Informatik – deutschlandweit

Im Jahr 2015 möchte ich die Barrierefreiheit in der Informatik ein großes Stück voran treiben. Was Barrierefreiheit in der Informatik bedeutet, und warum mir das so wichtig ist, erkläre ich in diesem Blogartikel.

Was ist Barrierefreiheit?

Zunächst möchte ich die allgemeine Definition von Wikipedia wiedergegeben:
Barrierefreiheit bezeichnet im deutschen Sprachgebrauch eine Gestaltung der baulichen Umwelt, sowie von Information und Kommunikation in der Weise, dass sie von Menschen mit Behinderung und von älteren Menschen in derselben Weise genutzt werden kann wie von Menschen ohne Behinderung.[1] Im außerdeutschen Sprachgebrauch wird dieser Zustand eher als „Zugänglichkeit“ (engl.: Accessibility, span.: Accesibilidad, frz.: Accessibilité) bezeichnet. Der im deutschen Sprachraum in diesem Zusammenhang kursierende Begriff „behindertengerecht“ wird zunehmend ungebräuchlich, da mit dieser Benennung keine umfassende Zugänglichkeit und Benutzbarkeit für alle Menschen bezeichnet wird.
Quelle: Wikipedia

Was bedeutet Barrierefreiheit in der Informatik?

Internetseiten, Programme, Iphones und Smartphones sollen so gestaltet sein, dass Menschen mit unterschiedlichen körperlichen und geistigen Einschränkungen diese uneingeschränkt bedienen können.

Barrierefreiheit in der Informatik – Das Gesetz

Im Jahr 2002 wurde ein Gleichstellungsgesetz erlassen, welches Benachteiligung von behinderten Menschen vermeiden soll. Da die Nutzung der Informatik ein wichtiger Bestandteil ist, damit behinderte Menschen am Leben teilnehmen können gibt es im oben genannten Gesetz folgenden Paragraphen:

§ 11 Barrierefreie Informationstechnik

(1) Träger öffentlicher Gewalt im Sinne des § 7 Abs. 1 Satz 1 gestalten ihre Internetauftritte und -angebote sowie die von ihnen zur Verfügung gestellten grafischen Programmoberflächen, die mit Mitteln der Informationstechnik dargestellt werden, nach Maßgabe der nach Satz 2 zu erlassenden Verordnung schrittweise technisch so, dass sie von behinderten Menschen 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

  1. die in den Geltungsbereich der Verordnung einzubeziehenden Gruppen behinderter Menschen,
  2. die anzuwendenden technischen Standards sowie den Zeitpunkt ihrer verbindlichen Anwendung,
  3. die zu gestaltenden Bereiche und Arten amtlicher Informationen.

(2) 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.

Quelle: Gesetz zur Gleichstellung behinderter Menschen (Behindertengleichstellungsgesetz – BGG)

Anmerkung von Markus

Weil das Gesetzesdeutsch etwas schwierig zu verstehen ist, möchte ich erklären was dieser Paragraph meint:
Staatliche Einrichtungen, also alle Behörden, sind dazu verpflichtet Ihre Webseiten und Programme so zu entwickeln, dass Menschen mit unterschiedlichen Behinderungen diese bedienen können. Es gibt also nun auch Barrierefreiheit in der Informatik, somit die Barrierefreie Informatik.

Barrierefreiheit in der Informatik – Die Zielgruppe

Aufgrund oben genannten Gesetz ist die wichtigste Zielgruppe Menschen mit Behinderungen. Sie meinen, dass lohnt sich nicht, weil es ja gar nicht so viel behinderte Menschen gibt? 2013 waren es 7,5 Millionen schwerbehinderte Menschen laut statistisches Bundesamt. Schwerbehinderung beginnt ab 50 Grad der Behinderung. Es gibt also Menschen die haben einen Grad der Behinderung unter 50. Also sind es insgesamt mehr wie 7,5 Millionen behinderte Menschen in Deutschland!
Nach dem dieses Gesetz in Kraft getreten ist, ging es langsam los. Plötzlich hat die Gesellschaft festgestellt, dass ältere Menschen aufgrund Ihres Alters auch körperliche Einschränkungen bekommen können und somit ebenso Interesse an Barrierefreiheit in der Informatik haben.
Es gibt aber noch eine Zielgruppe. Vorübergehend eingeschränkte Menschen! Sie wissen nicht was das für Menschen sind? Angenommen Sie brechen sich als Rechtshänder den rechten Arm. Plötzlich haben Sie ein ganz erhebliches „Handicap“, eine körperliche Einschränkung. Sie können keine Tastenkombinationen mit einer Hand drücken. Sie sind auf Barrierefreiheit angewiesen. Wenn Ihr Arm wieder gesund ist, sind Sie nicht mehr auf Barrierefreiheit angewiesen. Deswegen „vorübergehend eingeschränkt“!
Ich hoffe, dass Ihnen klar geworden ist, dass die Zielgruppe für Barrierefreiheit in der Informatik sehr groß ist!
Folgende Begriffe gehören zur Barrierefreien Informatik:

barrierefreies Webdesign

Wenn eine Webseite barrierefrei entwickelt ist, nennt sich das barrierefreies Webdesign. Die Webseite soll auf Menschen mit unterschiedlichen körperlichen oder geistigen Einschränkungen Rücksicht nehmen. Was das genau ist, können Sie in diesem Blogartikel lesen:
Barrierefreies Webdesign
Übrigens, Suchmaschinen lieben auch barrierefreie Webseiten!
Siehe Blogartikel „Sind barrierefreie Internetseiten auch bei Suchmaschinen beliebt?

barrierefreie Softwareentwicklung

Der Begriff „Software“ ist ein anderes Wort für „Programm“. Programme werden nicht mehr programmiert, sondern entwickelt. Deswegen heißt es inzwischen Softwareentwicklung.
Barrierefreie Softwareentwicklung bedeutet, dass Software so entwickelt wird, dass diese von Menschen mit körperlichen und geistigen Einschränkungen bedient werden kann. Näheres können Sie in diesem Blogartikel lesen:
Barrierefreie Softwareentwicklung / Software-Entwicklung – Was ist das?

Eingabehilfen / Bedienungshilfen

Eingabehilfen unterstützen Menschen mit körperlichen Einschränkungen bei der Bedienung von Computer, Webseiten, Software und Mobiltelefone. Inzwischen liest man auch gelegentlich Bedienungshilfen. Das ist nur ein anderes Wort, meint aber das Gleiche wie Eingabehilfen.
Genauer wird es in diesem Blogartikel erklärt:
Was sind Eingabehilfen?

Behindertensoftware

Behindertensoftware hilft ein bestimmtes Problem, eines Menschen mit Behinderung, zu lösen bei der Bedienung des Computers. Das Problem entsteht durch körperliche oder geistige Einschränkung bzw. Behinderung.
Genauer wird es in diesem Blogartikel erklärt:
Behindertensoftware / Behinderten Software – Was ist das?

Barrierefreie Apps

Barrierefreie Apps sind für Menschen mit unterschiedlichen Einschränkungen / Behinderungen bedienbar. Barrierefreie Apps müssen für Blinde, Sehbehinderte, Gehörlose und andere Menschen mit Behinderungsarten bedienbar sein.
Genauer wird es in diesem Blogartikel erklärt:
Barrierefreie Apps

Warum Unternehmen sich mit Barrierefreiheit in der Informatik beschäftigen sollten erfahren Sie in folgenden Blogartikeln:

Warum ist barrierefreie Software-Entwicklung für Software-Unternehmen wichtig?

Warum ist barrierefreies Webdesign für Unternehmen wichtig?

So, nun habe ich einen Überblick gegeben was alles zur Barrierefreiheit in der Informatik gehört.

Warum ist Barrierefreiheit in der Informatik für unsere Gesellschaft wichtig?
So bald Menschen körperliche oder geistige Einschränkungen oder dauerhafte Krankheiten haben, ist es für sie schwer am gesellschaftlichen Alltagsleben teil zu nehmen. Ausgrenzungen wegen Behinderung oder Krankheit ist im leistungsorientierten Deutschland an der Tagesordnung!
Oft werden Schwächen überwertet und Stärken nicht erkannt!
Menschen die stottern oder andere Probleme beim Sprechen haben wird oft nicht zugehört. Menschen die etwas langsamer arbeiten haben wenig Chancen einen Arbeitsplatz zu bekommen, trotz gutem Fachwissen.
Menschen die aufgrund einer Behinderung oder Krankheit nicht ohne fremde Hilfe das Haus verlassen können, sind nicht in der Lage einzukaufen oder andere Menschen kennen zu lernen.
Menschen mit Behinderung können keine Reisen ohne fremde Hilfe unternehmen.
Menschen die blind sind, haben es sehr schwer einen Arbeitsplatz zu finden.

Sie sitzen jetzt staunend da und fragen sich, was das mit Barrierefreiheit in der Informatik zu tun hat?
Apps können Menschen helfen zu sprechen in dem sie geschriebenen Text vorlesen. Spracheingabe kann Menschen helfen Texte zu schreiben die nicht tppen können mit ihren Händen. Menschen können von Zuhause aus einkaufen, wenn der Online-Shop barrierefrei ist. Mit Google Street View können Weltreisen im Internet gemacht werden.
Arbeitsplätze mit barrierefreier Software sorgen dafür, dass Menschen mit körperlichen Einschränkungen arbeiten können.
Wenn Webseiten und Software barrierefrei sind, können blinde Menschen mit einem Screenreader am Computer arbeiten.
Barrierefreiheit in der Informatik kann Schwächen ausgleichen! Das muss unsere Gesellschaft lernen: Schwächen können ausgeglichen werden! Es gibt keine Menschen die nur Schwächen haben! Behinderte und anders körperlich eingeschränkte Menschen haben auch Stärken!

Vision 2015: Barrierefreiheit in der Informatik – deutschlandweit

Eine Vision ist das innere Bild einer Vorstellung, meist auf die Zukunft bezogen. Ich habe auch ein „inneres Bild“! In meinem „Bild“ sehe ich eine Gesellschaft die sich wünscht, dass alle Menschen am Leben teil nehmen können. Ich sehe eine Gesellschaft die bei Menschen mit körperlichen Einschränkungen darüber nachdenkt, was zu tun ist, damit diese Menschen aktiv am Leben teilnehmen können. Ich sehe eine Gesellschaft die bei Menschen mit körperlichen Einschränkungen die Stärken sieht und nicht die Schwächen.
Ich sehe Webseitenprogrammierer die Spass daran haben ihre Webseiten barrierefrei zu entwickeln. Ich sehe Software-Entwickler die Spass daran haben ihre Software barrierefrei zu gestalten.
Ich sehe viele Hochschulen und Unis die sich freuen, dass ich Ihren Studenten die Barrierefreiheit in der Informatik erkläre.
Ja, Sie haben recht, da sind wir noch ein ganzes Stück davon entfernt. Aber diese Vision ist der Hauptgrund warum es mein Unternehmen Marlem-Software gibt!!!
Ich möchte in einer Gesellschaft leben die so mit körperlich eingeschränkten Menschen umgeht. Dafür bin ich auch bereit zu kämpfen!
Kämpfen Sie mit, lieber Blogleser?

Barrierefreie Software – Was ist das?

In diesem Artikel möchte ich erklären was eine barrierefreie Software ist und welcher Personenkreis barrierefreie Software benötigt.

Eine Barriere ist ein Hindernis. Barrierefrei bedeutet ohne Hindernisse. Eine barrierefreie Software, ist also eine Software ohne Hindernisse. Aber um welche Hindernisse geht es und Hindernisse für wen?

Menschen mit körperlichen oder geistigen Behinderungen haben besondere Einschränkungen. Damit Sie am gesellschaftlichen Leben teilnehmen können entstand der Gedanke der Barrierefreiheit. Gebäude dürfen keine Treppen haben, damit sie für Rollstuhlfahrer zugänglich sind, Treppen benötigen Geländer damit ältere und behinderte Menschen sie nutzen können.

Im IT(=EDV)-Bereich gibt es ebenfalls Barrieren = Hindernisse für Menschen mit unterschiedlichen Behinderungen.

Hier ein Youtube-Video von mir, welches barrierefreie Software entwickelt:

Barrierefreie Software = Software ohne Barrieren / Hindernisse

Damit Menschen mit Behinderungen eine Software bedienen können, darf die Software keine Barrieren behinhalten.

Barrierefreie Software – welche Barrieren gibt es?

Blinde Menschen können keine Computermaus bedienen, sie bedienen den kompletten Computer per Tastatur. Eine Software die nur mit einer Computermaus bedienbar ist, hat für Blinde Menschen eine Barriere!

Blinde Menschen lassen sich die Programmoberfläche vorlesen von einer Software die sich Screenreader nennt. Wenn bei Programmoberflächen keine Texte für den Screenreader hinterlegt sind, kann ein blinder Mensch die Software gar nicht bedienen.

Software die wichtige Informationen, z. B. Warnungen oder Fehlermeldungen, nur akustisch mitteilen haben eine Barriere mit welcher gehörlose Menschen Probleme haben. Eine Mail-Software die neue Mails nur per Stimme („Sie haben Post“) ankündigt ist für gehörlose Menschen nicht bedienbar.

Menschen mit einer Farbsehschwäche haben Probleme wenn zu wenig Farbkontrast zwischen Hintergrundfarbe und Schriftfarbe vorhanden ist. Dies sind nur einige Beispiele.

Barrierefreie Software – Gibt es Richtlinien?

Ja, es gibt leider 3 verschiedene Richtlinien:
Richtlinien zur barrierefreier Software-Entwicklung mit .net bzw. C#
Richtlinien zur barrierefreien Software-Entwicklung für Java von IBM
Richtlinien barrierefreie Software-Entwicklung für Java von Oracle

Barrierefreie Software ist eine Software die für alle Menschen unabhängig irgendwelche Einschränkungen bedienbar ist

Eine barrierefreie Software sollte für Menschen mit Körperbehinderung und bedingt auch für Menschen mit geistiger Behinderungen und Lernbehinderung bedienbar sein. Außerdem sollte eine barrierefreie Software auch von Menschen im fortgeschrittenen Alter bedienbar sein. Eine barrierefreie Software sollte von allen Menschen bedient werden können! Eine barrierefreie Software macht es allen Computernutzern einfach die Software zu bedienen!!!

LibreOffice ist barrierefrei

LibreOffice ist kostenlos und eine Alternative zu Microsoft Office. Obwohl LibreOffice kostenlos ist, ist es komplett barrierefrei, dass bedeutet, dass sogar Menschen die blind sind, mit LibreOffice arbeiten können.

LibreOffice ist ein Musterbeispiel wie ich mir eine barrierefreie Software vorstelle. In folgendem Bildschirmfoto sehen Sie welche Einstellungsmöglichkeiten LibreOffice für behinderte Menschen bietet:

Einstellungsdialog für Barrierefreiheit bei der Standardsoftware LibreOffice
Im markierten Register „Barrierefreiheit“ können Menschen mit Behinderungen die Software an ihre Bedürfnisse anpassen.

Mit „Unterstützung behindertengerechter Zugangsprogramme“ sind Screenreader gemeint. LibreOffice ist eine barrierefreie Standardsoftware !

Barrierefreie Software Testen

Wenn Sie wissen möchten ob eine Software eine barrierefreie Software ist, muss dies getestet werden. Barrierefreie Software Testen ist sehr Zeitaufwendig, weil es kein automatisiertes Testverfahren gibt. Eine Software muss anhand von Richtlinien getestet werden, ob es eine barrierefreie Software ist. Auch wenn es sehr arbeitsintensiv ist, es ist meine Lieblingstätigkeit! Wenn Sie also wissen möchten ob Ihre Software barrierefrei ist, dann lassen Sie mich Ihre Software testen.

Wenn Sie wissen möchte wie barrierefreie Software entsteht, dann lesen Sie folgenden Artikel: Barrierefreie Softwareentwicklung – Was ist das?

Bei Fragen zu barrierefreie Software dürfen Sie mich gerne anrufen: 07121/504458 oder schreiben Sie eine Mail an: info@marlem-software.de . 

Richtlinien zur barrierefreien Software-Entwicklung für Java von IBM

In diesem Blogartikel werden die Richtlinien zur barrierefreien Software-Entwicklung für Java von IBM wiedergeben. Und erklärt. Es handelt sich hierbei um die Version 3.6 .
 

1. Tastaturbedienbarkeit

1.1 Alle Softwarefunktionen müssen auch ohne Maus, also nur per Tastatur ausführbar sein

Erklärung:
Blinde und einige Sehbehinderte können keine Maus bedienen, weil zum positionieren des Mauszeigers die Fähigkeit zu sehen unbedingt notwendig ist. Deswegen bedienen diese Menschen den kompletten Computer mit der Tastatur. Dies kann nur geschehen, wenn auch die Software komplett per Tastatur bedienbar ist.
Ein zweiter Grund ist, dass es Menschen mit einer starken Einschränkung an der Hand gibt, für die es nicht möglich ist eine Computermaus zu bedienen, sehr wohl aber eine Tastatur.

1.2 Es darf keine Konflikte geben zwischen Ihrer Software und der Tastatureingabehilfen des Betriebssystems

Erklärung:
Im Betriebssystem Windows gibt es Eingabehilfen für behinderte Menschen. Diese helfen zum Beispiel mehrere Tasten gleichzeitig mit einer Hand zu drücken oder die Drucksensibilität von Tasten zu verändern. Zwischen diesen Eingabehilfen und Ihrer Software darf es keine Konflikte geben. Sie dürfen in Ihrer Software keine Tastenkürzel verwenden die vom Betriebssystem für Eingabehilfen (https://www.marlem-software.de/marlemblog/2010/12/28/was-sind-eingabehilfen/ ) reserviert sind.

 

2. Informationen über Objekte

2.1 Bieten Sie eine optische Fokusanzeige an, die den Änderungen des Eingabefokus zwischen den interaktiven Objekten folgt. Diese Fokusanzeige muß programmtechnisch für die assistive Technik zugänglich sein.

Erklärung:
Sehbehinderte haben oft Probleme zu erkennen welches Bedienelement gerade den Fokus hat. Deswegen sollten Sie dafür sorgen, dass der Fokus gut sichtbar ist. Desweiteren muss gewährleistet sein, dass der Screenreader ( https://www.marlem-software.de/marlemblog/2010/02/09/was-ist-ein-screenreader/ ) die Position des Fokus kennt.

2.2 Liefern Sie semantische Informationen über Objekte der Benutzerschnittstelle. Wenn ein Programmelement aus einem Bild besteht, dann muss die Information, die durch das Bild transportiert wird, auch als Text verfügbar sein.

Erklärung:
Der Screenreader von Blinden benötigt Informationen welches Objekt den Fokus hat und welche „Rolle“ das Objekt hat. Der Screenreader muss zum Beispiel wissen, dass ein Optionsfeld aktiv ist und welche „Option“ ausgewählt ist.

2.3 Beschriften Sie Bedienelemente, Objekte, Icons und Bilder. Wenn ein Bild zur Kennzeichnung von Programmelementen benutzt wird, muss die Bedeutung des Bildes in der gesamten Applikation einheitlich sein.

Erklärung:
Für Screenreader ist es wichtig, dass Objekte wie z. B. Icon-Name, Fenstertitel oder Eingabefelder Beschriftungen haben. Damit diese Beschriftungen für Screenreader und andere Eingabehilfen verfügbar sind, müssen Sie programmtechnisch mit einem Objekt verbunden sein. Ansonsten bekommt der Screenreader Probleme bei der Zuordnung von Objekten und Beschriftungen.

2.4 Wenn elektronische Formulare in der Software benutzt werden, sollten die Formulare den Menschen, die assistive Technik benutzen, erlauben, auf die Informationen, Feldelemente und Funktionen zuzugreifen, die zum Ausfüllen und zur Abgabe des Formulars, einschließlich aller Anweisungen und Hinweise, notwendig sind.

Erklärung:
Elektronische Formulare müssen für Screenreader zugänglich sein. Hierfür ist es wichtig, dass die Formulare und Bedienelemente sachgerecht Kodiert werden.

 

3. Sound und Multimedia

3.1 Bieten Sie eine Option, um Audio-Warnmeldungen visuell anzuzeigen.

Erklärung:
Gehörlose Menschen können Töne gar nicht wahrnehmen und schwerhörige Menschen nur sehr begrenzt. Damit diese Personen Töne(Informations- oder Warnsignale) wahrnehmen können müssen diese visuell durch ein Meldungsfenster oder einer Statusinformation angezeigt werden.

3.2 Bieten Sie zugängliche Alternativen für wichtige Audio- und Videosequenzen.

Erklärung:
Für Gehörlose und Schwerhörige sind Hörbeiträge (=Audio) oder Videos mit Ton nicht wahrnehmbar. Deswegen sollte in einer Software immer eine Alternative zur Audio oder Videowiedergabe geben. Am besten eignet sich hierfür Text der bei Videos auch in Form eines Untertitels bereitgestellt werden.

3.3 Bieten Sie eine Option zum Einstellen der Lautstärke

Erklärung:
Schwerhörige müssen den Ton lauter stellen wie nicht Schwerhörige. Blinde und Sehbehinderte sind auf Audiowiedergabe angewiesen und müssen deswegen die Lautstärke regulieren können um andere Geräusche im Umfeld übertönen zu können.

 

4 Anzeige

4.1 Erzeugen Sie Text durch normale Systemfunktionsaufrufe oder einer API (Schnittstelle für Anwendungsprogrammierung), die die Interaktion mit assistiver Technik unterstützen.

Erklärung:
Screenreader können nur systemgestützte Zeichenoperationen wahrnehmen. Wenn Text nicht standardmäßig dargestellt wird, kann der Screenreader diese Informationen nicht an den Benutzer weitergeben.

4.2 Benutzen Sie Farbe als eine Ergänzung und nicht ausschließlich, um Informationen zu übermitteln oder Aktionen anzuzeigen.

Erklärung:
Grundsätzlich kann Farbe ein wichtiges Hilfsmittel sein um Informationen besser darzustellen. Sie sollten es vermeiden Farbe als wesentliches Merkmal einzusetzen. Menschen mit einer Farbfehlsichtigkeit ( http://de.wikipedia.org/wiki/Farbfehlsichtigkeit )haben große Probleme Farben zu erkennen und zu unterscheiden. Es ist zum Beispiel nicht sinnvoll einen Benutzer dazu aufzufordern einen „grünen“ Schalter anzuklicken wenn dieser grün und braun nicht unterscheiden kann. Deswegen sollten Sie den Schalter beschriften mit „Übernehmen“.

4.3 Unterstützen Sie Einstellungen für starken Kontrast für alle Bedienelemente des Benutzerinterfaces und Client-Bereiches.

Erklärung:
Die Verwendung von bestimmten Farben ist oft kritisch. Farbfehlsichtige und Sehbehinderte können damit ein Problem haben. Sie benötigen einen hohen Kontrast zwischen Hintergrundfarbe und Schriftfarbe. Im Betriebssystem Windows in der Systemsteurung kann der Farbkontrast eingestellt werden. Deswegen muss eine Software in der Lage sein, diese Farbeinstellungen zu übernehmen, sonst hilft es der oben genannten Personengruppe nicht, dass der Kontrast im Betriebssystem anpasspar ist.

4.4 Wenn kundenspezifische Farbanpassung durch das Programm unterstützt wird, bieten Sie vielfältige Farbeinstellungsmöglichkeiten, damit mehrere Kontrastniveaus erzeugt werden können.

Erklärung:
Farbfehlsichtigkeit und Sehbinderungen können sich sehr unterschiedlich auswirken. Deswegen sollten die Möglichkeiten der Farbeinstellungen sehr individuell gehalten werden.

4.5 Übernehmen Sie die Systemeinstellungen für Schriftart, Größe und Farbe für alle Steuerelemente der Benutzerschnittstelle.

Erklärung:
Menschen mit einer Sehbehinderung benötigen eine größere Schrift. Im Betriebssystem Windows kann die Systemschriftgröße eingestellt werden. Deswegen sollten Beschriftungen von Eingabefelder und Schalter und die Eingabefelder selbst diese Schriftgröße übernehmen.

4.6 Bieten Sie eine Option an, die Animationen in einer nicht animierten Form darstellt.

Erklärung:
Animierte Informationen sind für Blinde nicht wahrnehmbar. Stellen Sie sicher, dass Animationen angehalten werden können. Desweiteren sollten Sie die in der Animation übermitteten Informationen alternativ, zum Beispiel als Text, bereitstellen.

 

5 Timing

5.1 Bieten Sie die Möglichkeit, die Reaktionszeit auf zeitlich begrenzte Hinweise einzustellen oder ermöglichen Sie den Verbleib des Hinweises.

Erklärung:
Menschen die eine Einschränkung in der Bewegung der Arme oder Hände haben, können oft nur sehr langsam auf Ereignisse oder Hinweise reagieren. Deswegen sollte die Zeitspanne, wie lange ein Hinweis angezeigt wird, einstellbar sein.

5.2 Verwenden Sie keine leuchtende oder blinkende Texte, Objekte oder andere Elemente mit einem Blitz oder blink Frequenz größer als 2 Hz und kleiner als 55 Hz.

Erklärung:
Anzeigen, die flackern oder blinken, können bei empfänglichen Menschen epileptische Anfälle auslösen, besonders wenn das Blinken eine hohe Intensität in einem Frequenzbereich zwischen 2 Hz und 55 Hz hat. Das schließt blinkenden Text, das Ein- und Ausschalten von Grafik oder das Wechseln zwischen unterschiedlichen Bildern ein.

Das sind die Richtlinien zur barrierefreien Software-Entwicklung für Java von IBM.

barrierefreie Programme, barrierefreie Anwendungen, barrierefreie Software mit Java und C# / .net

In diesem Blogartikel geht es noch mal um barrierefreie Programme, barrierefreie Anwendungen, barrierefreie Software und warum die Programmiersprachen Java und C# / .net sich hierfür sehr gut eignen.

Was bedeutet barrierefreie Programme, Anwendungen und Software? Die Begriffe Programm, Anwendung und Software meinen das gleiche. Ich gebe hier die Wikipedia-Definition von Computerprogramm wieder:

Ein Computerprogramm oder kurz Programm ist eine Folge von den Regeln einer bestimmten Programmiersprache genügenden Anweisungen (bestehend aus Deklarationen und Instruktionen), um auf einem Computer eine bestimmte Funktionalität, Aufgaben- oder Problemstellung bearbeiten/lösen zu können.

Ein Programm / eine Anwendung / eine Software ist barrierefrei wenn sie auf die Einschränkungen von Menschen mit unterschiedlichen Behinderungen Rücksicht nimmt.
Zunächst möchte ich die Frage klären, welche Voraussetzungen eine Programmiersprache haben muss damit mit Ihr barrierefreie Programme bzw. barrierefreie Anwendungen bzw. barrierefreie Software entwickeln kann.

Die schwierigste Herausforderung ist, dass eine Software für Blinde und Sehbehinderte bedienbar ist. Hierfür muss eine Programmoberfläche Informationen für Screenreader bereitstellen. In Deutschland leben ca. 155 000 blinde und etwa eine halbe Million sehbehinderte Menschen. Die Programmiersprache Java, hier die Swing-Komponenten, und die Programmiersprache C# bieten die Möglichkeit Beschreibungstexte der Programmoberflächen für Screenreader zu hinterlegen.

Damit die Programmoberfläche mit dem Screenreader und sonstigen Eingabehilfen kommunizieren kann bedarf es ein Schnittstelle. Früher war es bei Windows /.net die Microsoft Active Accessibility abgekürzt, MSAA. Microsoft hat die Schnittstelle umbenannt und verbessert. Jetzt heißt sie „Benutzeroberflächenautomatisierung und Microsoft Active Accessibility“.

Bei der Programmiersprache Java heißt die Schnittstelle „Java Access Bridge“. Sie ist von Haus aus nicht bei Windows dabei, sondern muss erst installiert werden. Die Installation war bisher sehr abenteuerlich. Seit der Java Runtime Environment 7 wird die Java Access Bridge mit installiert. Allerdings muss sie nach der Installation noch aktiviert werden. Ich werde in Kürze einen extra Artikel über die Java Access Bridge schreiben.

Ein weiteres wichtiges Kriterium für barrierefreie Programme, barrierefreie Anwendungen und barrierefreie Software ist das übernehmen von Systemeinstellungen. Sehbehinderte ändern unter Umständen die Größe der Systemschrift. Diese Änderungen muss von einem barrierefreien Programm übernommen werden. Auch hier bieten die Programmiersprachen Java und C# Möglichkeiten.

Die Firmen IBM, Oracle und Microsoft haben Richtlinien entwickelt, welche Kriterien eine Anwendung erfüllen muss, damit sie als barrierefrei bezeichnet wird. Diese Richtlinien werde ich auch noch auf diesem Blog veröffentlichen.

Barrierefreie Softwareentwicklung – Was ist das?

Da ich gerade einen Auftrag habe, bei dem ich mit der Programmiersprache Java eine Software entwickle und auf Barrierefreiheit prüfen darf, möchte ich in diesem Artikel noch einmal erklären, was barrierefreie Software-Entwicklung ist.

Weiße Tastatur mit einer grünen Accessibility-Taste anstelle von der Enter-Taste
Eine barrierefreie Software-Entwicklung ist wichtig und wird in Zukunft noch weiter an Bedeutung gewinnen. Bildquelle: alphaspirit – 326816450 / Shutterstock.com

Barrierefreiheit heißt auf Englisch Accessibility. Der Begriff Accessibility gefällt mir eigentlich viel besser als Barrierefreiheit. Accessibility wird mit „Zugänglichkeit“ übersetzt. Accessibility bei Software bedeutet also Zugänglichkeit für Menschen mit Behinderung. Dennoch hat sich in Deutschland das Wort Barrierefreiheit etabliert und nicht Zugänglichkeit. Es wird also von Barrierefreiheit bei Software bzw. Programmen und Seiten im Web gesprochen.

Barrierefreie Softwareentwicklung – Die gesetzliche Grundlage

Im Mai 2002 trat ein Gesetz in Kraft, welches die Benachteiligung von Personen mit Behinderungen verhindern soll, das “Gesetz zur Gleichstellungbehinderter Menschen (Behindertengleichstellungsgesetz – BGG)”. In diesemGesetz gibt es einen “§ 12 Barrierefreie Informationstechnik” in dem Folgendes steht:

§ 12a Barrierefreie Informationstechnik

(1) Öffentliche Stellen des Bundes gestalten ihre Websites und mobilen Anwendungen, einschließlich der für die Beschäftigten bestimmten Angebote im Intranet, barrierefrei. Schrittweise, spätestens bis zum 23. Juni 2021, gestalten sie ihre elektronisch unterstützten Verwaltungsabläufe, einschließlich ihrer Verfahren zur elektronischen Vorgangsbearbeitung und elektronischen Aktenführung, barrierefrei. Die grafischen Programmoberflächen sind von der barrierefreien Gestaltung umfasst.
(2) Die barrierefreie Gestaltung erfolgt nach Maßgabe der aufgrund des § 12d zu erlassenden Verordnung. Soweit diese Verordnung keine Vorgaben enthält, erfolgt die barrierefreie Gestaltung nach den anerkannten Regeln der Technik.
(3) Insbesondere bei Neuanschaffungen, Erweiterungen und Überarbeitungen ist die barrierefreie Gestaltung bereits bei der Planung, Entwicklung, Ausschreibung und Beschaffung zu berücksichtigen.
(4) Unberührt bleiben die Regelungen zur behinderungsgerechten Einrichtung und Unterhaltung der Arbeitsstätten zugunsten von Menschen mit Behinderungen in anderen Rechtsvorschriften, insbesondere im Neunten Buch Sozialgesetzbuch.
(5) Die Pflichten aus Abschnitt 2a gelten nicht für Websites und mobile Anwendungen jener öffentlichen Stellen des Bundes nach § 12 Satz 1 Nummer 2 und 3, die keine für die Öffentlichkeit wesentlichen Dienstleistungen oder speziell auf die Bedürfnisse von Menschen mit Behinderungen ausgerichtete oder für diese konzipierte Dienstleistungen anbieten.
(6) Von der barrierefreien Gestaltung können öffentliche Stellen des Bundes ausnahmsweise absehen, soweit sie durch eine barrierefreie Gestaltung unverhältnismäßig belastet würden.
(7) Der Bund wirkt darauf hin, dass gewerbsmäßige Anbieter von Websites sowie von grafischen Programmoberflächen und mobilen Anwendungen, die mit Mitteln der Informationstechnik dargestellt werden, aufgrund von Zielvereinbarungen nach § 5 Absatz 2 ihre Produkte so gestalten, dass sie barrierefrei genutzt werden können.
(8) Angebote öffentlicher Stellen im Internet, die auf Websites Dritter veröffentlicht werden, sind soweit möglich barrierefrei zu gestalten.

Anmerkung von Markus

Im Klartext steht da, dass Behörden dazu verpflichtet sind, ihre Webseiten und Software so zu gestalten dass diese für Menschen mit unterschiedlichen Behinderungen bedienbar sind. Dieses Gesetz war also die Geburtsstunde der Barrierefreiheit in der Informationstechnik und der barrierefreien Softwareentwicklung! Was noch wichtig zu erwähnen ist: Die Barrierefreiheit soll UNEINGESCHRÄNKT sein. Uneingeschränkt bedeutet komplette Barrierefreiheit und nicht nur ein bisschen Barrierefreiheit! Hieran sollten sich Entwickler halten.
Technische Vorgaben schreibt das Gesetz jedoch nicht vor. Es beschränkt sich auf die Definition der Ziele und der Bereiche, in denen das Gesetz Anwendung findet.

Barrierefreie Software hat nicht nur Vorteile für Menschen mit Behinderungen, sondern auch für andere Benutzergruppen. Daher kann es auch für Unternehmen sinnvoll sein, barrierefreie Software zu nutzen und auch zu entwickeln. Gesetzlich ist dies allerdings nicht vorgeschrieben. Der Paragraph 12 des BGG gibt dies nur für „Träger öffentlicher Gewalt“ vor. Eine innerbetriebliche Barrierefreiheit in der Informationstechnologie ermöglicht jedoch die Bearbeitung von Aufgabenfeldern für beeinträchtigte Menschen und führt damit zur Inklusion von Behinderten. Zum anderen erhöht eine barrierefreie Software für so gut wie alle Nutzer die Accessibility und gleichzeitig auch die Usability/Benutzerfreundlichkeit. Das kann sich auch positiv auf den Umsatz auswirken, da eine benutzerfreundliche Software bzw. Oberfläche von den Menschen gerne häufiger genutzt wird.

Was ist barrierefreie Softwareentwicklung / Software-Entwicklung?

Software wird programmiert mit einer, manchmal auch mehrerer, Programmiersprachen. Der Begriff “Programmierung” ist etwas außer Mode gekommen. Es ist aber nicht falsch den Begriff „barrierefreie Programmierung“ zu verwenden. Software wird heute nicht mehr programmiert, sondern entwickelt. Deswegen wird der Entstehungsprozess einer Software als “Software-Entwicklung” bezeichnet.
Barrierefreie Software-Entwicklung bedeutet, es entsteht eine Software die für Menschen mit unterschiedlichen Behinderungsarten bedienbar ist. Die Zielgruppe für barrierefreie Softwareentwicklung sind Menschen mit Behinderungen und zum Teil Menschen im fortgeschrittenen Alter. Welche Barrieren können bei Software auftreten?

Barrierefreie Softwareentwicklung – welche Barrieren gibt es?

Die Barrieren sind mit bestimmten körperlichen Behinderungsarten verknüpft. Für Blinde, die den Mauszeiger nicht sehen können, ist eine Software die sich nur per Maus bedienen lässt, eine unüberbrückbare Barriere.
Ebenso ist es für Blinde eine unüberbrückbare Barriere, wenn eine Software keine Informationen an das Bildschirmleseprogramm, Screenreader genannt, übermittelt. Ohne Screenreader könnten Blinde nicht am Computer und an der Tastatur arbeiten. Fehlende Barrierefreiheit / Accessibility bei einer Anwendung, bedeutet, dass Blinde mit dieser Anwendung nicht arbeiten können. Die bekanntesten Screenreader heißen NVDA und JAWS.
Für Menschen mit einer Farbfehlsichtigkeit, besser bekannt als Farbenblindheit, ist zu wenig Kontrast zwischen Schriftfarbe und Hintergrundfarbe eine unüberbrückbare Barriere. Für Menschen welche behinderungsbedingt eine Software nur mit einer Hand bedienen können, sind bestimmte Tastenkombinationen Barrieren.

Für Sehbehinderte und auch einige ältere Nutzer ist eine vergrößerbare Schrift sehr wichtig. In der Systemsteuerung kann die Schriftgröße angepasst werden. Dies hilft aber nur, wenn die Software in der Lage ist, diese angepasste Schrift zu übernehmen.
Für Menschen die, behinderungsbedingt, nur mit einer Hand einen Computer bedienen können, sind Tastenkombinationen eine unüberbrückbare Barriere.
Für Gehörlose ist eine unüberbrückbare Barriere, wenn eine Software eine wichtige Information nur über Ton übermittelt. Ein Mailprogramm, welches per Ton mitteilt “Sie haben Post!”, aber die neuen Mails optisch nicht kennzeichnet, wäre für Gehörlose nicht bedienbar! Für Gehörlose ist es wichtig, dass in Anwendungen, hörbare Informationen auch als Text bereitgestellt werden. Dies sind einige Beispiele! Barrierefreie Software nimmt auf all diese Kriterien Rücksicht und stellt Herausforderungen an den Entwickler.

Barrierefreie Softwareentwicklung – wer ist die Zielgruppe?

Barrierefreie Software-Entwicklung nimmt auf diese unterschiedlichen Bedürfnisse von Menschen mit verschiedenen Behinderungen Rücksicht. Zunächst geht es hauptsächlich um Personen mit einer Körperbehinderung.
Aber auch Nutzer ohne Behinderung können “vorübergehend” von einer körperlichen Einschränkung heimgesucht werden. Stellen Sie sich vor, Sie sind Rechtshänder und brechen sich den rechten Arm. Plötzlich müssen Sie den Computer mit der linken Hand bedienen. Zum Drücken der Tastenkombinationen haben Sie plötzlich keine zweite Hand mehr! Jetzt würden Sie davon profitieren, wenn die Software, mit der Sie täglich arbeiten, barrierefrei wäre.
Lohnt sich barrierefreie Software-Entwicklung? Dazu empfehle ich diesen Link
Fast 10 Millionen behinderte Menschen in Deutschland.

Barrierefreie Zugänge für Menschen mit Behinderungen oder anderer Einschränkungen

Barrierefreie Software-Entwicklung hilft ebenso älteren Menschen bei der Bedienung von Software. Im fortgeschrittenen Alter können körperliche Einschränkungen erscheinen, die einer Behinderung sehr ähnlich sind! Barrierefreie Software-Entwicklung betrifft also nicht nur Menschen mit Behinderung!

Es gibt also verschiedene Gruppen, die von solch einem vereinfachten Zugang zur Informationstechnologie profitieren:

  • Menschen mit Behinderungen
  • Ältere Menschen
  • Menschen mit einer anderen Muttersprache
  • Menschen, die selten Software nutzen
  • Webcrawler

Der demographische Wandel verändert die Altersstruktur in Deutschland insofern, dass der Anteil der älteren Menschen ansteigt. Der Einsatz barrierefreier Software wird daher auch langfristig immer wichtiger, da Menschen im fortgeschrittenen Alter vor allem körperliche Einschränkungen wie Sehschwächen erfahren. Eine höhere Lebenserwartung und ein höheres Renteneintrittsalter haben dabei zur Folge, dass die Menschen länger arbeiten müssen und werden. In Kombination mit der technologischen Entwicklung heißt das, dass mehr ältere Menschen Software bedienen müssen.

Unternehmen benötigen barrierefreie Software für ihre Mitarbeiter

Auch hier ist es für Unternehmen wichtig, barrierefreie Software zur Verfügung zu stellen. Hinzu kommt, dass die Kundengruppe der älteren Personen deutlich größer wird, auch weil in Zukunft ältere Menschen häufiger als heute Software verwenden werden. Somit ist es auch für Unternehmen ratsam, die Augen nicht vor barrierefreier Software zu verschließen. Das gilt sowohl unternehmensintern bei der Nutzung von Software als auch bei der Entwicklung von Software, die veräußert werden soll.

Fremdsprachige Personen können von barrierefreie Softwareentwicklung profitieren

Eine barrierefreie Software kommt derweil auch Personengruppen zugute, die eine andere Muttersprache haben als die Sprache, die die Programme und Oberflächen anzeigen. Das Textverständnis ist hier logischerweise nicht so gut ausgeprägt und Barrierefreiheit kann auch bei dieser Personengruppe den Zugang zur Funktionalität der Software vereinfachen. In erster Linie ist dies für Behörden sinnvoll und erleichtert die „Abfertigung“, aber auch Unternehmen, die international agieren, profitieren davon. Das gilt erneut unternehmensintern, weil eine einheitliche Software an verschiedenen internationalen Standorten verwendet werden kann. Aber auch die Kundenbeziehungen können einen Nutzen erfahren: Der Zugang der Kunden auf einem Markt mit einer anderen Sprache wird vereinfacht.

Barrierefreie Softwareentwicklung hilft Menschen, die selten mit digitalen Technologien zu tun haben

Barrierefreie Software hilft, insgesamt betrachtet, allen Menschen. Software kann durchaus dafür sorgen, dass Nutzer vor Probleme gestellt werden, wenn sie kompliziert zu bedienen ist und nicht auf verschiedene Ein- sowie Ausgabemöglichkeiten zugreifen kann. Das kommt auch den Personen zugute, die nicht so häufig mit digitalen Technologien konfrontiert sind. Schon das Ziehen einer Nummer beim Amt kann Menschen vor Probleme stellen, da sie nicht mehr nur ziehen, sondern auf einem Touchscreen den Grund ihres Besuchs angeben müssen.

Barrierefreiheit bringt dem Online Marketing Vorteile

Zu guter Letzt bringt Barrierefreiheit in der Entwicklung auch beim Online-Marketing Vorteile. Wird auf ein barrierefreies Webdesign wert gelegt, können Webcrawler die auf der Website enthaltenen Informationen besser verarbeiten. Crawler, auch als Spider oder Robot bekannt, sind Programme, die Internetseiten automatisch analysieren. Dabei findet er auch neue Inhalte bzw. neue Internetseiten. Die dem Crawler zugrundeliegenden Informationen sind schlussendlich für das Ranking in der Suchmaschine ausschlaggebend.
Das Problem an der Sache ist, dass Crawler ebenfalls eingeschränkt sind. Ihre Funktionen lassen beispielsweise keinen vollständigen Informationsgewinn auf Basis von Bildern oder Grafiken zu. Mithilfe der Künstlichen Intelligenz konnten zwar bereits große Fortschritte bei der Bilderkennung gemacht werden, exakt auslesen können die automatischen Programme Bilder jedoch noch nicht. Die Meta-Elemente sind hier auch ausschlaggebend, die beschreiben, was auf dem Bild zu sehen ist. Barrierefreies Webdesign bedeutet auch, dass Bilder auf Webseiten einen Alternativtext haben. Das hilft dem Crawler und auch blinden bzw. sehbehinderten Menschen, die einen Screenreader nutzen.

Barrierefreie Zugänge für Menschen mit Sehschwäche oder Farbblindheit

An Entwickler hingegen stellt die barrierefreie Software-Entwicklung auf den ersten Blick eine Herausforderung dar. Jedoch sind viele Punkte ohnehin Bestandteil einer organisierten Software-Entwicklung. Beispielsweise trennt man als Programmierer Layout und Inhalt, was als saubere Architektur des Programms gilt. Das ist eine grundsätzliche Anforderung aus der Software-Entwicklung, hilft gleichzeitig aber auch bei der Barrierefreiheit. Dadurch kann man das Layout also individuell anpassen – Kontrast, Schrift- oder Fenstergröße – und ist nicht durch fehlende oder falsch dargestellte Inhalte gestört. Das bringt Vorteile für Menschen mit Sehschwächen oder auch bei Farbenblindheit mit sich. Zusätzlich werden die Prinzipien der Usability auch bei der barrierefreien Software-Entwicklung durchgesetzt. Hält man sich bei der Software-Entwicklung also an die Barrierefreiheit, ist das Ergebnis schlussendlich besserer Qualität.

Barrierefreie Software-Entwicklung – die Wahl der Programmiersprache

Welche Programmiersprachen unterstützen barrierefreie Softwareentwicklung? Java war die erste, welche barrierefreie Softwareentwicklung unterstützte. Das Microsoft .net-Framework insbesondere die Programmiersprache C# unterstützt ebenso die barrierefreie Softwareentwicklung! Barrierefreie Softwareentwicklung kann auch mit Python umgesetzt werden. Das tolle an Java ist, dass sie kostenlos im Web heruntergeladen werden kann. Außerdem ist es mit Java möglich Anwendungen für Internetseiten zu entwickeln. Java und Microsoft.net werden in Amerika entwickelt. Dort ist Accessibility sehr wichtig, weil die Zahl der Menschen mit Behinderung sehr viel höher ist als in Deutschland. Anwendungen müssen in den USA nach den Grundsätzen der Accessibility programmiert sein. Menschen mit Behinderung haben dort nämlich ein Klagerecht bei fehlender Accessibility.

Das Bild zeigt eine barrierefreie Java-Software entwickelt mit Swing in welcher der Tastaturfokus gut sichtbar ist

Das Bild zeigt eine barrierefreie Java-Software entwickelt mit Swing in welcher der Tastaturfokus gut sichtbar ist.

Im nächsten Bildschirmfoto sehen Sie Java-Programm-Code:

Das Bild zeigt Java-Code der zeigt wie eine Swing-Programmoberfläche für Screenreader zugänglich gemacht werden kann

Das Bild zeigt Java-Code der zeigt wie eine Swing-Programmoberfläche für Screenreader zugänglich gemacht werden kann.

Das nächste Bild zeigt eine barriererefreie Software die mit der Programmiersprache Python entwickelt wurde und unter dem Apple Betriebssystem MacOS gestartet werden kann:

Demoprogramm: für blinde und sehbehinderte Menschen nutzbar, Betriebssystem MacOS, Programmiersprache Python
Demoprogramm: für blinde und sehbehinderte Menschen nutzbar, Betriebssystem MacOS, Programmiersprache Python

Folgende 6 Möglichkeiten gibt es um barrierefreie Software zu entwickeln:

Dieses Video zeigt die Grundzüge der barrierefreien Softwareentwicklung mit Java -Swing:

Im nächsten Video sehen Sie die barrierefreie Softwareentwicklung mit JavaFX:

Das nächste Video zeigt die Grundzüge der barrierefreien Softwareentwicklung mit Microsoft Dotnet Winforms:

Das nächste Video zeigt die Grundzüge der barrierefreien Softwareentwicklung mit Microsoft Dotnet WPF:

Im nächsten Video wird barrierefreie Softwareentwicklung mit Python gezeigt:

Gibt es Richtlinien für barrierefreie Software-Entwicklung?

Für barrierefreies Webdesign gibt es national die Richtlinie BITV und international die Richtlinie WCAG. Um eine Software barrierefrei zu entwickeln sind ebenfalls Richtlinien notwendig. Diese sind wichtig damit eine Software auf Barrierefreiheit überprüft werden oder eine Software barrierefrei entwickelt werden kann. Es würde den Rahmen dieses Artikels sprengen hier alle Richtlinien aufzuführen. Leider gibt es keine einheitlichen Richtlinien wie barrierefreies Webdesign auszusehen hat. Deswegen nachstehend ein paar Richtlinien zur barrierefreien Softwareentwicklung mit Java und Microsoft Dotnet.
Die originalen Richtlinien für barrierefreie Softwareentwicklung für die Programmiersprache Java finden Sie bei Oracle:
Rules for Supporting Accessibility
Ich habe die Richtlinien auf Deutsch übersetzt:
Richtlinien barrierefreie Softwareentwicklung für Java von Oracle
Die Richtlinien für barrierefreie Softwareentwicklung mit Microsoft Dotnet finden Sie unter folgendem Link im Web: Exemplarische Vorgehensweise: Erstellen von behindertengerechten Windows-basierten Anwendungen

Wie kann barrierefreie Softwareentwicklung getestet werden?

Bevor eine Software die Auszeichnung “barrierefrei” erhält, muss diese überprüft werden, ob sie auch wirklich barrierefrei ist.
Eine automatisierte Überprüfung ist noch immer schwierig. Microsoft und Oracle stellen beide ein Tool zur Verfügung, um Software auf Barrierefreiheit zu testen.
Um aber wirklich sicher zu gehen sollte die Überprüfung einer Software auf Barrierefreiheit “von Hand” erfolgen. Das bedeutet, Sie überprüfen Ihre Software anhand der von Ihnen verwendeten Richtlinien.

Einstellungsdialog für Barrierefreiheit bei der Standardsoftware LibreOffice

Obiges Bild zeigt den Einstellungsdialog der Standardsoftware LibreOffice .

Dabei ist es wichtig, dass die Software vom Programmierer selbst bzw. dem Team überprüft wird, da eine externe Überprüfung en Detail nicht möglich ist. Während viele Punkte recht einfach zu überprüfen sind – wie beispielsweise die alternative Eingabe von Tastaturbefehlen per Bildschirmtastatur, Spracheingabe oder Braille-Zeile – sind andere für außenstehende Tester kaum zu überprüfen, da ihnen nicht alle Informationen (Quellcode etc.) zugänglich sind.
Die Richtlinie WCAG, die vorrangig für Webanwendungen und deren Entwickler gedacht sind, können derweil mit Techniken für WCAG 2.0 auf Barrierefreiheit überprüft werden: Techniques for WCAG 2.0: Techniques and Failures for Web Content Accessibility Guidelines 2.0. Hier sind zu folgenden Punkten mehrere Techniken zur Aufhebung von Barrieren bei Webinhalten und zusätzlich kleine Testverfahren zu ihnen aufgelistet:

  • Generelle Techniken
  • HTML- und XHTML-Techniken
  • CSS-Techniken
  • Client-side-Scripting-Techniken
  • Server-side-Scripting-Techniken
  • SMIL-Techniken
  • Plain-Text-Techniken
  • ARIA-Techniken
  • Flash-Techniken
  • Silverlight-Techniken
  • PDF-Techniken
  • Verbreitete Fehler

Die WCAG sind zwar grundsätzlich technologieunabhängig ausgerichtet, sind aber dennoch nicht für eine allgemeingültige Überprüfung von anderer Software als Webanwendungen geeignet. Sie bieten keine Hinweise und Überprüfbarkeit für allgemeine Anwendungen, die Richtlinien können dennoch bei der Software-Entwicklung hilfreich sein.

Software auf Barrierefreiheit testen

Damit Sie sicher sein können, dass Menschen mit Behinderungen ihrer Software bedienen können, muss diese getestet werden. Ich empfehle einen Test von Hand aufgrund der Richtlinien für Barrierefreiheit bei der Softwareentwicklung.

Mit meiner in Python entwickelten Software Marlems Barriere Software Checker können Java Swing und JavaFX-Dateien auf Barrierefreiheit automatisiert getestet werden. Selbstverständlich ist auch meine Software nicht perfekt! Hier können Sie das Programm herunterladen:

barrierefreie Softwareentwicklung muss selbstverständlich werden in Deutschland

Ich möchte diese Jahr den Prozess voran treiben, dass Software immer barrierefrei entwickelt wird. Deswegen werde ich insgesamt 4 Texteditoren entwickeln in mit denen ich zeige wie Standardsoftware barrierefrei entwickelt werden kann.
Hier geht es zur Downloadseite:

Fachartikel und Softwarevorstellungen auf Heise.de/Developer und Entwickler.de: Barrierefreie Softwareentwicklung mit JavaFX, C# WPF und Python

Fachartikel und Softwarevorstellungen geschrieben von mir:

Barrierefreie Softwareentwicklung – Wer hilft bei der Umsetzung?

Wenn Sie sich aufgrund der Informationen in diesem Artikel entschieden haben, sich mit barrierefreier Softwareentwicklung zu beschäftigen, dann nehmen Sie mit mir Kontakt auf!
Telefon: 07072/1278463
E-Mail: info@marlem-software.de

Ich biete:

Ich würde mich sehr freuen, wenn barrierefreie Softwareentwicklung zur Selbstverständlichkeit werden würde.

Barrierefreie Software-Entwicklung: Alles eine Sache der „Einstellung“.

Die Überschrift dieses Blogartikels ist Doppeldeutig. Zum einen möchte ich hier auf die Problemstellung eingehen „Wie mache ich eine Software barrierefrei ohne, dass man es Ihr sofort ansieht?“. Zum anderen möchte ich hier nochmal die Frage aufgreifen „Lohnt es sich überhaupt eine Software barrierefrei zu gestalten?“.

Ich erlebe es immer wieder, dass die Leute sagen, „Meinetwegen darf die Webseite barrierefrei werden, aber das darf man Ihr auf kein Fall ansehen!“. Die Sache ist die, wenn ich in einem Restaurant sitze und am Nachbartisch sitzt eine attraktive, sympathische Dame würde ich auch gerne kurz mal meine Behinderung in die Hosentasche stecken, aber irgendwie klappt das nicht!
Aber keine Angst, so „brutal“ ist die Löung des Problems doch nicht. Ich wollte nur klar stellen, dass es unter Umständen in Ihrer Software stellen geben könnte, wo es einfach unvermeidbar ist, dass dem nichtbehinderten Anwender klar wird, dass die Software auch für Anwender mit Behinderung konzipiert ist.

Die Lösung des Problems ist ein Menüpunkt in Ihrer Software der „Einstellungen“ heißen könnte. Angenommen Sie machen sich wenig Gedanken darüber, ob die von Ihnen gewählten Menüshortcuts(=Tastenkürzel) für Menschen mit einer behinderten Hand gut zu bedienen sind, haben aber im „Einstellungsfenster“ eine Möglichkeit dass der Anwender die Menüshortcuts ändern kann, so ist das eine sehr gute Lösung! Der nichtbehinderte Anwender findet die Menüshortcuts die er von den gängigen Programmen kennt und der Anwender mit Behinderung, kann sich im „Einstellungsfenster“ die Menüshortcuts anpassen.

Ich mache noch ein Beispiel:
Sie haben sich bei der farblichen Gestaltung von Schaltersymbolen an die Empfehlungen von Microsoft gehalten(hier werden Menschen mit Farbfehlsichtigkeit berücksichtigt) haben aber bei der Wahl von Hintergrund-und Schriftfarbe nicht auf Menschen mit Farbfehlsichtigkeit geachtet. Aber! Sie haben im Menü „Einstellungen“ einen Möglichkeit geschaffen, dass Menschen mit einer Farbfehlsichtigkeit die Farben individuell einstellen können. Dieser Lösungsweg ist völlig in Ordnung und reicht aus!

Sie müssen also nicht für jedes Problem eine ultimative Lösung ausknobeln. Sie sollten nur wissen, welche Probleme es geben kann und dem körperlich eingeschränkten Anwender eine Möglichkeit bieten durch individuelle Einstellungsmöglichkeiten Ihre Software barrierefrei zu machen!

Kommen wir zum schwierigeren Teil des Artikels! Lohnt sich überhaupt die Mühe eine Software barrierefrei zu entwickeln? Oft fangen „wir“ behinderte Menschen damit an, dass wir nichts dafür können, dass wir behindert sind, dass die nichtbehinderten „froh“ sein sollen dass sie keine Behinderung haben und aus Dankbarkeit auf uns behinderte Menschen Rücksicht nehmen sollen. Grundsätzlich ist das gar nicht so verkehrt, aber in der Praxis bezieht man doch sehr oft „verbale Schläge“ und erntet Unverständnis! Deswegen möchte ich in diesem Blogartikel einen anderen Weg gehen. Ich bin Unternehmer und unter Umständen lesen meine Blogartikel nicht nur Software-Entwickler, sondern Unternehmer und andere Personen die entscheiden müssen ob sie ihre Software barrierefrei machen sollen. Und was interessiert solche Personen? Richtig, Geld! Kann ich damit meine Umsätze steigern oder kostet es nur?

Hier sind wir an dem Punkt angelangt, wo man sich erst mal die Frage stellt wieviel behinderte gibt es überhaupt in Deutschland? Die antwort finden Sie auf der Webseite des statistischen Bundesamts. Fast 10 Millionen behinderte Menschen im Jahr 2009.
10 Millionen Menschen haben also eine Behinderung. Machen wir ein kleines Rechenexperiment:

Sie verkaufen eine barrierefreie Software an 10 Millionen Menschen mit Behinderung für 1 Euro. Richtig, dann haben Sie 10 Millionen Euro Umsatz gemacht! Also gut, Sie kennen sich aus und sagen, dass es geistig und schwerstbehinderte Menschen gibt, die aufgrund Ihrer Behinderung keine Software bedienen können. Wir reduzieren die 10 Millionen auf 6 Millionen behinderte Menschen! Dann sind das trotzdem 6 Millionen Euro die Sie verdienen können! Wollen Sie sich das entgehen lassen?

Ich möchte noch ein anderes Argument ins Spiel bringen. Sämtliche Behörden sind seit dem Gleichstellungsgesetz von 2002 dazu verpflichtet, dass die von Ihnen eingesetzte Software barrierefrei sein muss! (Dies steht im §11 Barrierefreie Informationstechnik) Jetzt gehen die Behörden auf die Suche nach Software-Unternehmen die eine barrierefreie Software verkaufen …. Möchten Sie nicht auch von diesem „Kuchen“ etwas ab haben?

So, hierbei möchte ich es belassen. Ich hoffe Ihnen hat das lesen genau soviel Spass gemacht wie mir das schreiben. Ich würde mir wünschen, dass meine Blogartikelreihe dazu beiträgt, dass die Standardsoftware barrierefrei wird.

Barrierefreie Software-Entwicklung: Wie kann eine Software für Menschen mit 50+ barrierefrei gemacht werden?

Im Blogartikel „Accessibility – Barrierefreie Software-Entwicklung: 50+“ habe ich erklärt, welche Probleme Menschen mit 50+ bei der Bedienung von Software haben. In diesem Blogartikel erfahren Sie wie Software entwickelt werden kann, damit Menschen mit 50+ wenig Probleme bei der Bedienung von Software haben.

Zunächst mal, möchte ich nochmals betonen, dass 50+ keine Behinderung ist und ich mit diesem Artikel und mit dem Vorgänger keine Menschen mit 50+ diskrimieren möchte. Ich erlebe es jedoch häufig, dass in der Softwareentwicklung über diese Personengruppe wenig nachgedacht wird. Deswegen möchte ich durch diese Artikel das Bewusstsein schärfen, dass diese Personengruppe ähnliche Probleme haben kann, wie Personen mit bestimmten Behinderungsarten.

Mit zunehmendem Alter kann die Sehkraft nachlassen. Deswegen sollten Sie darauf achten, dass Beschriftungen von Eingabefeldern nicht zu klein sind. Zusätzlich sollten Sie überprüfen, ob sich die Schriften in der Software vergrößern, wenn der Anwender in der Systemsteuerung große Systemschriften einstellt. Wenn der Anwender in der Systemsteuerung große Schriften einstellt und in Ihrer Software bleibt die Schriftgröße gleich, ist die Einstellungsmöglichkeit in der Systemsteuerung für den Anwender wertlos.

Als weitere Folge von zunehmendem Alter, können Schwierigkeiten bei der Farberkennung auftreten. Deswegen sollten Sie bei der Gestaltung von Schaltersymbolen und bei der Wahl von Hintergrund-und Schriftfarbe auf einen ausreichenden Farbkontrast achten. Eine dunkler Hintergrund und eine dunkle Schriftfarbe kann bei Menschen mit 50+ und Menschen mit einer Farbsehschwäche zu großen Problemen führen.

Ebenso kann es für Menschen mit 50+ hilfreich sein, wenn der Eingabefokus deutlich zu erkennen ist. Hier möchte ich nochmal die Empfehlung aussprechen, dem aktiven Eingabefeld eine andere Hintergrundfarbe zu geben. Das hilft auf jeden Fall für Menschen mit einer Sehbehinderung und kann auch eine große Hilfe für Menschen mit 50+ sein.

Barrierefreie Software-Entwicklung: Wie kann eine Software für Menschen mit einer Lernbehinderung barrierefrei gemacht werden?

Im Blogartikel „Accessibility – Barrierefreie Software-Entwicklung: Lernbehinderungen“ habe ich erklärt, welche Probleme gehörlose Menschen bei der Bedienung von Software haben. In diesem Blogartikel erfahren Sie wie Software entwickelt werden kann, damit Menschen mit einer Lernbehinderung wenig Probleme bei der Bedienung von Software haben.

Im ersten Artikel habe ich erwähnt, dass es nicht ganz einfach ist, die verschiedenen Arten der Lernbehinderung zu berücksichtigen. Deswegen möchte ich hier auch etwas „Druck“ raus nehmen. Es ist mit Sicherheit nicht möglich, alle Arten der Lernbehinderung zu berücksichtigen. Deswegen möchte ich in diesem Artikel Vorschläge machen, welche Maßnahmen helfen, eine Software für Lernbehinderte zugänglich zu machen.

Texte, zum Beispiel Hilfetexte, sollten kurze Sätze haben. Versuchen Sie verschachtelte Sätze zu vermeiden. Wenn Sie Fremdwörter , zum Beispiel Fachbegriffe verwenden, sorgen Sie dafür, dass es eine Möglichkeit gibt, nachzulesen, was der Fachbegriff bedeutet. Eine Idee ist zum Beispiel, dass Sie einen Link setzen auf einen Lexikoneintrag in dem der Fachbegriff verstädnlich erklärt wird. Der Königsweg ist natürlich, die Vermeidung von Fachbegriffen. Ich bin mir aber dessen bewusst, dass dies nicht immer möglich ist.

Wenn Sie Eingabemasken gestalten, sollten Sie darauf achten, dass die Eingabefelder eine Beschriftung haben und es eindeutig erkennbar ist, welche Beschriftung zu welchem Eingabefeld gehört.

Falls Ihre Software Fragen beinhalten die schriftlich beantwortet werden müssen, kann das für Menschen mit Lernbehinderung ein Problem darstellen. Eine Alternative könnte sein, dass Sie bestimmte Antwortmöglichkeiten vordefinieren und der Anwender ein Antwort per Mausklick auswählen kann.

Wenn Ihre Software eine Hilfe hat, können Sie darüber nachdenken, ein paar Videos einzubauen. Menschen mit einer Leseschwäche, können unter Umständen ein Video besser nachvollziehen wie geschriebener Text.

Dies sind einige Anregungen wie Sie Ihre Software für Menschen mit Lernbehinderungen zugänglicher machen können.

Barrierefreie Software-Entwicklung: Wie kann eine Software für Gehörlose barrierefrei gemacht werden?

Im Blogartikel „Accessibility – Barrierefreie Software-Entwicklung: Gehörlose“ habe ich erklärt, welche Probleme gehörlose Menschen bei der Bedienung von Software haben. In diesem Blogartikel erfahren Sie wie Software entwickelt werden kann, damit gehörlose Menschen keine Probleme bei der Bedienung von Software haben.

Wie im obigen Artikel schon erwähnt, haben Gehörlose wenig Probleme beim bedienen von Software. Grundsätzlich geht es darum, dass Sie in Ihrer Software keine Informationen nur akustisch verfügbar ist.

Nehmen wie nochmal das Beispiel des Mail-Programmes. Wenn ein Mail-Programm eingehende Mails ankündigt mit „Sie haben Post!“ ist das für Menschen die hören können eine tolle Sache. Für Gehörlose ist es eine Katastrophe, weil Sie keine Chance h aben, diese Information zu erhalten. Das ist der Grund warum alle Mailprogramme eingegangene, ungelesene Mails fettgedruckt darstellen. Dies können Gehörlose sehen!

Anderes Beispiel. Sie geben sich richtig Mühe mit Ihrer Programmhilfe und drehen Videos die zeigen wie bestimmte Programmfunktionen ausgeführt werden. Die meisten Lernvideos haben dann auch noch eine Stimme, die das gezeigte kommentiert. Diese Stimme hören Gehörlose nicht! Deswegen sollten Sie unter der Videoanzeige den Inhalt des Videos schriftlich zusammenfassen oder den gesprochenen Text im Video 1 zu 1 schriftlich wiedergeben. Eine andere Idee ist, dass Sie im Video einen kleines Fenster integrieren, in welchem eine Person den gesprochenen Text in Gebärdensprache darstellt.

Selbstverständlich ist es, aber ich erwähne es der Vollständigkeit halber trotzdem, dass Gehörlose keinen MP3-Player verwenden. Also sich die Mühe machen, einen MP3-Player zu entwickeln, der mp3-Dateien in Schriftform konvertiert ist nicht wirklich sinnvoll!
Es gibt also eine bestimmte Art von Software, bei der es sich nicht lohnt über Barrierefreiheit für Gehörlose nachzudenken.

Barrierefreie Software-Entwicklung: Wie kann eine Software für Blinde barrierefrei gemacht werden?

Im Blogartikel „Accessibility – Barrierefreie Software-Entwicklung: Blinde“ habe ich erklärt, welche Probleme blinde Menschen bei der Bedienung von Software haben. In diesem Blogartikel erfahren Sie wie Software entwickelt werden kann, damit blinde Menschen keine Probleme bei der Bedienung von Software haben.

Da blinde Menschen mit einem Programm namens Screenreader arbeiten, sind sie darauf angewiesen, das die Programmoberfläche der Software dem „Bildschirmleser“ Textinformationen bereitstellen.

Wenn Sie Programmoberflächen mit Java entwickeln sollten Sie die Swing-Komponenten benutzen. Diese haben die Eigenschaften „AccessibleName“ und „AccessibleDescription“. Diesen Eigenschaften können Sie Textinformationen für den Screenreader zuweisen. Näheres über die barrierefreie Softwareentwicklung mit Java können Sie im Blogartikel „Accessibility: Barrierefreie Software-Entwicklung mit Java“ nachlesen.

Wenn Sie mit dem Microsoft .net-Framework Programmoberflächen entwickeln so gibt es dort ebenso die Eigenschaften „AccessibleName“ und „AccessibleDescription“.
Ausführliche Informationen finden Sie im Blogartikel „Accessibility: Barrierefreie Software-Entwicklung mit .net bzw. C#“.

Ebenso ist es wichtig, dass Sie Grafiken einen Alternativtext geben. Falls In Ihrer Software Videos vorhanden sind, die für die Benutzung der Software wichtig sind, sollten Sie eine Zusammenfasung des Videoinhalts als Text bereitstellen.

Blinde Menschen können keine Computermaus bedienen, deswegen muss eine Software komplett per Tastatur bedienbar sein, damit Sie für blinde Menschen bedienbar ist. Ihre Software sollte ein Menü besitzen in dem die wichtigsten Programmfunktionen vorhanden sind. Außerdem hilft es blinde Menschen, wenn wichtige Programmfunktionen mit Tastenkürzel(Shortcuts) ausgeführt werden können. Wenn Ihre Software nur Schalter ohne Beschriftung besitzt, müssen blinde Menschen so lange die Tabulatortaste drücken, bis der gewünschte Schalter den Fokus hat. Das ist sehr mühsam.
Wenn Sie in Ihre Software Eingabefelder mit Beschriftungen haben, dann sorgen Sie dafür, dass die Beschriftung mit dem Eingabefeld verbunden ist und per Tastenkürzel direkt erreichbar ist. Wenn der Blinde das Tastenkürzel der Beschriftung drückt wird der Textcursor in das dazugehörige Eingabefeld gesetzt.

Mit diesen Maßnahmen wird Ihre Software für Blinde bedienbar.