Top Banner
IT- und Medientechnik Vorlesung 1: 16.10.2017 Wintersemester 2017/2018 h_da Heiko Weber, Lehrbeauftragter
47

IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

Sep 17, 2018

Download

Documents

truongtuong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik

Vorlesung 1: 16.10.2017

Wintersemester 2017/2018 h_da

Heiko Weber, Lehrbeauftragter

Page 2: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-2 Heiko Weber

Allgemeines zur Vorlesung

alle Folien zur Vorlesung werden als PDF erhältlich sein unter: http://www.weber-vorlesung.de/

die Folien werden immer am Tag der Vorlesung online gestellt

E-Mail: [email protected]

Page 3: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-3 Heiko Weber

Infos zum Dozenten

Heiko Weber

Computer Science Bachelor an der Virginia Tech

Informatik Diplom an der RWTH Aachen

seit 2000 bei der Software AG in Darmstadt 2000-2011: Software Engineer Specialist

im Entwicklungsbereich Tamino und CentraSite Schwerpunkte: XML, Security und WebDAV

2011-2016: Security Expert Methoden für sichere Software-Entwicklung IT-Sicherheits-Forschung

seit 2016: Corporate Security Officer und Datenschutzbeauftragter konzernweit IT-Sicherheit und Datenschutz

Vorlesungen an der Hochschule Darmstadt seit 2005

Page 4: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-4 Heiko Weber

Sekundärliteratur?

Da die Vorlesung im Wesentlichen diverse aktuelle Techniken und Standards vorstellt, sind die besten und auch aktuellsten Quellen die Webseiten, auf denen diese Standards definiert sind.

Es gibt kein empfehlenswertes Buch, welches den Stoff der Vorlesung weitgehend abdeckt.

Page 5: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-5 Heiko Weber

Zwei Schwerpunkte der Vorlesung

Teil 1: IT- und Medientechnik Einführung in verschiedene Informatik-Themen 6 Termine: 16.10., 23.10., 30.10., 06.11., 13.11., 20.11. am 23. und 30.10. jeweils 6 Stunden, sonst 4 Stunden

Teil 2: Datensicherheit baut auf Teil 1 auf Einführung in verschiedene IT-Sicherheits-Themen 7 Termine: 27.11., 04.12., 11.12., 18.12., 15.01., 22.01., 29.01. jeweils 4 Stunden

Page 6: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-6 Heiko Weber

Teil 1: IT- und MedientechnikInhalt der Vorlesung laut Modulhandbuch

Grundkenntnisse des Zusammenspiels von Hard- und Software erwerben.

Verständnis für die Bedeutung des Quellcodes und der Entwicklerdokumentation erhalten und entwickeln.

Kenntnis von dem Grundaufbau des Internets haben.

Verständnis verschiedener Techniken der Datenübertragung mit Intra- und Internet besitzen.

Kenntnis der Digitalisierung von Inhalten und der elektronischen Übertragung in den gängigen Medien erwerben.

Page 7: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-7 Heiko Weber

Teil 1: IT- und MedientechnikThemenübersicht der Vorlesung

Hard- und Software Hardware: CPU, Speicher, Bus, I/O, ... Software: System-, Unterstützungs-, Anwendungssoftware

Quellcode und Entwicklerdokumentation Programmiersprachen, Dokumentation Phasen der Softwareentwicklung, Software-Entwicklungsmethoden

Netzwerke und Internet Geschichte, Netzwerk-Strukturen Protokolle und Technologien, Standards, Cloud

Techniken der Datenübertragung Sockets, LAN vs. WAN, VPN

Digitalisierung von Inhalten und elektronische Übertragung Dateiformate, Kompression, Backups

Page 8: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-8 Heiko Weber

Teil 1: IT- und MedientechnikThemenübersicht der Vorlesung

Hard- und Software Hardware: CPU, Speicher, Bus, I/O, ... Software: System-, Unterstützungs-, Anwendungssoftware

Quellcode und Entwicklerdokumentation Programmiersprachen, Dokumentation Phasen der Softwareentwicklung, Software-Entwicklungsmethoden

Netzwerke und Internet Geschichte, Netzwerk-Strukturen Protokolle und Technologien, Standards, Cloud

Techniken der Datenübertragung Sockets, LAN vs. WAN, VPN

Digitalisierung von Inhalten und elektronische Übertragung Dateiformate, Kompression, Backups

