Bachelor-Praktikum - Cheatsheet.pdf

Bachelor-Praktikum - Cheatsheet
Kollaboration und Kommunikation in Teamarbeit verbessern Definition: Verbesserung der Zusammenarbeit und Kommunikation in Teamprojekten durch Methoden und Werkzeuge. Details: Effektive Kommunikation: Regelmäßige Meetings, klare und prägnante Botschaften. Tools: Nutzung von Plattformen wie Slack, Trello, GitHub. Rollenklarheit: Klare Rollenverteilung und Verantwortungsbereiche. Feedback-Kultur: Kon...

© StudySmarter 2024, all rights reserved.

Kollaboration und Kommunikation in Teamarbeit verbessern

Definition:

Verbesserung der Zusammenarbeit und Kommunikation in Teamprojekten durch Methoden und Werkzeuge.

Details:

  • Effektive Kommunikation: Regelmäßige Meetings, klare und prägnante Botschaften.
  • Tools: Nutzung von Plattformen wie Slack, Trello, GitHub.
  • Rollenklarheit: Klare Rollenverteilung und Verantwortungsbereiche.
  • Feedback-Kultur: Konstruktives Feedback regelmäßig geben und empfangen.
  • Ziele setzen: SMARTe Ziele (Specific, Measurable, Achievable, Relevant, Time-bound).
  • Dokumentation: Alle wichtigen Informationen dokumentieren und zugänglich machen.

Erstellung und Verwaltung von Projektplänen und Meilensteinen

Definition:

Planung und Verfolgung von Projektfortschritten durch detaillierte Zeitpläne und Festlegung von Zwischenzielen.

Details:

  • Projektplan: Enthält Aufgaben, Zeitrahmen, Verantwortlichkeiten.
  • Meilenstein: Wichtige Etappen im Projektverlauf zur Kontrolle des Fortschritts.
  • Tools: Gantt-Diagramme, Netzpläne.
  • Projektphasen klar definieren und zeitlich festlegen.
  • Regelmäßige Überprüfung und Anpassung des Projektplans.
  • Kommunikation der Meilensteine an alle Beteiligten.
  • Verwendung von Software zur Verwaltung (z.B. MS Project, Jira).

Risikomanagement und Ressourcenplanung im Projektmanagement

Definition:

Identifikation, Bewertung und Kontrolle von Risiken sowie effiziente Zuweisung und Nutzung von Ressourcen zur erfolgreichen Projektdurchführung.

Details:

  • Risikoanalyse: Identifikation und Bewertung möglicher Risiken.
  • Risikomatrix: Darstellung von Risikoauswirkungen und -wahrscheinlichkeiten.
  • Risikostrategien: Vermeidung, Minderung, Transfer, Akzeptanz.
  • Ressourcenplanung: Identifikation benötigter Ressourcen (Personal, Material, Zeit).
  • Ressourcenzuweisung: Zuordnung der Ressourcen zu Projektaufgaben.
  • Kapazitätsplanung: Sicherstellung ausreichender Ressourcenverfügbarkeit.
  • Monitoring: Überwachung und Anpassung der Ressourcen und Risiken während des Projekts.
  • Tools: Software-Tools wie MS Project oder Jira zur Unterstützung.

Verwendung von Jira oder Trello für Teamkoordination

Definition:

Verwenden von Jira oder Trello zur Teamkoordination im Bachelor-Praktikum im Informatikstudium an der TU München.

Details:

  • Jira: Komplexes Projektmanagement-Tool, gut für große Teams, bietet umfangreiche Funktionen zur Aufgabenverfolgung, Zeiterfassung, und Berichterstellung.
  • Trello: Einfaches und visuelles Kanban-Board, gut für kleinere Teams und einfache Projekte, ermöglicht einfache Aufgabenverwaltung mittels Karten und Listen.
  • Beide Tools unterstützen Kollaboration, Transparenz und Effizienz im Team durch zentrale Dokumentation und Kommunikationsmöglichkeiten.
  • Wahl des Tools abhängig von Projektgröße, Teamgröße und Komplexität der Aufgaben.

