Fortgeschrittenes Programmieren mit Java. Test Driven Development
|
|
|
- Kilian Kohler
- vor 10 Jahren
- Abrufe
Transkript
1 Fortgeschrittenes Programmieren mit Java Test Driven Development Test getriebene Programmierung Benedikt Boeck Hochschule für Angewandte Wissenschaften Hamburg 6. November 2009 B. Boeck (HAW Hamburg) Test Driven Development / 25
2 Inhaltsverzeichnis 1 Theorie Was ist Testgetriebene Entwicklung? Direktiven der Testgetriebenen Entwicklung Entwicklungszyklus 2 Praxis Beispiel: Brief Porto Einblick: Praktikumsaufgabe Verkettete Liste Gedanken Experiment: Cosinus 3 Schluß Fazit B. Boeck (HAW Hamburg) Test Driven Development / 25
3 Theorie Testgetriebene Entwicklung Test Driven Development (TDD), Extreme Testing gehört zum Extreme Programming TDD ist nicht Java spezifisch B. Boeck (HAW Hamburg) Test Driven Development / 25
4 Theorie Was ist Testgetriebene Entwicklung? Was ist Testgetriebene Entwicklung? TDD ist eine qualitätsbewusste Programmiertechnik Entwicklung in kleinen Schritten Unit Tests: Anforderungen an unseren Code Akzeptanztests: Anforderungen des Kunden Dieser Vortrag beschäftigt sich mit den Grundlagen: vor allem den Unit Tests B. Boeck (HAW Hamburg) Test Driven Development / 25
5 Theorie Was ist Testgetriebene Entwicklung? JUnit 4 JUnit ist ein Framework für Java in diesem Vortrag wird JUnit 4 verwendet mini Tuturial: B. Boeck (HAW Hamburg) Test Driven Development / 25
6 Theorie Was ist Testgetriebene Entwicklung? Gründe für TDD Testen ist wichtig Stichwort: Qualitätskontrolle wird jedoch bei der klassichen Vorgenhsweise oft vernachlässigt Testen ist typisch die letzte Phase in Projekten etwas worauf Programmierer keine Lust hat ärgerlich Fehler lange nach ihrer Entstehung zu finden das erste was wegfällt, wenn es zeitlich eng wird selten systematisch Die Idee bei TDD ist es zuerst den Testcode zu schreiben, dabei häufig auszuführen automatisiert wiederholbar B. Boeck (HAW Hamburg) Test Driven Development / 25
7 Theorie Direktiven der Testgetriebenen Entwicklung Direktiven der Testgetriebenen Entwicklung Aufgstellt von Frank Westphal [1] 1 Motivieren Sie jede Änderung des Programmverhaltens durch einen automatisierten Test. 2 Bringen Sie Ihren Code immer in die einfache Form. 3 Integrieren Sie Ihren Code so häufig wie nötig. B. Boeck (HAW Hamburg) Test Driven Development / 25
8 Theorie Direktiven der Testgetriebenen Entwicklung 1. Direktive - Testgetriebene Programmierung Motivieren Sie jede Änderung des Programmverhaltens durch einen automatisierten Test. der Test kommt vor dem Programmcode jede Änderung in der Programmfunktionalität, wird zuerst durch einen Test gefodert B. Boeck (HAW Hamburg) Test Driven Development / 25
9 Theorie Direktiven der Testgetriebenen Entwicklung 2. Direktive - Refactoring Bringen Sie Ihren Code immer in die einfache Form. Ziel einfachen und sauberen Code zu erhalten d.h. Code Pflege B. Boeck (HAW Hamburg) Test Driven Development / 25
10 Theorie Direktiven der Testgetriebenen Entwicklung 3. Direktive - Häufige Integration Integrieren Sie Ihren Code so häufig wie nötig. Wenn Software im Team entwickelt wird, regelmäßiges agbgleichen Um Konflikte früh zu erkennen B. Boeck (HAW Hamburg) Test Driven Development / 25
11 Theorie Entwicklungszyklus Entwicklungszyklus 1 Test schreiben, dieser sollte zunächst fehlschlagen 2 Code schreiben, gerade so viel das der Test fehlschlägt 3 Code schreiben, gerade so viel das alle Tests laufen Refactoring: Code aufräumen/vereinfachen, und mit vorhandenden Test gegenprüfen B. Boeck (HAW Hamburg) Test Driven Development / 25
12 Theorie Entwicklungszyklus Ausnahmen 1 Unerwarteter Erfolg: Der Test läuft, obwohl er eigentlich fehlschalgen sollte Code erfüllt bereits die Anfoderungen Der Test ist fehlerhaft 2 Unerwarteter Fehlschlag: Der Test schlägt fehl, obwohl er eigentlich laufen sollte 3 Zu großer Schritt Test läßt sich nur mit erheblichen Aufwand erfüllen B. Boeck (HAW Hamburg) Test Driven Development / 25
13 Theorie Entwicklungszyklus Mut zum Rückschritt Was ist wenn etwas nicht geht? Oder sich festgefahren hat ruhig Code wieder rausschmeißen und neu anfangen zurück zu einem Punkt der einem noch richtig erschien gut möglich da in kleinen Schritten programmiert wird B. Boeck (HAW Hamburg) Test Driven Development / 25
14 Beispiel: Brief Porto Porto Brief Porto abhängig von Gewicht Gewicht Porto Standard <= 20g 0,55 Kompakt <= 50g 0,90 Groß <= 500g 1,45 Maxi <= 1000g 2,20 B. Boeck (HAW Hamburg) Test Driven Development / 25
15 Beispiel: Brief Porto Anfang import org. junit.test ; public class BriefPortoTest { BriefPorto porto public void getporto (){ BriefPorto nicht bekannt Klasse erstellen public class BriefPorto { B. Boeck (HAW Hamburg) Test Driven Development / 25
16 Beispiel: Brief Porto Next Step gedanken um die Schnittstelle import static org. junit. Assert.*; import org. junit. Before ; import org. junit.test ; public class BriefPortoTest { BriefPorto porto public void setup (){ porto = new BriefPorto public void calcporto (){ assertequals (" Standard ", 0.55f, porto.calc (10), 0.001) ; public class BriefPorto { public double calc ( int g) { return 0; public class BriefPorto { public double calc ( int g) { return 0.55; B. Boeck (HAW Hamburg) Test Driven Development / 25
17 Beispiel: Brief Porto Next public void calcporto50 (){ assertequals (" Kompakt ", 0.90f, porto.calc (50), 0.001) ; public double calc ( int g) { if (g <= 20) return 0.55; else return 0.90; B. Boeck (HAW Hamburg) Test Driven Development / 25
18 Beispiel: Brief Porto Next public void calcporto500 (){ assertequals (" Gross ", 1.45f, porto.calc (500), 0.001) ; public double calc ( int g) { if (g <= 20) return 0.55; else if (g <= 50) return 0.90; else return 1.45; B. Boeck (HAW Hamburg) Test Driven Development / 25
19 Beispiel: Brief Porto Next public void clacporto1000 (){ assertequals ("Maxi ", 2.20f, porto.calc (1000), 0.001) ; public class BriefPorto { public double calc ( int g) { if (g <= 20) return 0.55; else if (g <= 50) return 0.90; else if (g <= 500) return 1.45; else return 2.20; B. Boeck (HAW Hamburg) Test Driven Development / 25
20 Beispiel: Brief Porto Next ( expected = IllegalArgumentException. class ) public void clacporto1001 (){ porto.calc (1001) ; public double calc ( int g) throws IllegalArgumentException { if (g > 1000) throw new IllegalArgumentException (); if (g <= 20) return 0.55; else if (g <= 50) return 0.90; else if (g <= 500) return 1.45; else return 2.20; B. Boeck (HAW Hamburg) Test Driven Development / 25
21 Beispiel: Brief Porto Last ( expected = IllegalArgumentException. class ) public void clacportonegative (){ porto. calc ( -1); public double calc ( int g) throws IllegalArgumentException { if (g > 1000 g < 0) throw new IllegalArgumentException (); if (g <= 20) return 0.55; else if (g <= 50) return 0.90; else if (g <= 500) return 1.45; else return 2.20; B. Boeck (HAW Hamburg) Test Driven Development / 25
22 Einblick: Praktikumsaufgabe Verkettete Liste Einblick: Praktikumsaufgabe Verkettete Liste kein konstruiertes Beispiel mit TDD entwickelt um zu sehen wie TDD in etwas größer aussieht B. Boeck (HAW Hamburg) Test Driven Development / 25
23 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) B. Boeck (HAW Hamburg) Test Driven Development / 25
24 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; B. Boeck (HAW Hamburg) Test Driven Development / 25
25 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; 2 cos(π/2) B. Boeck (HAW Hamburg) Test Driven Development / 25
26 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; 2 cos(π/2) if (d = 0) return 1; else return 0; B. Boeck (HAW Hamburg) Test Driven Development / 25
27 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; 2 cos(π/2) if (d = 0) return 1; else return 0; 3 cos(2π) B. Boeck (HAW Hamburg) Test Driven Development / 25
28 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; 2 cos(π/2) if (d = 0) return 1; else return 0; 3 cos(2π) if (d = pi /2) return 0; else return 1; B. Boeck (HAW Hamburg) Test Driven Development / 25
29 Gedanken Experiment: Cosinus Gedanken Experiment: Cosinus Eine Cosinus Funktion nach TDD entwickeln 1 cos(0) return 1; 2 cos(π/2) if (d = 0) return 1; else return 0; 3 cos(2π) if (d = pi /2) return 0; else return 1; Eigentlicher Ansatz: Cosinus Reihe: cos(x) = x2k k=0 ( 1)k (2k)! dann ausreichend Tests erstellen B. Boeck (HAW Hamburg) Test Driven Development / 25
30 Schluß Fazit Fazit Debugger wird seltener benötigt direktes Feedback bessere Orientierung Aufteilung in Abschnitte Wie weit bin ich? Wo war ich zuletzt? B. Boeck (HAW Hamburg) Test Driven Development / 25
31 Schluß Letzte Folie Vielen Dank für Eure Aufmerksamkeit Das wars. Benedikt Boeck Quellen: Frank Westphal: Testgetriebene Entwicklung mit JUnit & FIT dpunkt.verlag, 2006 http: //de.wikipedia.org/wiki/testgetriebene_entwicklung B. Boeck (HAW Hamburg) Test Driven Development / 25
Test-Driven Design: Ein einfaches Beispiel
Test-Driven Design: Ein einfaches Beispiel Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 2 Ziele Veranschaulichung der Technik des Test-Driven Design am Beispiel eines Programms
Testen mit JUnit. Motivation
Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen
JUnit - Test Driven Development. Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1
JUnit - Test Driven Development Bernhard Frey, Thorsten Stratmann, Jackson Takam, Michel Müller 1 Gliederung 1.Einleitung 1.1 Geschichte 1.2 Was sind Unit-Tests? 1.3 Failures/Errors 1.4 Ziele und Nutzen
Java: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
Testgetriebene Entwicklung mit JUnit4
Testgetriebene Entwicklung mit JUnit4 Seminarvortrag im Fach Fortgeschrittenes Programmieren in Java, Dozent: Prof. Klinker Datum: 30.04.2010 Referent: Marius Schmeding Ausgangsfragen... Wie testet man
Lösungsvorschläge. zu den Aufgaben im Kapitel 4
Lösungsvorschläge zu den Aufgaben im Kapitel 4 Aufgabe 4.1: Der KNP-Algorithmus kann verbessert werden, wenn in der Funktion nexttabelle die Zuweisung next[tabindex] = ruecksprung; auf die etwas differenziertere
Swp08-6 Verantwortliche: Yundensuren, Baigalmaa. Testkonzept
Testkonzept 1.Einführung Um die Zuverläsigkeit und die Qualität der Software und des gesamten Systems zu verbessern, sind Tests durchzuführen. Die Testreihe läst sich in drei Stufen einteilen, nülich Komponententest,
SEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
Programmierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
Unit Tests mit Junit 4. Dario Borchers
Unit Tests mit Junit 4 Dario Borchers Agenda Warum testgetriebene Entwicklung von Software? - Motivation Was ist testgetriebene Entwicklung? - Prozess der testgetriebenen Entwicklung - Arten von Tests
Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch
Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen Alexander Schunk Henry Trobisch Inhalt 1. Vergleich der Unit-Tests... 2 2. Vergleich der Codeabdeckungs-Tests... 2 3. Vergleich
Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
Dokumentation für das Spiel Pong
Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel
Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1
Zahlenwinkel: Forscherkarte 1 alleine Tipp 1 Lege die Ziffern von 1 bis 9 so in den Zahlenwinkel, dass jeder Arm des Zahlenwinkels zusammengezählt das gleiche Ergebnis ergibt! Finde möglichst viele verschiedene
Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
Unit Tests in der Testgetriebenen Entwicklung
Unit Tests in der Testgetriebenen Entwicklung Reduzierung des Testanteils am Gesamtsoftwareentwicklungsaufwand -- neue Strategien und Tools -- Hauptseminar Systemorientierte Informatik Christian Krauß
Einführung in die Informatik Tools
Einführung in die Informatik Tools Werkzeuge zur Erstellung von Softwareprojekten Wolfram Burgard 8.1 Motivation Große Softwareprojekte werden schnell unübersichtlich. Änderungen im Code können leicht
Probeklausur Softwareengineering SS 15
Probeklausur Softwareengineering SS 15 Hinweis: Die Bearbeitungsdauer entspricht dem Punktewert. Aufgabe 1 (10 min) Beschreiben Sie das Vorgehensmodell Test-Driven-Development (TDD) a) Erläutern Sie das
Grundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung
Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:
Praktische Übung 'JUnit-Test'
Praktische Übung 'JUnit-Test' Starten Sie für die folgende Übung Eclipse und laden Sie das Testprojekt von folgender URL: http://pi.informatik.uni-siegen.de/berlik/swt/currency.zip Darin ist die Klasse
Institut für Programmierung und Reaktive Systeme 25. August 2014. Programmier-Labor. 04. + 05. Übungsblatt. int binarysearch(int[] a, int x),
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. August 2014 Programmier-Labor 04. + 05. Übungsblatt Aufgabe 21: a) Schreiben Sie eine Methode
Integrierte und automatisierte GUI-Tests in Java
Integrierte und automatisierte GUI-Tests in Java Gliederung Die Idee hinter GUI-Tests Herausforderungen und Probleme Techniken Jemmy-Framework Konzeptorientiertes Testen FIT (Framework for Integrated Tests)
Große Übung Praktische Informatik 1
Große Übung Praktische Informatik 1 2005-12-08 [email protected] http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,
Auf Diät Wie Sie Ihre Entwicklung verschlanken. Job Merkblätter. Einmal drucken pro Team
Auf Diät Wie Sie Ihre Entwicklung verschlanken The Bottleneck Game Job Merkblätter Einmal drucken pro Team Deutsche Version von Martin Heider (http://infomar.de/) und Pierluigi Pugliese (http://www.connexxo.com)
Projektmanagement in der Spieleentwicklung
Projektmanagement in der Spieleentwicklung Inhalt 1. Warum brauche ich ein Projekt-Management? 2. Die Charaktere des Projektmanagement - Mastermind - Producer - Projektleiter 3. Schnittstellen definieren
Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014
Widerrufsbelehrung der Stand: Juni 2014 www.free-linked.de www.buddy-watcher.de Inhaltsverzeichnis Widerrufsbelehrung Verträge für die Lieferung von Waren... 3 Muster-Widerrufsformular... 5 2 Widerrufsbelehrung
Programmieren in Java
Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können
Software-Engineering Software-Management
Software-Engineering Software-Management 12.3 Unit-Tests mit JUnit - Wissen, was der Sourcecode macht! Lösung Prof. Dr. Rolf Dornberger Software-Engineering: 12.3 Unit-Tests mit JUnit 30.04.2006 1 12.3
.NET Code schützen. Projekt.NET. Version 1.0
.NET Code schützen Projekt.NET Informationsmaterial zum Schützen des.net Codes Version 1.0 Autor: Status: Ablage: Empfänger: Seiten: D. Hoyer 1 / 6 Verteiler : Dokument1 Seite 1 von 1 Änderungsprotokoll
Tipps für die praktische Durchführung von Referaten Prof. Dr. Ellen Aschermann
UNIVERSITÄT ZU KÖLN Erziehungswissenschaftliche Fakultät Institut für Psychologie Tipps für die praktische Durchführung von Referaten Prof. Dr. Ellen Aschermann Ablauf eines Referates Einleitung Gliederung
Anleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
Wie halte ich Ordnung auf meiner Festplatte?
Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,
Was meinen die Leute eigentlich mit: Grexit?
Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?
Evangelisieren warum eigentlich?
Predigtreihe zum Jahresthema 1/12 Evangelisieren warum eigentlich? Ich evangelisiere aus Überzeugung Gründe, warum wir nicht evangelisieren - Festes Bild von Evangelisation - Negative Erfahrungen von und
ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule
ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN Der Zauberwürfel-Roboter Paul Giese Schule: Wilhelm-Raabe-Schule Jugend forscht 2013 Kurzfassung Regionalwettbewerb Bremerhaven
Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler. Joliot-Curie-Gymnasium GR 2010 Nico Steinbach
Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler Joliot-Curie-Gymnasium GR 2010 Nico Steinbach 0. Organisatorisches Warum habt Ihr euch für den Kurs eingeschrieben?
Übung Grundlagen der Programmierung. Übung 05: Arrays. Abgabetermin: xx.xx.xxxx. Java-Programm Testplan Testergebnisse
Übung 05: Arrays Abgabetermin: xx.xx.xxxx Name: Name, Vorname Matrikelnummer: 0XXXXXX Gruppe: G1 (Prähofer) G2 (Wolfinger) G3 (Wolfinger) Aufgabe Punkte gelöst abzugeben schriftlich abzugeben elektronisch
Programmieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.
Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Ein Rechner Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Rechner sind überall Ihr Rechner
Software Systems Engineering
Software : SoSe 08 Prof. Dr. Klaus Schmid Software Produktlinien Ein neues Programm soll erstellt werden. Das habe ich doch schon mal programmiert, oder? Alter Code passt aber nicht ganz! Wird passend
Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **
Life-Domain-Balance gestalten Evaluation zweier Lanceo-Ansätze Dipl.-Psych. Nina Schiml, Uni Freiburg
Life-Domain-Balance gestalten Evaluation zweier Lanceo-Ansätze Dipl.-Psych. Nina Schiml, Uni Freiburg gefördert vom Das Projekt Lanceo Life-Domain-Balance gestalten - Evaluation zweier Lanceo-Ansätze Folie
Agile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
Java Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
Software Engineering in der Praxis
Software Engineering in der Praxis Praktische Übungen Dirk Wischermann Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg 18. Dezember 2006 Inhalt Nachlese
40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.
40-Tage-Wunder- Kurs Umarme, was Du nicht ändern kannst. Das sagt Wikipedia: Als Wunder (griechisch thauma) gilt umgangssprachlich ein Ereignis, dessen Zustandekommen man sich nicht erklären kann, so dass
Wie ist das Wissen von Jugendlichen über Verhütungsmethoden?
Forschungsfragen zu Verhütung 1 Forschungsfragen zu Verhütung Wie ist das Wissen von Jugendlichen über Verhütungsmethoden? Wie viel Information über Verhütung ist enthalten? Wie wird das Thema erklärt?
1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
Herr Müller möchte anderen Menschen helfen. Er bekommt kein Geld für diese Arbeit. Aber die Arbeit macht ihm Freude.
26 Und wie finde ich ein freiwilliges Engagement? Leichte Sprache Herr Müller möchte etwas Gutes für andere Menschen tun. Weil es ihm Spaß macht. Herr Müller möchte anderen Menschen helfen. Er bekommt
Client-Server-Beziehungen
Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server
Glaube an die Existenz von Regeln für Vergleiche und Kenntnis der Regeln
Glaube an die Existenz von Regeln für Vergleiche und Kenntnis der Regeln Regeln ja Regeln nein Kenntnis Regeln ja Kenntnis Regeln nein 0 % 10 % 20 % 30 % 40 % 50 % 60 % 70 % 80 % 90 % Glauben Sie, dass
Menü auf zwei Module verteilt (Joomla 3.4.0)
Menü auf zwei Module verteilt (Joomla 3.4.0) Oft wird bei Joomla das Menü in einem Modul dargestellt, wenn Sie aber z.b. ein horizontales Hauptmenü mit einem vertikalen Untermenü machen möchten, dann finden
Algorithmen mit Python
Algorithmen mit Python Vorbesprechung zum Proseminar im Sommersemester 2009 http://www.python.org 1 Sie lernen in DAP Java und C/C++: 80% Syntax, 20% Algorithmen-Design Idee Schon ein einfaches Hello World
Tutorial Moodle 2 globale Gruppen bzw. Kohorten
Tutorial Moodle 2 globale Gruppen bzw. Kohorten Im folgenden Tutorial geht es um das Erstellen und die Zuweisung von globalen Gruppen (auch Kohorten in Moodle 2.x genannt). Diese globalen Gruppen werden
Suchbäume. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Suchbäume Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative
Nach der Installation kann es auch schon losgehen. Für unseren Port Scanner erstellen wir zunächst ein neues Projekt:
Ein Port Scanner ist eine gute Möglichkeit den eigenen Server auf offene Ports zu scannen. Zu viele nicht benötigte und offene Ports können auf Ihrem Server und auf Ihrem Computer ein Sicherheitsrisiko
Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
Dokumentenverwaltung im Internet
Dokumentenverwaltung im Internet WS 09/10 mit: Thema: Workflow und Rollenverteilung im Backend Gruppe: DVI 10 Patrick Plaum und Kay Hofmann Inhalt 1. Benutzer und Benutzergruppen erstellen...2 1.1. Benutzergruppen...2
Einführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
Das Persönliche Budget in verständlicher Sprache
Das Persönliche Budget in verständlicher Sprache Das Persönliche Budget mehr Selbstbestimmung, mehr Selbstständigkeit, mehr Selbstbewusstsein! Dieser Text soll den behinderten Menschen in Westfalen-Lippe,
bagfa ist die Abkürzung für unseren langen Namen: Bundes-Arbeits-Gemeinschaft der Freiwilligen-Agenturen.
Leichte Sprache Was ist die bagfa? bagfa ist die Abkürzung für unseren langen Namen: Bundes-Arbeits-Gemeinschaft der Freiwilligen-Agenturen. Die bagfa ist ein Verein. Wir machen uns stark für Freiwilligen-Agenturen.
Objektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
Installation Hardlockserver-Dongle
Installation Hardlockserver-Dongle Mit Hilfe des Hardlockservers können Lizenzen im Netzwerk zur Verfügung gestellt und überwacht werden. Der Hardlockserver-Dongle wird auf einem Server im Netzwerk installiert.
Arbeit zur Lebens-Geschichte mit Menschen mit Behinderung Ein Papier des Bundesverbands evangelische Behindertenhilfe e.v.
Arbeit zur Lebens-Geschichte mit Menschen mit Behinderung Ein Papier des Bundesverbands evangelische Behindertenhilfe e.v. Meine Lebens- Geschichte Warum ist Arbeit zur Lebens-Geschichte wichtig? Jeder
7. Bewässerung: Mehrmals pro Woche
7. Bewässerung: Mehrmals pro Woche Eine Kultur im Erdboden muss mehrmals wöchentlich bewässert werden. 1. Erstellen Sie ein Arbeitsblatt 2. Pumpe 3. Ventilgruppe 1 4. Kulturfachregelung 5. Wasser-Anschlüsse
Erfahrungsaustausch und Rückblick Cross Mentoring 2004. Dr. Karl Straßer Mag. Kathrin Kühtreiber
Erfahrungsaustausch und Rückblick Cross Mentoring 2004 Dr. Karl Straßer Mag. Kathrin Kühtreiber Zitat Wenn du etwas haben willst, was du noch nie gehabt hast, muss du etwas tun, was du noch nie getan hast.
II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
SEMINAR Modifikation für die Nutzung des Community Builders
20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen
Was ich als Bürgermeister für Lübbecke tun möchte
Wahlprogramm in leichter Sprache Was ich als Bürgermeister für Lübbecke tun möchte Hallo, ich bin Dirk Raddy! Ich bin 47 Jahre alt. Ich wohne in Hüllhorst. Ich mache gerne Sport. Ich fahre gerne Ski. Ich
Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009
Testen von Software Systemen Übung 02 SS 2009 Version: 1.0 09.06.2009 Komponententest Kunde: Dr. Reinhold Plösch Dr. Johannes Sametinger Kundenreferenz: 259.019 Team 19 Mitarbeiter: Christian Märzinger
Markus Wichmann. Testen von Java Code mit. JUnit
Markus Wichmann Testen von Java Code mit JUnit Demotivation... Am Anfang war der Zeitdruck... Hilfe, ich habe doch keine Zeit zum Testen! Ich schreibe einfach keine Tests, dadurch werde ich schneller fertig
Arbeiten mit UMLed und Delphi
Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf
Software Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
Unsere Webapplikation erweitern
Unsere Webapplikation erweitern Um die Webapplikation zu benutzen: 1. Starten Sie den Server, indem Sie das Hauptprogramm in der Klasse ImdbServer starten. 2. Laden Sie im Browser die Seite http://localhost:8080/html/index.html.
Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 5 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
Operationalisierbare Qualitätskriterien für die Programmierung mit Erfahrungen aus PRÜ1 und PRÜ2
Operationalisierbare Qualitätskriterien für die Programmierung mit Erfahrungen aus PRÜ1 und PRÜ2 von Christoph Knabe http://public.beuth-hochschule.de/~knabe/ Ch. Knabe: Operationalisierbare Qualitätskriterien
Der Kalender im ipad
Der Kalender im ipad Wir haben im ipad, dem ipod Touch und dem iphone, sowie auf dem PC in der Cloud einen Kalender. Die App ist voreingestellt, man braucht sie nicht laden. So macht es das ipad leicht,
Beschreibung E-Mail Regeln z.b. Abwesenheitsmeldung und Weiterleitung
Outlook Weiterleitungen & Abwesenheitsmeldungen Seite 1 von 6 Beschreibung E-Mail Regeln z.b. Abwesenheitsmeldung und Weiterleitung Erstellt: Quelle: 3.12.09/MM \\rsiag-s3aad\install\vnc\email Weiterleitung
Prüfung Software Engineering I (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 3 A Wintersemester 2014/15 Prüfung Software Engineering I (IB) Datum : 21.01.2015, 14:30 Uhr Bearbeitungszeit
Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
Ablauf Vorstellungsgespräch
Leitfaden für Vorstellungsgespräche Ablauf Vorstellungsgespräch Bewerber: Bewerbung als: Interviewer: Datum: ERGEBNIS DES VORSTELLUNGSGESPRÄCHS Gesamtpunktzahl 14-16 Hervorragend 9 13 Kompetent 6-8 Entwicklungsbedarf
Zusammenführen mehrerer Dokumente zu einem PDF In drei Abschnitten erstellen Sie ein Dokument aus mehreren Einzeldokumenten:
Zusammenführen mehrerer Dokumente zu einem PDF In drei Abschnitten erstellen Sie ein Dokument aus mehreren Einzeldokumenten: 1. Das erste Dokument drucken 2. Weitere Dokumente hinzufügen 3. Alle Dokumente
Unit Tests. Programmiermethodik. Eva Zangerle Universität Innsbruck
Unit Tests Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle
Änderung der Sicherheitseinstellungen von Emailkonten
Änderung der Sicherheitseinstellungen von Emailkonten Inhaltsverzeichnis Änderung der Sicherheitseinstellungen von Emailkonten... 1 Einleitung... 2 Sicherheitseinstellungen von E-Mails in Outlook... 3
Deutsches Rotes Kreuz. Kopfschmerztagebuch von:
Deutsches Rotes Kreuz Kopfschmerztagebuch Kopfschmerztagebuch von: Hallo, heute hast Du von uns dieses Kopfschmerztagebuch bekommen. Mit dem Ausfüllen des Tagebuches kannst Du mehr über Deine Kopfschmerzen
Das Leitbild vom Verein WIR
Das Leitbild vom Verein WIR Dieses Zeichen ist ein Gütesiegel. Texte mit diesem Gütesiegel sind leicht verständlich. Leicht Lesen gibt es in drei Stufen. B1: leicht verständlich A2: noch leichter verständlich
2A Basistechniken: Weitere Aufgaben
2A Basistechniken: Weitere Aufgaben 2A.3 Programmierung unter UNIX/Linux 1. Gegeben sind einige Ausschnitte von C-Programmen, die unter UNIX/Linux ausgeführt werden sollen. Beantworten Sie die zugehörigen
Fotogalerie mit PWGallery in Joomla (3.4.0) erstellen
Fotogalerie mit PWGallery in Joomla (3.4.0) erstellen Als ersten Schritt müssen wir alle Fotos die in die Galerie sollen hochladen. Wir gehen davon aus, dass das Plugin PWGallery bereits installiert und
Beispiel: Methode mit einem Fehler. Diese Methode wird problematisch, wenn von außen eine Dauer von 0 Sekunden angegeben wird, etwa im Aufruf
16 Exceptions Zur Behandlung unerwarteter Situationen bietet Java Unterstützung in Form von Exceptions oder Ausnahmen. Den Sinn von Exceptions können wir Ihnen an einem kleinen Beispiel klarmachen. Nehmen
1: 9. Hamburger Gründerpreis - Kategorie Existenzgründer - 08.09.2010 19:00 Uhr
1: 9. Hamburger Gründerpreis - Kategorie Existenzgründer - Sehr geehrter Herr Bürgermeister, sehr geehrter Herr Dr. Vogelsang, sehr geehrter Herr Strunz, und meine sehr geehrte Damen und Herren, meine
188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6
Gudrun Fischer Sascha Kriewel [email protected] Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in
Erfahrungen mit Hartz IV- Empfängern
Erfahrungen mit Hartz IV- Empfängern Ausgewählte Ergebnisse einer Befragung von Unternehmen aus den Branchen Gastronomie, Pflege und Handwerk Pressegespräch der Bundesagentur für Arbeit am 12. November
Step by Step Softwareverteilung unter Novell. von Christian Bartl
Step by Step Softwareverteilung unter Novell von Softwareverteilung unter Novell 1) Starten von einfachen *.EXE-Dateien: Starten sie ConsoleOne Erstellen sie eine eigene Organisationseinheit für ihre Anwendungen
14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt
14.4.2016 Technische Hochschule Georg Agricola WORKSHOP TEIL 3 IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt Inhaltsverzeichnis 1. Kurzfassung zur Projekterstellung... 2 2. Morse-Tabelle...
Tutorial Moodle 2 Rollenzuweisung
Tutorial Moodle 2 Rollenzuweisung Im folgenden Tutorial geht es um die Zuweisung von Rollen. Dies ist möglich für: Die ganze Instanz Die globale Zuweisung von Rollen (in diesem Fall nur Kursersteller/in
