Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

Praktikum angewandte Systemsoftwaretechnik (PASST) SS 2017

PASST ist das Praktikum im Bachelorstudium Informatik des Lehrstuhls für Verteilte Systeme und Betriebssysteme. Zum ähnlich benannten Master-Projekt "PASST_MA" gehts hier.

News

2017-04-10: Anmeldung: ab 2017-04-18 00:00 im WAFFEL
2017-04-10: Vorbesprechungstermin: 2017-04-27 14:00 in Raum 0.035-113
2017-10-26: Blockpraktikum: 2018-03-05P2018-03-16

Praktikum im Informatik-Bachelor

Das Schwerpunktthema ist „Softwareentwicklung im Umfeld des Linux-Kerns“.

Im Praktikum wird Software im und rund um den Linux-Systemkern entwickelt. Dabei werden insbesondere folgende Kenntnisse vermittelt:

  • Funktionsweise der Konfigurations- und Übersetzungssysteme des Linux-Kernel
  • Umgang mit Patchverwaltungs- (Quilt) und Versionskontrollsystemen (Git)
  • Fehlersuche und -behebung in Systemsoftware (Vorgehensweise, QEMU, KGDB, etc.)
  • Benutzung von internen Schnittstellen des Systemkern
  • Arbeitsmethoden der Open-Source Community (Wie bekomme ich einen Patch akzeptiert?)

Aufbau:

  • Wöchentlich: Seminar (1,5 Stunden)
  • Zweimal wöchentlich: Rechnerübung
  • Verschiedene Aufgaben um die Theorie praktisch zu vertiefen
  • Zweiwöchiges Blockpraktikum

Ziel des Praktikums ist die Entwicklung eigener Software im Umfeld des Linux-Kernels, systemnaher Open-Source-Software oder forschungsrelevanter Software aus den Forschungsschwerpunkten des Lehrstuhls.

Das Praktikum [P_PASST] wird mit 10 ECTS angerechnet.

Seminar

Termin Thema Woche vom 1up Betreuer Material
0 Organisatorisches 2017-04-27 PDF
1 Arbeitsumgebung 1 2017-05-04 PDF
Aufgabe 1 2017-05-04 PDF arw
2 Arbeitsumgebung 2 2017-05-11 PDF
Aufgabe 2: Vorträge: Distributions-Kernel 2017-05-11 PDF arw
3 GIT 2017-05-18 PDF
3 Fehler finden und beheben 2017-06-01 PDF arw
Aufgabe 3 2017-06-01 PDF arw
4 Linux-Upstream-Entwicklung 2017-06-08 PDF arw
Aufgabe 4 2017-06-08 PDF
5 Entwicklung eines Linux-Kernel-Moduls 2017-06-22 PDF arw
Aufgabe 5 2017-06-22 PDF
6 Logic Analyzer 2017-06-29 PDF arw
Aufgabe 6 2017-06-29 PDF
7 GIT bisect 2017-07-06 PDF
7 Blockpraktikumsthemen 2017-07-27 PDF

Dozenten und Betreuer

Wenn Ihr Fragen, Wünsche oder Anregungen habt, schreibt einfach an unsere Mailingliste.


UnivIS-Informationen

Lehrveranstaltung

Praktikum angewandte Systemsoftwaretechnik (PASST)

Dozent/in
Dipl.-Phys. Dipl.-Inf. Alexander Würstlein

Angaben
Praktikum
, benoteter Schein, Anwesenheitspflicht, ECTS-Studium, ECTS-Credits: 10, Sprache Deutsch und Englisch
Zeit und Ort: Do 14:00 - 16:00, 0.035; Mi 16:00 - 18:00, 0.058; Fr 10:00 - 12:00, 0.058; Bemerkung zu Zeit und Ort: Do Tafelübung Anwesenheit stark erwuenscht und teilweise Pflicht (eigene Vorträge); Mi & Fr Rechnerübungen Anwesenheit optional; Blockpraktikum Anwesenheitspflicht zur Gruppenarbeit und Vorträgen

Studienfächer / Studienrichtungen
WPF INF-BA-PR ab 5 (ECTS-Credits: 10)

ECTS-Informationen:
Credits: 10

Zusätzliche Informationen
Schlagwörter: passt linux systemsoftware
Erwartete Teilnehmerzahl: 10, Maximale Teilnehmerzahl: 12
www: https://www4.informatik.uni-erlangen.de/Lehre/SS17/P_PASST/
Für diese Lehrveranstaltung ist eine Anmeldung erforderlich.
Die Anmeldung erfolgt von Dienstag, 18.4.2017, 00:00 Uhr bis Dienstag, 25.4.2017, 18:00 Uhr über: Waffel.