Page 9: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-9 Heiko Weber

Hardware vs. Software (1)

Hardware die physischen Bestandteile eines Computers oder Zubehör, welches an

einen Computer angeschlossen werden kann

Software eine Reihenfolge von Anweisungen, um den Zustand der Hardware-

Komponenten eines Computers in einer speziellen Reihenfolge zu verändern

normalerweise in Programmiersprachen geschrieben, die dann in Maschinensprache übersetzt wird, damit der Computer sie versteht

Page 10: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-10 Heiko Weber

Hardware vs. Software (2)

Hardware Software

Definition Physische Geräte, die benötigt werden um Software zu speichern und auszuführen.

Eine Sammlung von Anweisungen, die es einem Benutzer ermöglichen mit einem Computer zu interagieren. Alle nichtphysischen Bestandteile eines Computers.

Typen Ein-/Ausgabegeräte, Speicher, Verarbeitungsgeräte, Kontrollgeräte, ...

System-, Unterstützungs-, Anwendungssoftware.

Beispiele CD-ROM, Monitor, Drucker, Grafikkarte, Mouse, Festplatte, ...

Firefox, Microsoft Word, Ubuntu Linux, OpenOffice, ...

Funktion Die Hardware dient als Ausführungsplattform für Software.

Anweisungen an die Hardware, um spezielle Aufgaben zu erledigen.

Page 11: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-11 Heiko Weber

Hardware vs. Software (3)

Hardware SoftwareAbhängigkeiten Hardware beginnt zu funktionieren,

nachdem die Software gestartet wurde.

Zum Ausführen von Software, muss sie auf Hardware installiert sein und auf diese zugreifen können.

Ausfall Hardware-Ausfall ist mehr oder weniger zufällig, meist in Abhängigkeit mit der Lebensdauer oder Frequenz der Benutzung.

Software-Ausfall ist systematisch, in Abhängigkeit der Programmfehler. Software wird mit dem Alter nicht fehleranfälliger.

Haltbarkeit Hardware wird mit der Zeit „abgenutzt“.

Software wird nicht „abgenutzt“ mit der Zeit, aber mit der Zeit werden Fehler gefunden.

Page 12: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-12 Heiko Weber

Logische Komponenten eines Computers

Eingabe-geräte

Ausgabe-geräte

Eingabe AusgabeZentraleinheit(CPU)

Adressierungs-einheit

Speicher

Page 13: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-13 Heiko Weber

Physische Komponenten eines Computers

Eingabegeräte

Zentraleinheit (CPU)

Bus-System

Ausgabegeräte Speicher

Page 14: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-14 Heiko Weber

Physische Komponenten eines Computers

Eingabegeräte

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte Speicher

Page 15: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-15 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte Speicher

Page 16: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-16 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Wärmesensor

Tastatur

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte Speicher

Page 17: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-17 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Wärmesensor

Tastatur

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte

Lautsprecher

Monitor

Speicher

Page 18: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-18 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Wärmesensor

Tastatur

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte

Lautsprecher

Monitor

Speicher

Arbeitsspeicher

USB-Stick

Page 19: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-19 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Wärmesensor

Tastatur

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte

Lautsprecher

Monitor

Speicher

Arbeitsspeicher

USB-Stick Headset

Page 20: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-20 Heiko Weber

Mainboard

Physische Komponenten eines Computers

Eingabegeräte

Wärmesensor

Tastatur

Zentraleinheit (CPU)Prozessor

Bus-System

Ausgabegeräte

Lautsprecher

Monitor

Speicher

Arbeitsspeicher

USB-Stick Headset USB-Surf-Stick

Page 21: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-21 Heiko Weber

Speicher-Typen

ROM vs. RAM ROM = read-only memory

kann gar nicht oder nur unter bestimmten Umständen verändert werden – zum Lesen von Daten

z.B. zum Speichern von Firmware verwendet, CD-ROM, ... RAM = random-access memory

darauf kann beliebig zugegriffen werden Daten lesen und speichern wird oft auch als Bezeichnung für Arbeitsspeicher genutzt

persistent vs. nichtpersistent persistent: Daten werden „permanent“ gespeichert – also so

lange, bis sie explizit gelöscht werden (falls möglich) nichtpersistent: Daten leben nur vorübergehend im Speicher –

