| Reinert, Döring |
Die Praktikumsplätze werden über ein besonderes Anmeldeverfahren vergeben. Beachten Sie dazu die Hinweise auf der Webseite des Studienbüros zum Softwarepraktikum. In diesem Praktikum werden Algorithmen zur Sequenzanalyse implementiert, und zwar im Rahmen Software-Bibliothek SeqAn, die zur Zeit in unserer Arbeitsgruppe entwickelt wird. Diese Veranstaltung richtet sich an Studierende der Bioinformatik. Gute Kenntnisse in C/C++ werden vorausgesetzt. (KVV) | ||||||

Hinweis
Die Präsentationen sind am 28.04.2008.Inhalt
In diesem Praktikum werden Algorithmen zur Sequenzanalyse implementiert, und zwar im Rahmen Software-Bibliothek SeqAn, die zur Zeit in unserer Arbeitsgruppe entwickelt wird. Das Thema des diesjährigen Projektes wird die Entwicklung eines Assemblierungsprogrammes für whole genome shotgun reads sein. Vorgesehen sind die folgenden Module: 1) Projektmanagement 2) de-novo repeat detection 3) filter for overlap computation 4) overlapper and construction of overlap graph 5) fragment layout and contig construction 6) scaffolding and consensus 7) repeat resolution. Benotet werden die Beiträge anhand eines schriftlichen Projektberichtes. Zum gleichen Modul gehört ein Begleitseminar, das von den Teilnehmern des Praktikums ebenfalls belegt werden muss.Voraussetzungen: Gute Kennnisse in C/C++. Der Blockkurs "C++ für Fortgeschrittene" sei allen Teilnehmern dieses Softwarepraktikums dringend ans Herz gelegt.
Das Begleitseminar zum Projektmanagement im Softwarebereich Seqan ist wie folgt aufgebaut: Die Termine sind vorläufig und werden nach Raumreservierung auf der Veranstaltungswebseite aktualisiert.
- Do 27.03.2008: Block 1 vermittelt Prinzipien und Werkzeuge des Softwaredesigns (Pflichtenheft, Zeitpläne, etc.), Werkzeuge zum Programmieren (Bug-tracking Systeme, Debugger, Profiler, Memory analyzer, documentation tools), sowie eine Einführung in make/VC++ project files und einen Überblick über Seqan OpenMS.
- Mo. 07.04. - Fr. 11.04.2008: C++ Blockkurs (nicht vorgeschrieben aber sehr zu empfehlen für Teilnehmer die nicht in C++ bewandert sind).
- Mo. 14.04. - Fr. 18.04.2008: (genaue Terminabsprache erfolgt) Block 2 behandelt das SeqAn-Tutorial. Geplant sind Einheit 1 (sequences, files, searching), Einheit 2 (alignments, multiple alignments), Einheit 3 (Indices), Einheit 4 (graphs), Einheit 5 (Aufgabenverteilung zum Praktikum).
- c.a. 18.04. - 28.04.2008: Ausarbeitung und Präsentation des Projektplans (zählt für alte Studienordnung als Benotung für das Begleitseminar).
- c.a. 28.04. - 07.06.2008: Programmieren und Dokumentieren der Module, Erstellen eines Abschlussberichtes. ACHTUNG: in der neuen Studienordnung ist diese Veranstaltung nicht gesondert zu betrachten. Die Prüfungsleistung wird durch eine Präsentation des Abschlussberichtes geleistet.
- Mi. 28.05.2008, 13:30 Uhr: Treffen im Raum 017 (Bioinformatik-Pool)
Aufgabenverteilung
- Fragment Store (Jevgeni Erehman)
- Repeat Screener (Stefan Mendt)
- Overlap Filter (Björn Oliver Gohlke)
- Overlapper (Jan Popko)
- Overlap Graph Construction (Ilkay Sakalli)
- MST Based Layout (René Märker)
- Contig Graph (Jochen Singer)
- Scaffolder (Matthias Lienhard)
- Repeat Resolution (Elke Weber)
- Consensus, N50 (Marcus Schroeder)
Files
SoftwareEngineering.ppt (1.54 MB)
ProgrammingTools.ppt (641 KB) ,
ProgrammingTools_Examples.zip (527 KB)
Exercises:
- Finden Sie die Fehler in der Datei "files\whitebox\whitebox.cpp" (es sind mindestens drei).
- Korrigieren Sie die Fehler aus Exercise 1 mit minimalen Änderungen und generieren Sie einen Patch mit dem "diff"-Tool unter Linux.
SeqAnIntroduction.ppt (1.46 MB)
windows_runtime_demo.cpp (1 KB)
Links
- www.seqan.de: Homepage von SeqAn. Hier gibt es alle Informationen sowie aktuelle Snapshots der Bibliothek zum herunterladen.
- SeqAn Dokumentation: Die Doku des letzten SeqAn Releases.
- SeqAn Trac: System für Fehlerreports in SeqAn und direkter Einblick in den aktuellen Entwicklungsstand des Projekts. Hier könnt ihr Fehler melden, wenn ihr welche gefunden habt.
- Fortgeschrittenes C++: Homepage zum Blockkurs vom 07.04 - 11.04.2008.
- dddoc Doku: Dokumentation zum in SeqAn verwendeten Dokumentationssystem dddoc für generisches C++ Programmieren.