Informationen zu den Vertiefungen Softwaretechnik in den Studiengängen BS / MS Informatik und zug. Mentorengenehmigungen

Beratungstermine vergebe ich jeweils montags von 14-16 Uhr. Termine können bei Frau Zetsche (740-2612, täglich 8-12 Uhr) reserviert werden. Vorher bitte diese Seite lesen!

Inhalt:





Die Vertiefung Softwaretechnik im Studiengang BS Informatik

Der Bachelor of Science (BS) Studiengang Informatik (gem. Prüfungsordnung von 2012) hat ein Gesamtvolumen von 180 Leistungspunkten entsprechend 6 Semestern Regelstudienzeit. Hiervon sind gewidmet

Es stehen mehrere Vertiefungen zur Auswahl. Viele davon sind Nebenfächer in dem Sinn, daß in einem zweiten Fachgebiet, z.B. Elektrotechnik, Grundlagenwissen erworben wird und auf solche Themen fokussiert wird, bei denen mit Informatik-Methoden Probleme in diesen Fachgebiet gelöst werden können. Das Nebenfach spielt also die Rolle eines Anwendungsgebiets.
Im Gegensatz dazu verbreitert und vertieft die Vertiefung Softwaretechnik das Informatik-Wissen. Die Verbreiterung betrifft Informatik-Themen, die aus Platzgründen im Volumen von 135 LP nicht mehr unterzubringen waren, namentlich:

Diese Themen bedingen durchweg ein gewisses Maß an Programmiererfahrung, d.h. an entsprechende Lehrveranstaltungen kann frühestens ab dem 3. Fachsemester teilgenommen werden.

Module im Studienbereich Vertiefung Softwaretechnik

  1. Pflichtmodul Softwaretechnik-Praktikum (Details s.u,.), 15 LP
  2. Pflichtmodul Theorie-Kernfach (SP I oder demnächst Logik I), 5 LP
  3. weitere Wahlpflichtmodule im Umfang von 25 LP, insb. solche, die Methoden der Software- bzw. System-Entwicklung behandeln.

Softwaretechnik-Praktikum

Das Softwaretechnik-Praktikum ist eine Mischung aus einer studentischen Projektgruppe (Anteil ca. 13 LP) und einer Kompaktvorlesung über Projektmanagement (ca. 2 LP). Die Kompaktvorlesung findet zu Beginn des Praktikums statt, die dort vermittelten Methoden sollen dann in der praktischen Arbeit angewandt und reflektiert werden.

Das Softwaretechnik-Praktikum dauert 2 Semester, Beginn jeweils im Wintersemester (4. oder 5. Fachsemester bei Studienbeginn im Sommer bzw. Winter), Ende jeweils im Sommersemester zum Ende der Vorlesungszeit,

Der Gesamtaufwand von 15 LP teil sich nach Plan wie folgt auf: 10 LP im Wintersemester, 5 LP im Sommersemester.

Die Aufgabe besteht i.d.R. darin, Werkzeuge auf Basis von Eclipse / EMF zu modifizieren oder neu zu erstellen. Hierfür sind folgende Vorkenntnisse unbedingt erforderlich:

Wahlpflichtmodule

Die Wahlpflichtmodule im Umfang von 25 LP können aus einem relativ breiten Katalog gewählt werden:

Vertiefungspraktikum ``Effizientes Programmieren'' (5 LP)

Dieses Vertiefungspraktikum wird jeweils im Sommersemester ab Sommer 2015 angeboten. Es hat sich bei den ersten beiden Durchführungen des Softwaretechnik-Praktikums gezeigt, daß die Teilnehmern auch der o.g. vorausgesetzten Modulen oft nicht genug Erfahrung und Routine haben, um größere Java-Programme realisieren zu können. Gegenstand des Praktikums sind





Verfahren zur Abwicklung von Mentorengenehmigungen im BS und MS Informatik mit Vertiefung Softwaretechnik
Stand: 2015-02-02

Motivation

Das bisherige, auf Papierformularen basierende Verfahren hat einen erheblichen Nachteil: es muß manuell geprüft werden, ob die geplanten Module im vorgesehen Semester tatsächlich angeboten werden. Dies verursacht einen erheblichen Arbeitsaufwand und ist ggf. nicht möglich, weil entsprechende Informationen fehlen. Im Rahmen der Umstellung auf das neue Verfahren wird daher eine (interne) Datenbank eingerichtet, in der die Lehrangebote, die in den nächsten ca. 4 - 6 Semestern kommen werden, dargestellt sind.
Ferner werden viele Bögen unvollständig bzw. lückenhaft ausgefüllt, insofern können Beratungen nur vorläufig sein und müssen ggf. wiederholt werden.