Modul

Praktikum angewandte Systemsoftwaretechnik (PASST)10 ECTS
(englische Bezeichnung: Laboratory on Applied Systems Software Technology)

Modulverantwortliche/r: Jürgen Kleinöder
Lehrende: Alexander Würstlein


Startsemester: SS 2017Dauer: 1 SemesterTurnus: halbjährlich (WS+SS)
Präsenzzeit: 150 Std.Eigenstudium: 150 Std.Sprache: Deutsch

Lehrveranstaltungen:

    • Praktikum angewandte Systemsoftwaretechnik
      (Praktikum, Anwesenheitspflicht, Alexander Würstlein, Do, 14:00 - 16:00, 0.035; Mi, 16:00 - 18:00, 0.058; Fr, 10:00 - 12:00, 0.058; Do Tafelübung Anwesenheit stark erwuenscht und teilweise Pflicht (eigene Vorträge); Mi & Fr Rechnerübungen Anwesenheit optional; Blockpraktikum Anwesenheitspflicht zur Gruppenarbeit und Vorträgen)

Inhalt:

Im Praktikum erlernen und verwenden die Studierenden verschiedene Techniken und Prozesse der systemnahen Softwareentwicklung im OpenSource-Umfeld. Nähere Informationen zum konkreten Inhalt in diesem Semester finden sich auf der unter "Weitere Informationen" verlinkten Veranstaltungsseite.

Lernziele und Kompetenzen:


Fachkompetenz
Anwenden
Die Studenten
  • verstehen Kodierrichtlinien und sind in der Lage diese situationsgemäß anzuwenden

Analysieren
Die Studenten
  • erkunden gegebenen Programmcode grossen Umfangs und hoher Komplexität

  • bestimmen dessen Funktionalität und beschrieben und diskutieren dies

Evaluieren (Beurteilen)
Die Studenten
  • beurteilen Qualität, Korrektheit und Richtlinienkonformität fremder Programme

  • analysieren in Softwaresystemen, insbesondere dem Linux-Kernel auftretende Fehler und Situationsbilder und können solche bewerten und auf ihr Vorkommen testen

  • evaluieren und verwenden geeignete Mittel zur Erkennung der Fehlerursachen

  • verifizieren die korrekte Behebung eines erkannten Fehlers

  • beschreiben, bewerten und kritisieren das eigene und das Vorgehen Dritter bei der Programmentwicklung, Fehlersuche und Integration

Erschaffen
Die Studenten
  • planen und entwickeln Gerätetreiber für PCI- und USB-Geräte für das Betriebssystem Linux

  • planen und entwickeln systemnahe Programme zur Interaktion mit Geräten im Zusammenspiel mit den entwickelten Gerätetreibern

  • konzipieren, planen und entwickeln systemnahe Software, Systemsoftware oder Bestandteile eines Betriebssystemkerns; erstellen Dokumentation und präsentieren ihr Vorgehen

  • erstellen geeignete Maßnahmen (Patche) zur Behebung erkannter Fehler und Probleme

  • erzeugen textuelle Beschreibungen der Fehlerbedingungen, -symptome und -ursachen, der Fehlersuche sowie des Patches nach Kriterien relevanter Open-Source-Projekte in englischer Sprache, die geeignet sind, solche Patche und Beschreibungen an diese Open-Source-Projekte weiterzugeben

  • entwickeln vorbeschriebene Patche und Beschreibungen und reichen diese bei relevanten Open-Source-Projekten ein

  • interagieren mit den externen Entwicklern dieser Projekte mit dem Ziel eingereichtes Material akzeptiert zu bekommen

  • erstellen Analysen und Präsentationen eigener und fremder Arbeit und tragen diese in geeigneter Weise vor einem Fachpublikum vor

Lern- bzw. Methodenkompetenz
Die Studenten
  • verwenden gängige Werkzeuge der Softwareentwicklung im Open-Source-Bereich wie git, gdb, kgdb, qemu/kvm und cscope

  • verstehen deren Funktionsweise

  • verwenden diese erfolgreich in internen Aufgaben und Projekten sowie in der Interaktion mit externen Entwicklern

  • interpretieren Code im Hinblick auf dessen vorgesehene Funktion, mögliche Fehler, sinnvolle Erweiterungspunkte und Qualitätsaspekte

  • stellen technische, methodische und soziale Sacheverhalte geeignet dar

Selbstkompetenz
Die Studenten
  • sind in der Lage mit Kritik und Änderungswünschen umzugehen

  • überwinden Berührungsängste im Kontakt mit externen Dritten

  • bringen sich konstruktiv und produktiv in Open-Source-Projekte ein