z.B. bis sie durch andere Daten ersetzt werden oder nurso lange der Speicher mit Strom versorgt wird

Page 22: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-22 Heiko Weber

Speicher-Zugriffszeiten und -datengrößen

Zugriffszeit in Taktzyklen (ca.)

Größe in Bytes (ca.)

Prozessorregister 1 1.500

Arbeitsspeicher 100 16.000.000.000

Festplatte 1.000.000 2.000.000.000.000

Page 23: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-23 Heiko Weber

Software-Typen: Systemsoftware

anwendungsunabhängige Software, die das Ausführen von weiterer Software ermöglicht

Betriebssystem steuert die grundlegende Kommunikation zwischen Hardware

und weiterer Software z.B. Microsoft Windows, Linux, Unix

Treiber z.B. Druckertreiber, Grafikkartentreiber

Laufzeitumgebungen z.B. Java-Runtime, C-Runtime, .NET-Runtime

Page 24: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-24 Heiko Weber

Software-Typen: Unterstützungssoftware

Software, die bei der Entwicklung und/oder Wartung helfen oder eine sonstige nicht-anwendungsspezifische Leistung erbringen

einige Subtypen Entwicklungsumgebungen / Editoren (Eclipse, Notepad++, ...) Datenbanksysteme (Oracle, MySQL, Tamino, …) Compiler/Interpreter (gcc, Visual C, javac, PHP, …) Virenscanner (Avira, Kaspersky, avast, …) Web-Plattformen (Apache Webserver, IIS, Tomcat, ...)

eigentlich auch eine Gruppe von Systemsoftware, wird aber nach ISO/IEC 2383 als spezieller Typ definiert

Page 25: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-25 Heiko Weber

Software-Typen: Anwendungssoftware

Software, die den/der Benutzer_in bei der Ausführung der Aufgaben unterstützt und dadurch erst den eigentlichen, unmittelbaren Nutzen erbringt

Anwendungssoftware wird von Systemsoftware ausgeführt (Betriebssystem, Treiber, Laufzeitumgebungen) und benutzt typischerweise Unterstützungssoftware (Datenbanken, Webserver)

Beispiele Microsoft Word, Firefox, OpenOffice, WhatsApp, ...

Page 26: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-26 Heiko Weber

Beispiel-Software: Buchhaltungsprogramm

Betriebssystem: Linux

Laufzeitumgebung: Java-Runtime

Web-Plattform: Tomcat

Buchhaltungsprogramm Browser:Firefox

Datenbanksystem:MySQL

Page 27: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-27 Heiko Weber

Programmiersprachen

einfach zu verstehende Anweisungen, die in Maschinensprache übersetzt werden müssen, bevor sie vom Computer ausgeführt werden

Sprachen, deren Syntax und Semantik genau festgelegt ist

Syntax Definition aller zulässigen Wörter / Ausdrücke, die in einer Sprache

formuliert werden können

Semantik Bedeutung der zulässigen Wörter / Ausdrücke syntaktisch falsche Wörter / Ausdrücke haben keine Semantik

Algorithmus● eine eindeutige, ausführbare Folge von Anweisungen endlicher Länge zur

Lösung eines Problems

Page 28: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-28 Heiko Weber

Programmierparadigmen

Imperative Programmierparadigmen eine Folge von Befehlen, die vorgeben wie, also in welcher Reihenfolge,

die Befehle vom Computer ausgeführt werden sollen strukturierte, prozedurale, modulare Programmierung

Deklarative Programmierparadigmen nicht das Wie, sondern das Was steht im Mittelpunkt – sehr

mathematisch funktionale, logische Programmierung

Objektorientierte Programmierparadigmen Objekte werden in Klassen unterteilt, für die spezielle Funktionen gelten Wiederverwendbarkeit und Datenkapselung

Service-orientierte Programmierparadigmen● Dienste (Services) in einem Netzwerk liefern Teile der Implementierung

Page 29: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-29 Heiko Weber

Compiler vs. Interpreter

Compiler (Ahead-of-time-Compiler) übersetzt ein komplettes Programmiersprachenprogramm in ein

systemspezifisches Maschinensprachenprogramm oder in systemunabhängigen Byte-Code

z.B. C, C++, Objective C, Pascal

Interpreter übersetzt einzelne Anweisungen eines Programmiersprachen-

programms zu einzelnen systemspezifischen Anweisungen in Maschinensprache, während das Programm ausgeführt wird

