Also willkommen zur Vorlesung Software-Technik 1, zweites Semester.
Ich begrüße Sie alle recht herzlich.
Mein Name ist Professor Tichy.
Ich werde Sie jetzt im wichtigsten Fach der Informatik begleiten,
nämlich der Software-Technik.
Ein Kollege, der mal bei mir in der Vorlesung war, sagte auch dann
später, die Vorlesung war diejenige, auf die ich immer gewartet habe.
Das ist die, während dessen ich studiert habe.
Ich hoffe, es wird Ihnen Spaß machen.
Wir werden ziemlich viel Material behandeln müssen.
Ich möchte Sie ein bisschen warnen.
Vieles wird so sein, dass Sie sagen, oh, das ist ja gar nicht so
schwierig, das verstehe ich ja ganz gut.
Aber unterschätzen Sie das, was wir hier lernen, nicht.
Denn es wird auch später von Ihnen ein Können gefragt sein, nämlich
verschiedene Formalismen beherrschen zu können, auch in der Prüfung.
Und das geht nur mit Übung.
Das heißt, Sie müssen leider auch ein bisschen üben.
Bevor ich jetzt weiter fortfahre, möchte ich Ihnen kurz Ihren größten
Feind zeigen.
Den größten Feind des Studiums.
Das ist das hier.
Sie alle haben einen, diesen Feind in der Tasche.
Das ist derjenige, der Sie permanent ablenkt.
Sowohl in der Vorlesung, als auch zu Hause, als auch im Bett, als auch
beim Essen, als auch sonst irgendwo.
Wir brauchen den hier in der Vorlesung nie.
Also überhaupt nie.
Das heißt, Sie sollten ihn mit Trost ausschalten.
Schalten Sie WLAN aus, werden Sie nicht gestört, stecken Sie ihn weg.
Und meine Empfehlung für zu Hause, wenn Sie an den Übungsblättern oder
arbeiten oder die Vorlesung studieren, hört das Ding in die Schublade,
nicht auf den Schreibtisch.
Das ist der größte Feind Ihres erfolgreichen Studiums.
Ich sage das nicht, weil ich keine Ahnung habe, sondern ich habe
selbst Kinder, die auch studieren.
Ich habe sogar noch einen Sohn, der studiert hier, sage und schreibe,
Informatik.
Ich weiß genau, was passiert.
Das ist das eine, sich permanent ablenken zu lassen.
Das trifft natürlich auch für Ihren PC zu.
Da ist permanent hinter allem, was Sie sehen, die Möglichkeit ein
Spiel zu spielen oder sonst irgendwas zu machen.
Achten Sie darauf, dass Sie eine Arbeitsweise erreichen, in der Sie
konzentriert arbeiten und sich nicht ablenken lassen.
Sie können immer eine Pause machen, nach der Vorlesung, nach einer
Aufgabe, nach einer Stunde Arbeit können Sie immer sagen, so jetzt
schaue ich mal nach, ob was auf WhatsApp ist oder was immer, wenn es
wirklich so wichtig ist.
Aber jetzt in dieser Vorlesung, jetzt in diesen 1,5 Stunden, wo wir
zusammen sind, brauchen Sie auf nichts zu reagieren.
Ihre Freundin ist jetzt abgeschrieben.
Ich bin jetzt dran.
Nur für 1,5 Stunden.
Ich denke, das werden Sie aushalten.
Schauen wir gleich mal, was Softwaretechnik ist.
Softwaretechnik ist einfach nur eine Kurzdefinition hier für den
ersten Tag, ist die Lehre von der Softwarekonstruktion.
Einfacher kann es nicht mehr sein, oder?
Die Lehre von der Softwarekonstruktion, so wie Algorithmentechnik die
Lehre von den Algorithmen ist und so fort.
Und wozu brauche ich die?
Na ja, zur Pflege, zur Erstentwicklung und Pflege von umfangreichen
Softwaresystemen.
Wir werden hier die Methoden und Techniken erlernen, die Sie brauchen,
um große Softwaresysteme zu pflegen.
Es geht also hier nicht so sehr um das Programmieren im Kleinen.
Wie schreibe ich eine Vorschleife?
Was ist Catch and Throw?
Es setzt sich voraus, dass Sie das bereits können.
Es geht jetzt darum, wie organisiere ich etwas, das mit vielen Leuten,
an dem viele Leute gearbeitet wird, sagen wir ein Betriebssystem.
Und welche Arbeitstechniken brauche ich dafür?
Sowohl technisch als auch organisatorisch.
Mehr Technik werde ich heute gar nicht erzählen.
Was Sie jetzt als nächstes brauchen, ist ein Blatt Papier und einen
Stift.
Sie müssen sich ein paar Dinge notieren.
Im Prinzip eigentlich nur eine einzige URL, aber das brauchen Sie
jetzt mal.
So, also.
Erstmal
die Kollegen, die hier mitarbeiten.
Mich kennen Sie jetzt schon.
Ich habe Sprechstunde Freitag von 13 bis 14 Uhr.
Sie sind herzlich willkommen.
Sie können jederzeit kommen.
Ich reiße niemanden den Kopf ab.
Ich beiße nicht, ich kratze nicht, ich tue Ihnen nichts.
Ich bin offen von 13 bis 14 Uhr am Freitag.
Sie können gerne zu mir kommen.
Manchmal ist natürlich jemand vor Ihnen.
Aber meine Sekretärin wird das dann schon regeln.
So, die Übungsleiter, wenn Sie gleich ein bisschen aufstehen,
vielleicht sitzen Sie ja vorne.
Das eine ist der Sebastian, das andere ist der Tobias.
Der Martin macht auch noch gelegentlich mit, aber ein Bild von ihm hat
es nicht mehr gereicht.
Ich weiß nicht, warum.
So, gut.
Sie haben also auch Sprechstunden nach Vereinbarung.
Das heißt, Sie können eine E-Post schicken.
Welche E-Postadresse wollt ihr denn haben?
SWT1 SWT1.KIT.EDU steht hier drauf.
IPT.KIT.EDU Entschuldigung.
SWT1.KIT.EDU Das ist also eine Adresse, die man sich notieren sollte,
wenn es eine Frage gibt.
Es gibt auch eine Webseite von uns.
Das ist hier ganz unten.
PSIPT.KIT.EDU Da finden Sie, was wir so alles anstellen in unserem
Leben.
Aber auch den weiterführenden Link zu den Seiten für die Folien und
die Übungsblätter etc.
Das wäre also das Erste.
Das Vorlesungsmaterial.
Das ist natürlich wichtig.
Das gibt es hier.
Campusstudium.KIT.EDU Das müssen Sie wahrscheinlich nicht notieren,
weil Sie das kennen.
Im sogenannten ILIAS-System sehen Sie Folien und Übungsblätter,
weiterführende Informationen.
Es gibt auch ein Forum, auf dem Sie sich austauschen können.
Bitte aber nicht so weit gehen, als die Übungslösungen auszutauschen.
Das wäre blöd.
Da lernen Sie da nichts.
So, wenn es von Ihnen Teilnehmer gibt, die kein SCC-Konto haben, die
können sich später dann nicht anmelden.
Wir sollten am besten mit den drei Herren, einem von Ihnen sprechen am
Schluss, damit wir das für Sie organisieren können.
Gibt es jemanden, der ein SCC-Konto nicht hat?
Ja, genau.
Also einen.
Hat sich bis jetzt gemeldet.
Aber es dürfen natürlich auch.
So, was haben wir noch zu sagen?
Ja, das eine hatte ich schon gesagt.
SWT 1 ist nicht Programmieren.
Manche Studenten missverstehen diese Vorlesung als eine
Programmiersprachenvorlesung.
Das ist sie nicht.
Wir studieren keine Programmiersprachen hier.
Programmiersprachen sind ein extrem interessantes Thema.
Keine Frage.
Sollte man auch studieren, Sie kommen gar nicht drum herum.
Es gibt nämlich eine Vorlesung gerade darüber.
Nämlich heißt Programmierparadigmen.
Da werden noch andere Programmiersprachentypen vorgestellt.
Zum Beispiel funktionale Sprachen oder logische Programmiersprachen.
Und wenn Sie dadurch sind, können Sie eigentlich jede
Programmiersprache lernen.
Es gibt so viele Programmiersprachen, dass wir die unmöglich auch nur
alle nennen können.
Hunderte.
Sprichwörtlich.
Hunderte von Programmiersprachen.
Und unterliegen auch einer gewissen Mode.
Wir bleiben jetzt mal bei Java.
Werden auch ein bisschen über Java zusätzlich lernen.
Wo wir es eben für die fortgeschrittene Programmierungstechnik,
nämlich die Softwaretechnik, brauchen.
Hier haben wir aufgeführt, wie viele Stunden Sie eigentlich drauf
aufwenden sollen.
Das ist eine grobe Schätzung.
Sie dürfen gerne mehr verwenden, aber mit weniger glaube ich nicht,
dass Sie so richtig gut durchkommen werden.
Ich bete das aber jetzt nicht im Einzelnen vor.
Wir sehen also, Besuch der Vorlesung und die Nachbereitung.
Wir haben Besuch der Übungen, wir haben Besuch der Tutorien.
Ist alles für Sie organisiert, damit Sie Hilfe bekommen, um
weiterzukommen, bei Blockaden einen Weg weiterzufinden.
Dann die Bearbeitung der Übungsaufgaben wird Sie auch einige Zeit
kosten.
Also nicht wenig.
Wir geben Ihnen heute schon ein Vorbereitungsblatt.
Bitte bleiben Sie am Ball.
Nicht den Ball wegrollen lassen.
Literatur gebe ich Ihnen jetzt auch gleich an.
Das wollen Sie sich vielleicht auch notieren.
Obwohl es dann natürlich auch auf den Folien stehen wird.
Da gibt es ein wichtiges Buch, das heißt Object-Oriented Software
Engineering Using UML, Patterns und Java.
Da werde ich gelegentlich sagen, das lesen, dieses Kapitel lesen, den
deutlichen Abschnitt lesen.
Es gibt davon etwa 100 Kopien in den Informatik- und
Hauptbibliotheken.
Das wird aber, wie Sie sehen, hier sicher nicht ausreichen.
Es gibt auch eine elektronische Kopie.
Die hat aber den idiotischen Nachteil, dass sie immer nur einer lesen
kann.
Ich weiß nicht, wie man sowas machen kann, aber so funktioniert das.
Irgendwie hat das Abbild des Buchausleihens hier auf die Elektronik
übertragen worden, war also überhaupt kein Problem mehr, es jedem
gleichzeitig zugänglich zu machen.
Aber da stecken sicher die Verlage dahinter und nicht die Bibliothek.
So, es gibt auch ein E-Buch, Objekt-Orientierte Software Technik, das
ist von 2004, ist das gleiche Buch, auf Deutsch übersetzt.
Das können Sie bei Pearson, jedenfalls, ich habe es jetzt nicht mehr
nochmal überprüft, aber man konnte es zumindest herunterladen, kostet
dann allerdings auch etwas.
So, welches, ob Sie das Buch jetzt kaufen oder mit Bibliotheks
Exemplar auskommen oder irgendeine Bootleg-Kopie am Internet finden,
das überlasse ich Ihnen.
Ein ganz weiteres, sehr wichtiges Buch und da würde ich sagen, das
kaufen Sie sich.
Das oder das Nächste, das auf der nächsten Folie entsteht, aber lassen
Sie mich erst erklären.
Das ist ein sehr berühmtes Buch von Gamma Helm Johnson-Vlissines und
heißt Entwurfsmuster, Elemente wiederverwendbarer Objekt-Orientierter
Software oder in der Originalausgabe Design Patterns, Elements of
Reusable Object-Oriented Software.
Beides von Addison-Wesley.
Das ist ein Klassiker, in dem wir Strukturen erklären, mit denen man
Software baut.
Also nicht einzelne Algorithmen, sondern die sogenannten
Entwurfsmuster, wie zum Beispiel der Beobachter, Besucher, Strategie
und ähnliche Dinge, die man in Objekt-Orientierten Programmierung
verwenden kann, um Software zu strukturieren.
Das enthält an die 24 verschiedenen Muster, es gibt inzwischen
hunderte, wir müssen gar nicht alle lernen, wir werden mehr als 24
lernen allerdings.
Es stehen also nicht alle drin.
Ich würde also empfehlen, kaufen Sie sich entweder das hier, wie
gesagt, der Klassiker, oder das hier, Freeman, Robson, Bates, Sierra,
Entwurfsmuster von Kopf bis Fuß, gibt auch die englische Ausgabe, Head
First Design Patterns.
Es ist ein Spaß, dieses Buch zu lesen.
Sie werden sehen, warum.
Hier wird mit viel Witz und lustigen Zeichnungen und charmante
Bemerkungen werden Ihnen Entwurfsmuster in lustigen Cartoons
gewissermaßen beigebracht.
Und wenn Ihnen also dieses Buch, der Gamma et al., zu trocken ist,
sagen wir, wir kommen damit nicht zurecht, das ist ja so langweilig,
dann nehmen Sie das hier.
Gehen Sie in den Bücherladen, schauen Sie sich beide an und sagen, ah
ja, das oder das.
Dann steht eines in Klammern, das brauchen wir nicht mehr, könnte man
eigentlich auch löschen.
Dann gibt es noch ein Lehrbuch, Balzert, Lehrbuch der Softwaretechnik.
Daraus nehme ich manchmal etwas heraus, brauchen Sie nicht zu kaufen,
denn das ist campusweit kostenfrei verfügbar.
Das können Sie herunterladen, also nicht so wie bei dem E-Book vorhin,
wo immer nur einer darauf zugreifen darf.
Das Literaturverzeichnis finden Sie natürlich auch im ersten.
Also wichtig sind eins von Freeman und Gamma und den Brügge.
Der Herr Brügge ist zwar auch Professor für Softwaretechnik, übrigens
an der TU München.
Das Buch ist dort geschrieben.
Gibt es Fragen soweit?
Keiner hat eine Frage.
Das haben wir schon.
Jetzt kommt der Hammer, nämlich die Klausur.
Achtung, Hauptklausur am 26.
Juli bereits, haben wir die gekriegt, wegen den Räumen, und die enden
am 21.
Das sind keine fünf Tage zwischen Ende der Vorlesung, letzter
Vorlesung und der Klausur.
Also ich gehe mal so ab und zu in die Vorlesung und dann breite ich
mich auf die Prüfung vor, das wird garantiert nicht funktionieren.
Kommen Sie in die Vorlesung.
Machen Sie mit.
Bleiben Sie am Ball.
Machen Sie die Übungsblätter.
Selbst wenn die Übungsblätter, die vorgeschriebenen Punkte erreicht
sind, machen Sie das nächste Übungsblatt trotzdem noch.
Sie brauchen das alles.
Sie haben keine Zeit, das so lange nachzubereiten, so lange zu
verzögern.
Also das ist wahrscheinlich ein Freitag und das ist dann der Dienstag
drauf.
Da ist ein Wochenende dazwischen und schon geht es los in der Prüfung.
Natürlich gibt es eine Nachprüfung, die ist dann Anfang Oktober.
Aber stellen Sie sich an, das ist mir zu früh, ich gehe erst im
Oktober.
Und wenn Sie dann da durchfallen, dann haben Sie ein Jahr verloren.
Warum haben Sie ein Jahr verloren?
Weil Sie dann das PSE, Praxis der Softwareentwicklung, das ist ein
Praktikum, das Sie im dritten, vierten Semester machen dürfen, wollen,
müssen, wie auch immer, dürfen Sie nur machen, wenn Sie
Softwaretechnik bestanden haben.
Wenn Sie also jetzt erste verpassen, zweite nicht bestehen, ja gut,
dann müssen Sie noch ein Jahr warten, bis Sie Softwaretechnik wieder
nehmen können und nochmal geprüft werden können.
Minus einen Monat.
Und dann erst können Sie PSE machen.
Dadurch verlieren Sie ein Jahr.
Denken Sie mal, das sind ja alle Informatiker, Sie erwarten alle, dass
Sie hinterher tolle Jobs kriegen.
Ein Jahr verzögertes Studium, was kostet das?
50.000 Euro.
Ein Jahr Studium, länger gedauert, das heißt ein Jahr weniger Gehalt,
das kostet.
Es ist also nicht nur, das ist nicht so schlimm, ich bin ja nicht
teuer und so, meine Wohnung kostet nicht so viel, meine Eltern zahlen
sowieso, nein, es ist nicht egal.
Ein Jahr längeres Studium, 50.000 Euro, würde ich einfach im
Hinterkopf behalten.
Also am Ball bleiben, bitte schön.
Nächster Punkt, Fragen.
Fragen sind also sehr wichtig für mich als Lehrenden und auch
natürlich für meine Mitarbeiter, damit wir wissen, wo es hakt, was man
nicht versteht, was man vertiefen muss, was man wiederholen muss.
Fragen sind jederzeit willkommen, aber bei kleineren Vorlesungen würde
man sagen, jede Frage ist willkommen, scheut euch bloß nicht, dass ihr
Fragen stellt.
Das kann ich hier schlechter machen, das funktioniert meistens nicht,
weil dann zu viel Zeit vergeht, bis wir die trivialen Fragen
aussortiert haben und dann das Wichtige nehmen.
Darum bitte ich darum, Sie brauchen sich nicht zu scheuen, Fragen zu
stellen, aber überlegen Sie sich, was Sie fragen.
Vielleicht kommt es gerade im nächsten Moment oder vielleicht haben
Sie es gerade verpasst,
damit wir da nicht zu viel Zeit verlieren.
Ich werde niemandem sagen, du bist aber blöd, was du die Frage
stellst.
Das werde ich nie sagen.
Können Sie mich kreuzigen, wenn ich das mache.
Und wie gesagt, zusätzlich noch, gerade die stillen, zurückhaltenden,
überlegten Leute möchte ich herausfordern, mir Fragen zu stellen.
Die haben sich nämlich etwas überlegt und die treffen meistens auf den
Schwachpunkt und treffen ihn haargenau.
Und dann stehe ich da und kann was erklären.
Gut.
Und natürlich dürfen Sie sich auch untereinander austauschen, was
Fragen zur Vorlesung betrifft.
Jetzt kommt etwas Positives mit etwas Negativen.
Wir nehmen diese Vorlesung auf.
Die wird auch zur Verfügung stehen, aber nicht sofort.
Weil ich möchte, dass in die Vorlesung kommen.
Die Mitschnitte werden wir also erst zwei Wochen vor der Klausur oder
vor dem Vorlesungsende freischalten.
Sie werden aufgenommen, aber ich möchte, dass Sie trotzdem in die
Vorlesung kommen.
Als Anreiz.
Bitte kommen Sie in die Vorlesung.
Wenn Sie jedes Mal zur Vorlesung kommen, während der Vorlesung
aufmerken, nicht irgendwelche Spätzereien machen oder mit Ihrem Laptop
spielen oder noch schlimmer mit dem Telefon.
Wenn Sie jedes Mal da sind, Ihre Übungsblätter machen, dann können Sie
eigentlich nicht durchfallen.
Können Sie eigentlich nicht durchfallen.
Wir beginnen um 11.30 Uhr.
Das muss jeder schaffen.
Gut, am Freitag ist es früher, 9.45 Uhr.
Das kann auch noch jeder schaffen.
Meine Söhne waren kurz vor dem Studium im Militär.
Sie mussten um 4.30 Uhr aufstehen.
Sie haben das geschafft.
Da werden Sie es schaffen, um 9.45 Uhr da zu sein.
Und nicht erst, oh Gott, das ist schon eins, ich muss das schleunigst
in die Mensa.
Das ist nämlich so diese Tendenz.
Sie können Ihre innere Uhr, das ist bekannt, ohne Schwierigkeiten, um
eine Stunde pro Tag verschieben.
Wenn Sie also ein Jetlag haben und von Westen nach Osten fliegen, dann
haben Sie mehrere Stunden weniger Schlaf.
Das dauert ungefähr eine Stunde pro Tag, bis Sie sich wieder justieren
können.
Das sind besondere Maßnahmen.
Aber diese Uhrumstellung läuft auch andersrum.
Das heißt, wenn Sie trödeln beim Aufstehen, es ist ja erst 8.
Meine Vorlesung ist erst um 9.45 Uhr.
Da reicht es ja nicht um 9.30 Uhr.
Das haut nicht hin, weil dann verschieben Sie so nach und nach Ihre
innere Uhr und damit fällt es Ihnen immer schwerer, ordentlich
aufzustehen.
Disziplin muss her.
Tun Sie sich die Disziplin an.
Sie werden sehen, es geht und es nützt Ihnen.
Kommen Sie also zur Vorlesung, pünktlich, machen Sie mit, denken Sie
mit, so wie heute, ganz toll.
Ihr schaut und achtet, was hier gesagt wird.
So soll es sein.
Es ist nicht laut, also so soll es sein.
Bitte kommen Sie.
So jetzt kommt die Übung, aber bevor wir das machen, machen wir noch
ein Gruppenbild.
Sie und ich.
Gehst du vielleicht da oben rauf?
Also wer in den letzten Jahren schon mal bei einem Musikkonzert war,
der hat das schon mal gesehen.
Die Bands stellen sich vorne hin, dann dahinter die großen Fans.
Also jetzt bitte Geh ein bisschen zur Seite, wegen dem Projektor.
Wir machen alles, was du sagst.
Und lächeln, Ameisen,
wir strahlen sowieso, wie es gerade geht.
So, jetzt macht der Übungsleiter weiter.
Genau.
Oder einer der.
So, guten Morgen und herzlich willkommen nach dieser schönen kleinen
Auflockerung von Prof. Tichy, mache ich jetzt weiter.
Nochmal zur Erinnerung, ich bin Sebastian Weigelt, ich bin einer der
zweieinhalb Übungsleiter für dieses Semester für Sie.
Meine beiden anderen Kollegen, hier einmal Tobias High und Martin
Blersch, der gegebenenfalls aushelfen wird, wenn einer von uns nicht
zur Verfügung steht und auch so ein bisschen im Hintergrund die
administrativen Fäden mitzieht.
Aber ansonsten werden Sie hauptsächlich mich und Tobias sehen.
Und ich bin, ehrlich gesagt, nach dieser Einführung von Prof. Tichy
ganz froh, dass ich nicht ganz am Anfang genannt wurde.
Wir drei haben da drüben ein bisschen gequivert, als Prof. Tichy
anfing mit, ich zeige Ihnen jetzt mal Ihren größten Feind im Studium.
Da haben wir überlegt, auf wen von uns dreien zeigt er jetzt?
Haben wir Glück gehabt.
Heute war es mal das Smartphone.
Und es ist tatsächlich so, wir wollen hier als Übungsleiter gerne so
auftreten, dass wir Ihnen helfen durch die SVT.
Natürlich sind wir auch diejenigen, die diese blöden Übungsblätter
rausgeben, die dafür verantwortlich sind, dass Sie vielleicht mal mehr
oder weniger Punkte bekommen.
Aber nichtsdestotrotz wollen wir für Sie auch erster Ansprechpartner
sein, natürlich Ihnen helfen, die SVT zu schaffen.
Und dazu gibt es dieses Jahr auch wieder einen Übungsbetrieb, den wir
hier mal aufgetragen haben, informatikerfreundlich, in einer schönen
Vorschleife.
Und das sehen Sie schon, wir werden insgesamt sieben Übungen abhalten,
denn die Vorschleife fängt bei null an und geht bis kleiner gleich
sechs.
Das heißt, wir haben sieben Veranstaltungen für Übungen und dort wird
es immer ein Übungsblatt geben.
Dann sollen Sie das Übungsblatt selbstständig bearbeiten.
Sie sollen Lösungen dann natürlich abgeben, die Sie selbstständig
bearbeitet haben.
Da werde ich gleich noch mal mehr dazu sagen, was selbstständig heißt.
Und dann gibt es hier eine Übung und in der werden wir dann die Lösung
besprechen.
Und mit besprechen meine ich tatsächlich besprechen.
Das heißt nicht, dass wir zwei hier vorne rumtanzen und Ihnen die
Musterlösungen vortanzen, sondern wir möchten auch gerne ab und zu mal
mit Ihnen ins Gespräch kommen.
Das heißt, melden Sie sich, stellen Sie Fragen, korrigieren Sie uns,
auch das ganz gerne.
Wenn Sie eine andere Musterlösung für die richtige halten, sagen Sie
das gerne.
Wir möchten gerne mit Ihnen auch mal über Lösungen sprechen.
Und Sie brauchen auch keine Angst haben.
Wir zeichnen die Vorlesung zwar auf, aber ich kann Ihnen versprechen,
wenn Sie eine Frage stellen oder eine Anmerkung machen, Sie sind
garantiert nicht zu hören.
Das heißt, man hört nur uns reden.
Das führt auch dazu, dass ich dann Ihre Fragen oder Ihre Antworten
immer wiederholen muss, damit die dann auch auf der
Vorlesungsaufzeichnung landen.
Das heißt aber auch für Sie, Sie können jede Frage stellen, jede blöde
Frage ist, merkt keiner später, dass Sie das fragen.
Also da einfach nicht zurückhalten.
Genau.
Nach der Übung kommt dann immer noch ein Tutorium und das Tutorium ist
bei uns dafür gedacht, dass Sie a.
Rückmeldung natürlich zu Ihren Übungsblättern bekommen.
Sie bekommen dann die Lösung oder die Korrektur Ihres Übungsblattes
von Ihrem Tutor und bekommen dann im Grunde ein nachbereitetes Stoff.
Unsere Tutorien sind nicht so ausgelegt, dass Sie sich auf das nächste
Übungsblatt vorbereiten.
Das ist eher im geringeren Maß.
Es geht tatsächlich eher um die Nachbereitung.
Das heißt, wenn nach dem Übungsblatt immer noch was unklar ist, dann
wird Ihr Tutor das Ihnen nochmal genauer erklären.
So.
Wir haben insgesamt sechs Übungsblätter für Sie vorbereitet und jetzt
steht da trotzdem immer noch sieben in Summe.
Professor Tichy hat es vorhin schon angekündigt, es gibt jetzt schon
ein Vorbereitungsblatt.
Und dieses Vorbereitungsblatt gibt es deshalb, weil wir mit Ihnen über
das Semester ein Projekt entwickeln möchten.
Stückchenweise.
Und naja, wer ein bisschen mit Software schon mal gearbeitet hat, wer
weiß das.
Für alle anderen, denen werden wir das jetzt beibringen.
Man braucht ein paar Werkzeuge dafür.
Man kann nicht einfach einen Editor nehmen und da das Hallo Welt
Programm rein packen und dann läuft das schon alles.
Man braucht so ein bisschen Werkzeug Unterstützung drumherum.
Oder sagen wir, man braucht sie nicht, aber es ist doch sehr
hilfreich.
Und für uns im Übungsbetrieb ganz insbesondere und deshalb möchten wir
Ihnen auf dem Vorbereitungsblatt mal so ein bisschen die Werkzeuge,
die wir benutzen, näher bringen.
Das zum Übungsbetrieb.
Hier nochmal für den Ausdruck eine Anmerkung.
Und jetzt wieder zurück zur Übung und was die Musterlösung schon
angedeutet hatte.
Wir geben Ihnen in der Übung eine Musterlösung, die wir uns ausgedacht
haben.
Das heißt aber nicht, dass das die beste Musterlösung ist, die es
gibt.
Das ist die, die wir haben.
Wenn Sie eine bessere haben, dann diskutieren wir gerne darüber.
Die Folie heißt so schön, viele Wege führen nach oben.
Manche sind direkter, manche sind schöner, manche sind holpriger, aber
es gibt doch sehr viele Wege, die zu einer guten Lösung führen können
und wir wollen das auch gerne haben.
Also wenn Sie eine ganz andere Lösung haben, als wir hier in der Übung
vorstellen, heißt das noch lange nicht, dass das falsch ist, was Sie
da gemacht haben.
Es kann durchaus auch viel besser sein.
Es kann holpriger sein, aber trotzdem zum Ziel führen.
Das ist alles in Ordnung.
All das werden wir zulassen.
Unsere Tutoren sind dementsprechend auch von uns geschult oder wir
weisen immer wieder darauf hin, dass sie auch andere mögliche
Lösungswege zulassen.
Das heißt aber auf der anderen Seite, Sie müssen auch so ein bisschen
damit leben, dass wir Ihnen hier keine 1 zu 1 perfekte Lösung für ein
Problem präsentieren können.
Genauso müssen Sie auch damit leben, dass unsere Übungsräter manchmal
von der Aufgabenstellung her so gefasst sind, dass da eine gewisse
Unschärfe drin ist, dass Sie mal selber überlegen müssen, was ist denn
hier eigentlich zu tun.
Das kann auch mal erfordern, dass man mal Google benutzt zum Beispiel.
Dass man einfach mal die Aufgabenstellung googelt, um mal
herauszufinden, was denn da eigentlich zu tun ist.
Und das ist auch so ein bisschen das, was wir haben wollen, dass Sie
selber versuchen, über die Lösung nachzudenken und nicht einfach nach
Schema F irgendwas lösen, was wir Ihnen dann auch noch 1 zu 1 später
präsentieren können, was da die perfekte Lösung gewesen wäre.
Das heißt, es gibt Alternativen.
Wir fordern so ein bisschen Selbstständigkeit auch bei Ihnen ein, dass
Sie sich ein bisschen mit dem Thema, was gerade dran ist im
Übungsblatt beschäftigen, dass Sie mal googeln, was man denn jetzt
alles machen könnte, um das Ziel zu erreichen.
Also damit müssen Sie leben.
Es gibt aber auch das Ilias-Forum, was Professor Tietjich schon
angekündigt hat.
Auch da kann man mal diskutieren mit Kommilitonen, wo man sich denn
noch informieren könnte.
Wenn man Fragen hat, kann man da gerne diskutieren.
Wir werden da auch immer mit dabei sein, werden gegebenenfalls bei
Fragen, die nur wir beantworten können, auch mal helfen.
Genauso werden dort auch Ihre Tutoren unterwegs sein.
Also da können Sie jede Menge Input dann auch bekommen.
Das ist auch noch ein wichtiger Hinweis.
Es gibt viele fast richtige Lösungen.
Also wenn Sie mal merken auf dem Übungsblatt, Programmieraufgabe XY,
ich kriege das einfach nicht fertig, dann geben Sie trotzdem was ab,
bitte.
Denn dann werden Sie sicherlich Teilpunkte bekommen.
Auch das haben wir unseren Tutoren gesagt, dass es bitte Teilpunkte
geben soll, natürlich.
Und das ist auch so ein bisschen Teil des Problems mit den vielen
Wegen, die nach Rom führen.
Manchmal hat man einen besonders schönen Weg gefunden, stellt aber
fest, man kommt in Konstantinopel raus und eben nicht in Rom.
Ist nicht schlimm, trotzdem abgeben.
Kann sein, dass auf dem Weg trotzdem vieles Richtiges passiert ist.
Also da nicht scheuen, auch mal was Halbfertiges abzugeben.
Gut.
Dann noch mehr Organisatorisches zum Übungsbetrieb.
Wir haben eine Plattform, über die die Programmieraufgaben abgegeben
werden.
Warum gibt es eigentlich keine Folie davor, die das erklärt?
Bisschen schlecht, dann mache ich das jetzt.
Also es gibt eine Plattform, die nennt sich LEZ.
Was heißt LEZ?
Jemand eine Idee?
Kennt noch jemand die GEZ?
Bin ein bisschen zu jung dafür, um welche zu zahlen.
Also.
Die LEZ ist die Lösungseinzugszentrale.
Das heißt, alle Programmieraufgaben werden dort auf der LEZ abgegeben.
Das funktioniert im Grunde so ähnlich wie der Praktomat, den Sie schon
kennen.
Bisschen anders.
Wir haben das halt für uns ein bisschen angepasst, damit wir da besser
mit arbeiten können.
Dort laden Sie Ihre Lösung hoch, bekommen gegebenenfalls Feedback.
Hat das funktioniert?
Hat das nicht funktioniert?
Und außerdem können Sie noch was anderes Schönes tun.
Sie können nämlich Ihr Tutorium dort bewerten und das sagt diese
Folie.
Sternchenbewertung.
Ich weiß nicht, wie es Ihnen geht, aber wenn ich auf Internetseiten
wie Amazon unterwegs bin und mir überlege, was zu kaufen, dann schaue
ich auch gerne mal in die Kundenbewertung rein.
Und nach diesem Prinzip funktioniert unsere LEZ auch.
Das heißt, bewerten Sie ruhig mal Ihren Tutor.
Das ist eine sehr gute Rückmeldung für den Tutor.
Der Tutor sieht nicht, wer ihn bewertet hat.
Also auch da keine Angst.
Sie können da Sternchenbewertung geben in unterschiedlichen Kategorien
und können sogar einen Einzeiler dazu schreiben, wie Sie denn das
Tutorium finden.
Und ich glaube, ab 8 Bewertungen wird es dann für die Tutoren auch
freigeschaltet.
Dann sehen Sie dann, oh, mein Tutorium hat irgendwie nur 3,0 Sterne.
Da sollte ich vielleicht mal noch besser werden.
Also nutzen Sie das bitte fleißig.
Das hilft auch uns als Übungsleiter so ein bisschen Feedback zu
bekommen, wie das denn mit dem Tutorienbetrieb funktioniert.
Wir hätten natürlich gerne, dass da nur gute Bewertungen sind, aber
bitte sind Sie da ganz frei.
Bewerten Sie, wie Sie das Tutorium finden.
Was an der Stelle noch ganz wichtig ist, bitte bewerten Sie an der
Stelle nicht uns oder Professor Tichy oder das Übungsblatt.
Das machen Sie bitte an anderer Stelle.
Also dann lieber im Ilias schreiben, ach, dieses Übungsblatt ist schon
wieder so gestellt, dass es keiner versteht.
Kann man da gerne mal schreiben.
Dann schreibe ich wahrscheinlich drunter, ja, dann vielleicht doch mal
googeln.
Aber dann bitte dort, nicht dort.
Also wir lesen auch immer mal wieder, ja, das Übungsblatt ist viel zu
schwierig und dann ein Stern, das hilft halt nicht, weil dann ist es
die Bewertung für das Tutorium.
Es ist wie, wenn bei Amazon steht, wurde erst nach drei Wochen
versendet.
Das hat nichts mit dem Produkt zu tun.
Also bitte tatsächlich nur das Tutorium bewerten.
Gut.
Die Termine für die Übung.
Das erste Übungsblatt wird am 18.
April, das heißt, am Mittwoch ausgegeben.
Aktuell, seit einer halben Stunde, ist auch schon das
Vorbereitungsblatt online.
Sie finden das immer alles im Ilias und haben dann normalerweise zwei
Wochen Zeit zur Bearbeitung.
Für das Vorbereitungsblatt haben Sie jetzt nur bis zum Sonntag Zeit.
Das liegt aber auch daran, dass das wirklich einfach nur ist, laden
Sie Werkzeug X, laden Sie Werkzeug Y herunter, installieren Sie das,
lehnen Sie mal auf folgender Internetseite das Tutorial durch.
Mehr ist das nicht.
Dementsprechend nur bis Sonntag.
Und gleichzeitig ab Mittwoch läuft dann auch schon das erste
Übungsblatt.
Abgabe des ersten Übungsblattes ist dann der 2.
Mai.
Wunderbar, da hat man den ganzen 1.
Mai noch Zeit, das fertig zu machen.
Hat man ja sonst nichts zu tun.
Und die erste Übung ist dann am 4.
Mai.
Das heißt, immer am Freitag nach der Abgabe des Übungsblattes ist dann
die zugehörige Übung.
Was machen wir in der Übung?
Wir bereiten Sie auf die Klausur vor.
Wie Professor Tichy schon gesagt hat, wenn Sie regelmäßig in die
Vorlesung kommen, und mit regelmäßig meint er immer.
Und wenn Sie außerdem die Übungsblätter bearbeiten, dann kann ich
Ihnen auch versprechen, dann kann Ihnen eigentlich für die Klausur
nichts passieren.
Dementsprechend machen Sie das.
Ich habe schon angekündigt, wir machen ein Programmierprojekt.
Seit zwei Jahren machen wir das sehr konsequent.
Wir hatten schon immer so ein Projekt, an dem wir so ein bisschen
rumgebastelt haben.
Jetzt haben wir noch so ein bisschen Projektstruktur drum herum
gebastelt.
Und lassen Sie im Grunde über das gesamte Semester ein bekanntes,
bestehendes Projekt erweitern.
Das kommt immer ganz gut an bei den Studenten.
Zum einen, weil Sie sehen, wie ärgerlich es sein kann, mit Altsoftware
zu arbeiten.
Das eine.
Und das andere ist, Sie bearbeiten tatsächlich ein echtes Projekt.
Da kommt am Ende was raus.
Und Sie bearbeiten einzelne Stückchen, die für sich genommen schon
bewertbar sind oder was tun, einen Nutzen haben und am Ende kommt ein
Gesamtprojekt raus.
Das ist eigentlich immer ganz schön, so zu sehen, wie sich das über
die Zeit entwickelt.
Genau.
Und jetzt das Unschöne.
Wir machen das auch nicht zum Spaß und auch nicht nur, um Sie da
vorzubereiten für die Klausur, sondern Sie brauchen das auch echt.
Sie brauchen echt diesen Übungsschein, denn auch der ist Voraussetzung
für das PSE.
Zusammen der Übungsschein und die Klausur bilden das SWT1-Modul und
das ist Voraussetzung, damit Sie an der Praxis der Softwareentwicklung
teilnehmen können.
Und Pflicht ist das für alle Informatiker, Informationswirte und auch
für das Lehramt Informatik.
Auch davon gibt es ja seit zwei Jahren einige bei uns auch immer
wieder.
Die brauchen sich jetzt nicht zu outen, aber ich weiß, dass es welche
gibt.
Das ist sehr schön, dass es das gibt, denn das ist nötig, dass wir da
Nachwuchs generieren.
Genauso kann man die SWT auch natürlich als Nebenfach zumindest für
Mathematik und Physik, so weit ist es uns bekannt machen.
Wir haben heute eine Mail bekommen von einer Musikinformatikerin, also
auch sowas geht.
Wenn Sie noch was anderes Spezielles haben, einen anderen Grund, warum
Sie hier sitzen, gerne kommen.
Wir finden auf jeden Fall eine Lösung für Sie in Absprache dann
natürlich mit Ihrem Fachbereich.
Gut.
Jetzt, was mache ich denn mit der, mit meinem Übungsblatt, wie gebe
ich das denn eigentlich ab?
Da gibt es zwei Antworten drauf.
Die erste ist die LEZ, das habe ich schon erklärt, für die
Programmieraufgaben online auf lez.ipd.kit.edu Dort können Sie sich
mit Ihrem ganz normalen SCC-Account anmelden und können dort dann Ihre
Programmieraufgaben digital abgeben.
Das ist auch die einzige Art und Weise, wie man Programmieraufgaben
abgeben kann.
Also Quelltext ausdrucken und ans Übungsblatt dran heften ist eine
blöde Idee.
Das werden wir nicht akzeptieren.
Ganz anders sieht es bei den Theorieaufgaben aus.
Bei den Theorieaufgaben ist es so, dass die bitte tatsächlich
handschriftlich abgegeben werden.
Hier steht handschriftlich aus, Uwe Zeichen und das liegt deshalb
dort, weil wir immer mehr das Problem haben, dass Leute kommen mit,
ich habe hier ein schönes Diagramm online gezeichnet und ausgedruckt.
Nee, auch das bitte nicht.
Alles bitte handschriftlich machen.
Auch sowas wie, ja ich habe hier eine handschriftliche Lösung, die
habe ich aber eingescannt und wieder ausgedruckt.
Auch nicht so gut.
Also bitte wirklich handschriftliche Lösungen abgeben und die dann in
diese Form und Farbe schöne Kiste werfen.
Große, hölzerne Kiste.
Die steht bei uns vor dem Sekretariat im dritten Stock, Vorraum 368
und dort bitte die Theorielösungen einwerfen.
Und das bitte immer pünktlich Abgabetag bis 12 Uhr.
Und das ist tatsächlich eine harte Deadline.
Um 12.05 Uhr die Kiste weg.
Da werden Sie keine Chance mehr haben, Ihre Lösung abzugeben.
Das steht übrigens auf diesem Hinweiszettel auch nochmal drauf.
Also wenn Sie dort mal vorbeilaufen, da sehen Sie das auch.
Bis 12.05 Uhr bitte abgeben.
Nein, bis 12 Uhr.
Ich habe schon gesagt, bis 12.05 Uhr ist nichts mehr da.
Doch, also auch dann können Sie gerne noch abgeben.
Aber dann wird es leider nicht mehr bewertet.
Und wir sind da wirklich sehr strikt.
Wir rollen die Kiste dann auch weg.
Die ist dann einfach nicht mehr da.
Da gibt es auch nichts mehr einzuwerfen.
Insofern sieht es dann schlecht aus mit einer Abgabe.
Und ja, Probleme kann man da auch ganz leicht vermeiden, indem man das
Ganze einfach mal ein bisschen früher angeht.
Versuchen Sie doch einfach mal, um 11.00 Uhr da zu sein.
Das hilft enorm.
Dann gibt es auch nicht so ein Gedränge bei uns auf dem Flur.
Die Kollegen sind nicht so genervt an deren Büros, die vorbeilaufen
die ganze Zeit.
Also wir kennen das schon.
Da sind dann um 12.00 Uhr immer so eine Traube, die sich aus dem
Fahrstuhl rauspresst.
Während die anderen unten noch in Minus 1 auf ihren Ausdruck warten
für das Deckblatt.
Versuchen Sie das einfach rechtzeitig zu machen.
Dann haben Sie das Problem gar nicht.
Insbesondere, und das ist jetzt auch wieder so ein Erfahrungswert,
normalerweise die Drucker überlastet sind kurz vor 12.00 Uhr.
Weil alle noch schnell abgehen wollen.
Und es sind zwei Wochen Zeit.
Da kann mir jetzt keiner sagen, dass es auf die letzten 5 Minuten noch
ankommt.
Also da einfach rechtzeitig sein ist eine große Bitte von mir, weil
ich echt ungern derjenige bin, der vor Ihnen die Kiste wegschiebt.
Das mache ich wirklich ungern, aber ich mache es.
Und dementsprechend seien Sie einfach bitte pünktlich.
So.
Genau.
Ja?
Frage?
Ja.
Professor Tichy möchte gerne fragen, oder fragt, wo man abgibt, wenn
man zu spät dran ist.
Ich weiß auch, warum er das fragt, weil er jedes Semester eine Lösung
unter seiner Tür durchgeschoben bekommt.
Das ist also eine reine Schutzfrage, die er da stellt.
Die richtige Antwort ist, wenn wir noch da sind, uns in die Hand
drücken, bei uns im Sekretariat abgeben, oder noch besser, einfach
viel zu spät abgeben, weil wenn sie eh drüber sind, dann können sie
auch einfach eine Stunde später abgeben und dann steht die Kiste auch
wieder da.
Weil dann haben wir schon die raussortiert, die rechtzeitig abgegeben
haben, dann kann man auch gerne wieder in die Kiste werfen.
Aber ansonsten irgendwo sinnvoll abgeben und unter der Tür
durchschieben, ist keine sinnvolle Abgabe.
Gut.
Das dazu.
Ich hoffe, das beantwortet Ihre Frage.
Wunderbar.
Dann zur Korrektur der Übungsblätter.
Für unsere sechs Übungsblätter gibt es in Summe 150 Punkte.
Also sehr viel.
Wir teilen das ungefähr halbe halbe zwischen Theorie und Praxis.
Bitte nageln Sie uns da nicht fest.
Manchmal machen wir auch 76, 74 oder sowas.
Ja, also das kommt vor.
Außerdem gibt es darüber hinaus nochmal Bonuspunkte, die nicht zu den
150 Punkten in Summe dazuzählen.
Da kann ich Ihnen jetzt nicht versprechen, wie viele es sind.
Das sind meistens im Semester so Größenordnung 12 bis 15 Bonuspunkte.
So in der Drehung ungefähr werden das.
Das heißt, die gibt es nochmal obendrauf, wenn es wirklich knapp
werden wird.
Sollte bei Ihnen.
Das kann ich mir aber eigentlich gar nicht vorstellen, denn man
braucht nur 75 Punkte von den 150 überhaupt, um den Übungsschein zu
bekommen.
Und naja, das sollte eigentlich zu machen sein.
Kleiner Insider-Tipp noch von mir als Übungsleiter.
Normalerweise sind die Punkte auf den ersten Übungsblättern einfacher
zu bekommen, als die am Ende.
Also vielleicht doch gleich anfangen.
Und Insider-Tipp 2, wer am Anfang nicht mitmacht, der wird es hinten
dran ganz schwer haben, weil das Programmierprojekt, das baut so ein
bisschen aufeinander auf und auch inhaltlich baut das alles so ein
bisschen aufeinander auf.
Wenn man am Anfang abgehängt wird, wird es ganz schwer wieder
reinzukommen.
Also einfach gleich ein bisschen mitarbeiten, Übungsblätter gleich
bearbeiten, dann wird alles gut.
Denn, und jetzt kommt der negative Teil, warum muss ich eigentlich
immer hier die Bad-Boy-Rolle spielen?
Super, danke.
Also ich bin eigentlich ganz nett.
Okay, die, die jetzt lachen, die waren wahrscheinlich letztes Semester
schon da, die wissen, dass es anders ist.
Nein, also zurück zum Ernst des Lebens.
Man braucht nur 75 Punkte für den Übungsschein.
Das ist locker machbar.
Die meisten Studenten haben nach vier Übungsblättern genug Punkte.
Und das ist auch der Grund, warum wir eben bei den verspäteten Abgaben
so hart sind.
Genauso, wenn irgendwie, ja, der KVV wieder mal streikt, es ist halt
auch keine Ausrede für, ich konnte mein Übungsblatt nicht abgeben.
Das heißt, wenn Sie mal ein Übungsblatt nicht abgeben können, dann tut
uns das wirklich sehr leid für Sie, aber wir machen normalerweise
keine Ausnahmeregelung.
Es sei denn, Sie haben wirklich einen sehr, sehr, sehr, sehr guten
Hund.
So in der Größenordnung, ich bin in der Dusche ausgerutscht und hat
mir den Arm gebrochen.
Oder ich liege im Krankenhaus.
Wir finden sicherlich da eine Lösung.
Aber bitte wirklich nur in richtig, richtig ernsten Fällen.
Wenn auch absehbar ist, vielleicht, dass sich das über mehrere
Übungsblätter erstreckt oder es zumindest nicht absehbar ist, wann Sie
wieder abgeben können, dann können wir da eine Sonderregelung finden.
Aber, und das ist jetzt ganz wichtig, machen Sie das nicht einfach
eigenmächtig oder machen Sie da mit Ihrem Tutor irgendwas aus, sondern
immer nur in Rücksprache mit uns.
Das heißt, wenn sowas auftritt, dann Rücksprache mit Ihrem Tutor
halten, Rücksprache mit uns halten und dann können wir da eine Lösung
finden.
Aber wie gesagt, das wirklich bitte nur im allergrößten Ausnahmefall,
denn normalerweise schafft man auch einfach den Übungsschein mit hier
steht im Schnitt drei Blättern.
Das ist einfach deshalb, weil man mit drei Blättern 75 Punkte
erreichen kann, plus Bonuspunkt, also das ist eigentlich auch gut
machbar.
Aber wie gesagt, die meisten Studenten schaffen es tatsächlich mit
vier Blättern eigentlich schon die benötigte Punktzahl zu erreichen.
Also das ist gut machbar.
Genau.
Ihr Abgabe per Mail, habe ich gerade schon gesagt, machen wir nicht,
es sei denn, es gibt tatsächlich hier ausnah oder das Problem und
selbst wenn Sie sagen, Sie können heute nicht nach Karlsruhe kommen,
weil KVV wieder mal streikt, dann können Sie ja zumindest die
Programmieraufgabe abgeben.
Oder Sie nehmen halt doch das Rad oder fahren irgendwie anders
hierher.
Je nachdem, wo man herkommt, das Rad vielleicht keine Option, sehe ich
ein, aber zumindest die Programmieraufgabe kann man ja trotzdem noch
abgeben.
Gut.
Ich führe eine gewisse Unruhe.
Gibt es Fragen bis hierher?
Hier gibt es eine Frage.
Hier fragt ein Kommilitone, ob diese LEZ wieder nur über das KIT-Netz
erreichbar ist und die Antwort ist eigentlich nein.
Wir hatten letztes Semester am Anfang das Problem tatsächlich.
Das sollte aber eigentlich gelöst sein.
Wir haben es schon probiert, oder, dieses Semester?
Ja gut.
Immer zum nächsten gucken ist gut.
Also ich habe es schon probiert übers Handy.
Es hat funktioniert, wenn ich mich recht erinnere.
Also es sollte funktionieren.
Wenn es nicht funktioniert, einfach nochmal meckern.
Das kriegen wir auf jeden Fall hin.
Gut.
Sonst noch Fragen?
Da oben, ja.
Sie brauchen sich nicht abducken.
Das ist kein Problem.
Kann passieren.
Also Frage nochmal, ob man die von außen erreichen kann, die LEZ.
Ja.
Wir werden dafür sorgen, wenn es nicht klappt, einfach bei uns nerven.
Nochmal nachfragen.
Gut.
Noch eine Frage.
Ja bitte.
Hier kommt die Frage, ob man jederzeit seine Programmieraufgaben
abgeben kann oder ob das überlaufen ist, ob es da technische Probleme
gibt.
Wir hatten einmal, glaube ich, tatsächlich den Fall, dass wirklich
sehr viele Leute gleichzeitig versucht haben abzugeben.
Da ist dann halt irgendwann einfach die Rechenkapazität des Servers
erreicht.
Aber wie gesagt, das ist einmal aufgetreten, glaube ich, bisher.
Im Allgemeinen haben wir damit eigentlich kein Problem mit der Last.
Ja.
Auch eine sehr schöne Frage.
Kann man wie beim Praktomaten mehrfach abgeben?
Auch da ist die Antwort ja.
Alles Weitere ist aber dann auch auf den Seiten tatsächlich erklärt.
Ja bitte.
Ihr Kommilitone fragt eine sehr spezifische Frage zum Übungsbetrieb,
zur Abgabe.
Und er möchte gerne wissen, ob man denn auch, also dort steht
irgendwo, man muss auch regelmäßige Einbuchungen mit abgeben.
Ich würde da gerne mal nicht so weit vorausgreifen, weil das sehen wir
dann, was überhaupt zu tun ist auf den ersten Übungsbettern.
Die Antwort ist, das erledigen wir für Sie.
Also die ZIP, die generiert wird, da steht alles drin, was Sie abgeben
müssen.
Also da müssen Sie es selber nicht tun.
Gut.
Noch eine Frage?
Da kommt gerade die Frage, in welcher Form die Übungsblätter
veröffentlicht werden, ob die weiter als Docx veröffentlicht werden
oder als PDF.
Wenn das als Docx veröffentlicht wurde, dann ist das ein Fehler.
Wir hätten das eigentlich gerne als PDF gehabt.
Danke für den Hinweis.
Noch eine Frage?
Da kommt noch mal die Frage zum Übungsschein, ob der obligatorisch ist
für das Bestehen des Moduls.
Ich dachte, das hätte ich deutlich gesagt.
Ja.
Ist es.
Gut.
Dann würde ich dann doch ganz gerne mal weitermachen.
Sonst wären wir heute gar nicht mehr fertig.
Ich möchte nämlich noch auf etwas hinweisen, was mir immer sehr am
Herzen liegt.
Die Plagiate.
Ich habe vorhin schon angedeutet, Übungsblätter sind Einzelleistung.
Und das meinen wir tatsächlich ernst.
Wir versuchen, Leute zu finden, die abschreiben und abschreiben
lassen.
Und wir sind da in der Regel auch relativ erfolgreich.
Denn genauso wie wir unsere Tutoren schulen, ihnen zu helfen und
mehrere Lösungen zuzulassen, schulen wir sie auch darin, Plagiate zu
finden.
Und das auch über Tutorien hinweg.
Und das machen wir deshalb, weil wir wirklich möchten, dass wir am
Ende eine Einzelleistung von ihnen bewerten können.
Ich bitte ein bisschen um Ruhe.
Das ist wirklich wichtig, weil wir jedes Jahr wieder die gleichen
Probleme haben, dass dann doch wieder Leute sehr, sehr ähnliche
Lösungen sage ich mal, abgeben.
Und das hätte ich einfach ganz gerne nicht.
Wenn es nach mir geht, würde ich mir mal ein Jahr ohne Plagiat
wünschen.
Das wäre ein Traum.
Finde ich auch für uns einfach nur ein riesen Ärger.
Das ist auch für uns sehr unschön.
Wir müssen das irgendwie ahnden und wir hätten das einfach ganz gerne
gar nicht.
Wir hätten einfach ganz gerne, dass sie alle ihren Übungsschein selber
machen.
Am Ende einen Übungsschein von uns bekommen, ohne dass es irgendwelche
Zwischenfälle gibt.
Wenn wir Plagiate finden, dann sind wir relativ rigoros.
Wir geben dann 0 Punkte für das aktuelle Übungsblatt und zusätzlich
nochmal minus 25 Punkte.
Kann man wieder ein bisschen kopfrechnen.
0 Punkte für das Übungsblatt minus 25, das sind so ungefähr 50 Punkte,
die man dann riesen ist.
Das heißt, man kann noch 100 Punkte gut erreichen.
Das reicht immer noch locker zum Bestehen.
Und wir haben auch immer wieder Fälle, wo genau das auftritt, wo wir
Leute erwischen beim ersten Mal.
Abschreiben, die sich dann das restliche Semester voll reinhängen und
dann den Übungsschein trotzdem noch bekommen.
Aber das würde ich lieber nicht versuchen.
Es schafft ungefähr ein Drittel von den Leuten, die wir erwischen.
Sie machen sich nur riesen Stress, deshalb machen sie es einfach
direkt selbst.
Und was auch noch wichtig ist, der Hinweis, wir bestrafen nicht nur
den, der abschreibt, sondern auch der, der hat abschreiben lassen.
Versteht sich aber eigentlich von selbst.
So, hier noch ein schönes abschreckendes Beispiel von vor nunmehr vier
Jahren.
Die Nicht-Abschreib-Garantie.
Kennt jeder.
Guter Student und nicht so guter Student, gut befreundet.
Und der nicht so gute Student sagt zum guten Student, kann ich mir
vielleicht mal deine Lösung angucken?
Bin irgendwie in dem Thema noch nicht so richtig drin.
Irgendwie muss ich mir da mal ein bisschen Inspiration holen.
Und dann macht das der gute Student.
Gibt dem nicht so guten, befreundeten Student sein gelöstes
Übungsblatt.
Und der nicht so gute Student sollte glaube ich mit A, B und C
arbeiten, ist einfacher.
Also nicht so guter Student B und guter Student A, so machen wir jetzt
mal weiter, sind befreundet und Student B nimmt dann tatsächlich die
Lösung, die er bekommen hat von A nur zur Inspiration.
Schaut sich das mal ein bisschen an und macht dann tatsächlich eine
eigene Lösung.
Aber er hat noch einen dritten Freund, oder nein, einen zweiten
Freund.
Also da ist noch ein dritter im Bunde, so wollte ich sagen.
Und das ist C.
Und naja, der ist auch nicht so die hellste Kerze auf der Torte.
Und noch viel schlimmer, der ist außerdem noch faul dazu.
Soll es ergeben, solche Leute?
Also ich habe heute noch keinen gesehen.
Aber soll es ergeben?
Und der leiht sich dann von B die Lösung von A aus, weil er ihn
bequatscht.
Und dann treibt er einfach das auf, was er bei A sieht.
Und das ist dann blöd.
Weil dann erwischen wir zumindest A und C.
Und das ist insbesondere für A blöd, weil der hat sich ja eigentlich
nichts zu Schulden kommen lassen, in Anführungszeichen, weil er ja
einfach nur seinem Freund B helfen wollte und ihm zur Inspiration, mit
Nicht -Abschreib-Garantie mal ein bisschen Inspirationen verleihen
wollte.
Aber am Ende sind halt doch A und C dran.
Und wenn wir gut sind, ist auch noch B dran.
In dem Fall haben wir auch B bekommen.
Also machen Sie sowas einfach gar nicht.
Bitte lösen Sie selbstständig die Aufgaben.
Und ich glaube, ich werde an der Stelle nochmal ein bisschen
deutlicher, weil wir auch letztes Jahr wieder ganz häufig den Fall
hatten, von wegen, naja, wir haben die Lösung zusammen erarbeitet an
der Tafel, in dem Seminarraum, und dann sind wir alle heimgegangen und
haben das aufgeschrieben.
Das ist halt auch schon ein Tick zu weit.
Also, wenn Sie irgendwo Probleme haben mit einer Aufgabe, dann
sprechen Sie gerne mit Kommilitonen darüber.
Wir sind auch sehr viele Lerngruppen und so weiter und so fort.
Aber bitte unterhalten Sie sich über die Konzepte.
Wenn Sie nicht verstanden haben, auf Übungsblatt 3 oder 4, ich weiß
nicht, wann es drankommt, was ein Sequenzdiagramm ist und wie das
funktioniert, dann unterhalten Sie sich bitte darüber.
Aber bitte unterhalten Sie sich nicht darüber, wie man Aufgabe A3 auf
Blatt 4 löst.
Das ist der Unterschied.
Also gerne über die Konzepte unterhalten, gerne Übungsaufgaben
zusammen machen, aber nicht die, die auf den Übungsblättern sind.
Okay?
Weil das führt zu Problemen und das wollen wir überhaupt nicht und ich
glaube, Sie wollen das auch nicht.
Gut.
Jetzt haben wir ein bisschen darüber gesprochen, was passiert, wenn
man so Theorieaufgaben zusammen macht und dann plötzlich minus 50
Punkte da stehen hat.
Wie ist es denn bei Programmieraufgaben?
Die kann man doch wunderbar zusammen machen, oder?
Kann man ja wunderbar verteilen, macht man einmal, dann gibt man es
seinen 10 Freunden und dann sind die alle glücklich.
Auch eine blöde Idee, weil das wollen wir auch nicht.
Wir hätten auch gerne, dass sie selber programmieren, denn immerhin
sollen sie mal Informatiker werden oder Informationswirte, auch die
sollten ein bisschen programmieren können.
Und ich hätte auch ganz gerne, dass die Lehrämter ein bisschen
programmieren können, weil dann können die das vielleicht auch mal den
Kindern beibringen.
Das fände ich super.
Dementsprechend auch für die Programmieraufgaben gilt, bitte alles
selber machen.
auch da haben wir uns ein bisschen was überlegt, wie wir das
sicherstellen können.
Wir haben ein Werkzeug, was auf den schönen Namen JPEG hört.
J für Java, weil wir entwickeln hier in Java.
Und was JPEG kann, ist Plagiate finden.
Und das ist ziemlich gut.
Das ist so eine Beispielausgabe von dem JPEG, da sehen sie
Übereinstimmungen zwischen studentischen Lösungen.
Wenn sie eine Aufgabe bearbeiten bei uns und sie machen das
tatsächlich selbstständig, dann sind sie irgendwo hier in diesem
Bereich.
40 bis 70 Prozent Übereinstimmung.
Das ist normal, dass das passiert.
Das ist nicht schlimm.
Problematisch wird es hier oben.
100 Prozent Übereinstimmung, da ist irgendwas faul.
Das sind dann die, die wir uns anschauen und naja, JPEG kann uns nicht
nur so eine Übersicht geben, sondern kann uns auch tatsächlich für
Teile von Aufgaben oder für Gesamtaufgaben zeigen, wie groß die
Übereinstimmung ist.
Das, was hier vorne geschwärzt ist, das sind Matrikelnummern.
Also, wir finden das.
Nun sind sie alle Informatiker und wissen ja, naja, ich werde ja nicht
so blöd sein und gebe das gleiche ab.
Aber wir sind auch Informatiker, wir machen das schon ein bisschen
länger.
Und deshalb funktioniert das auch ein bisschen besser, als sie sich
vielleicht vorstellen.
Verschleiern wird tatsächlich schwierig.
Das Ding, das rechnet semantische Code-Ähnlichkeit aus.
Also, ja, mal die Variablen umbinden, übersetzen, Kommentare ändern,
löschen, hinzufügen, Methoden, Variablen verschieben.
Ja, Methoden aufrufen, umändern, das wird Ihnen alles nichts helfen.
Um das auszutricksen, müssen Sie so viel Arbeit investieren, dass Sie
die Aufgabe vielleicht doch lieber selber lösen sollten.
Das ist dann tatsächlich aufwendiger, das zu verschleiern.
Deshalb machen Sie das nicht, lösen Sie es selber.
Sie sollen ja auch jeweils lernen.
So, super.
Gibt es Fragen bis dahin?
Keine Fragen?
Wunderbar.
Dann jetzt zu den Tutorien, wie das organisatorisch funktioniert.
Das wissen Sie bestimmt alle schon, das funktioniert wieder über
WebInscribe.
Dort ist wahrscheinlich ab morgen, wir haben leider keine Rückmeldung
bekommen dieses Semester, ab morgen bis Donnerstag wieder
freigeschaltet, dass Sie sich in die Tutorien einwählen können oder
Präferenzen abgeben vielmehr und dann wird Ihnen ein Tutorium
zugeteilt.
Und außerdem bieten wir zusätzlich zu den sechs regulären Tutorien ein
Kennenlernen -Tutorium an.
Das ist so ein bisschen analog zum Vorbereitungsblatt und das
Kennenlernen -Tutorium findet bereits in der nächsten Woche statt und
Sinn und Zweck des Ganzen ist mal so ein bisschen die anderen Leute
aus dem Tutorium kennenlernen, ihren Tutor kennenlernen, vielleicht
schon mal das Vorbereitungsblatt gemacht haben, bestenfalls
festgestellt, oje, Eclipse-Installation hat ja gar nicht funktioniert.
Dann einfach mal Laptop mitbringen, zum Tutor gehen und mal mit dem
sprechen, sich mal Dinge erklären lassen und bitte an der Stelle auch
keine falsche Scheu zeigen, sondern das einfach tatsächlich mal
annehmen, dieses Angebot, weil wenn es bei Ihnen schon ganz am Anfang
scheitert, mit der Einrichtung der Werkzeuge, dann werden Sie gleich
komplett abgehängt.
Also gehen Sie zu dem Kennenlernen-Tutorium, das ist sehr hilfreich.
Die eigentlichen Tutorien beginnen dann in der Woche nach Abgabe des
ersten Übungsblattes, das heißt Kalenderwoche 19, das müsste stimmen,
ja, vom 7.5.
bis zum 11.5.
Auch ganz wichtig ist, Tutorien immer nur 2-wöchentlich.
Das heißt, wenn Sie jede Woche zu Ihrem Tutorium kommen, dann stehen
Sie in 50% der Fälle vor verschlossenen Türen.
Das heißt, immer nach der Abgabe des Übungsblattes ist dann auch in
der Woche Tutorium.
So, zum Schluss noch mal der Hinweis, wenn wir hier Leute haben, die
aus irgendwelchen Gründen keinen SCC-Account haben oder anderweitig
nicht auf regulärer Art und Weise am Übungsbetrieb teilnehmen können,
dann bitte jetzt nicht rausrennen und sagen, ja, hilft mir ja eh alles
nichts.
Wir finden eine Lösung.
Also, wir haben da auch Möglichkeiten, tatsächlich am SCC-Account so
ein bisschen vorbeizuarbeiten, sodass Sie da trotzdem auf die LEZ
kommen.
Aber dazu müssen wir uns mit Ihnen kurz schließen, damit wir da eine
Lösung finden können.
Das heißt, wenn das auf Sie zutrifft, das sind nicht nur Schüler,
Studenten, dann bitte bei uns so schnell wie möglich melden.
Am besten bis heute 17 Uhr.
Das gleiche gilt natürlich dann auch für die Tutorien.
Also nicht nur für die LEZ, sondern bekommen ja dann auch kein
Tutorium zugewiesen, wenn Sie Schüler, Student sind.
Das heißt, auch da müssen wir eine Lösung für Sie finden.
Gut, wunderbar.
Dann sind wir an der Stelle erstmal fertig.
Genau.
Und ich übernehme kurz, zumindest.
Genau.
Diejenigen, die es eben nicht mitbekommen haben, ich bin Tobias High,
der zweite Übungsleiter.
Sie werden feststellen, dass wir den Übungsbetrieb häufig zu zweit
leiten werden.
Das ist vielleicht in gewisser Form ein Luxus, da wir die Möglichkeit
haben, zwei Übungsleiter einzusetzen.
Das hat aber auch den Vorteil für Sie, dass wir in den Übungen in der
Lage sind, so ein bisschen den Ball hin und her zu spielen.
Das werden wir auch aktiv nutzen, aber wir wollen den Ball auch zu
Ihnen spielen, immer mal wieder.
Außerdem werden Sie feststellen, dass wir immer ein bisschen
humoristische Elemente in die Übungen mit einbauen werden.
Eines dieser humoristischen Elemente werden wir jetzt gleich auch
vorführen.
Sebastian zieht sich gerade schon in der Ecke um, falls Sie es noch
nicht gemerkt haben.
Er macht sich gerade zum Chef, weil der Chef trägt die Krawatte.
So ist das halt.
Ja, das stimmt.
Aber dafür hat den Sakko an und du nicht.
Genau.
Ich spiele allerdings jetzt den Mitarbeiter, den Knecht in der Form.
Ich bin gerade neu eingestellt worden, habe gerade mein Studium
beendet und habe jetzt in der Softwarefirma angefangen und habe gerade
meinen neuen Laptop bekommen und habe den mal so weitestgehend
eingerichtet.
Sebastian braucht immer ein bisschen länger zum Umziehen, das ist halt
blöd.
Aber, naja.
Gar nicht so einfach, wenn man so richtig hübsch ist.
Ja, Tobias hat es schon wunderbar eingeführt.
Wir möchten ein bisschen darauf hinweisen, dass es mit den Werkzeugen,
die wir benutzen, eigentlich eine ganz gute Idee ist, dass es nicht
aus der Luft gegriffen ist, dass es ohne Werkzeuge nicht so gut klappt
und deshalb möchten wir das jetzt mal so ein bisschen auf
humoristische Art und Weise motivieren.
Ich bin der Chef.
Der Chef trägt Krawatte.
Tobi ist der Codeknecht, hatten wir schon.
Und ich würde sagen, wir fangen dann einfach mal an.
Du bist bereit?
Ich bin bereit.
Wunderbar.
So, dann wollen wir doch mal schauen, was die neuen Mitarbeiter, die
neuen Codeknechte so leisten.
Mal schauen, wen haben wir denn?
Gut, dass mir das die Sekretärin gerade noch auf die Hand geschrieben
hat.
Den Namen von Mitarbeitern merken ist ja gar nicht meins.
Als Chef hat man echt andere Probleme.
Das ist ja witzig.
Hey, hey, Herr, hey.
Oh, hallo, Chef.
Scheint ja sehr kurz geschrieben zu sein, das Leitmotto der Firma,
oder?
Leitmotto der Firma, was war das so gerade nochmal?
Creativity first.
Sogar in allen Bereichen anscheinend.
Ihre Witze sind ja auch sehr treffend.
Aber um es klarzustellen, ich heiße Hai und nicht Hey.
Sehr amüsant.
Ist ja fast genauso witzig wie Hey.
Egal, vielleicht sollten Sie mal lieber mal zeigen, was Sie bisher
schon so geleistet haben.
Erster Tag.
Ich hatte Ihnen ja gesagt, machen Sie mal hier dieses Dingens und zwar
flott.
Wie sieht es denn da aus?
Was war denn das?
Also ich hatte meinen Laptop geholt und dann bei den Kollegen vorbei
Kaffee trinken.
Das war doch das, was ich tun sollte, oder?
Bei den Kollegen Kaffee trinken.
Also ich glaube nicht, dass das...
Also ich meinte Networking und Teambuilding und sowas.
Gut und schön das Networking, aber wie sieht es denn mit den Inhalten
aus, Herr Hai?
Ach ja, Sie hatten mir da eine E-Mail geschickt, richtig?
Ich hatte Ihnen eine E-Mail geschickt, genau.
Ja, ich sollte da was programmieren, richtig?
Sie sollten was programmieren, genau.
Was war denn das nochmal dieses Dingens da?
Dieses Hello World, oder?
Ja, genau, dieses Hello World.
Das wollte der Kunde ganz, ganz wichtig haben, aber jetzt mal hier
flott.
Ja, ja, dann...
Haben Sie hier einen Arbeitsplatz schon eingerichtet, überhaupt?
Ja, fast.
Ich sehe hier nur lustige Bildchen.
Oh ja, das ist hübsch.
Ja, hier ganz neue Entwicklungsumgebung hier, wo alles vorbereitet.
Was ist das denn?
Ein Notepad?
Ein Notepad, ja.
Das hatten wir ja schon früher noch hier.
Ja, aber das ist was ganz anderes.
Das ist Notepad++ zweimal verbessert.
Aha, plus, plus.
Hat das jetzt auch mehr gekostet?
Habe ich das bezahlt?
Ja, natürlich.
Aber dann will ich jetzt auch Qualität sehen.
Okay, alles klar.
Dann wollen wir das Hello World, ne?
Ja, aber mal ein bisschen flott hier jetzt.
Klar.
Ja.
War denn das nochmal so lange her?
Ich treffe den Kunden in zwei Stunden zum Mittagessen.
Zwei Stunden.
Ja, das kriege ich locker hin.
Ich kann das, ich kann das.
Wie lange brauchen Sie?
Zehn Minuten?
Vielleicht.
Gut.
Das geht ja voran.
Das sieht ja ganz gut aus.
Ui.
Ja, genau, so war das.
Ich hoffe, Sie können ungefähr so gut programmieren wie Networken.
Wie wer?
Ja, wie Networken.
Ah, ja.
Was wollten wir ausgeben?
Hello World, oder?
Ja, Hello World, genau.
So soll das heißen, das Ding.
Ja, sorry, meine Aufmerksamkeitsspanne ist heute nicht so hoch.
Das ist schwierig.
Und das trotz des Kaffees.
Also, da mache ich mir ein bisschen Sorgen um Sie.
Ja, Kaffee reicht ja nicht.
Also, ich meinte erst drei.
Ist das jetzt schon so fertig oder wie, oder was?
Ja, also, ich habe da jetzt ein Programm geschrieben.
Das war doch die Aufgabe, oder?
Und das macht jetzt schon das Hello World?
Ja, also, das Programm erstmal schon, ja.
Ach, das ist ja super, wenn Sie wüssten, was ich dafür verlangt habe.
Vom Kunden, das ist super.
Naja, ich koste Sie auch ein bisschen was.
Ja, aber nicht so viel, keine Angst.
Gut.
So, ist das jetzt so fertig?
Jetzt habe ich da hier so ein paar Zeilen hingeschrieben.
Das sieht aus wie die E-Mail an meinen Sohn letzte Woche.
Ich hoffe, Sie schreiben nicht solche E-Mails an Ihren Sohn.
Damit kann der Kunde doch jetzt nichts machen.
Also, das ist doch kein Programm, oder?
Also, ich meine, ich habe ja keine Ahnung von diesen Infos.
Also, das ist Quelltext.
Sie wollten, dass ich Quelltext schreibe, oder?
Nee, das soll natürlich zum Kunden.
Und da soll da was passieren.
Das soll schön aussehen.
Ja, dann einen Moment.
Ja, warte, dann speichern wir das doch mal.
Wenn ich das so dem Kunden kriege, wenn er das so kriegt von mir, dann
bin ich doch hier die nächsten Aufträge los.
Was machen wir hier eigentlich nochmal für eine Java, oder?
Also, ich habe zumindest Java gemacht.
Also, ich habe mal vor ein paar Jahren gesagt, Java ist dieses neue,
hippe Zeug.
Da habe ich gesagt, hier, das machen wir jetzt auch.
Machen alle.
Und außerdem fand ich den Namen schön.
Also, Java auf.
Waren Sie schon mal auf Java?
Nee, aber Malediven nächste Woche.
Auch nicht schlecht.
Aber nur, wenn das fertig wird bis in zwei Stunden.
Jetzt auf.
Ja, ich bin ja schon dabei.
Was ist das denn?
Das ist ja komplett schwarz.
Ach nee, das ist nicht schön.
Wieso?
Was steht da?
FC-Fan78.
Ach je.
Na gut, aber es ist komplett schwarz.
Jetzt machen Sie mal hier, was Sie auch immer machen wollten.
Aber ein bisschen flott.
Also, ich muss das jetzt noch kompilieren, Chef.
Das dauert einen Moment.
Vielleicht kann ich da auch noch was lernen.
Ja, vielleicht.
Dann kann ich das demnächst einfach selber machen.
Oh, ihr hattet mir das Ganze genannt.
Ah, ich muss noch auf den Desktop.
Haben Sie das auf dem Desktop gespeichert?
Ja, so mache ich das auch immer.
Man muss ja Ordnung halten.
Man muss ja wissen, wo es ist.
Also, wir kompilieren das Ganze noch schnell.
Was ist denn das jetzt?
Ich sehe da nur Error.
Ah, ja, ja.
Das muss natürlich genauso heißen.
Und sowas passiert bei so einem kleinen Programm.
Wo haben Sie denn bitte studiert?
Stuttgart?
Stuttgart.
Aber anscheinend haben Sie mich ja trotzdem eingestellt.
Ja, Sie haben ja vollkommen recht.
Das ist mein Fehler.
Wenn ich so hohe Erwartungen an Sie setze.
Immer noch ein Fehler.
Ah, klar.
So, wie sieht es denn jetzt aus?
Ja, also, hat übersetzt.
Wunderbar.
Und jetzt ist das so fertig?
Jetzt muss ich es nur noch ausführen.
Dann kann ich Ihnen zeigen, was dieses wunderbare Programm alles
leisten kann.
Ja, sehen Sie?
Das gibt Hello World aus.
Ich glaube, das ist das, was der Kunde wollte.
Aber jetzt mal ganz ehrlich.
Das können wir so nicht machen.
So können wir das nicht an den Kunden geben.
Hallo, der hat doch keine Ahnung von diesem...
Was ist denn das eigentlich, dieses schwarze Ding da?
Ah, die Eingabeaufforderung.
Ah, Eingabeaufforderung.
Ja, ich kann Ihnen gleich meine Aufforderung geben.
Und zwar, nämlich das mal ordentlich zu machen, Herr Hai.
Ja...
Aber das ist so, wie ich das im Studium gelernt habe.
In Stuttgart hatten wir nur mit dem NotPAD.
Ja, wunderbar.
Also jetzt nochmal zurück.
Herr Hai, Sie waren doch vorhin drei Stunden networking.
Auf Kosten von mir.
Und da haben Ihnen doch die Kollegen bestimmt ein bisschen was
Besseres gegeben.
Bei uns, der Firma, wird doch hochwertig entwickelt.
Das muss doch besser gehen, als mit diesem NotPAD++.
Haben Sie da nicht irgendwas, womit das besser geht?
Ja, also die Kollegen hatten da was erwähnt.
Das ist auch schon installiert, hier, dieses Eclipse.
Aber...
Was ist das denn?
Eclipse?
Weiß nicht, hat noch irgendwas mit Sauerstoff zu tun, glaube ich.
Ganz kapiere ich das auch nicht.
Das sieht aber wichtig aus.
Das lädt so lang.
Ah, ja, jetzt weiß ich wieder, warum ich das verworfen hatte.
Weil, ich habe es aufgemacht, sieht zwar hübsch aus, aber hey, da
steht direkt Problems.
Also, weiß nicht.
Gleich Probleme, ich gebe Ihnen mal einen Tipp als Chef.
Wenn man Probleme sieht, gehen Sie mal mit der Maus da so ein bisschen
runter.
Genau, da ein bisschen runter, noch ein Stück, noch ein Stück, und
jetzt klicken Sie mal.
Ah.
Und deshalb bin ich Chef.
Ich weiß, wie man Probleme löst.
So geht das also.
Auf geht's, Herr Hai.
Jetzt machen wir das nochmal ordentlich, bitte.
Gut, dann schauen wir mal, was wir hier machen können.
Ah, man kann hier direkt ein Java-Projekt anlegen.
Ja, das ist vielleicht ein bisschen sinnvoller.
Ja.
Ja, genau, Hello World, so sollte es heißen.
Java 9, sind wir schon soweit?
Was wollten wir?
Wir wollten gerne, dass da Hello World rauskommt.
Wir wollten auch eine Main-Methode direkt, oder?
Das war doch das, was wir machen wollten.
Verrückt.
Das geht ja viel schneller.
Das ist ja viel einfacher.
Das ist ja schon halb fertig.
Vielleicht sollte ich lieber dieses Eclipse bezahlen, statt Sie.
Ja, das wäre vielleicht wirklich sinnvoller.
Kostet das was, dieses Eclipse?
Dieses Eclipse?
Ja, wahrscheinlich.
So.
Ach.
Ich will jetzt nichts sagen, Herr Hai.
Was denn?
Aber das ging jetzt ein bisschen flotter.
Moment, ich muss erst mal schauen, ob das funktioniert.
Wahnsinn.
Ach, das war jetzt alles, ja?
Und dafür haben Sie vorhin so lange gebraucht?
Ja, ich muss mich ja erst mal einarbeiten.
So, und jetzt, wie machen wir das jetzt?
Machen Sie jetzt hier so einen Zip um dieses Eclipse drum, und dann
bringe ich das dem Kunden mit?
Oder wie läuft das jetzt?
Ja, nee, bei Java gibt es da hier diese Gläser, diese Jars.
Was wollen Sie?
Also ich war ja hier letzte Woche beim Business English, gell?
Und da habe ich gelernt, das ist ein Jars Einwegglas.
Was wollen Sie jetzt hier mit einem Einwegglas?
Ein Einwegglas für ein Programm, oder was?
Eine ausführbare Java-Datei.
Alles in einer Datei.
Alles, was Sie wollen.
Okay, und das heißt Ja, das ist ja sehr kreativ.
Na gut.
Und das haben Sie jetzt schon gemacht?
Ist es schon fertig?
Ja, ist schon fertig.
Ist jetzt auf dem Desktop.
Wunderbar, dann schicken Sie mir doch mal eine Mail, wo das drin ist.
Hier, genau, da ist es.
Aber nicht für Schüsse, das geht bei mir immer nicht.
Mail ist schwierig, weil...
Naja, ich bin noch nicht im Firmennetzwerk.
Ich war doch erst mal Kaffee trinken.
Drei Stunden lang Kaffee trinken, aber noch nicht mal im Firmennetz
geschafft.
War da hier nicht so ein QR-Code am Kaffeeautomaten?
Weiß ich nicht, vielleicht.
Na gut, dann machen wir das anders.
Ich habe irgendwo, warten Sie mal, hier unten hatte ich doch was
hingelegt.
USB -Stick, so macht man das.
Ja, schön.
Ja, dann mache ich Ihnen das einfach da drauf.
Vorsicht, das ist der von meiner Familie.
Da sind meine wichtigen Sachen drauf, da ist das von meinem Sohn
drauf.
Also da bitte jetzt mal ein bisschen vorsichtig.
Aber da können Sie es einfach mal gerade drauf machen.
Das nehme ich dann einfach mit zum Kunden.
Ah, interessant.
Ja genau, das ist das Richtige.
Machen Sie es mal auf.
Genau.
Da sind alle wichtigen Sachen drauf.
Also bitte Vorsicht.
Und da können Sie es einfach gerade daneben legen.
Und dann nehme ich das dem Kunden mit.
Wunderbar.
So.
Alles klar?
Das war es schon, wunderbar.
Dann nehme ich das mit.
Und Sie wissen ja Bescheid, ich hatte Ihnen gesagt, das muss
weitergehen.
Der Kunde hat schon das nächste geordert.
Das muss jetzt noch weiterentwickelt werden.
Der will noch mehr Funktionalität.
Die werden natürlich extra abrechnen.
Viel Spaß beim Mittagessen.
Das heißt, bitte jetzt weiterarbeiten.
Ich bringe das kurz zum Kunden.
Gut.
Während der Chef jetzt weitergeht, wollen wir natürlich das Produkt
noch ein bisschen weiterentwickeln.
Hat ja viel Potenzial, dieses Hello World.
Vielleicht wollen wir da auch noch eine andere Sache ausgeben, als nur
Hello World.
Vielleicht wollen wir ja die Uni grüßen.
Genau.
Machen wir mal Grüße KIT vielleicht?
Warum meckert der denn jetzt hier?
Ah, man muss ja was zurückgeben.
Das ist natürlich sinnvoll.
Wir wollen KIT zurückgeben und das vielleicht hier oben direkt
einbauen.
Grüßen wir doch direkt das KIT.
Wie hieß das Ganze?
Grüße KIT.
Ja, schön.
Übersehe ich gerade irgendwas?
Ah, ja, ich weiß, was ich übersehe.
Sollte auch zugreifbar sein.
So, wunderbar.
Jetzt können wir auch das KIT grüßen.
Vielleicht wollen wir gleichzeitig auch noch irgendwen anders grüßen.
Vielleicht das überlegene Laptop, den ich hier zur Verfügung gestellt
bekommen habe.
Grüßen wir mal noch die Uni.
Also, hier sitzt jetzt niemand mehr, außer drei Personen im Raum, die
noch die Uni kennen.
Meine Wenigkeit auch nicht mehr, aber aus Legacy-Gründen will man
vielleicht auch noch die Uni grüßen können.
Der Kunde vielleicht.
Machen wir das doch mal noch hier unten drunter.
Hi, hi, hi.
Wie sieht's denn aus?
Sind Sie fertig?
Ja, ich bin fleißig.
Ja, Sie sind fleißig.
Soll ich Ihnen mal was sagen?
Das war ganz großer Mist, was Sie da programmiert haben.
Warum jetzt?
Ich hab das dem Kunden gegeben, ja, und der kam zu mir zurück und hat
gesagt, der hat das ausgeführt.
Er hat Puff gemacht.
Puff.
Alle Server down, wegen Ihrem Programm.
Okay.
Was auch immer so ein Surfer ist, aber der hat auf jeden Fall gesagt,
das ist gar nicht gut.
Und er hat gesagt, er hätte das jetzt bitte nochmal schnell
korrigiert.
Machen Sie das mal.
Das, was Sie dem Kunden gegeben haben.
Korrigieren Sie das mal, aber geschwind.
Ja, also ich hab jetzt hier die Version, die ich hab jetzt schon
weiterentwickelt.
Sie meinten ja, ich soll noch das KIT und die Uni grüßen.
Ja, natürlich, aber das soll ja der Kunde erst in der nächsten Version
bekommen.
Er möchte jetzt gerne eine Korrektur von der alten Version, und zwar
ganz schnell.
Ja, aber die ist ja auf Ihrem USB-Stick.
Wie auf meinem USB-Stick, den hab ich mir ja dem Sohn zurückgegeben.
Das ist jetzt aber schlecht, weil ich hab die Version ja nur darauf
gemacht und weiterentwickelt.
Also, weiß nicht.
Ja, das heißt jetzt... Ich kann Ihnen jetzt das hier anbieten, aber
nicht die Version, die ich eben hatte.
Ja, aber das können wir ja jetzt nicht machen.
Ja, hey, hi, wie auch immer.
Also das geht ja so schon mal gar nicht, weil dann kriegt der Kunde ja
was, was er nicht bezahlt hat.
Das geht ja nicht.
Wir müssen jetzt die alte Version korrigieren.
Wie machen wir das jetzt?
Ja, ich kann das hier alles wieder rauslöschen und dann wieder
rauslöschen.
Das, was Sie schon gearbeitet haben, oder wie?
Ja.
Ja, und das hab ich dann bezahlt, oder was?
Dass Sie hier Sachen schreiben und wieder löschen, oder wie?
Das geht ja auch nicht.
Erstmal bezahlen Sie mich einfach so, oder?
Also, wie können wir das denn sinnvoll lösen, Herr Hai?
Haben Sie nicht hier wenigstens auf dem Desktop hier irgendwie so
Hello World Ordner gemacht und dann Hello World Neu, oder so?
So mach ich das immer mit den Gehaltsabhängungen.
Ja, ich hab hier... Was ist noch die Version aus dem Notepad?
Die war ja auch nicht so gut.
Neu 2, das ist dann das Nächste, was Sie dann machen können im Ordner.
Der Ordnerstruktur.
Ach so.
Und dann fertig.
Ich glaub, ich hab da mal was gehört von einem Kollegen aus Karlsruhe.
Ah, okay.
Also ich kenn niemand aus Karlsruhe.
Der meinte, es gibt da sowas, das nennt sich Versions-
verwaltungsdingens.
Ich glaub, da kann man so Versionen irgendwie hintereinander anlegen
und auch wieder zurückkehren.
Das klingt ja irgendwie sinnvoll.
Können Sie da vielleicht mal was rausfinden, damit Sie auch mal
endlich ihr Geld wert sind?
Also mal hier rausfinden, wie dieses Versionsdingens da funktioniert
und mir das mal erklären.
Das wär super.
Da bereite ich mal was vor.
Wunderbar.
Gut, an der Stelle sind wir jetzt erstmal fertig und verlassen so
wieder ein bisschen die Quatschebene.
Ja, oh, richtig.
Finde ich auch ganz schade, aber wir wollen ja auch inhaltlich noch
ein bisschen weiterkommen und die richtige Lösung für unser Problem,
was wir jetzt gerade eben am Ende hatten, also wir haben ja schon
gesehen, irgendwie wäre es sinnvoll, wenn man irgendwie so eine
Entwicklungsumgebung hat, um was zu entwickeln und zum anderen wäre es
irgendwie sinnvoll, man könnte irgendwie so mehrere Versionen von
Software irgendwie sinnvoll verwalten.
Und das ist das erste, was wir uns in der Werkzeugkette tatsächlich
anschauen wollen.
Der Herr Hai hat da mal was recherchiert.
Sehr schön, Sie haben sich meinen Namen gemerkt.
Jaja, aber erst im dritten Versuch hat sich der Chef den Namen
gemerkt, aber immerhin.
Und Herr Hai hat da mal recherchiert, wie man das sinnvoll machen
könnte mit dieser Versionsdingens.
Genau, wir starten jetzt also quasi mit dem Vorlesungsstoff, so ein
bisschen.
Zumindest mit dem, was wir für die Übung benötigen an Stoff.
Das heißt, unser erstes Thema ist die Versionskontrolle.
Wie wir eben ja schon gemerkt haben, ist es vielleicht ganz sinnvoll,
sich verschiedene Versionen zu merken und auch diese rückverfolgbar zu
machen.
Dieses Problem, was wir jetzt gerade gesehen haben, hatten aber nicht
nur wir, sondern auch schon ganz viele andere Firmen und andere
Industriezweige auch schon, zum Beispiel die Raumfahrtindustrie in den
50er und 60er Jahren.
Die haben auch das Problem gehabt, dass sie immer wieder neue
Versionen von ihren Raketen gebaut haben und sich nicht genau merken
konnten, was sie zu welchem Zeitpunkt wie geändert haben.
Was dann dazu führte, dass der eine da was geändert hat, der andere
hier, aber die Informationen waren nicht da, um zu entscheiden, ob das
Ganze kompatibel ist.
Und dann hatten sie so Geschichten wie Prototypen, die bei Tests
explodiert sind oder Sachen, die ins All geschossen wurden, die nicht
mehr kommunizieren konnten.
All diese Probleme.
Das heißt, auch dort ist dieses Problem schon aufgetreten, dass man
vielleicht einen Überblick über die verschiedenen Versionen eines
Systems haben möchte und diese auch rückverfolgbar machen möchte.
Genau.
Das heißt, damals wurde die sogenannte Konfigurationsverwaltung
eingeführt.
Sie haben sich also gemerkt, welche Änderungen sie an den Prototypen
durchgeführt haben, haben die dokumentiert und aufgeschrieben.
Dieses Konzept der Konfigurationsverwaltung übertragen wir dann jetzt
auf Software.
Das heißt, ich fange jetzt auch ganz schön, wie Professor Tichy eben
auch schon, mit einer Definition an.
Softwarekonfigurationsverwaltung oder im Englischen Software
Configuration Management ist die Disziplin zur Verfolgung und
Steuerung der Evolution von Software.
Das klingt jetzt erstmal sehr kryptisch und irgendwie weiß man erstmal
nicht, was damit gemeint ist, aber das werden wir jetzt in den
nächsten Folien noch genauer sehen.
Wichtig ist auf jeden Fall, dass wenn man diese
Konfigurationsverwaltung nicht hat, man halt in einem Änderungschaos
landet.
Und wie ich eben schon beschrieben habe, wenn jeder irgendwo was
ändert, niemand das dokumentiert, weiß keiner, wer was geändert hat
und warum und an welcher Stelle.
Es gibt nicht nur diese Definition, die wir gerade eben schon gesehen
haben, sondern auch schon von der ISO einen Standard zur
Konfigurationsverwaltung.
Hier ist die Definition Konfigurationsmanagement stellt einen
Mechanismus zur Identifizierung, Lenkung und Rückverfolgung der
Version jedes Softwareelementes dar.
Gut, jetzt haben wir hier ein paar Begriffe, die wir noch nicht so
ganz verstehen.
Vor allen Dingen hier von Softwareelementen die Rede, das werden wir
gleich auch noch genauer sehen, was das ist.
Aber es gibt...
Erstmal wollen wir wissen, was überhaupt so eine Softwarekonfiguration
ist.
Eine Softwarekonfiguration ist eine eindeutig benannte Menge von
Softwareelementen mit den jeweils gültigen Versionsangaben, die zu
einem bestimmten Zeitpunkt im Produktlebenszyklus in ihrer
Wirkungsweise und ihren Schnittstellen aufeinander abgestimmt sind und
gemeinsam eine vorgesehene Aufgabe erfüllen sollen.
Das heißt, eine Konfiguration ist immer ein Abbild einer Software zu
einem bestimmten Zeitpunkt, also ein Teil seiner Software vielleicht
auch nur, also eine Menge von Softwareelementen, die zu einem
bestimmten Zeitpunkt gültig zusammenspielen können.
Das heißt, die ja quasi ein abgeschlossenes System oder eine
abgeschlossene Version an dieser Stelle darstellen.
Jetzt haben wir ganz viel von diesen Softwareelementen geredet.
Was sind die denn jetzt eigentlich?
Ein Softwareelement ist in unserem Fall jetzt ein, ist jeder
identifizierbare Bestandteil eines Produktes oder einer Produktlinie.
Ein Softwareelement kann aber dabei entweder einzelne Dateien
beinhalten oder auch eine Konfiguration von Dateien.
Das heißt, wenn man sich überlegt, man hat vielleicht
Quelltextdateien, hat aber auch noch Dokumentationen dazu, die in
Textdokumenten dazulegen oder sonstiges.
Dann haben wir hier auch noch das Wort Produktlinie.
Hat jemand eine Ahnung, was man unter Produktlinie versteht?
Okay, dann mache ich weiter.
Versuchen wir es vielleicht noch bei etwas anderem ein bisschen
Interaktion reinzubringen.
Produktlinien, ich weiß nicht, jedem von Ihnen ist sicherlich bekannt,
dass es verschiedene Produkten, zum Beispiel Microsoft gibt es
Versionen für Business, für Studenten, für den Heimanwender und so
weiter.
Das sind verschiedene Produktlinien eines einzigen Produktes.
Genau.
Und diese haben dann gewisse Software-Elemente gemeinsam, aber nicht
alle, weil Teile ausgetauscht wurden.
Was noch wichtig ist beim Software-Element ist, dass es einen
systemweit eindeutigen Bezeichner hat.
Das heißt, es ist eindeutig identifizierbar im System und kann damit
von den anderen Elementen abgegrenzt werden, aber auch wenn es sich
ändert, hat es einen neuen Bezeichner, um abgrenzen zu können, dass es
sich nicht mehr um das gleiche Element handelt, was es vorher war.
Wir unterscheiden dann hierbei noch zwischen Quelle-Elementen, welche
manuell erzeugt wurden, also wie ich gerade eben beim Editor
irgendwelche Potschnipsel eingetippt habe, aber auch abgeleitete
Elemente, die automatisch generiert werden, wie der Quelltext bzw.
das Kompilat, was dann später rauskam.
So, jetzt haben wir eben ganz am Anfang auf der Folie gesehen, es geht
um Versionsverwaltung.
Na gut, wir haben bisher nur von Konfigurationen gesprochen.
Was sind denn jetzt eigentlich Versionen?
Eine Version ist eine konkrete Ausprägung eines Software-Elementes zu
einem bestimmten Zeitpunkt.
Das heißt, mein Hello World, was ich eben dem Kunden ausgeliefert
habe, war eine Version, die ich quasi rausgegeben habe.
Wenn ich jetzt aber weiterentwickle und weitere Versionen dieses
Produktes erzeuge, nennt man diese verschiedenen aufeinanderfolgenden
Versionen Revisionen.
Das heißt, sie sind zeitlich aufeinander abfolgende Versionen und
hätte ich diese gehabt, hätte ich zu einer früheren Revision
vermutlich auch zurückkehren können.
Ein weiterer Begriff, den wir jetzt in diesem Zusammenhang auch noch
betrachten, sind Varianten.
Varianten sind alternative Versionen, also parallel existierende
Versionen derselben Software.
Zum Beispiel, man hat eine Software, die irgendeinen
Sortieralgorithmus benutzt, im Standardfall.
Aber ich möchte jetzt zum Beispiel noch ausprobieren,
ich möchte noch ausprobieren, wie das ist, wenn ich jetzt zum Beispiel
anstatt Merge Sort, Babel Sort benutzen möchte.
Dann mache ich einfach eine weitere Variante meiner Software und lasse
diese parallel laufen, kann diese Variante aber später gegebenenfalls
auch wieder zusammenführen mit der vorherigen Version.
Ich habe auch noch ein schönes Beispiel von gerade eben.
Beispiel jetzt einfach eine fehlerfreie Variante von deinem ersten
Bauernkönnen.
Also angenommen, du hättest Revisionen gehabt, dann hätte man zur
ersten Version zurückkehren können und von dort aus dann eine
fehlerfreie Variante der ersten Version erstellen können.
Das wäre eigentlich genau das, was man in unserem Hello World Beispiel
hätte machen wollen.
Genau.
Schauen wir uns das Ganze mal noch kurz grafisch dar.
Das heißt, wir haben gerade eben die Begriffe Version, Revisionen und
Variante gehört.
Hier sind jetzt verschiedene Versionen dargestellt.
Wir starten hier mit einer Version 1.0, auf die die Version 1.1 folgt
und die Version 1.2.
Wir haben hier noch Freigaben stehen, das sind die Sachen, die wir
rausgeben, also Releases im Englischen, falls Ihnen das mehr sagt.
Das wäre in dem Fall das Produkt gewesen, was ich dem Kunden zur
Verfügung gestellt habe, in der Version 1.0 und habe dann
weiterentwickelt.
Hätte dann vielleicht eine Version 1.1 erzeugt, 1.2 bis zu irgendeinem
Punkt, wo wir wieder eine Version haben, die wir den Kunden ausliefern
wollen.
Das ist dann hier die Freigabe 2.
Wenn ich jetzt, wie gesagt, noch eine fehlerfreie Version von meiner
ersten Version hätte erstellen wollen, hätte ich von dieser eine
Variante erstellt.
Hat jemand eine Idee, warum wir diese Varianten so nummerieren und
nicht einfach auch 1.1 nennen?
Da hinten?
Jakob Litton hat gesagt, weil wir ja hier die erste Variante der
Version 1.0 haben und nicht eine Variante zum Beispiel von 1.1.
Wenn wir nämlich jetzt hier eine Version wie der 1.1 irgendetwas
nennen wollen, würden wir denken, dass es sich vielleicht auf diese
Version bezieht.
Wir müssen also die Möglichkeit haben, die verschiedenen Zweige
abbilden zu können.
Wenn wir jetzt natürlich noch eine zweite Variante einfügen, also wenn
wir die weitfertig entwickelt haben, dann können wir einfach hier die
zweite Version von der ersten, also die zweite Variante von der ersten
Version hinzufügen.
Es bleibt aber dabei immer der erste Zweig quasi als Hauptzweig, der
das Gesamtprodukt erstmal symbolisiert.
Wir können aber jederzeit natürlich unsere Varianten auch wieder in
den Hauptzweig einfließen lassen, indem wir sie verschmelzen.
Genau.
Das wäre jetzt eigentlich auch schön in dem Beispiel gewesen, wenn du
nochmal zurückgehen kannst.
Wenn wir jetzt von 1.0 ausgegangen sind, das ist das Hello World und
bei 1.1 ist dann das, was Tobias dazu geschrieben hat mit Hallo Uni
und Hallo Kids, dann hätte er vielleicht in der Variante 1 ja das...
in Variante 1 den Fehler korrigiert und hätte dann wiederum...
Entschuldigung an Herrn Fischer hier schon.
Er macht nämlich die Aufzeichnung.
Er darf das dann aufräumen.
Genau, also was man dann hätte machen können, ist diese Variante 1
wieder da oben zurückführen in den Hauptzweig.
Das wäre das, was man da hätte machen können.
Genau.
Vielen Dank.
Genau.
Wie funktioniert das Ganze jetzt?
Naja, wir müssen ja erstmal unsere Software in irgendeiner Form
irgendwo speichern.
Wir speichern bei der Versionsverwaltung unsere Software-Elemente in
sogenannten Depots.
Das ist halt das Depot, in dem alles abgelegt wird, was die Software
beinhaltet.
Und um diese Informationen jetzt zu erhalten, weil dieses Depot könnte
zum Beispiel nicht bei uns lokal liegen, sondern auch auf irgendeinem
Server, könnte auch bei wem anders auf dem Rechner liegen, kann aber
auch bei uns lokal liegen, müssen wir erstmal die aktuellste Version
uns holen.
Das machen wir mit dem sogenannten Checkout oder dem Ausbuchen.
Dieser holt sich eine Kopie des aktuellen Depots und diese Kopie wird
dann erstmal für mich reserviert.
Das heißt, ich sage, ich buche dieses Depot aus und niemand anders
darf in diesem Zeitpunkt mit diesem Depot weiterarbeiten.
Das nennt man, das ist das sogenannte strikte Ausbuchen.
Ich darf sie dann ändern und kann sie dann, diese Änderung, wieder in
das Depot einfließen lassen, wo wieder jeder andere damit
weiterarbeiten kann.
Genau, und das nennt sich dann Einbuchen.
Die schreibt die Veränderung oder auch die kleineren Änderungen oder
Hinzufügungen, die ich getätigt habe, wieder zurück in das zentrale
Depot und löscht die Reservierung.
Das heißt, ab diesem Zeitpunkt kann dann wieder jeder auf dieses Depot
zugreifen, kann es wieder ausbuchen und diese Informationen auch
benutzen.
Außerdem wird bei einer Einbuchung immer noch ein paar Metadaten
gespeichert, wie zum Beispiel, wer das Ganze getätigt hat, also in dem
Fall mein Name oder irgendein Kürzel, was mich identifiziert.
Der Zeitpunkt, zu dem ich das durchführe und ein Eintrag, der benennt,
was ich denn gerade verändert habe.
Das ist ziemlich wichtig, denn, wenn man sich überlegt, arbeiten,
keine Ahnung, 50 Leute an einer Software und jeder ändert irgendetwas,
dann will man vielleicht wissen, was hat denn der Kollege da gerade
geändert und will ihn nicht jedes Mal anrufen und nachfragen, hey, was
hast denn du da jetzt gemacht, was kann ich da jetzt machen, was hat
sich verändert, sondern es ist sehr wichtig, sinnvolle Einträge hier
zu schreiben, die verdeutlichen, was ich denn da jetzt geändert habe.
Sobald ich dieses Softwareelement dann eingebucht habe, ist es
natürlich nicht mehr änderbar, zumindest nicht mehr für mich, denn es
liegt dann wieder im Depot und man muss es wieder ausbuchen, um es
ändern zu können.
Der Prozess, jetzt nochmal grafisch dargestellt, ich als Benutzer und
das Depot, vielleicht auf irgendeinem Server, wie gesagt, aber kann
auch bei mir lokal liegen.
Ich möchte das Depot ausbuchen, stelle eine Checkoutanfrage, bekomme
vom Depot das änderbare Softwareelement, tue daran dann irgendetwas
und buche es danach wieder ein.
Glaube ich relativ einleuchtend.
Es gibt aber einen größeren Nachteil daran, nämlich dieses strikte
Ausbuchen bedeutet, dass immer nur einer gleichzeitig diese Software
verändern kann.
Und vielleicht ist das nicht so sinnvoll, wenn man vielen Leuten
zusammenarbeitet.
Vor allen Dingen muss ja nicht jeder immer das gesamte Depot halten
und für sich beanspruchen, wenn er nur einen Teil davon ändern will.
Das heißt, es gibt in diesem Fall noch die Möglichkeit, ein
optimistisches oder mehrfaches Ein- und Ausbuchen zu erlauben, was
dann die Möglichkeit bietet, dass man Änderungen, also, dass lesender
Zugriff immer möglich ist, aber nur das, was man verändert, quasi
gelockt wird.
Richtig?
Ja.
Genau.
Hast du die nächste Folie?
Da gibt es noch eine zum optimistischen Ausbuchen, glaube ich.
Vielleicht mache ich die noch gerade, oder?
Genau.
Wenn man jetzt aber dieses optimistische Ausbuchen hat und jeder daran
irgendetwas ändern kann, also es gibt keine konkreten Logs für die
Geschichten, sondern jeder hat Versionen für sich, kann sich die
ausbuchen, dann muss man natürlich überlegen, was ist denn, wenn jetzt
zwei Personen dieselbe Datei ändern oder dieselbe Teil einer Datei
oder dieselbe Software-Element ändern.
Dann kann es nämlich zu Konflikten führen, wenn wir nämlich uns
überlegen, wir haben dieses Codeschnipsel hier, so ähnlich wie das,
was ich gerade eben geschrieben habe, vielleicht noch ein bisschen
besser.
Zumindest hat da jemand private benutzt.
Das kannte ich ja eben noch nicht.
Genau.
Und jemand anders arbeitet gleichzeitig mit mir an diesem
Codeschnipsel.
Wir haben es also beide ausgebucht und wir verändern beide dieselbe
Stelle.
Beispiel, ich hätte jetzt hier eine GetNewHello-Methode eingefügt und
der Kollege hätte stattdessen die Methode in HalloKit umbenannt, die
vorher HalloUni hieß.
Wenn wir jetzt beide diese Versionen in das Depot wieder einbuchen
wollen, haben wir das Problem, dass wir jetzt nicht wissen, welche
Version da genommen werden muss.
Das heißt, es muss entschieden werden, wie wir diese beiden Versionen
zusammenführen.
Das ist nicht immer eindeutig und nicht immer klar, was da jetzt
gemacht werden muss.
Hier unten ist es klar, weil das kommt einfach hinzu, das kann man
konfliktfrei einfach übernehmen.
Aber an diesen beiden Stellen hier haben wir einen Konflikt zwischen
den beiden Versionen.
Und dann muss einer derjenigen, die das Ganze einbuchen, der, der das
zuletzt macht, entscheiden, wie wir diese beiden Elemente jetzt
verschmelzen.
Genau.
Ich glaube, das habe ich schon gesagt, das ist nur für Ihren Ausdruck
später.
Das heißt, hier muss manuell entschieden werden, wie man das Ganze
weitermacht.
Ich glaube, bis hierhin belassen wir es erstmal für heute.
Am Freitag gibt es wieder uns beide, Übungsleiter, weil wir noch
weiter die Werkzeugkette einfügen.
Ganz, ganz wichtig, bitte an Weaponscribe denken, bitte an das
Vorbereitungsblatt denken und ab Mittwoch dann an das erste
Übungsblatt denken.
Dann bis Freitag.