Sozialkompetenz
Die Studenten
  • organisieren selbständig die gemeinsame Bearbeitung der Übungsaufgaben und lösen diese kooperativ in kleinen Gruppen

  • kommunizieren erfolgreich in englischer Sprache mit Betreuern und mit externen Entwicklern unter Einhaltung relevanter Protokolle im Open-Source-Umfeld

  • gehen professionell mit Kritik an eigener Arbeit um und beziehen berechtigte Kritik in ihre zukünftige Arbeitsweise ein

  • verhalten sich angemessen beim kritisieren fremder Arbeit gegenüber dem Ersteller dieser Arbeit oder Dritten

  • erkennen und befolgen geschriebene und ungeschriebene Regeln im Umfeld relevanter Open-Source-Projekte; verhalten sich angemessen bei möglichen Konfliktsituationen


Weitere Informationen:

www: http://www4.informatik.uni-erlangen.de/Lehre/SS17/P_PASST/

Verwendbarkeit des Moduls / Einpassung in den Musterstudienplan:
Das Modul ist im Kontext der folgenden Studienfächer/Vertiefungsrichtungen verwendbar:

  1. 079#72#H
    (Po-Vers. 2007 | TechFak | Informatik (1. Staatsprüfung für das Lehramt an Hauptschulen) | Module Fachwissenschaft Informatik | Praktikum Informatik)
  2. 079#74#H
    (Po-Vers. 2013 | TechFak | Informatik (1. Staatsprüfung für das Lehramt an Mittelschulen) | Module Fachwissenschaft Informatik | Praktikum Informatik)
  3. Berufspädagogik Technik (Master of Education)
    (Po-Vers. 2010 | TechFak | Berufspädagogik Technik (Master of Education) | Studienrichtung Elektro- und Informationstechnik (Masterprüfungen) | Unterrichtsfach (Zweitfach) inkl. Fachdidaktik | Informatik | Praktikum Informatik)
  4. Berufspädagogik Technik (Master of Education)
    (Po-Vers. 2010 | TechFak | Berufspädagogik Technik (Master of Education) | Studienrichtung Metalltechnik (Masterprüfungen) | Unterrichtsfach (Zweitfach) inkl. Fachdidaktik | Informatik | Praktikum Informatik)
  5. Informatik (1. Staatsprüfung für das Lehramt an Gymnasien)
    (Po-Vers. 2007 | TechFak | Informatik (1. Staatsprüfung für das Lehramt an Gymnasien) | Module Fachwissenschaft Informatik | Praktikum Informatik)
  6. Informatik (1. Staatsprüfung für das Lehramt an Realschulen)
    (Po-Vers. 2007 | TechFak | Informatik (1. Staatsprüfung für das Lehramt an Realschulen) | Module Fachwissenschaft Informatik | Praktikum Informatik)
  7. Informatik (Bachelor of Science)
    (Po-Vers. 2007 | TechFak | Informatik (Bachelor of Science) | Gesamtkonto | Praktika und Wahlpflichtbereich (5. / 6. Semester) | Praktikum Informatik)
  8. Informatik (Bachelor of Science): 5-6. Semester
    (Po-Vers. 2009s | TechFak | Informatik (Bachelor of Science) | Seminare, Praktika, Bachelorarbeit | Praktikum Informatik)
  9. Informatik (Bachelor of Science): 5-6. Semester
    (Po-Vers. 2009w | TechFak | Informatik (Bachelor of Science) | Gesamtkonto | Hauptseminare, Praktika, Bachelorarbeit | Praktikum Informatik)

Studien-/Prüfungsleistungen:

Praktikum angewandte Systemsoftwaretechnik (Prüfungsnummer: 113845)

(englischer Titel: Laboratory on Applied Systems Software Technology)

Prüfungsleistung, Praktikumsleistung, benotet, 10 ECTS
Anteil an der Berechnung der Modulnote: 100.0 %
weitere Erläuterungen:
Es sind semesterbegeleitend sechs Übungsaufgaben zu bearbeiten. In der vorlesungsfreien Zeit findet ein Blockpraktikum statt (2 Wochen, Programmierung und zwei Vorträge a ca. 15 Minuten). Arbeit in 2er-Teams.
Übungsaufgaben, Programmierung im Blockpraktikum und Vorträge werden bepunktet. Die Note ergibt sich auf Basis der erreichten Punkte. Gewichtung Übungsaufgaben/Blockpraktikum 40/60.

Erstablegung: SS 2017
1. Prüfer: Jürgen Kleinöder