z.B. PHP, Perl, Python, Basic

Just-in-time-Compiler übersetzt während der Laufzeit eines Programms Teile eines

Programmiersprachenprogramms oder eines Byte-Code-Programms in Teile eines systemspezifischen Maschinensprachenprogramms

z.B. Java

Page 30: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-30 Heiko Weber

Compiler vs. Interpreter: Fehlermeldungen

Compiler Syntaxfehler werden beim Compilieren gemeldet Laufzeitfehler werden beim Ausführen gemeldet Syntaxfehler führen dazu, dass das Programm nicht in

Maschinensprache übersetzt werden kann

Interpreter Syntax- und Laufzeitfehler werden beim Ausführen gemeldet Syntaxfehler bringen das Programm zur Laufzeit zum Abbruch

Page 31: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-31 Heiko Weber

Compiler-Übersetzung

ein Compiler übersetzt die Anweisungen von einer höheren Programmiersprache in die Assembler-Anweisungen für die entsprechende Ziel-Plattform

C-Programm: Assembler:

main() { unsigned int a = 3; unsigned int b = 5; return a + b;}

main:pushq %rbpmovq %rsp, %rbpmovl $3, -8(%rbp)movl $5, -4(%rbp)movl -4(%rbp), %eaxmovl -8(%rbp), %edxaddl %edx, %eaxpopq %rbpret

Page 32: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-32 Heiko Weber

Plattform-spezifisch

Plattform-unabhängig

Compiler-Übersetzung

Programm in höherer Programmiersprache

Compiler(Ahead-of-time Compiler)

Byte-Code

Programm in Maschinensprache

Compiler(Just-in-time Compiler)

Programm in höherer Programmiersprache

Programm in Maschinensprache

Programm in höherer Programmiersprache

Compiler(Ahead-of-time Compiler)

Page 33: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-33 Heiko Weber

Softwaresystem

ein System aus mehreren Softwarekomponenten, die zusammengehören oder zusammenspielen

z.B. das Buchhaltungs-Softwaresystem besteht aus Systemsoftwarekomponenten

Betriebssystem: Linux Laufzeitumgebung: Java-Runtime

Unterstützungssoftwarekomponenten Web-Plattform: Tomcat Datenbanksystem: MySQL

Anwendungssoftwarekomponenten Buchhaltungssoftware Browser: Firefox

Page 34: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-34 Heiko Weber

Softwarearchitektur

beschreibt die Anordnung und das Zusammenspiel der verschiedenen Komponenten innerhalb eines Softwaresystems

ein einfaches und grobes Beispiel ist:

Betriebssystem: Linux

Laufzeitumgebung: Java-RuntimeWeb-Plattform: Tomcat

Buchhaltungsprogramm Browser:Firefox

Datenbanksystem:MySQL

Page 35: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-35 Heiko Weber

Softwaredokumentation

Benutzungsdokumentation beschreibt die Software aus Sicht der Benutzung oft unterteilt in folgende Teilbereiche:

Installationsdokumentation Anwendungsdokumentation Betriebsdokumentation

Entwicklungsdokumentation beschreit die Software aus Sicht der Entwicklung oft unterteilt in folgende Teilbereiche:

Anforderungsdokumentation Architekturdokumentation Quellcodedokumentation Testdokumentation

Page 36: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-36 Heiko Weber

Anforderungsdokumentation

Kundenanforderungen (Lastenheft) Anforderungen aus Sicht des Auftraggebers/Kunden

Entwicklungsanforderungen (Pflichtenheft) Anforderungen aus Sicht der Entwicklung technische Anforderungen

wichtige Qualitätseigenschaften Konsistenz, Vollständigkeit, Korrektheit, Eindeutigkeit,

Überprüfbarkeit, Änderbarkeit, Verfolgbarkeit, Priorisierung, Verständlichkeit

Page 37: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-37 Heiko Weber

Architekturdokumentation

beschreibt die Softwarearchitektur

notwendig, um den Gesamtüberblick zu behalten, aber auch um die Details festzulegen

meistens eine Kombination aus textuellen und graphischen Notationen

gängige graphische Notationen Struktogramme (Kasten/Linien/Pfeil-Diagramme) Universal Modeling Language (UML)

Page 38: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-38 Heiko Weber

Quellcodedokumentation

Quellcode = Programmdateien in einer Programmiersprache

beschreibt die Programmierschnittstellen im Detail (in der Architektur-

dokumentation sind sie evtl. schon oberflächlich beschrieben) beschreibt die interne Funktionsweise des Programms

extern Dokumente zusätzlich zum Quellcode

inline Dokumentation im Quellcode spezielle Formate ermöglichen automatische Generierung von

externen Dokumenten basierend auf der inline-Dokumentation z.B. Doxygen, Javadoc oder PHPDoc

Page 39: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-39 Heiko Weber

Kommentare im Quellcode

spezielle Bereiche im Quellcode, die nur dazu dienen, dass Menschen das Programm besser verstehen

werden vom Compiler/Interpreter ignoriert

Kommentarzeilen alles ab dem Beginn des Kommentars, bis zum Ende der Zeile z.B.

# Konfiguration // hier wird der Durchschnitt berechnet

Kommentarblöcke Kommentarbereiche, die mehrere Zeilen lang sein können z.B.

/* diese Zeile wird vom Compiler ignoriertund diese auch */

Page 40: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-40 Heiko Weber

Testdokumentation

beschreibt die Testfälle und Testergebnisse

Testspezifikation beschreibt die Testfälle und wie die Testfälle ausgeführt werden

Testbericht Übersicht der ausgeführten Tests und der Ergebnisse der Tests enthält meist noch einen zusammenfassenden Abschlussbericht

Page 41: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-41 Heiko Weber

Klassische Phasen der Softwareentwicklung

Anforderungsanalyse

Entwurf

Implementierung

Überprüfung

Installation und Abnahme

Betrieb und Wartung

Page 42: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-42 Heiko Weber

Softwareentwicklungsphase: Anforderungsanalyse

Ermittlung Sammeln der Anforderungen gemeinsames Verständnis zwischen Auftraggeber und

Auftragnehmer herstellen Anwendungssicht vs. technische Sicht

Strukturierung und Abstimmung Anforderungen klar strukturiert festhalten

Prüfung und Bewertung Überprüfen, ob die Anforderungen stimmig sind

Anforderungsdokumentation

Page 43: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-43 Heiko Weber

Softwareentwicklungsphase: Entwurf

basierend auf den Anforderungen wird die Softwarearchitektur erstellt

Festlegen, mit welchen Programmstrukturen, Programmiertechniken und Algorithmen die Anforderungen erfüllt und programmiert werden sollen

wenn die Software eine graphische Benutzeroberfläche hat, wird diese auch in der Entwurfsphase festgelegt

GUI = Graphical User Interface

Ziel: die Komplexität der Software für die Programmierer handhabbar machen

Architekturdokumentation (+ GUI-Design)

Page 44: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-44 Heiko Weber

Softwareentwicklungsphase: Implementierung

Umsetzung der Architekturdokumentation und evtl. des GUI-Designs in ein Programm (Anweisungen in einer oder mehreren Programmiersprachen)

bei der Implementierung wird meist eine Entwicklungsumgebung benutzt, die es ermöglicht, einfacher Programme zu schreiben und Programmfehler zu finden

Programm + Quellcodedokumentation

Page 45: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-45 Heiko Weber

Softwareentwicklungsphase: Überprüfung

auch als „Validierung und Verifikation“ bezeichnet

Tests Überprüfen, ob die Software die definierten Anforderungen erfüllt allgemeine Qualität überprüfen

Stabilität Benutzerfreundlichkeit Sicherheit Performance

Testdokumentation

Page 46: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-46 Heiko Weber

Softwareentwicklungsphase: Installation und Abnahme

Installation der Software auf dem Zielsystem

typischerweise auch spezielle Konfiguration für die speziellen Anwendungsbedürfnisse

evtl. auch Installation weiterer abhängiger Software und Hardware Schulung der Anwender

Abnahme durch Auftraggeber

Page 47: IT- und Medientechnik - weber-vorlesung.de · Zentraleinheit (CPU) Prozessor Bus-System Ausgabegeräte Lautsprecher Monitor Speicher Arbeitsspeicher Headset USB-Stick USB-Surf-Stick.

IT- und Medientechnik 16.10.20171-47 Heiko Weber

Softwareentwicklungsphase: Betrieb und Wartung

Betrieb der eigentliche Einsatz der Software

Wartung Behebung von Fehlern Installation von neuen Versionen