www.wikidata.de-de.nina.az
Mit Softwaredokumentation bezeichnet man die Dokumentation von Software Sie erklart fur Entwickler Anwender Auftraggeber Kunde und Endbenutzer in unterschiedlichen Rollen wie die Software funktioniert was sie erzeugt und verarbeitet z B Daten wie sie zu benutzen ist was zu ihrem Betrieb erforderlich ist und auf welchen Grundlagen sie entwickelt wurde Inhaltsverzeichnis 1 Arten 2 Juristische Sicht 3 Historische Entwicklung und moderne Formen 3 1 Programmiererdokumentation 3 2 Benutzerdokumentation 4 Siehe auch 5 Literatur 6 EinzelnachweiseArten BearbeitenDie Dokumentation zu einem Softwareprodukt besteht aus unterschiedlichen Teilen die auf verschiedene Zielgruppen ausgerichtet sind Methodendokumentation Allgemeine Beschreibung der Grundlagen auf denen die Software beruht Dies konnen mathematische Algorithmen technisch wissenschaftliche oder kaufmannische Verfahren sein auf die in den anderen Dokumentationsteilen verwiesen werden kann Die Software implementiert diese Methoden die Methodendokumentation nimmt aber keinen Bezug auf technische Details der Programmierung die sich haufiger andern konnen Die Methodendokumentation ist aus der Welt der Anwender geschrieben Programmiererdokumentation Beschreibung des Quellcodes Installationsdokumentation Beschreibung der erforderlichen Hardware und Software mogliche Betriebssysteme und Versionen vorausgesetzte Software Umgebung wie etwa Standardbibliotheken und Laufzeitsysteme Erlauterung der Prozeduren zur Installation ausserdem zur Pflege Updates und De Installation bei kleinen Produkten eine Readme Datei Zielgruppe sind Administratoren beim Anwender die die Software nicht zwangslaufig unmittelbar selbst nutzen mussen Benutzerdokumentation Informationsmaterial fur die tatsachlichen Endbenutzer etwa uber die Benutzerschnittstelle Den Anwendern kann auch die Methodendokumentation zuganglich gemacht werden um Hintergrundinformationen und ein allgemeines Verstandnis fur die Funktionen der Software zu vermitteln Datendokumentation Oft sind nahere Beschreibungen zu den Daten erforderlich Es sind die Interpretation der Informationen in der realen Welt Formate Datentypen Beschrankungen Wertebereich Grosse zu benennen Die Datendokumentation kann oft in zwei Bereiche aufgeteilt werden Innere Datenstrukturen wie sie nur fur Programmierer sichtbar sind und Aussere Datendokumentation fur solche Datenelemente die fur Anwender sichtbar sind von Endbenutzern einzugebende und von der Software ausgegebene Informationen Dazu gehort auch die detaillierte Beschreibung moglicher Import Exportschnittstellen Testdokumentation Nachweis von Testfallen mit denen die ordnungsgemasse Funktion jeder Version des Produkts getestet werden konnen sowie Verfahren und Szenarien mit denen in der Vergangenheit erfolgreich die Richtigkeit uberpruft wurde Entwicklungsdokumentation Nachweis der einzelnen Versionen auf Grund von Veranderungen z B in Patch oder Releasenotes der jeweils zugrundegelegten Ziele und Anforderungen und der als Vorgaben benutzten Konzepte z B in Lastenheften und Pflichtenheften beteiligte Personen und Organisationseinheiten erfolgreiche und erfolglose Entwicklungsrichtungen Planungs und Entscheidungsunterlagen etc Einige Dokumentationsteile bleiben vertraulich im Bereich der Entwickler andere mussen fur die Anwender verfugbar sein Teilweise erfullen sie neben technischen auch juristische Zwecke als Vertragsbestandteil und im Fall von Gewahrleistungsanspruchen Zusammenfassend kann die Softwaredokumentation unterschieden werden nach Projektdokumente Sie beschreiben was von den Entwicklungsbeteiligten zu tun ist bzw war warum z B Ziele Anforderungen wie Methodik wann Planungsdokumente womit Werkzeuge etc Systemdokumente Sie beschreiben das System woraus es besteht was es tut Funktionen was es erzeugt Ergebnisse welche Daten es verarbeitet wie es zu bedienen ist etc Wird diese Unterscheidung bereits im Projektverlauf berucksichtigt so kann der Aufwand fur das Erstellen von Systemdokumenten die zur Einfuhrung erforderlich sind weitgehend reduziert werden Juristische Sicht BearbeitenDie Rechtswissenschaft betrachtet Software aus einem ganzlich anderen Blickwinkel als die Informatik namlich z B unter den Aspekten Verbraucherschutz Haftung und Gewahrleistung etc Softwareprodukte sind hier lediglich eine Variante von Produkten unter vielen anderen Arten Aus dieser Sicht gehort zu Softwareprodukten auch eine Dokumentation Hierzu ein Zitat nach Beckmann 1 Nach der Rechtsprechung des BGH zum Thema EDV Anwenderdokumentationen ist es als geklart anzusehen dass unabhangig vom in Frage kommenden Vertragstyp die Softwareuberlassung neben der Uberlassung des Programms auch zur Uberlassung entsprechender Programminformationen verpflichtet Dabei ist zu beachten dass es sich nicht nur um eine im Neben sondern vielmehr um eine im Gegenseitigkeitsverhaltnis stehende Hauptleistungspflicht des Lieferanten handelt und zwar sowohl bei Standard als auch bei Individualsoftware Der juristische Sprachgebrauch weicht im ubrigen von dem in der anwendenden Industrie ab Dokumente wie vor allem die Gebrauchsanleitungen zahlen hier zu den Instruktionen Dokumentation im engeren juristischen Sinn umfasst dagegen nur Protokolle und Belege zum Werdegang eines Produktes also uber Entwicklung Produktion Prufung Auslieferung sweg Quelle 2 Wenn im vorangehenden Absatz von EDV Anwenderdokumentationen gesprochen wird geht es offensichtlich um eine Gerichtsentscheidung die sich fur einen konkreten Fall an die Wortwahl der Informationstechnik anpasst Historische Entwicklung und moderne Formen BearbeitenDie Art und der Umfang von Softwaredokumentation haben sich seit den 1960er und 1970er Jahren bis heute stark gewandelt In Deutschland gab es aus den 1980er Jahren drei Normen auf dem Gebiet Informationsverarbeitung die im Juni 2004 ohne Ersatz zuruckgezogen wurden weil sie nicht mehr zeitgemass umgesetzt werden konnten DIN 66230 Programmdokumentation DIN 66231 Programmentwicklungsdokumentation DIN 66232 DatendokumentationWenngleich die dort standardisierte Papierform obsolet wurde sind die Ziele und Grundprinzipien nach wie vor aktuell Programmiererdokumentation Bearbeiten Die ersten Anwendungsprogramme wurden auf Lochkarten gestanzt und hatten einen relativ geringen Umfang also etwa einige Tausend Zeilen Kommentare im Quellcode waren selten Leerzeichen vermied man wo syntaktisch zulassig damit das ganze Statement in die 72 80 Spalten einer Karte passte und keine Folgekarte mitzuschleppen ware Nur Grossbuchstaben waren moglich die Lange der Namen von Variablen und Funktionen war stark begrenzt oft nur 6 Zeichen Der Quellcode war dadurch nur schwer lesbar Die Programmiererdokumentation musste dann in einem separaten Schriftstuck ausfuhrlich und mit Flussdiagrammen Zeile fur Zeile die Funktion erlautern Dies ist heute nicht mehr moglich Der Umfang aktueller Softwaresysteme und die Schnelligkeit mit der von einer Vielzahl von Programmierern Anderungen vorgenommen werden konnen lassen das althergebrachte Vorgehen nicht mehr zu Dafur erlauben moderne Programmiersprachen und unbegrenztes Textvolumen zusammen mit interaktiven Darstellungen ein anderes Vorgehen Moderne Softwaredokumentation verfolgt andere Ansatze Der Quellcode soll selbsterklarend sein Die Namen von Variablen und Funktionen sollen fur Menschen intuitiv verstandlich sein Wo sich bereits die formale Programmiersprache selbst ausreichend erklart und die Struktur durch geeignetes Ein und Ausrucken von Kontrollstrukturen bereits hinreichend deutlich wird darf keine zusatzliche und unabhangige Beschreibung angefertigt werden mussen bei Anderungen des Programms kommt es sonst sofort zu Inkonsistenzen Die personellen Ressourcen zur zeitnahen Pflege uberflussiger Dokumente sind regelmassig nicht vorhanden Die Dokumentation soll so weit wie moglich in den Quellcode eingearbeitet sein Das kann durch Kommentare und Kommentarzeilen erreicht werden die in unmittelbarer Nahe der Anweisungen im Quellcode stehen und bei deren Veranderung sofort aktualisiert werden konnen Bei der Weiterbearbeitung durch andere Programmierer die weltweit verteilt arbeiten konnen steht immer die aktuelle Kommentierung zur Verfugung und kann weiter angepasst werden Was bereits durch die formale Programmiersprache selbst erklart wurde darf nicht Inhalt eines zusatzlichen Kommentars sein Unterstutzende Ubersichten sollen mit Dokumentationswerkzeugen automatisch aus dem Quellcode und speziell formatierten Kommentaren generiert werden Dienstprogramme wie etwa Javadoc oder Doxygen konnen komplexe Hypertexte als Referenz erstellen mit denen sich die Entwickler schnell auch in umfangreichen Systemen zurechtfinden konnen Integrierte Entwicklungsumgebungen stellen interaktiv auch grafische Ubersichten wie etwa Strukturbaume zusammen Die Datenstruktur von Objekten kann in Form von Grafiken statisch auf Papier und dynamisch durch interaktive Navigation verdeutlicht werden Soweit Anmerkungen Skizzen und dergleichen nicht in den Quellcode selbst integriert werden konnen sollen sie als Dateien unmittelbar bei den entsprechenden Dateien des Quellcodes gespeichert und gemeinsam verteilt werden damit sie allen Entwicklern zur Verfugung stehen und es nicht zu Inkonsistenzen kommt Die Programmiererdokumentation im engeren Sinn zielt auf die Programmierung des Quellcodes selbst ab Neben dieser inneren Dokumentation gibt es oft noch eine nach aussen gerichtete Dokumentation welche sich an andere Programmierer wendet die eine Programmierschnittstelle nutzen Sinnvolle Programmiererdokumentationen werden heute praktisch nur noch in elektronischer Form Lebende Dokumentation und nicht mehr als Papierdokumente und Bucher erstellt Die haufigen und vielfaltigen Veranderungen lassen gedruckte Werke sofort veralten Elektronische Dokumente konnen sofort weltweit in der aktuellen Form verfugbar gemacht werden Die Produkte werden so komplex dass ein Inhaltsverzeichnis oder ein alphabetisches Register nicht ausreicht um durch das System zu navigieren Erforderlich sind interaktiv elektronische Hilfsmittel wie Hyperlinks Suchfunktionen und dynamisch durch Ein und Ausblenden wechselnde Ansichten auf die Informationsmenge In ein Anderungsprotokoll englisch Changelog werden stichwortartig Veranderungen dokumentiert allerdings nicht ins Detail Dabei wird vor allem auf Unterschiede zu vorangegangenen Versionen von Software Bezug genommen wodurch ein Uberblick geschaffen werden soll Benutzerdokumentation Bearbeiten Die Benutzerdokumentation dient dazu den Benutzern die Anwendung des Programms zu erklaren Zur Benutzerdokumentation gehoren heute zusatzlich Kontextsensitive Hilfe an jeder Stelle des Programmablaufs Online Version eines gedruckten Benutzerhandbuchs auf der lokalen Festplatte mit Hyperlinks und direktem Verweis auf einzelne Fundstellen aus der Hilfefunktion heraus Aktualisierte Informationen auf der Website der Entwickler Guided Tour durch die Benutzerfuhrung als erster Einstieg Agenten und Assistenten die als regelbasiertes System durch gezielte Fragen an den Benutzer bei der Losung komplexer Probleme helfen Auf eine fur die zu erwartenden Benutzer verstandliche Sprache ist besonders zu achten Traditionell wurde schlicht ein Handbuch zur Software ausgeliefert Das hat sich mit grafischen Benutzeroberflachen verandert Sie sollten bereits selbsterklarend sein und intuitiv die richtige Bedienung nahelegen Ein gutes Benutzerhandbuch besteht aus Informationen zur Funktionalitat der Software ihrer Eingabedaten und der erzeugten Ergebnisse aus der Sicht des Anwenders Benutzers Eine grundlegende Bedienungsanleitung Ratschlage zur Problembehebung Fehleranalysen mit Gegenmassnahmen Ein Tutorial bei dem die Losung einiger Ubungsaufgaben exemplarisch moglich ist und im Idealfall eigenstandige Losungsversuche begleitet und bei Misserfolg aufgelost werden Frequently Asked Questions FAQ in ubersichtlicher Gliederung Glossar mit Erklarung der Fachbegriffe Siehe auch BearbeitenTechnische Dokumentation Software Dokumentationswerkzeug Capability Maturity Model Verfahrensdokumentation FachkonzeptLiteratur BearbeitenFranz Lehner Software Dokumentation und Messung der Dokumentationsqualitat Hanser 1994 ISBN 3 446 17657 8 Endstadium der papiergestutzten Formate Grundlagen und inhaltliche Forderungen zeitlos Einzelnachweise Bearbeiten Beckmann In CR 9 98 S 519 ff juristisches Seminar fur Handbuchautoren aus Anlass der Einfuhrung des Produkthaftungsgesetzes Abgerufen von https de wikipedia org w index php title Softwaredokumentation amp oldid 235615778