Merkmale und Ablauf des neuen Verfahrens (für die Vertiefung Softwaretechnik)

Bei dem neuen Verfahren muß die Planung des Studiums elektronisch eingereicht werden. Die o.g. Prüfungen werden anhand der Planungsdaten automatisch durchgeführt, bevor ein Beratungstermin angesetzt wird. Im Ordner http://pi.informatik.uni-siegen.de/kelter/mentor/beispiele/ befindet sich eine HTML-Datei, die in einem Web-Browser angezeigt ähnlich aussieht wie die bisherigen Papierformulare (und eine Weiterentwicklung derselben ist). Eine derartige HTML-Datei ersetzt in ausgedruckter und unterschriebener Form die bisherigen PDF-Formulare

Im einzelnen sind folgende Schritte vorgesehen:

  1. Zunächst ist eine individuelle Studienplanung zu erstellen.

    Die künftigen Angebote stehen in: http://pi.informatik.uni-siegen.de/kelter/mentor/lehrangebot/lehrangebot_eti.html.

    Diese Datenbank ist aktuell noch ein Prototyp und enthält noch viele Lücken und vereinzelt Fehler; falls dort Lücken oder Fehler entdeckt werden, bitte melden.

    Für alle Wahlpflichtbereiche sind Module aus den zug. Katalogen zu wählen; zugleich ist für jedes Modul das Semester planen, wann es absolviert werden soll.

  2. Diese Studienplanung ist in einer XML-Datei zu codieren. Eine XML-Datei ist eine (reine) Textdatei (im Gegensatz zu einem Word- oder OpenOffice-Textdokument). Wenn Sie diesen Begriff bisher nicht kennen, lesen Sie bitte unbedingt die untenstehenden Hinweise zum Text- und XML-Dateien.

  3. Ein Beispiel einer konkreten Planung steht im o.g. beispiele-Verzeichnis. Eine allgemeine Vorlage für den BS Informatik mit Vertiefung Softwaretechnik steht hier:
    http://pi.informatik.uni-siegen.de/kelter/mentor/genehmigung/planung_bs_inf_swt_2014w.xml

    Diese Vorlage ist NICHT für andere Vertiefungen benutzbar! Weitere Vorlagen für andere Studiengänge und Vertiefungen erscheinen eventuell später.

    Die Vorlage ist auf einen eigenen Rechner zu kopieren, dort als reine Textdatei zu editieren. Der Dateiname darf keine Sonderzeichen enthalten, also z.B. 20150607_mueller.xml und nicht 20150607_müller.xml.

    Die Planungsdatei sollte in Ihrem Editor ungefähr wie folgender Auszug aussehen:


    <?xml version="1.0" encoding='ISO-8859-1' ?>
    <!-- Namen, Matrikelnummer und Stand eintragen -->
    
    <studienverlauf
      name="NN"
      matikelnummer="XYZ"
      email="xyz@student.uni-siegen.de"
      stand="2015-xx-xx"
      versionsnummer="1"
    
      studiengang="BS Informatik mit Vertiefung Softwaretechnik (PO 2012)"
      studiengangskrzl="bs_inf"
      mentor="Kelter"
    >
    ....
    <studienbereich name="Hauptfach Informatik" >
      <modulgruppe name="Pflichtmodule 1. + 2. Semester" LP="60" >
        <modul krzl="DMI"   semester="2014w" />
        <modul krzl="DuR"   semester="2014w" />
        <modul krzl="AuD"   semester="2014w" />
    
        <modul krzl="OFP"   semester="2015s" />
        <modul krzl="LAI"   semester="2015s" />
        <modul krzl="GTI"   semester="2015s" />
      </modulgruppe>
    ....
    ....
      <erlaeuterungen> Erstgenehmigung
      </erlaeuterungen>
    </studienbereich>
    
    <studienbereich name="Vertiefung Softwaretechnik" >
      <modulgruppe name="Pflichtmodule Vertiefung Softwaretechnik" LP="20" >
        <modul krzl="STP-1" semester="???" />
        <modul krzl="STP-2" semester="???" />
        <modul krzl="SP_I"  semester="???" />
      </modulgruppe>
    ....
    

    In der Vorlage-XML-Datei stehen in den Kommentaren diverse weitere Hinweise, bitte beachten.

    Hinweis: Sofern Ihr Editor die Datei völlig unleserlich mit extrem langen Zeilen angezeigt, suchen Sie bitte einen anderen Editor. Ggf. hilft es, die Datei von planung_bs_inf_swt_2014w.xml nach planung_bs_inf_swt_2014w.txt umzubenennen. Die Probleme werden dadurch verursacht, daß unterschiedliche Betriebssysteme unterschiedliche Steuerzeichen benutzen, um Zeilenenden zu codieren. Die Beispieldateien sind in der UNIX/Linux-Konvention codiert. Es kann sein, daß Ihr Editor dies nicht erkennt, dann wird jeder Absatz zu einer einzigen sehr langen Zeile. In dieser Darstellung sind die Dateien praktisch nicht editierbar, nehmen Sie dann bitte einen anderen Editor, der die Dateien vernünftig darstellt.

  4. Die XML-Datei mit der Studienplanung kann man selber in eine HTML-Datei umwandeln und diese per Druckfunktion in eine PDF-Datei. Details hierzu weiter unten im nächsten Abschnitt.

  5. Die Planungsdatei ist vor dem Mentorengespräch per e-mail an mich zu schicken. Ich übersetze sie selber und drucke sie aus. Schicken Sie mir bitte keine PDF-Datei, sondern die XML-Datei und ggf. zusätzlich die darauf generierte HTML-Datei.

  6. Der Ausdruck mit den Unterschriften von mir und Ihnen ist später im Prüfungsamt Informatik einzureichen.

Erzeugen einer HTML-Datei aus der XML-Datei

Hierzu benötigen sie eine weitere XML-Datei (anzeige_studienplanung.xml, die sozusagen das Hauptprogramm ist und die die 2 Datenquellen integriert:
  1. die Moduldaten; diese werden über diese URL geholt: http://pi.informatik.uni-siegen.de/kelter/mentor/lehrangebot/moduldaten.xml
  2. Ihre privaten Planungsdaten, z.B. die lokale Datei 20150106_mustermann.xml
Die Anzeigedatei hat folgenden Inhalt:
 
<?xml version="1.0" encoding='ISO-8859-1' ?>

<!DOCTYPE anzeige_studienplanung [
  <!ELEMENT anzeige_studienplanung ANY >

  <!ENTITY moduldaten  
    SYSTEM "http://pi.informatik.uni-siegen.de/kelter/mentor/lehrangebot/moduldaten.xml" >

  <!ENTITY studienplanung
    SYSTEM "MEINESTUDIENPLANUNG.xml" >
]>

<?xml-stylesheet type="text/xsl"
  href="http://pi.informatik.uni-siegen.de/kelter/mentor/genehmigung/gen_planung_bs_inf.xslt" ?>
     <!-- Vorsicht: in der href-Attributzuweisung darf vor und hinter dem = kein Leerraum eingefügt werden! -->

<anzeige_studienplanung>
&moduldaten;
&studienplanung;
</anzeige_studienplanung>

Die Anzeigedatei-XML-Datei ist abrufbar unter http://pi.informatik.uni-siegen.de/kelter/mentor/beispiele/anzeige_studienplanung.xml. Hinweis: Wenn Sie diese Link anklicken, erscheint eine scheinbar leere Seite; speichern Sie diese Datei an passender Stelle, diese Datei muß erst editiert werden, um eine Ausgabe im Browser zu erzeugen. Sie können die Datei auch bequem mit dem Linux-Kommando
wget http://pi.informatik.uni-siegen.de/kelter/mentor/beispiele/anzeige_studienplanung.xml
in das lokale Verzeichnis kopieren. Ersetzen Sie in dieser Datei MEINESTUDIENPLANUNG.xml durch den Namen der XML-Datei mit Ihrer Studienplanung.

Die Datei spezifiziert außerdem ein Transformationsskript, das die Eingangsdaten eine HTML-Datei konvertiert, und zwar http://pi.informatik.uni-siegen.de/kelter/mentor/genehmigung/gen_planung_bs_inf.xslt Zum Übersetzen müssen Sie eine Internetverbindung haben.

Die Konversion der Eingabedaten in die HTML-Darstellung kann in vielen Fällen einfach durch den Browser vorgenommen werden, d.h. Sie öffnen die Datei anzeige_studienplanung.xml mit dem Internet-Browser, der Browser übersetzt intern die XML-Datei in einer HTML-Datei und zeigt Ihnen sofort die gerenderte HTML-Datei an. Probieren Sie es aus.

In manchen Fällen klappt das nicht, dann muß die Datei anzeige_studienplanung.xml von Hand mit einem XSLT-Prozessor nach HTML übersetzt werden, z.B. in die Datei anzeige_studienplanung.html. Diese HTML-Datei können Sie dann im Browser anzeigen.

Für die Übersetzung muß ein XSLT-Prozessor lokal installiert sein. Auf Linux-Systemen ist normalerweise xsltproc (/usr/bin/xsltproc) vorinstalliert bzw. kann leicht nachinstalliert werden. In einfachsten Fall übersetzen Sie in der Shell mit folgendem Kommando:

xsltproc anzeige_studienplanung.xml > anzeige_studienplanung.html
Eine Auswahl an kompletten XSLT-Arbeitsumgebungen ist hier gelistet: http://pi.informatik.uni-siegen.de/lehre/2014s/2014s_dbs2_ueb.html

Sofern Fehler auftraten, insb. wenn geplante Lehrveranstaltungen nicht angeboten werden, enthält diese Datei rot markierte Warnungen in der Spalte "geplant / absolviert in Semester".





Die Vertiefung Softwaretechnik im Master-Studiengang Informatik

Die Ausbildung ist hier breit angelegt und soll folgenden Kriterien genügen:
  1. wenigstens ein Modul in theoretischer Informatik
  2. wenigstens ein Modul in technischer Informatik
  3. die restlichen Module ggf. als Vorbereitung zur geplanten Projektgruppe und/oder Masterarbeit
Die Planung ist analog wie beim BS Informatik als XML-Datei einzureichen.
Eine Vorlage für den MS Informatik mit Vertiefung Softwaretechnik steht hier:
http://pi.informatik.uni-siegen.de/kelter/mentor/genehmigung/planung_ms_inf_swt_2014w.xml

In der Datei befinden sich in den Kommentaren weitere Hinweise.





Editieren der Planungs-XML-Dateien

Bitte beachten Sie folgende Hinweise beim Editieren der Planungsdatei:

Technische Hinweise

  1. Eine XML-Datei ist eine (reine) Textdatei. Wenn Sie diesen Begriff nicht kennen, lesen Sie bitte zuerst den Abschnitt Das Editieren von Textdateien

  2. Verwenden Sie zun Editieren von reinen Textdateien nur Text-Editoren, mit denen Sie auch Programm-Quelltexte und ähnliche Dokumente editieren können. Mehr dazu im Abschnitt Das Editieren von Textdateien.

  3. Die erste Zeile der XML-Datei darf nicht gelöscht werden (eine schon mehrfach aufgetretene Ursache "unberwindlicher Probleme") oder verändert werden, sie MUSS so aussehen:

    <?xml version="1.0" encoding='ISO-8859-1' ?>

    Es darf auch keine Leerzeile davor stehen. Wenn Ihr Editor eine andere Zeichensatzcodierung verwendet, können Sie diese statt ISO-8859-1 eintragen.

  4. Sofern Schwierigkeiten bei der Übersetzung auftreten, beachten Sie bitte eventuelle Fehlermeldungen und benutzen Sie irgendeinen Syntaxprüfer für XML-Dateien, z.B. http://www.xmlvalidation.com, um sicherzustellen, daß keine Syntaxfehler vorliegen.

Inhaltliche Hinweise

  1. Verwenden Sie jeweils die neueste Vorlage.

  2. Bei einer Erstgenehmigung ist im Element studienverlauf einzutragen versionsnummer="1".

    Andernfalls ist die laufende Nummer der Genehmigung einzutragen. Die laufende Nummer bezieht sich auf die Versionen, die im Prüfungsamt eingereicht wurden, nicht die Versionen, die im Vorfeld der mentoriellen Beratung ausgetauscht wurden (die kann man durch das Feld Datum unterscheiden).

    Sofern versionsnummer > 1, also bei einer Folgegenehmigung, ist in den erlaeuterungen-Elementen einzutragen, welche Module im Vergleich zur vorherigen Genehmigung wegfallen und welche Module neu hinzukommen.

    Sofern bei einer Folgegenehmigung ein Wahlpflichtblock unverändert bleibt, tragen Sie dort bitte ein keine Änderung.

  3. Bei der Zuordnung eines Moduls zu einem Semester tragen Sie bitte ein, wann das Modul angeboten werden wird bzw. wann es angeboten wurde.
    Falls das Modul in der Vergangenheit liegt und die Prüfung fand in einem anderen Semester statt, spielt das keine Rolle, da unterstellt wird, daß der Hauptarbeitsaufwand beim Besuch der Veranstaltung anfällt,

    Sofern Sie bei einer Prüfung durchgefallen sind, und einen erneuten Besuch der Veranstaltung planen, tragen Sie es beim Semester des neuen Besuchs ein, wenn mehr oder weniger der komplette Arbeitsaufwand dort erneut anfällt, andernfalls beim Semester des ersten Besuchs.

    Anmerkung: durch Wiederholungen von Veranstaltungen entstehen tatsächliche Mehraufwände, deren Umfang man schlecht schätzen kann. Das vorliegende simple Planungssystem hat nicht den Anspruch, diese Mehraufwände bzw. zeitlichen Aufwandsverschiebungen korrekt abbilden zu können (eventuell eine spätere Version).





Das Editieren von Textdateien

In jeder Betriebsumgebung gbt es Werkzeuge, mit denen man Textdateien bearbeiten kann.

Ein Klassiker in UNIX-Betriebssystemen ist emacs, von dem es unzählige vereinfachte Varianten gibt, ferner vi und dessen Varianten.

In vielen Dateisystem-Browsern wird der richtige Editor aufgerufen, wenn die Dateiendung .txt ist. Wenn Sie dies ausnutzen wollen, ändern Sie einfach die die Dateiendung von .xml nach .txt.

Verwenden Sie besser kein Office-Paket zum Editieren der Textdateien, weil das Verhalten dieser Editoren kaum kontrollierbar ist.

Der von Ihnen benutzte Editor muß die Datei komplett und "buchstäblich" anzeigen. Manche Editoren filtern nicht darstellbare Zeichen oder Leerraum aus.





Textdateien

Eine XML-Datei ist eine (reine) Textdatei. Weitere Beispiele solcher Textdateien sind HTML-Dateien, Dateien, die Quellprogramme der üblichen Programmiersprachen enthalten (*.java, *.c usw.), Dateien mit LaTeX-Quelltexten (*.tex), sowie meistens Dateien mit der Endung .txt.

Im Gegensatz dazu sind Word- oder OpenOffice-Textdokumente keine Textdateien.

Technisch ist eine Textdatei ein Byte-Vektor. In jedem (8-Bit-) Byte steht eine binäre Zahl zwischen 0 und 255.

Eine Zeichensatzcodierung ordnet jedem Buchstaben eines Zeichensatzes eine Nummer zu. Bei Zeichensätzen, die maximal 256 Zeichen enthalten, reicht ein Byte, um die Nummer eines Zeichens zu speichern. Ein entsprechender 1-Byte-Zeichensatz ist ISO 8859-1 (s. http://de.wikipedia.org/wiki/ISO_8859-1). Bitte verwenden Sie immer diesen Zeichensatz, er ist überall vorhanden und meist voreingestellt. (Es gibt weitere Zeichensatzcodierungen, die mit 2, 4 oder einer variablen Zahl von Bytes pro Zeichen arbeiten, die wir nicht benötigen.)

Durch eine Zeichensatzcodierung wird eine Textdatei also konzeptuell zu einer Folge von Zeichen. Alle gängigen Zeichensatzcodierungen haben zwei Sonderzeichen, LF (line feed) und CR (carriage return). Diese Begriffe kommen aus der "Steinzeit", als man noch Schreibmaschinen und Blattfernschreiber hatte. Die hatten eine Mechanik, die einen, wenn man am Ende einer Zeile angekommen war, an den Anfang der nächsten Zeile brachte. Hierzu wurde das Blatt Papier eine Zeile nach oben geschoben (line feed) und der Papierträger, der an den Schreibhämmern oder -Köpfen vorbeilief, wieder links auf dem Blatt positioniert (carriage return). Je nach Betriebssystem wird eines der Zeichen oder beide verwendet, um das Ende einer Zeile zu signalisieren. Durch diese Konvention zur Zeilenendekodierung kann man eine Textdatei als Folge von Zeilen, worin jede Zeile eine Folge von Zeichen ist, betrachten. Weitere Informationen finden sich in http://de.wikipedia.org/wiki/Textdatei. Begriffe wie Textdatei, Zeichensatzcodierung und Zeilenendeerkennung gehören zum Grundwissen jedes Informatikers.

Sehr häufig wird Ihnen die eine Textdatei anders angezeigt, als sie tatsächlich gespeichert ist. Beispielsweise werden Quellprogramme in vielen Programmierumgebungen derart angezeigt, daß Schlüsselwörter anders gefärbt angezeigt werden als Bezeichner. Diese Syntaxhervorhebung ist abhängig vom Anzeigewerkzeug und wird automatisch bei der Anzeige erzeugt. Sie ist nicht Teil der Textdatei (im Gegensatz zu einem OpenOffice-Textdokument, in dem Textabschnitte gefärbt und auf diverse Arten modifiziert werden können).