Software und ihre Entwicklung In diesem Kapitel Grafische Benutzeroberflächen Einblicke: Software-Entwicklung Agile Software-Entwicklung mit Scrum Verteilte Versionsverwaltung – Git q Startseite 9. Software und ihre Entwicklung 1. Grafische Benutzeroberflächen + 1. Benutzerfreundlichkeit + 1. Erkundung - Programme zum Zahlenraten + 2. Fachkonzept - Software-Ergonomie + 3. Übungen + 2. Aufbau und Verhalten + 1. Erkundung - Analyse einer grafischen Benutzeroberfläche + 2. Fachkonzept - Grafische Benutzeroberfläche + 3. Fachkonzept - GUI-Objekt + 4. Fachkonzept - Ereignisgesteuerter Programmablauf + 5. Exkurs - Fehlerbehandlung + 6. Übungen + 3. Miniprojekt - chuck-a-luck + 1. Das Spiel chuck-a-luck + 2. Konzeption einer grafischen Benutzeroberfläche + 3. Implementierung einer GUI + 1. Erzeugung eines Fensters + 2. Anzeige von Text und Daten + 3. Anklicken von Schaltflächen + 4. Eingabe von Daten + 5. Gestaltung des Layouts + 6. Auswahlmöglichkeit mit Radiobutton + 7. Einbindung von Bildern + 8. (De)Aktivierung von Komponenten + 9. Eine Leinwand für Grafiken + 10. Verarbeitung von Ereignissen + 11. Animation mit einem Timer + 4. Exkurs - Glücksspiele + 4. GUI-Entwicklung mit tkinter + 1. Erzeugung eines Fensters + 2. Anzeige von Text und Daten + 3. Anklicken von Schaltflächen + 4. Eingabe von Daten + 5. Gestaltung des Layouts + 1. Der place-Manager + 2. Der pack-Manager + 3. Der grid-Manager + 6. Einbindung von Bildern + 7. Eine Leinwand für Grafiken + 8. Animation mit einem Timer + 9. Verarbeitung von Ereignissen + 1. Das Grundschema der Ereignisverarbeitung + 2. Beschreibung von Ereignissen + 3. Behandlung von Ereignissen + 10. Datenverwaltung mit Kontrollvariablen + 11. Auswahlmöglichkeiten + 1. Auswahl mit Radiobutton + 2. Auswahl mit Checkbutton + 3. Auswahl aus einer Listbox + 12. Ein Textfeld + 13. Fenster und Dialoge + 1. Fenster öffnen und schließen + 2. Messagebox-Fenster + 3. Dialogfenster + 5. GUI-Entwicklung mit wxPython + 1. Erzeugung eines Fensters + 2. Anzeige von Text und Daten + 3. Anklicken von Schaltflächen + 4. Eingabe von Daten + 5. Gestaltung des Layouts + 6. Verarbeitung von Ereignissen + 7. Auswahlmöglichkeit mit Radiobutton + 8. Einbindung von Bildern + 9. Eine Leinwand für Grafiken + 10. Exkurs - GUI-Entwicklung mit PythonCard + 1. Eine mit PythonCard erzeugte GUI + 2. Eine GUI aus GUI-Objekten + 3. Eine Klasse zur Verwaltung der GUI-Objekte + 4. Noch eine Klasse zur Aufteilung der Zuständigkeiten + 6. GUI und Datenmodell + 1. Datenverwaltung mit GUI-Objekten + 2. Datenverwaltung mit globalen Variablen + 3. Datenverwaltung mit Datenmodellobjekten + 7. Miniprojekte + 1. Einstieg - Hinweise zur Vorgehensweise + 2. Miniprojekt - Ein Merktest + 3. Miniprojekt - Das Ziegenproblem + 4. Miniprojekt - Ein einfacher Taschenrechner + 5. Miniprojekt - Ein Geschicklichkeitsspiel + 6. Miniprojekt - Ein Adventskalender 2. Einblicke: Software-Entwicklung + 1. Projekt Lernkartei + 1. Projekt - Auftrag + 2. Projekt - Anforderungsanalyse + 3. Exkurs - Anforderungsanalyse + 4. Projekt - Planung der Vorgehensweise + 5. Exkurs - Planung der Vorgehensweise + 6. Projekt - Kernsystem + 1. Projekt - Modellierung der Miniwelt + 2. Exkurs - Modellierung der Miniwelt + 3. Projekt - Modellierung der GUI + 4. Exkurs - Modellierung der GUI + 5. Projekt - Implementierung + 6. Exkurs - Implementierung + 7. Projekt - Testen + 8. Exkurs - Testen + 7. Projekt - Erweiterungen + 1. Projekt - Modellierung + 2. Exkurs - Modellierung + 3. Projekt - Implementierung + 4. + 5. Projekt - Testen + 6. + 8. Projekt - Abnahme + 9. Projekt - Mögliche Weiterentwicklungen + 2. Software-Entwicklung als Prozess + 1. Fachkonzept - Entwicklungsphasen + 2. Fachkonzept - Dokumentation + 3. Fachkonzept - Vorgehensmodelle + 3. Software als Produkt + 1. Einstieg - Fehler in der Software + 2. Einstieg - Kosten für Software + 3. Exkurs - Softwarefehler + 4. Exkurs - Gütekriterien für Software + 5. Exkurs - Verantwortlichkeit für Software + 6. Exkurs - Softwarelizenzen + 4. Projektvorschläge + 1. Projekt - Galton-Brett + 2. Projekt - Bruchrechen-Trainer + 5. Projektbeispiele + 1. Projekt - Autocell + 1. Projekt - Anforderungsanalyse + 2. Projekt - Systemmodellierung 3. Agile Software-Entwicklung mit Scrum + 1. Das Papierfliegerspiel Start Vorbereitung Planung Durchführung Review Retro Sprint Recap + 2. Exkurs in die Produktentwicklung Start Eine andere Zeit Handyentwicklung Einige Fragen Features in der Zukunft Das Wasserfallmodell Darum Scrum + 3. Kommunikation + 1. Stakeholder + 2. Alltag einer Softwareentwicklerin + 3. Stakeholder in Scrum + 4. Meetings + 5. Das Bauklotzspiel + 4. Planung und Requirements + 1. Komplexität der Planung + 2. Voraussetzungen + 3. User Stories + 4. Das Scrum Board + 5. Das Schokoriegelspiel 4. Verteilte Versionsverwaltung – Git + 1. Einführung + 2. Arten von Versionierungsprogrammen + 3. Repository Struktur + 4. Lokale Repositories + 1. Initialisieren eines git-Projektes + 2. Einchecken mit add und commit + 3. Auschecken mit reset und checkout + 4. Versionsverwaltung + 5. GUIs + 6. Branches + 7. Merge + 5. Remote Repositories + 1. Server + 2. Klonen eines Repositories mit git clone + 3. Upload vom lokalen ins remote Repository mit git push + 4. Download vom remote ins lokale Repository mit git pull + 5. Forks