10 nach 10 Podcast

CSDC: Software Engineering

September 24, 2021 Sigrid Schefer-Wenzl and Igor Miladinovic
10 nach 10 Podcast
CSDC: Software Engineering
Show Notes Transcript

Professionelle Software Projekte können sehr komplex sein. Die daraus entstandenen Produkte werden noch viele Jahre nach der Fertigstellung verwendet und auch weiterentwickelt. Die wissenschaftliche Disziplin, die sich mit der Entwicklung, dem Einsatz und der Weiterentwicklung von Software befasst, nennt sich Software Engineering. 

Software Engineering hat das Ziel, die Komplexität durch die Bereitstellung von Prinzipien, Methoden und Werkzeugen zu managen. In unserem Bachelorstudium Computer Science and Digital Communications lernen die Studierenden Software Engineering Methoden im dritten Semester in der gleichnamigen Lehrveranstaltung kennen, und wenden diese auf Projekten an. In dieser Folge stellen wir Ihnen diese Lehrveranstaltung inhaltlich und organisatorisch vor.

00:00:05
 Intro Speaker: Wissenswertes und Wissen. News aus den Studiengängen der Technik an der FH Campus Wien.

00:00:23
 Sigrid Schefer-Wenzl: Professionelle Software Projekte können sehr komplex sein. Die daraus entstandenen Produkte werden noch viele Jahre nach der Fertigstellung verwendet und auch weiterentwickelt. Die wissenschaftliche Disziplin, die sich mit der Entwicklung, dem Einsatz und der Weiterentwicklung von Software befasst, nennt sich Software Engineering.

00:00:43
 Igor Miladinovic: Software Engineering hat das Ziel, die Komplexität durch die Bereitstellung von Prinzipien, Methoden und Werkzeugen zu managen. In unserem Bachelorstudium Computer Science and Digital Communications lernen die Studierenden Software Engineering Methoden in der gleichnamigen Lehrveranstaltung im dritten Semester kennen und wenden diese in Projekten an. In dieser Folge stellen wir Ihnen diese Lehrveranstaltung inhaltlich und organisatorisch vor.

00:01:16
 Igor Miladinovic: Die Entwicklung der Informatik und digitalen Kommunikation war nie so schnell wie heute

00:01:22
 Sigrid Schefer-Wenzl: und sie wird nie so langsam sein wie heute.

00:01:27
 Igor Miladinovic: In diesem Podcast stellen wir wichtige Themen rund um unsere Informatik Studiengänge der FH Campus Wien vor,

00:01:36
 Sigrid Schefer-Wenzl: die sie optimal für diese Entwicklung vorbereiten werden.

00:01:42
 Igor Miladinovic: Willkommen zu dieser Folge von unserem Podcast 10 nach 10. Mein Name ist Igor, Miladinovic und ich bin der Studienganges Leiter von den Studiengängen Computer Science and Digitial Communications und Software Design and Engineering.

00:01:55
 Sigrid Schefer-Wenzl: Willkommen auch von meiner Seite. Mein Name ist sicher Sigrid Schefer-Wenzl und ich unterrichte in diesen beiden Studiengängen.

00:02:02
 Igor Miladinovic: Das heutige Thema ist Software Engineering und in unserem Bachelorstudium haben wir im dritten Semester eine Lehrveranstaltung Software Engineering, wo wir die Systeme behandeln. Wir starten so wie üblich mit einer kurzen Vorstellung von den Vortragenden.

00:02:17
 Igor Miladinovic: In diesem Fall in diesem Fall sind es Frau Schefer-Wenzl und ich unterstützt durch weitere Mitarbeiterinnen und Mitarbeiter vom Studiengang, die wir auch kurz vorstellen werden. Zuerst werde ich dich Sigrid bitten, dass du dich kurz vorstellst.

00:02:32
 Sigrid Schefer-Wenzl: Danke schön. Ja, mein Name ist die Sigrid Schefer-Wenzl. Ich unterrichte üblicherweise Software Engineering in der Vollzeit Form unseres Bachelorstudium. Und ich habe einen Background in der Wissenschaft. Ich habe im Software Engineering Bereich promoviert, hab selbst Wirtschaftsinformatik studiert und Betriebswirtschaftslehre und zirka 50 Publikationen im Software Engineering Bereich, Wissenschaftliche Publikationen, veröffentlicht. Igor möchtest du dich jetzt vorstellen?

00:03:01
 Igor Miladinovic: Gerne. Ich bin seit 2016 an der FH Campus Wien, wo ich diese Studiengänge übernommen habe. Zuerst war das nur ein Bachelorstudium. Jetzt haben wir einen Bachelor und einen Masterstudiengang. Davor war ich über 10 Jahre in der Industrie, war zuständig für Software-Lösungen in großen Telekommunikationsnetzen und davor war ich an der TU Wien und am Forschungszentrum für Kommunikation Wien, wo ich mich so circa fünf Jahre mit der Forschung befasst habe und wo ich auch promoviert habe. Weitere Mitarbeiter und Mitarbeiterinnen bei dieser Lehrveranstaltung sind, die ändern sich von Jahr zu Jahr. Wir haben üblicherweise zwei Personen, die für die Übungen zuständig sind, sowie Frau Schefer-Wenzl gesagt hat: Sie macht die Vorlesung in der Vollzeizform, ich mache die Vorlesung in der berufsbegleitenden Form und üblicherweise haben wir noch zwei Personen für die Übungen Vollzeit und berufsbegleitend. Ab und zu sind es drei Personen, je nachdem, wie wir das Aufteilen. In diesem Jahr sind das Leon Freudenthaler, wird in beiden Formen präsent sein. Dann Georg Mansky-Kummert, er wird die berufsbegleitende Form begleiten und Sebastian Ukleja er wird die Vollzeitform übernehmen. Zusätzlich haben wir noch eine Tutorin und einen Tutor, der oder die dafür zuständig ist, verschiedene Abgaben zu beurteilen und so sie durch dieses Feedback zu unterstützen. Üblicherweise sind das unsere Studierenden, die das Ganze vor einem Jahr oder vor zwei Jahren abgeschlossen haben. Das ist auch eine Art von Anerkennung an die sehr gute Studierenden, die dann diese Rolle machen dürfen oder machen wollen, wenn sie natürlich auch dafür Zeit haben. In diesem Jahr wird uns Oliver Dorfner unterstützen und alle, die jetzt im dritten Semester sind, werden sie sehr bald kennenlernen. Und wenn wir jetzt über die Inhalte dieser Lehrveranstaltung reden, was kannst du dazu sagen aus deiner Sicht Sigrid?

00:05:06
 Sigrid Schefer-Wenzl: Die Inhalte der Lehrveranstaltungen sind in beiden Formen ident, also in der Vollzeitform der berufsbegleitenden Form. Wir haben üblicherweise auch einen gemeinsamen Moodle Kurs, wo sie alle Teilnehmer und Teilnehmerinnen aus den Lehrveranstaltungen Software Engineering sehen können. Die Inhalte der Lehrveranstaltung sind anhand der wichtigsten Aktivitäten im Software Engineering Bereich strukturiert. Das heißt, wir haben einen Block, wo wir Ihnen ganz allgemein einmal Vorgehensmodelle im Software Engineering vorstellen, also Vorgehensmodelle, wie man strukturiert, Software Projekte bearbeiten kann. Dann fokussieren wir uns auf Requirements Engineering, das heißt wir haben einen ganzen Vorlesungsblock zu diesem Thema, wo sie lernen, wie sie gut und verständlich und möglichst widerspruchsfrei Anforderungen für ein Software Projekt finden können. Dann haben wir einen Block zum Thema Software Design, wo wir uns mit Modellieren von Software Strukturen beschäftigen, schwerpunktmäßig mit der Modellierung Sprache Unified Modeling Language. Und dann haben wir auch noch einen Block zum Thema Software testen, wo Sie verschiedene Tests, Vorgehensmodelle, Test Möglichkeiten kennenlernen. Und dann haben wir auch immer aktuelle Themen, zum Beispiel DevOps, aktuelle Trend oder sehr verbreitet bereits im Bereich Software Engineering und bereichern die Vorlesung auch immer mit Gästen aus der Industrie zu unterschiedlichen aktuellen Themen. In diesem Semester werden das voraussichtlich zu den Themen Design Thinking, eventuell auch zu den Themen DevOPp und eventuell auch noch ein paar weitere Themen sein. Möchtest du noch was hinzufügen?

00:06:51
 Igor Miladinovic: Vielleicht ist es auch interessant, dass diese Lehrveranstaltug sehr groß ist, was den Aufwand betrifft. Gemessen am ECTS Punkten ist das die die drittgrößte Lehrveranstaltung im ganzen Studium. Es gibt nur Berufspraktikum mit mehr Stundenaufwand und Programmierung. Und das zeigt auch die Wichtigkeit dieser Disziplin für das Studium. Man kann es auch als eine Fortsetzung von Programmierung 1, 2 Algodat, da entwickeln sich die Studierenden Richtung Softwareentwickler, Softwareentwicklerin bzw. Softwareingenieurs. Und was noch interessant ist: diese Lehrveranstaltung gibt auch eine solide Basis für die Zukunft. Man kann sehen, wo man Interesse hat. Wir haben dann später in unserem Masterstudium Software Design and Engineering dedizierte Lehrveranstaltungen zu den bestimmten Bereichen von Software Engineering. Es gibt Requirmentes Engineering, es gibt Software, Testing, Advanced Programming und so weiter. Es ist diese vier große Bereiche im Software Engineering, die werden dann noch detaillierter im Master behandelt. Und sie haben natürlich Möglichkeiten, Zertifizierungen aus diesen Bereichen zu machen, zum Beispiel für Requirements, ISTQB für Software Testing oder Oracle Java für Software Entwicklung. Und das sollten Sie auch spätestens im Masterstudium nutzen. Wenn wir jetzt über die Organisation von dieser Lehrveranstaltung reden wir haben schon erwähnt, es gibt eine Übung. Es gibt eine Vorlesung, wie sie es genau organisiert.

00:08:30
 Sigrid Schefer-Wenzl: Wir haben eine Vorlesung teil, wo wir eben diese ganzen Themen zunächst theoretisch, aber auch immer mit praktischen Übungen bearbeiten. Das heißt, im Rahmen der Vorlesung werden Sie auch ein kleines Software Projekt durchlaufen. Das wird nicht implementiert, aber Sie gehen alle Schritte dieses Software Engineering Zyklus durch. Das heißt, Sie werden angeleitet durch uns Anforderungen für eine App im FH Kontext zu verfassen. Sie werden sich ein Design überlegen, und Sie werden sich auch bestimmte Testfälle überlegen. Wie gesagt, umgesetzt wird es in der Vorlesung nicht, aber wir haben so ein praktisches Projekt, wo wir auch immer sofort diese Inhalte gleich anwenden können. Möchtest du was über die Übungen sagen?

00:09:19
 Igor Miladinovic: Die Übung ist ist eine Erweiterung von dieser praktischen Übungen der Vorlesung. In dem Fall ist es so, dass die Studierenden selber ein Thema im Projekt definieren und nach den Methoden von Software Engineering dieses Projekt auch umsetzen. Wie arbeiten üblicherweise in Gruppen von drei Studierenden, wobei jede Person eine definierte Rolle hat. Und es gibt dann Milestones, es gibt Abgabetermine, wo wir schauen, wie die Gruppen, wie die Projekte sich entwickeln. Es gibt regelmäßige Treffen, wo wir über mögliche Probleme oder Entscheidungen im Projekt mit den Studierenden reden bzw. wo die Studierenden auch technische Unterstützung von uns bekommen. Das heißt, insgesamt ist auch die Vorlesung relativ praktisch orientiert. Auch in der Vorlesung gibt es ein kleines Beispiel dazu umzusetzen. Dieses Beispiel wird in der Übung wesentlich größer bzw. es ist ein anderes Beispiel, wo wir wollen, dass die Studierenden diese Vorgehensweise bei Software Engineering möglichst viel üben. Und das ist etwas, was sie auch später brauchen werden. Sie werden hier lernen, wie man ein SRS Dokument schreibt. Es steht für Software Requirements Spezifikation. Dieses Dokument werden Sie auch später für Wahlfach Projekte schreiben dürfen. Auch für Bachelorarbeiteten teilweise, je nachdem, welche Bachelorarbeit Sie schreiben, und sie werden das auch in Ihrem Beruf oft brauchen.

00:10:59
 Sigrid Schefer-Wenzl: Wie erwähnt dieses Projekt im Übungsteil können Sie sich selbst überlegen. Das heißt, idealerweise suchen Sie sich etwas, wo Sie großes Interesse haben, das umzusetzen. Sie können das dann vielleicht in weiteren Semestern sogar weiterführen, als Wahlfach Projekt bis hin zur Bachelorarbeit. Das ist oft der Fall, dass das die Ausgangsbasis für eine Fülle an weiteren Projekten dann im Studium ist. Gut, dann auf welche Berufe bereitet denn diese Lehrveranstaltung vor?

00:11:29
 Igor Miladinovic: Ja, das ist eine Frage, die man sehr breit beantworten kann. Es ist in jedem Beruf, wo eine Softwareentwicklung stattfindet, wo eine Software Integration stattfindet, braucht man diese Fähigkeiten überall dort, wo Software entwickelt wird, was dort integriert wird, muss man am Anfang Requirements definieren, Requirements priorisieren, dann macht man üblicherweise sein Design Document oder mehrere. In mittelgroßen und großen Blöcken gibt es immer HIgh Level Design Dokument und dann ein Low Level Design Dokument. Dann wird das ganze implementiert, getestet und dann gewartet. Dann werden Fehler korrigiert, neue Features werden implementiert und genau das lernen sie in diese Veranstaltung. Das heißt, es gibt keine Branche, die ich jetzt nennen kann, im Sinne von auf welche Berufe diese Lehrveranstaltung vorbereitet. Das ist in allen Branchen, das kann Bankwesen sein, in der Autoindustrie, Telekommunikation. Wie gesagt, überall dort, wo Softwarelösungen umgesetzt werden. Würdest du noch was ergänzen wollen.

00:12:44
 Sigrid Schefer-Wenzl: Nein, ich glaube, wir können mit der Frage auch gleich zur nächsten Frage übergehen, nämlich was die drei wichtigsten Sachen sind, die wir gerne hätten, dass die Studierenden aus dieser Lehrveranstaltung mitnehmen. Mir ist zum Beispiel besonders wichtig, dass sie die Vielfalt von Software Engineering auch erleben, direkt an zwei Projekten, die sie im Rahmen dieser Lehrveranstaltung dann entwickeln und umsetzen werden, können Sie sehen, was es hier an Breite in diesem Feld gibt. Auch das ist nur ein Ausschnitt der möglichen Tätigkeit. Aber immerhin ist es nicht nur Programmieren im Software Engineering Bereich wichtig und jeder, jede von ihnen hat seine ihre individuellen Stärken. Der oder die eine wird vermutlich oder möglicherweise nicht so gerne Requirements erheben und ausformulieren. Eine andere Person wird vielleicht das sehr gerne machen. Wiederum andere Personen sehen vielleicht gerade im Software Design ihre Zukunft. Also sie sollen da wirklich einen Einblick kriegen, was es alles an Möglichkeiten gibt, im Software Engineering Bereich auch tätig zu werden.

00:13:51
 Igor Miladinovic: Für mich ist es wichtig, dass man, dass man sieht, dass man lernt, dass Software Engineering sehr unterschiedlich von Software Development ist, beziehungsweise das Software Development nur ein Teil von Software Engineering ist. Ich sage es immer so, dass Software Engineering kann man auch aus einem Buch lernen, das 10, 20 Jahre alt ist, weil sich die Methoden zwar weiterentwickelt haben, aber die Methoden ähnlich geblieben sind wie damals. Software Engineering wurde eingeführt, im Moment wo Software Projekte zu komplex geworden sind, dass man sich nicht einfach hinsetzen kann und etwas programmieren kann, das heißt im Moment, wo die Projekte so komplex waren, dass man sich was überlegen musste ist Software Engineering entstanden und viele Ideen von damals gelten noch heute. In der Softwareentwicklung im Gegenteil, wenn wir in Softwareentwicklung aus einem Buch lernen das zehn Jahre alt ist, dann machen wir wahrscheinlich etwas, was niemand mehr braucht. Das ist eine Disziplin, die sich sehr schnell entwickelt. Und was noch wichtig ist, dass man sieht, so wie Frau Schefer-Wenzl gesagt hat, dass für jede Persönlichkeit etwas dabei ist. Es gibt Personen, die sehr gerne mit Kunden arbeiten, die werden sich wahrscheinlich im Requirements Engineering wohlfühlen bei diesen Tätigkeiten. Da kommt auch Design Thinking zur Anwendung. Deswegen haben wir auch diesen Gastvortrag Design Thinking. Sehr wichtig für diese erste Phase. Auf der anderen Seite Software Testing. Das sind Personen, die sehr kritisch sind, die den ganzen Tag vor einem Monitor sitzen können und sehr kritisch eine Software überprüfen können. Da ist auch Kreativität sehr wichtig, weil man verschiedene Tests konstruieren muss, um möglichst viele Fehler zu finden. Aber da ist Interaktion mit den anderen Personen, mit anderen Menschen wesentlich weniger als bei Requirements.

00:15:51
 Sigrid Schefer-Wenzl: Gut, dann kommen wir auch jetzt zu dem Teil, wo wir drei Fragen, die immer ein bisschen unterschiedlich sind, beantworten. Meine erste Frage an dich, Igor, wäre Was bedeutet denn ein Studium für dich?

00:16:05
 Igor Miladinovic: Ein Studium für mich bedeutet eine sehr gute Gelegenheit, sich weiterzuentwickeln. Natürlich entwickelt man sich auch im Berufsleben weiter. Im Studium ist es mehr fokussiert, es ist mehr gezielt und man hat dedizierte Zeit. Oder man nimmt sich Zeit zum Lernen und man bekommt auch Unterstützung. Man wird auch mit den Noten, also die Leistung wird beurteilt, gemessen. Wobei das sicher nicht das Wichtigste ist. Wichtig ist es, dass man im Studium etwas mitnimmt. Und eine Note ist immer auch eine Glückssache, für jede Prüfung braucht man auch etwas Glück. Das heißt für mich ist das Studium in erster Linie Gelegenheit zu wachsen. Dann stelle ich auch so eine spontane Frage an dich. Schon ist kurz über die Noten gesprochen worden. Was bedeutet dann die Note für dich?

00:17:02
 Sigrid Schefer-Wenzl: Sie ist immer die Repräsentation von Einzelleistungen, die man während einer Lehrveranstaltung bei uns erbringt. Generell kann man Noten so als Lernstands Erhebung sehen. Das heißt, man sieht was habe ich gelernt? Natürlich immer so eher punktuell, wobei wir versuchen, mit den Projekten das nicht zu punktuell zu gestalten. Es gibt da natürlich eine Abgabe, sprich wir haben auch eine Prüfung für den theoretischen Teil, aber wir versuchen das alles sehr praktisch zu machen, viel auch zu üben, eben in der Vorlesung, in der Übung das es wirklich auch internalisiert wird. Und die Note an sich ist dann natürlich etwas immer Unscharfes. Also es gibt oft natürlich Leute, wo man sofort sieht Ja, der macht das exzellent oder der macht es nicht besonders gut, aber alles dazwischen ist oft sehr unscharf. Also es ist glaube ich eine sehr individuelle Entscheidung, ob man Noten als wichtig erachtet oder nicht. Für uns ist es nicht wichtig. Wir wollen in erster Linie, dass sie etwas lernen. Ob sie dann ein Gut, sehr gut, befriedigend, was auch immer haben, das ist natürlich ihre eigene Sache und wird jetzt von uns nicht bewertet. Die letzte Frage: Was ist denn ein guter Vortragender, eine gute Vortragende?

00:18:24
 Igor Miladinovic: Das ist eine einfache Frage, die schwierig ist. Da muss man zuerst definieren, was gut ist. Ich glaube, das Wichtigste bei einem Vortragenden oder bei einem Vortragenden ist es, Studierende zu unterstützen, Studierende zu inspirieren, zu motivieren, für ein Thema zu begeistern. Natürlich ist es so, dass man in einer Kohorte da gibt es Personen, die sich für dieses Thema grundsätzlich interessieren oder wenig interessieren. Und für mich ist es ganz wichtig, dass man die Personen, die Studierenden, die sich für das Thema interessieren, dass man sie noch weiter für das Thema begeistert, inspiriert und wichtiges wissen für ihren weiteren Weg mitgibt. Dann aus deine Sicht, Sigrid: Was ist eine gute Studentin oder ein guter Student.

00:19:18
 Sigrid Schefer-Wenzl: Das ist eine Frage, über die man sich immer wieder Gedanken macht, wenn man in der Hochschullehre ist. Weil man darf nicht vergessen Alle Studierenden sind hier freiwillig. Sie haben sich ja für dieses Studium entschieden und daher gehen wir zumindest von einem gewissen Grundinteresse bei allen von ihnen aus. Und das erheben wir ja auch schon im Aufnahmeverfahren. Und wenn Sie jetzt im dritten Semester sind, dann haben Sie auch schon viele Grundlagen hinter sich gebracht und kommen spätestens jetzt auch zu vielen interessanten, tiefer weiterführenden Themen. Ein guter Studierender, eine gute Studierende ist für mich jemand, der oder die sich begeistern lässt. Wir als Vortragende sehen eben unsere Rolle vor allem darin, Studierende zu inspirieren. Aber auf der anderen Seite muss es natürlich Studierende geben, die dafür auch empfänglich sind. Und wenn sie sich eben im Informatik Bereich jetzt hier spezialisieren und so funktionieren, ist ein ganz wesentlicher Bereich im Informatik Bereich. Dann ist es natürlich so, dass es jetzt nicht für jeden das ideale Berufsbild ist. Aber zumindest die Offenheit, das Thema kennenzulernen, wäre für mich eine Grundvoraussetzung für einen guten Studierenden und eine gute Studierende. Man sollte sich auch Zeit für das Studium nehmen, sofern das natürlich im Bereich des Möglichen ist. Aber Studieren braucht Zeit. Sie müssen das Ganze verarbeiten und das sind so Dinge, die ich bei einem guten oder einer guten Studierenden wichtig finde.

00:20:51
 Igor Miladinovic: So, ich hoffe, dass Sie jetzt eine bessere Vorstellung von der Lehrveranstaltung Software Engineering haben. Ich freue mich, Sie alle in diesen oder für die Personen, die dann später kommen, in weiteren Semester bei dieser Lehrveranstaltung kennenlernen zu dürfen und wir freuen uns schon jetzt, Sie bei der nächsten Folge von diesem Podcast begrüßen zu dürfen.

00:21:16
 Sigrid Schefer-Wenzl: Bis zum nächsten Mal, bis zum nächsten Mal.