Testen, Debuggen und Code-Review in der Softwareentwicklung

Definition:

Testen: Überprüfung der Software auf Fehler. Debuggen: Fehleranalyse und -behebung im Code. Code-Review: Prüfung des Codes durch andere Entwickler auf Qualität und Fehler.

Details:

  • Testen: Verwendung von Unit-Tests, Integrationstests und Systemtests, um sicherzustellen, dass die Software korrekt funktioniert.
  • Debuggen: Einsatz von Debugging-Tools (z.B. GDB, Visual Studio Debugger), um Laufzeitfehler zu identifizieren und zu beheben.
  • Code-Review: Peer-Review-Prozess zur Verbesserung der Codequalität; beinhaltet Überprüfung auf Einhaltung von Coding-Standards, Effizienz und potenzielle Fehler.

Analyse und Entwurf von Algorithmen mit Komplexitätsanalyse

Definition:

Analyse und Entwurf von Algorithmen, Verständnis der Effizienz anhand von Komplexitätsanalysen.

Details:

  • Algorithmusentwurf: Systematisches Entwickeln von Algorithmen zur Problemlösung.
  • Komplexitätsanalyse: Untersuchung der Laufzeit und Speicherbedarf eines Algorithmus.
  • Asymptotische Notationen: \textbf{O-Notation} (obere Schranke), \textbf{Ω-Notation} (untere Schranke), \textbf{Θ-Notation} (exakte Schranke).
  • Best Case, Worst Case, Average Case: Verschiedene Szenarien der Analyse.
  • Amortisierte Analyse: Durchschnittliche Performance über eine Sequenz von Operationen.
  • Recurrences: Lösen von Wiederholungsformeln mit Techniken wie Master-Theorem.
  • Greedy-Methoden, Divide-and-Conquer, Dynamic Programming als Entwurfsparadigmen.

Verwendung und Implementierung grundlegender Datenstrukturen wie Arrays, Listen und Bäume

Definition:

Verwendung und Implementierung grundlegender Datenstrukturen wie Arrays, Listen und Bäume.

Details:

  • Arrays: Fixe Größe, schneller Zugriff per Index \texttt{O(1)}, Einfügung/Löschung \texttt{O(n)}.
  • Listen: Dynamische Größe, sequentieller Zugriff \texttt{O(n)}, konstanter Einfüge-/Löschzeit \texttt{O(1)} bei bekannten Positionen (z.B. am Anfang/Ende).
  • Bäume: Hierarchische Struktur, Bsp. Binärbaum, AVL-Baum. Effizientes Suchen, Einfügen, Löschen \texttt{O(\texttt{log}\thinspace n)}.
  • Implementierung: Arrays mit vordefiniertem Speicher; Listen mit Knoten (Werte, Zeiger); Bäume rekursiv mit Knoten (Wert, linker/rechter Kindknoten).

Optimierung von Datenstrukturen und Datenzugriffszeiten

Definition:

Optimierung von Datenstrukturen und Datenzugriffszeiten bezieht sich auf die Verbesserung der Speicher- und Zugriffsmechanismen für effizientere Datenverarbeitung.

Details:

  • Wähle geeignete Datenstrukturen: Arrays, Listen, Stacks, Queues, Bäume, Hash-Tabellen
  • Berücksichtige Zugriffszeiten: O(1), O(log n), O(n), O(n log n), O(n^2)
  • Nutze Caching und Zwischenspeicherung
  • Vermeide unnötige Datenkopien und -bewegungen
  • Verwende Algorithmen zur Speicherverwaltung
  • Betrachte Speicherlokalität (Cache-Speicher-Nutzung)
  • Optimierung durch geeignete Indexstrukturen
  • Multithreading und parallele Zugriffe
  • Profiliere und analysiere Performance
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden