projektarbeit/skizze.typ

131 lines
6.5 KiB
Typst

#import "@preview/timeliney:0.3.0"
#set page(
paper: "a4",
numbering: "1"
)
#set text(
lang: "de"
)
#set heading(
numbering: "1."
)
#show heading.where(level: 3): set heading(numbering: none)
#set par(
justify: true
)
#show link: underline
#align(center, text(30pt)[*Projektarbeit \ Konzeption und Umsetzung eines Medien-Tools*])
#v(-1em)
#align(center, text(17pt)[*---Projektskizze---* \ Marius Drechsler])
#v(3em)
#outline()
#pagebreak()
= Einleitung und Projektbegründung
In den letzten Jahren hat sich die Medienwirksame Arbeit der Fachschaft Elektrotechnik und Informationstechnik grundlegend verändert.
Wo früher Mitglieder für die Konzeption und Umsetzung einer Fachschafts-Zeitung gesucht waren, um die Angebote des Vereins oder auch Neuigkeiten und Termine den Studiengang betreffend an die Studierenden weiterzugeben, sind jetzt Personen mit einem viel breiteten Anforderungsprofil gefragt.
So werden aktuell Informationen und Neuigkeiten über drei getrennte Kanäle nach außen Kommuniziert:
=== Die Website der Fachschaft
Die Website der Fachschaft, erreichbar unter https://fs.ei.tum.de stellt im allgemeinen die gesamte Fachschaftsarbeit zusammen. Neben den Informationen über die jeweiligen Arbeitsgruppen und Services ist der News-Feed auf der Homepage ein zentraler Ort um tagesaktuelle Informationen an Studierende weiter zu geben. \
Jedoch ist, um diese Seite aktuell zu halten, ein gewisses Grad ein technischer Expertise notwendig. So müssen sich vor allem Personen, die sich nicht schon vor ihrer Zeit in der Fachschaft ausgiebig mit Software-Tools wie git auseinandergesetzt haben, erst tief in diese Materie einarbeiten, um auch nur eine kleine Änderung an der Website vornehmen zu können.
Diese technische Hürde kann für viele neue Fachschaftsmiglieder abschreckend wirken und erschwert ein einfaches aktuell-Halten der Homepage.
=== Der Instagram Account der Fachschaft
Neben der Website wird seit ungefähr einem Jahr aktiv ein Instagram Account betrieben.
Zentrale Aufgaben der Mitglieder, die den Account warten sind das Planen und Erstellen von Grafiken, die auf dem Account anschließend gepostet werden.
=== Telegram News-Bot
Abschließend wird seit mehreren Jahren ein Telegram Bot von der Fachschaft betrieben.
Dicht an den Telegram Bot geknüpft sind Gruppen für jeden Erstsemester-Jahrgang, auf die in den Erstsemester Einführungstagen hingewiesen wird.
Ähnlich wie bei der Website ist ein gewisser Grad an technischer Expertise gefragt um einen Newspost versenden zu können.
== Aktuells Problem
Obwohl alle drei Newskanäle recht gut autark voneinander funktionieren herrscht hier ein größeres Problem der Kommunikation der Tools untereinander.
Wenn eine Nachricht/Information nach außen weitergeben werden soll, muss
1. ein neuer Eintrag auf der Website für den Newspost erstellt und auf die Website hochgeladen,
2. die Grafiken für den Instagram Account erstellt, und
3. das Python Skript für den Telegram News-Bot bedient werden.
Vor Allem für Schritte 1. und 3. müssen verschiedene technische Schritte absolviert werden, damit die angefragte Nachricht nach außen gelangt. Zudem muss zusätzlich eine Koordination mit den Verwaltern des Instagram Accounts stattfinden. \
Allein auf der technischen Ebene lassen sich die Schritte 1. und 3. gut miteinander kombinieren, wobei für Schritt 2 eine neue Möglichkeit für besseres Aufgaben-Tracking gefragt ist.
#pagebreak()
= Zielsetzung
Ziel des Projekts ist es nun, eine Web-Applikation zu entwickeln, welche die oben genannten Probleme löst. Die Applikation soll damit als zentrale Anlaufstelle für Informationen nach außen dienen und von jedem Fachschaftsmitglied verwendet werden können. Durch geschickte Automatisierung und Zusammenspiel verschiedener Programme sollen so die Schritte 1. und 3. aus der Problemstellung vollständig automatisiert abgewickelt werden können.
Außerdem soll für die Verantwortlichen Personen des Instagram Accounts ein Aufgaben-Tracker eingerichtet werden, über welchen noch erstellende oder bereits angefertigte Grafiken und Designs für die Postings eingesehen werden können.
= Umsetzung des Projekts
== Methodik
Für eine erfolgreiche Umsetzung des Projekts ist zunächst die Rücksprache mit anderen Fachschaftskollegen gefragt. Eine einfache und intuitive Nutzbarkeit der Applikation ist für eine positive Änderung in dieser Problematik notwendig, da die Web-Applikation nicht regelmäßig von Fachschaftsmitliedern genutzt wird.
Für die technische Umsetzung ist zunächst ein geeignetes Framework für die Programmierung festzulegen. Da aktuell neuere Projekte in der Fachschaft mit dem Python Framework "Django" realisiert werden, bietet sich dieses Tooling auch für dieses Projekt hier an, auch da ich bereits einiges an Erfahrungen mit Python Entwicklung gesammelt habe.
Abschließend relevant ist die Rücksprache mit der Admin-AG der Fachschaft für die korrekte Einbettung des neuen Tools in die bestehende Infrastruktur der Fachschaft.
Hierzu werden mehrere Meetings notwendig sein, um gemeinsam die fertiggestellte Applikation über die interne Infrastruktur den anderen Fachschaftlern bereitszustellen.
== Zeitlicher Ablauf
Der zeitliche Ablauf hier umfasst den groben Arbeitsplan für die Umsetzung des Projekts.
Insgesamt sind für die Umsetzung des Projekts 4 Wochen angesetzt.
Nach der Hälfte der ersten Woche soll das konzeptuelle Design der Applikation festehen.
Circa eine Woche später ist die Fertigstellung der nutzerseitigen Website geplant, gefolgt von der Fertigstellung der gesamten Applikation. Abschließend sollen während der Einbettung in bestehende Fachschaftsinfrastruktur noch gefundene Bugs und Fehler der Applikation behoben werden bis das Projekt gegen Ende der vierten Woche fertiggestellt wird.
#timeliney.timeline(
show-grid: true,
{
import timeliney: *
headerline(
group(..range(4).map(n => strong("W" + str(n + 1)))),
)
taskgroup({
task([Planung und Konzeption], (0, 0.5), style: (stroke: 2pt + black))
task("Implementierung", (0.5, 3.5), style: (stroke: 2pt + black))
task("Deployment", (2.5, 4), style: (stroke: 2pt + black))
})
milestone(
at: 1.5,
style: (stroke: (dash: "dashed")),
align(center, [
*Abschluss Frontend*\
Vollständige Implementierung der \ nutzerseitigen Website
])
)
milestone(
at: 2.5,
style: (stroke: (dash: "dashed")),
align(center, [
*Fertige Applikation*\
Bereit zum Testen und für erstes Deployment
])
)
}
)
= Lernerfolge