Quantcast
Channel: Stefan Macke, Autor bei IT-Berufe-Podcast
Viewing all 452 articles
Browse latest View live

Projektdokumentation zum IT-Systemelektroniker von Alexander R. (mit 100% bewertet)

$
0
0

Alexander R. hat in der Sommerprüfung 2020 von der IHK Erfurt 100% für die Projektdokumentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Alexander war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Die Dokumentation macht einen professionellen Eindruck mit sauberen Seitenzahlen, Kopf- und Fußzeile, Verzeichnissen usw.
  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Das Projekt wird ausführlich und nachvollziehbar auf seine Wirtschaftlichkeit geprüft.
  • Alle erwarteten Dokumentationen (Anwender und Administrator) sind vorhanden.
  • Nicht selbst erarbeitete Inhalte werden mit Quellenangaben gekennzeichnet.
  • Im sehr umfangreichen Glossar werden alle wichtigen verwendeten Begriffe erklärt.
  • Maßnahmen zur Qualitätssicherung werden explizit eingeplant und umfangreich durchgeführt und dokumentiert.
  • Der verfügbare Platz wurde optimal genutzt. Es sind kaum Leerräume im Dokument erkennbar.
  • Die Amortisationsrechnung ist sehr umfangreich und gut nachvollziehbar.
  • Eigene Fotos wurden zur Dokumentation der Hardware verwendet.
  • Die Anwenderdokumentation macht einen visuell ansprechenden Eindruck.
  • Der Anhang ist sehr umfangreich und schlüssig aufgebaut.
  • Der Projekterfolg wird explizit getestet, gemessen und visualisiert.

Metadaten

  • Titel der Projektarbeit: Etablierung eines LAN / WLAN mit Intranet-WAN
  • Ausbildungsberuf: IT-Systemelektroniker
  • Prüfung: Sommerprüfung 2020
  • Bewertung: 100%
  • IHK: IHK Erfurt
  • Name des Prüflings: Alexander R.
  • Ausbildungsbetrieb: AWO Regionalverband Mitte-West-Thüringen e. V.

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Alexander und AWO Regionalverband Mitte-West-Thüringen e. V. für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation zum IT-Systemelektroniker von Alexander R. (mit 100% bewertet) erschien zuerst auf IT-Berufe-Podcast.


Projektpräsentation zum IT-Systemelektroniker von Alexander R. (mit 100% bewertet)

$
0
0

Alexander R. hat in der Sommerprüfung 2020 von der IHK Erfurt 100% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Alexander war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Der Prüfling zeigt sich selbst mit einem Bild auf der Titelfolie.
  • Insgesamt ist die Präsentation sehr visuell und wenig textlastig gestaltet.
  • Das Unternehmen wird mit Bildern vorgestellt und nicht nur mit Text.
  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die Problemstellung wird mit grafischen Abläufen illustriert.
  • Die Gliederung der Präsentation wird auf Zwischenfolien gezeigt und nicht auf jeder Folie.
  • Die Gliederung der Präsentation wird in Anlehnung an das Thema WLAN um das bekannte Symbol herum angeordnet.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Kosten und die Wirtschaftlichkeit des Projekts inkl. Amortisation werden vorgestellt.
  • Es wird ein Angebotsvergleich verschiedener Hersteller durchgeführt.
  • Einige verwendeten Bilder wurden selbst erstellt und passen perfekt zum Projekt.
  • Die Dokumentation der erstellten Anwendung wird im Detail vorgestellt.
  • Für die verwendeten Bilder werden Quellenangaben gezeigt.

Metadaten

  • Titel der Projektarbeit: Etablierung eines LAN / WLAN mit Intranet-WAN
  • Ausbildungsberuf: IT-Systemelektroniker
  • Prüfung: Sommerprüfung 2020
  • Bewertung: 100%
  • IHK: IHK Erfurt
  • Name des Prüflings: Alexander R.
  • Ausbildungsbetrieb: AWO Regionalverband Mitte-West-Thüringen e. V.

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Alexander und AWO Regionalverband Mitte-West-Thüringen e. V. für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation zum IT-Systemelektroniker von Alexander R. (mit 100% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Davis Jahn (mit 96% bewertet)

$
0
0

Davis Jahn hat in der Winterprüfung 2019/2020 von der IHK Regensburg für Oberpfalz / Kelheim 96% für die Projektdokumentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Davis war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Die Projektarbeit hat ein modernes und anspruchsvolles Thema unter Verwendung verschiedener Technologien und Programmiersprachen.
  • Das Thema ist nachvollziehbar erläutert und gut begründet. Auch die bisherige Lösung wird gut verständlich dargestellt.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Dokumentation macht einen professionellen Eindruck mit sauberen Seitenzahlen, Kopf- und Fußzeile, Verzeichnissen usw.
  • Die Projektphasen werden mit passenden Artefakten (Use-Cases usw.) dokumentiert.
  • Die verwendeten Technologien werden im Detail erklärt.
  • Es werden passende technische Methodiken (ERM usw.) angewendet und die Software wird professionell entwickelt.
  • Zur Qualitätssicherung werden direkt bei der Implementierung auch Unit-Tests programmiert.
  • Maßnahmen zur Qualitätssicherung werden explizit eingeplant und umfangreich durchgeführt und dokumentiert.
  • Die Oberflächenentwürfe wurden mit der Hand gezeichnet. Eine willkommene Abwechslung zu den üblichen Mockup-Tools.
  • Es wird interessanter Code verschiedener Technologien (HTML, C#, MATLAB) gezeigt.
  • Es wird auch Unit-Test-Code gezeigt.
  • Im umfangreichen Glossar werden alle wichtigen verwendeten Begriffe erklärt.
  • Die erwartete Dokumentationen des Systems ist sehr ausführlich.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Den Abstand zwischen Überschriften und Text und auch zwischen Kaptiteln hätte ich deutlich reduziert, um mehr Platz für den Inhalt zu haben.
  • Auf die Formulierung in der Ich-Perspektive hätte ich verzichtet.
  • Ich hätte den sehr umfangreichen Sourcecode zugunsten von weiteren Artefakten wie z.B. einem Klassendiagramm gekürzt.

Metadaten

  • Titel der Projektarbeit: Integration von MATLAB-Bibliotheken zur Lösung komplexer mathematischer Probleme in einer C#-Anwendung
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 96%
  • IHK: IHK Regensburg für Oberpfalz / Kelheim
  • Name des Prüflings: Davis Jahn
  • Ausbildungsbetrieb: Cube Bikes

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Davis Jahn und Cube Bikes für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Davis Jahn (mit 96% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Law of Demeter (LoD) – Wissenshäppchen #8

$
0
0

Law of Demeter (LoD)

Um das Law of Demeter (Gesetz von Demeter) in der Softwareentwicklung geht es im achten Wissenshäppchen.

Probeabo bei Audible (Affiliate)

Inhalt

Das Law of Demeter sagt aus, dass eine Methode nur Zugriff auf die folgenden Objekte/Methoden haben sollte:

  • Andere Instanzmethoden in ihrer eigenen Klasse
  • Ihre Parameter
  • Methoden in Objekten, die sie selbst erzeugt
  • Globale Variablen

Eine einfache andere Definition lautet: Verkette keine Methodenaufrufe („method chaining“). Oder: Verwende nicht mehr als einen ., wenn du auf etwas zugreifst. Ein anderer Name für das LoD ist „Prinzip des geringsten Wissens“ („principle of least knowledge“).

Der Name stammt von Demeter, einer griechischen Göttin. Der „Erfinder“ des Prinzips entwickelte in den 80er-Jahren ein System mit diesem Namen.

Erklärung

  • Vorweg: Globale Variablen waren in den 80ern hip, heute nicht mehr. Bitte verwende sie am besten gar nicht.
  • Je mehr „Punkte“ in einer Aufrufhierarchie auftreten, desto mehr Kenntnis hat eine Komponente vom „Innenleben“ der aufgerufenen Komponenten.
  • Je mehr Kenntnis eine Komponente über die von ihr verwendeten Komponenten hat, desto stärker bindet sie sich an diese. Wenn sich die genutzten Komponenten ändern, muss sie sich mit ändern bzw. ist kaputt.
  • Das verletzt das Geheimnisprinzip und die Kapselung, nach der wir eigentlich in der Objektorientierung arbeiten wollen.
  • Je mehr solcher Abhängigkeiten eine Methode hat, desto schwerer ist sie zu verstehen und zu testen.
  • Code, der sich an das LoD hält, gilt auch als „schüchtern“, weil er „nur mit seinen Freunden spricht“.

Beispielcode

Um an den Gesamtbeitrag einer Versicherungspolice zu kommen, ist die Kenntnis über die darin enthaltenen versicherten Personen und deren Tarife nötig. Da es sich dabei jeweils um Listen handelt, ist sogar noch ein „Flachklopfen“ der Strukturen nötig. Der Code sieht vielleicht cool aus, ist aber stark an die Strukturen gekoppelt. Das heißt, ein Test müsste sehr viel Aufwand betreiben, um die nötigen Strukturen zu schaffen (z.B. mit Mocks).

class Tarif
    def initialize(name)
        @name = name
    end

    def beitrag
        123.45
    end
end

class VersichertePerson
    def initialize(name)
        @name = name
        @tarife = [ Tarif.new("KFZ"), Tarif.new("Hausrat") ]
    end

    def tarife
        @tarife
    end
end

class Versicherungspolice
    def initialize
        @versicherte_personen = [ VersichertePerson.new("Stefan Macke"), VersichertePerson.new("Klaus Meyer") ]
    end

    def versicherte_personen
        @versicherte_personen
    end
end

# cool, aber schwer verständlich, anfällig für Anpassungen und auch schwer zu testen
puts Versicherungspolice.new
  .versicherte_personen
  .flat_map { |vp| vp.tarife }
  .inject(0){|summe,tarif| summe + tarif.beitrag }

Um dies zu vermeiden, können die einzelnen Klassen von ihren inneren Strukturen abstrahieren und stellen simple Zugriffsmethoden für die gewünschten Ergebnisse bereit. Der finale Aufruf sieht nun schon fast langweilig aus. Dafür liegt die fachliche Berechnungslogik da wo sie hingehört: in den jeweiligen Klassen und nicht beim Aufrufer.

class Tarif
    def initialize(name)
        @name = name
    end

    def beitrag
        123.45
    end
end

class VersichertePerson
    def initialize(name)
        @name = name
        @tarife = [ Tarif.new("KFZ"), Tarif.new("Hausrat") ]
    end

    def beitragssumme
        @tarife.inject(0){|summe,tarif| summe + tarif.beitrag }
    end
end

class Versicherungspolice
    def initialize
        @versicherte_personen = [ VersichertePerson.new("Stefan Macke"), VersichertePerson.new("Klaus Meyer") ]
    end

    def gesamtbeitrag
        @versicherte_personen.inject(0){|summe,vp| summe + vp.beitragssumme }
    end
end

# langweilig, aber einfach zu verstehen und zu testen
puts Versicherungspolice.new.gesamtbeitrag

Vorteile

  • Der Code wird verständlicher, weil nicht mehrere Strukturen bekannt sein müssen.
  • Fachliche Logik landet evtl. eher da, wo sie hingehört. Anstatt externen Komponenten Zugriff auf die inneren Daten zu geben, werden Abstraktionen geschaffen.
  • Die Komponenten sind unabhängiger voneinander und lassen sich leichter testen.
  • Große Test-Setups mit vielen Mocks, die weitere Mocks zurückgeben, lassen sich vermeiden.
  • Interne Änderungen an verwendeten Komponenten wirken sich nicht auf deinen Code aus. Du hast also weniger Anpassungsaufwand.

Nachteile

  • Wenn du die Regel exakt befolgen möchtest, musst du womöglich recht viel Boilerplate-Code schreiben, z.B. simple Getter, die an Instanzvariablen delegieren.
  • Wenn sich die verwendeten Strukturen selten ändern, ist der zusätzliche Aufwand vermutlich unnötig.

Literaturempfehlungen

Zu diesem Wissenshäppchen gibt es ein separates Kapitel in einem meiner absoluten Lieblingsbücher zur Softwareentwicklung: The Pragmatic Programmer*. Es ist vor Kurzem in der 20-Jahre-Edition neu aufgelegt worden, aber das Law of Demeter ist immer noch Thema.

The Pragmatic Programmer: journey to mastery, 20th Anniversary Edition, 2/e: your journey to mastery, 20th Anniversary Edition (Affiliate)*

Links

Der Beitrag Law of Demeter (LoD) – Wissenshäppchen #8 erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Dominik Fladung (mit 98% bewertet)

$
0
0

Dominik Fladung hat in der Winterprüfung 2019/2020 von der IHK Dortmund 98% für die Projektdokumentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Dominik war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die verwendeten Farben passen zum Corporate Design des Unternehmens.
  • Nicht selbst erarbeitete Inhalte werden mit Quellenangaben gekennzeichnet.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Projektphasen werden mit passenden Artefakten (Aktivitätsdiagramm, Tabellenmodell usw.) dokumentiert.
  • Es werden passende technische Methodiken (Klassendiagramm usw.) angewendet und die Software wird professionell entwickelt.
  • Auch der agile Entwicklungsprozess mit Ticketsystem wird dokumentiert.
  • Die Amortisationsrechnung ist sehr umfangreich und gut nachvollziehbar für das Unternehmen und den Kunden.
  • Die verwendeten Technologien werden im Detail erklärt.
  • Die Projektdokumentation ist insgesamt sehr ausführlich geschrieben und geht auch technisch in die Tiefe.
  • Maßnahmen zur Qualitätssicherung werden explizit eingeplant und umfangreich durchgeführt und dokumentiert.
  • Die erwartete Entwickler-Dokumentationen ist sehr ausführlich erklärt.
  • Es wird interessanter Code gezeigt.
  • Es wird auch Unit-Test-Code gezeigt.
  • Die Performance der neuen Anwendung wird im Detail untersucht und verglichen.

Optimierungspotential

Zwei Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Das Abkürzungsverzeichnis hätte ich aufsteigend sortiert.
  • Bei der Kostenrechnung wird für den (selbst berechneten) Stundensatz lediglich das Bruttogehalt verwendet ohne Berücksichtigung der Lohnnebenkosten.

Rückmeldung von Dominik

Dein Feedback zur Dokumentation finde ich gerechtfertigt und auch der Optimierung würde ich zustimmen.

Metadaten

  • Titel der Projektarbeit: C#-Programmbibliothek zur Synchronisierung einer Online-Datenbank (MySQL) und einer lokalen Offline-Datenbank (SQLite)
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 98%
  • IHK: IHK Dortmund
  • Name des Prüflings: Dominik Fladung
  • Ausbildungsbetrieb: FKT42 GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Dominik Fladung und FKT42 GmbH für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Dominik Fladung (mit 98% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektpräsentation von Dominik Fladung (mit 100% bewertet)

$
0
0

Dominik Fladung hat in der Winterprüfung 2019/2020 von der IHK Dortmund 100% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Dominik war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Alle Folien folgen einem ähnlichen Aufbau und haben einen hohen Wiedererkennungswert.
  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die Problemstellung wird mit grafischen Abläufen illustriert.
  • Die Kosten und die Wirtschaftlichkeit des Projekts inkl. Amortisation werden vorgestellt.
  • Es werden viele passende Artefakte (Tabellenmodell, Klassendiagramm, Sequenzdiagramm usw.) gezeigt.
  • Es werden mehrere Maßnahmen zur Qualitätssicherung (z.B. Unit-Tests, Code-Review) angewendet und vorgestellt.
  • Für die verwendeten Bilder werden Quellenangaben gezeigt.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Die Projektphasen mit ihrer Dauer werden nicht vorgestellt.
  • Es wird kein Code gezeigt.

Rückmeldung von Dominik

Die Projektphasen hätte man bestimmt auch noch einbauen können. Jedoch hatte ich so schon genug damit zutun innerhalb der 15 Minuten zu bleiben.

Code habe ich ganz bewusste nicht in die Präsentation genommen. Die Prüfer haben eh nicht genug Zeit sich den Code sinnvoll anzusehen. Hierbei fand ich es besser die Logik des Programmes mittels eines Diagramms darzustellen.

Metadaten

  • Titel der Projektarbeit: C#-Programmbibliothek zur Synchronisierung einer Online-Datenbank (MySQL) und einer lokalen Offline-Datenbank (SQLite)
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 100%
  • IHK: IHK Dortmund
  • Name des Prüflings: Dominik Fladung
  • Ausbildungsbetrieb: FKT42 GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Dominik Fladung und FKT42 GmbH für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation von Dominik Fladung (mit 100% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Datenschutz vs. Datensicherheit vs. Datensicherung – IT-Berufe-Podcast #157

$
0
0

Um den Unterschied zwischen Datenschutz, Datensicherheit und Datensicherung geht es in der einhundertsiebenundfünfzigsten Episode des IT-Berufe-Podcasts.

Probeabo bei Audible (Affiliate)

Datenschutz vs. Datensicherheit vs. Datensicherung

In dieser Episode werden die drei Begriffe zunächst oberflächlich erläutert und abgegrenzt. Über jedes einzelne Thema kann man aber noch im Detail sprechen und Prüflinge müssen sich auch intensiv damit auseinandersetzen.

Die Begriffe klingen zwar sehr ähnlich, sind aber klar voneinander abzugrenzen und insb. in Prüfungen sauber auseinanderzuhalten. In der Novellierung der IT-Berufe im Jahr 2018 wurden die Begriffe Datenschutz und Datensicherheit explizit in den Ausbildungsrahmenplan mit aufgenommen. Und auch in der Neuordnung 2020 gehören sie zum festen Bestandteil der Berufsausbildung in den IT-Berufen.

Datenschutz

  • Datenschutz ist der Schutz personenbezogener Daten natürlicher Personen vor Missbrauch durch Dritte.
  • Personenbezogene Daten sind laut DSGVO „alle Informationen, die sich auf eine identifizierte oder identifizierbare natürliche Person […] beziehen; als identifizierbar wird eine natürliche Person angesehen, die direkt oder indirekt, insbesondere mittels Zuordnung zu einer Kennung wie einem Namen, zu einer Kennnummer, zu Standortdaten, zu einer Online-Kennung oder zu einem oder mehreren besonderen Merkmalen identifiziert werden kann, die Ausdruck der physischen, physiologischen, genetischen, psychischen, wirtschaftlichen, kulturellen oder sozialen Identität dieser natürlichen Person sind“. Beispiele: Name, Adresse, IP-Adresse, Bankdaten, Gesundheitsdaten, Standortdaten.
  • Das Recht auf informationelle Selbstbestimmung sichert jedem Bürger das Recht zu, über die Verwendung seiner Daten selbst zu bestimmen.

Das sogenannte Recht auf informationelle Selbstbestimmung wurde vom Bundesverfassungsgericht im Volkszählungsurteil von 1983 aus dem Grundgesetz abgeleitet. Dort heißt es:

Jeder hat das Recht auf die freie Entfaltung seiner Persönlichkeit, soweit er nicht die Rechte anderer verletzt und nicht gegen die verfassungsmäßige Ordnung oder das Sittengesetz verstößt. (Grundgesetz, Artikel 2, Satz 1)

Warum ist das wichtig? Menschen sollen in ihrer persönlichen Freiheit nicht eingeschränkt werden. Sie würden sich aber ggfs. anders verhalten, wenn anderen Menschen (zu) persönliche Daten über sie bekannt wären, wie z.B. Krankheiten oder sexuelle Vorlieben. Außerdem würden viele Menschen sich einschränken, wenn sie befürchten müssten, dass ihr Verhalten protokolliert würde.

Das Grundgesetz gewährleistet jeder Bürgerin und jedem Bürger das Recht, über Verwendung und Preisgabe seiner persönlichen Daten zu bestimmen (Grundrecht auf informationelle Selbstbestimmung). Geschützt werden also nicht Daten, sondern die Freiheit der Menschen, selbst zu entscheiden, wer was wann und bei welcher Gelegenheit über sie weiß. (Bundesbeauftragter für den Datenschutz und die Informationsfreiheit)

Die EU formuliert es noch deutlicher:

Jede Person hat das Recht auf Schutz der sie betreffenden personenbezogenen Daten. (Grundrechtecharta der EU, Artikel 8, Satz 1)

Seit 2018 gilt die DSGVO, die europaweit strenge Richtlinien zum Datenschutz und auch empfindliche Strafen bei Verstößen definiert.

Prüfungs- und praxisrelevante Inhalte

  • Obige Definitionen, insb. personenbezogene Daten
  • Begründung und Verständnis, warum Datenschutz wichtig ist
  • Kernaussagen der DSGVO
    • Betroffenenrechte: Auskunftsrecht, Berichtigung, Löschung, Datenübertragbarkeit, Widerspruchsrecht
    • Pflichten von datenverarbeitenden Unternehmen, „goldene Regeln“ des Datenschutzes: Rechtmäßigkeit, Einwilligung, Zweckbindung, Erforderlichkeit, Transparenz, Datensicherheit, Kontrolle
  • ggfs. Berücksichtigung des Datenschutzes beim eigenen Abschlussprojekt

Datensicherheit

  • Datensicherheit umfasst alle technischen und organisatorischen Maßnahmen, die dem Schutz von Daten dienen. Dabei handelt es sich nicht nur um personenbezogene Daten. Die Datensicherheit verfolgt die grundlegenden Schutzziele Vertraulichkeit, Integrität und Verfügbarkeit der Daten.
  • Vertraulichkeit der Daten bedeutet, dass nur befugte Personen auf die Daten zugreifen können.
  • Integrität soll die Unversehrtheit der Daten sicherstellen und insb. Manipulation verhindern bzw. vor technischen Defekten schützen.
  • Verfügbarkeit stellt sicher, dass die Daten auch wirklich verwendet werden können, wenn Bedarf besteht.

Bei der Datensicherheit geht es in erster Linie darum, technische Mängel und unerlaubten Zugriff Dritter auf die Daten zu verhindern. Hierzu gibt es eine Reihe technischer Maßnahmen wie z.B. Berechtigungskonzepte, Verschlüsselung und elektronische Signaturen, aber auch organisatorische, wie z.B. Gebäudesicherung oder Zutrittskontrollen.

Das Bundesamt für Sicherheit in der Informationstechnik (BSI) gibt das sogenannte IT-Grundschutz-Kompendium heraus, das in Deutschland quasi die „Bibel“ der Datensicherheit bzw. Informationssicherheit darstellt. Viele Unternehmen halten sich an die dortigen Vorgaben z.B. zur Komplexität von Passwörtern oder zu verwendenden Verschlüsselungs- oder Hashalgorithmen.

Abgrenzung zum Datenschutz: Datensicherheit umfasst mehr Daten (nicht nur personenbezogene). Datenschutz umfasst mehr Maßnahmen (nicht nur technische).

Prüfungs- und praxisrelevante Inhalte

  • Schutzziele: Vertraulichkeit, Integrität, Verfügbarkeit
  • Technische und organisatorische Maßnahmen (TOM): Zutrittskontrolle, Zugangskontrolle, Zugriffskontrolle, Weitergabekontrolle, Eingabekontrolle, Auftragskontrolle, Verfügbarkeitskontrolle, Trennung von Daten unterschiedlicher Zwecke
  • konkrete Bedrohungsszenarien und mögliche Gegenmaßnahmen, z.B. SQL-Injection, DDoS, Man-in-the-Middle, Trojaner, Viren, RAID, VPN, (a)symmetrische Verschlüsselung
  • Authentifizierung vs. Authorisierung
  • IT-Grundschutz des BSI
  • Zertifizierungen wie z.B. ISO 27001 und Systeme wie ISMS

Datensicherung

Datensicherung ist quasi das deutsche Wort für Backup und behandelt das Sichern und Wiederherstellen von Daten auf Sicherungsmedien wie Magnetbändern, externen Festplatten oder der Cloud. Es geht hierbei um den Schutz vor Datenverlust. Die Datensicherung ist daher ein Teil der Datensicherheit, der sich um das Schutzziel Verfügbarkeit kümmert.

  • Datenverlust kann durch technische Defekte (z.B. Erschütterung, Überspannung, Stromausfall) verursacht werden, aber auch durch böswillige Aktionen von Mitarbeitern oder externen Angreifern.
  • Bei der Datensicherung müssen geeignete Sicherungsmedien ausgewählt und sinnvolle Verfahren für die Identifikation schützenswerter Daten und die konkrete Sicherung inkl. Wiederherstellungsszenarien angewendet werden.
  • Dabei sind verschiedene Kriterien wie Sicherungs- und Wiederherstellungsdauer, Kosten und Langlebigkeit der Medien und zu sichernde Datenmengen zu berücksichtigen.
  • Bei der Bewertung der zu schützenden Daten müssen Kriterien wie ihr Wert für das Unternehmen bzw. den Besitzer, die Änderungshäufigkeit oder gesetzliche Anforderungen berücksichtigt werden.
  • Aber auch die Verschlüsselung der Daten kann nötig sein, wenn Medien extern aufbewahrt werden (z.B. in einer Bank), und auch die Kompression der Daten ist von Interesse, um Speicherplatz zu sparen.

Prüfungs- und praxisrelevante Inhalte

  • Backup-Medien wie Bänder, CDs, Cloud unterscheiden und auswählen
  • Backup-Arten: inkrementell/differentiell/Vollsicherung, Großvater/Vater/Sohn, hot/cold
  • Identifikation schützenswerter Daten: maschinell/manuell wiederherstellbar, unersetzlich
  • mögliche Gründe für Datenverluste und Gegenmaßnahmen

Literaturempfehlungen

Diese beiden „klassischen“ Romane passen gut zum Oberthema Datenschutz.

Links

Der Beitrag Datenschutz vs. Datensicherheit vs. Datensicherung – IT-Berufe-Podcast #157 erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Jan Wiesemann (mit 98% bewertet)

$
0
0

Jan Wiesemann hat in der Sommerprüfung 2018 von der IHK Kassel-Marburg 98% für die Projektdokumentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Jan war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Projektphasen werden mit passenden Artefakten (EPK, Lastenheft, Klassendiagramm usw.) dokumentiert.
  • Nicht selbst erarbeitete Inhalte werden korrekt mit Quellenangaben gekennzeichnet.
  • Alle erwarteten Dokumentationen (Benutzer und Entwickler) sind vorhanden.
  • Zur Entscheidungsfindung wird eine Nutzwertanalyse eingesetzt.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Zwischen den Kapiteln ist teilweise sehr viel Leerraum (bis zu 1/2 Seite), der besser genutzt werden könnte.
  • Mir fehlt eine Amortisationsrechnung. Es werden lediglich die Projektkosten aufgeführt.
  • Mir fehlen (automatiserte) Tests oder eine andere Art der Qualitätssicherung („Black-Box-Test“ und „Code-Review“ reichen mir nicht).
  • Der gezeigte Code ist nicht allzu spannend und komplex. Den hätte ich deutlich gekürzt.

Metadaten

  • Titel der Projektarbeit: WPF-Translate – Desktopanwendung zu dem Übersetzen von WPF-Ressourcen
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Sommerprüfung 2018
  • Bewertung: 98%
  • IHK: IHK Kassel-Marburg
  • Name des Prüflings: Jan Wiesemann
  • Ausbildungsbetrieb: Landau Software GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Jan Wiesemann und Landau Software GmbH für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Jan Wiesemann (mit 98% bewertet) erschien zuerst auf IT-Berufe-Podcast.


Projektpräsentation von Jan Wiesemann (mit 96% bewertet)

$
0
0

Jan Wiesemann hat in der Sommerprüfung 2018 von der IHK Kassel-Marburg 96% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Jan war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Die verwendeten Technologien (insb. WPF) werden gut verständlich erläutert.
  • Die Kosten und die Wirtschaftlichkeit des Projekts inkl. Amortisation werden vorgestellt.
  • Um die Zeit genau einzuhalten wurden Kommentare zur erwarteten Zeit in den Notizen verwendet.
  • Die Architektur der Anwendung wird mittels geeigneter Diagramme verdeutlicht.
  • Die Gliederung der Präsentation wird auf Zwischenfolien gezeigt und nicht auf jeder Folie.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Die verwendete Präsentationsvorlage wirkt altbacken.
  • Die Screenshots sind recht klein und schwer zu lesen.
  • Die verwendete Schriftart sollte keine Serifen haben.
  • Es werden keine Artefakte gezeigt (z.B. Dokumentation, Use-Cases, Klassendiagramm usw.)
  • Die Projektphasen mit ihrer Dauer werden nicht vorgestellt.

Metadaten

  • Titel der Projektarbeit: WPF-Translate – Desktopanwendung zu dem Übersetzen von WPF-Ressourcen
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Sommerprüfung 2018
  • Bewertung: 96%
  • IHK: IHK Kassel-Marburg
  • Name des Prüflings: Jan Wiesemann
  • Ausbildungsbetrieb: Landau Software GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Jan Wiesemann und Landau Software GmbH für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation von Jan Wiesemann (mit 96% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Buchclub: Funktionale Programmierung in Java von Herbert Prähofer – IT-Berufe-Podcast #158

$
0
0

Um den Buchclub zu Funktionale Programmierung in Java geht es in der einhundertachtundfünfzigsten Episode des IT-Berufe-Podcasts.

Probeabo bei Audible (Affiliate)

Inhalt

Die folgenden Inhalte werden im Buch besprochen. Meiner Meinung nach sollte jeder Azubi zum Fachinformatiker Anwendungsentwicklung diese Begriffe wenigstens einmal gehört haben, besser noch sie mit eigenen Worten erklären können. Die funktionale Programmierung ist neben der Objektorientierung heutzutage sicherlich eine gängige Vorgehensweise.

Für die anderen IT-Berufe sind viele Inhalte sicherlich etwas zu speziell. Allerdings sollte jeder ITler zumindest die verbreiteten Programmierparadigmen auseinanderhalten können. Und dazu zählen meiner Meinung nach auch einige wichtige Schlagworte. So wie bei der Objektorientierung Vererbung und Polymorphie erklärt werden müssen, sollte man bei der funktionalen Programmierung Funktionen höherer Ordnung oder reine Funktionen erläutern können.

Grundlagen

  • Lambda-Ausdrücke: Anonyme Funktionen in einer kurzen Schreibweise, meist mit einem „Pfeil“ als Trenner zwischen Methodenkopf und -rumpf (z.B. ->).
  • Typinferenz: Implizite Ableitung der Datentypen z.B. von Funktionsparametern aus dem Kontext, z.B. var text = "Text" (text ist „automatisch“ ein String).
  • Algebraische Datentypen
    • Produkttypen: Der Datentyp wird definiert durch die Kombination verschiedener Werte. Das sind letztlich unsere bekannten Objekte bzw. Structs.
    • Summentypen: Der Datentyp wird definiert als Liste möglicher Alternativen bzw. Varianten, z.B. ist eine Krankenversicherung entweder eine GesetzlicheKrankenversicherung oder eine PrivateKrankenversicherung. Hierbei müssen die Alternativen nicht in einer Vererbungsbeziehung stehen, wie man am Beispiel vermuten könnte.
  • Pattern Matching: Kontrollstruktur, die Datentypen „zerlegen“ kann. Quasi switch „on steroids“.
  • Generics: Datentypen, die mit anderen Datentypen parametriert werden können. Sie bieten allgemeingültige Algorithmen an, die auf mehreren Datentypen ausgeführt werden können.
  • Ko- und Kontravarianz: Legen fest, welche Verallgemeinerungen bzw. Spezialisierungen bei Typparametern von generischen Klassen erlaubt sind. Beispiele:
    • Kovarianz: List<Person> students = new List<Student>();
    • Kontravarianz: List<Student> students = new List<Person>();

Prinzipien der funktionalen Programmierung

  • Funktionsobjekte (first class citizens): Funktionen sind fester Bestandteil der Sprache und können z.B. Variablen zugewiesen oder als Parameter übergeben werden.
  • Reine Funktionen (pure functions): Funktionen haben keine Seiteneffekte. Sie liefern zum gleichen Input immer den gleichen Output.
  • Funktionen höherer Ordnung (higher order functions): Funktionen, die andere Funktionen zurückgeben oder als Parameter bekommen.
  • Bedarfsauswertung (lazy evaluation): Ein Ausdruck wird erst dann ausgewertet, wenn sein Wert auch wirklich benötigt wird.
  • Unveränderbarkeit (immutability): Bestehende Werte sollen nicht mehr verändert werden. Stattdessen werden immer neue Werte erzeugt.
  • Rekursion (recursion): Das Mittel der Wahl zur Iteration ohne veränderliche Variablen.
  • Referentielle Transparenz (referential transparency): Ein Ausdruck kann jederzeit durch seinen Wert ersetzt werden und umgekehrt.

Funktionale Datenstrukturen

  • Funktoren: Bieten die Funktion map() an, um den enthaltenen Datentypen in einen anderen zu transformieren. Beispiel: Optional<T>.
  • Monoide: Mit Monoiden kann man eine Menge von Elementen zu einem Gesamtergebnis verknüpfen, es also reduzieren (fold). Dafür wird ein neutrales Element und eine Reduktionsfunktion benötigt. Beispiel: Addition ganzer Zahlen mit neutralem Element 0.
  • Monaden: Bieten die Funktionen of() und flatMap() an, um den enthaltenen Datentypen in einen anderen zu transformieren, wobei das Ergebnis dieser Transformation selbst wieder eine Monade ist. Beispiel: Stream<T>.
  • Listenverarbeitung mit Streams
    • Grundlagen von map(), filter() und reduce.
    • Parallele Streams und Eignung von Aufgaben für die Parallelisierung

Sonstiges

  • Asynchronität mit CompletableFutures und Reactive Streams
  • Property Based Testing mit Quickcheck
    • Ein komplett anderer Ansatz, um Funktionen zu testen. Statt Input und erwarteten Output selbst zu definieren, werden zufällige Input-Werte generiert und allgemeine Eigenschaften des Ergebnisses geprüft, z.B. dass bei einer Konkatenation zweiter Strings die Länge des Ergebnisses immer größer oder gleich der Länge des ersten Strings sein muss.

Was mir am Buch sehr gut gefällt

  • Es werden nicht nur die Grundlagen der funktionalen Programmierung erläutert, sondern auch viele andere wichtige Begriffe rund um die moderne Programmierung.
  • Gerade die Grundlagen werden sehr verständlich erklärt und mit vielen praxisnahen Beispielen angereichert.
  • Es werden auch sehr moderne Konzepte wie wie Reactive Streams und Property Based Testing erläutert.
  • Einige Grundlagen, die jeder Informatiker einmal gehört haben sollte, werden ebenfalls behandelt, z.B. Algorithmen zur Tiefensuche.
  • Auch einige Entwurfsmuster werden im Detail erklärt und mit der funktionalen Lösung verglichen.
  • Die technischen Hintergründe der Implementierung in Java werden gut verständlich erläutert. Das sollte heutzutage jeder Java-Entwickler kennen!

Was mir am Buch nicht ganz so gut gefällt

  • Die Inhalte haben natürlich einen starken Fokus auf die Implementierung in Java. Man kann zwar auch als Nicht-Java-Entwickler im Bereich der Grundlagen einiges mitnehmen, aber am besten geeignet ist das Buch wohl für Hardcore-Java-Entwickler.
  • Man merkt, dass der Autor Hochschuldozent ist. Die Beschreibungen und Beispiele sind teilweise etwas akademisch. Auch wenn die funktionale Programmierung ihren Ursprung in der Mathematik hat, ist das vielleicht für Azubis manchmal etwas schwere Kost.
  • Die verwendeten Beispiele sind teilweise sehr umfangreich. Sehr lange Codeausschnitte, die schwer nachzuvollziehen sind, hätten vielleicht gekürzt werden können.

Fazit

  • Ich kann das Buch uneingeschränkt weiterempfehlen. Es vermittelt einen sehr guten Überblick über moderne Programmmiertechniken und die funktionale Programmierung.
  • Auch Azubis werden es gut verstehen können. Ich empfehle die Literatur allerdings erst ab dem zweiten Lehrjahr, wenn schon einige Programmierprojekte umgesetzt wurden.
  • Auch als Nachschlagewerk für zentrale Begriff der funktionalen Programmierung finde ich das Buch sehr gut, da die Begriffe kurz und prägnant definiert und mit Beispielen erklärt werden.
  • Insbesondere für Java-Entwickler empfehle ich das Buch zum Verständnis der technischen Implementierung der funktionalen Programmierung in Java.

Literaturempfehlungen

Naja, was soll ich wohl anderes empfehlen als das besprochene Buch Funktionale Programmierung in Java*? 🙂

Funktionale Programmierung in Java: Eine umfassende Einführung von Herbert Prähofer (Affiliate)*

Links

Der Beitrag Buchclub: Funktionale Programmierung in Java von Herbert Prähofer – IT-Berufe-Podcast #158 erschien zuerst auf IT-Berufe-Podcast.

Projektpräsentation von Patrice Voß (mit 100% bewertet)

$
0
0

Patrice Voß hat in der Winterprüfung 2019/2020 von der IHK Ostthüringen zu Gera 92% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Patrice war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Die Projektarbeit hat ein modernes und anspruchsvolles Thema mit KI-Anbindung.
  • Die Problemstellung wird mit grafischen Abläufen illustriert.
  • Es wird auch Code gezeigt.
  • Die Gliederung der Präsentation wird auf Zwischenfolien gezeigt und nicht auf jeder Folie.
  • Die Kosten und die Wirtschaftlichkeit des Projekts werden vorgestellt.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Statt eigener Bilder werden Stockfotos genutzt.
  • Der gezeigte Code ist recht klein und schlecht lesbar.
  • Die Kopfzeile nimmt viel Platz auf den Folien ein.
  • Es werden keine Artefakte gezeigt (z.B. Dokumentation, Use-Cases, Klassendiagramm usw.)
  • Die Projektphasen mit ihrer Dauer werden nicht vorgestellt.

Metadaten

  • Titel der Projektarbeit: Entwicklung eines Chat-Assistenzsystems für Facebook-Messenger
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 92%
  • IHK: IHK Ostthüringen zu Gera
  • Name des Prüflings: Patrice Voß
  • Ausbildungsbetrieb: ironshark

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Patrice Voß und ironshark für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation von Patrice Voß (mit 100% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Sören Molkentin (mit 95% bewertet)

$
0
0

Sören Molkentin hat in der Winterprüfung 2019/2020 von der IHK Schleswig-Holstein 95% für die Projektdokumentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Sören war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Dokument macht insgesamt einen professionellen Eindruck mit Kopf-/Fußzeile etc.
  • Das Thema ist nachvollziehbar erläutert und gut begründet.
  • Alle Projektphasen werden in der Dokumentation behandelt.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Projektphasen werden mit passenden Artefakten (Use-Cases, Aktivitätsdiagramm, Lastenheft, ERM usw.) dokumentiert.
  • Nicht selbst erarbeitete Inhalte werden mit Quellenangaben gekennzeichnet.
  • Die Anforderungen im Pflichtenheft sind sehr umfangreich und professionell definiert.
  • Alle erwarteten Dokumentationen (Benutzer und Entwickler) sind vorhanden.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Die Seitennummerierung ist fortlaufend über die Verzeichnisse und den Anhang hinweg.
  • Das Abkürzungsverzeichnis hätte ich aufsteigend sortiert.
  • Den Abstand zwischen Überschriften und Text und auch zwischen Kaptiteln hätte ich deutlich reduziert, um mehr Platz für den Inhalt zu haben.
  • Die Ressourcenplanung hätte ich in den Anhang verschoben, sie nimmt eine ganze Seite ein.
  • Den TDD-Prozess hätte ich nicht so umfangreich erläutert, da er nicht zur Eigenleistung des Prüflings zählt.
  • Mir fehlt eine Amortisationsrechnung. Die Begründung dafür ist mir zu dünn.
  • Der gezeigte Quellcode ist recht übersichtlich und nicht allzu spannend.

Metadaten

  • Titel der Projektarbeit: Erweiterung des Moduls Dokumentmanagement zur Speicherung der Dokumente in einer Datenbank
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 95%
  • IHK: IHK Schleswig-Holstein
  • Name des Prüflings: Sören Molkentin
  • Ausbildungsbetrieb: QDA Solutions GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Sören Molkentin und QDA Solutions GmbH für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Sören Molkentin (mit 95% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Anforderungsermittlung (nicht nur für dein Abschlussprojekt) – IT-Berufe-Podcast #159

$
0
0

Um die Ermittlung und Dokumentation von Anforderungen für Projekte geht es in der einhundertneunundfünfzigsten Episode des IT-Berufe-Podcasts.

Probeabo bei Audible (Affiliate)

Inhalt

Spätestens für das Abschlussprojekt im dritten Ausbildungsjahr müssen alle Azubis in den IT-Berufen Anforderungen ermitteln. Wen man dabei berücksichtigen sollte, wie man die Anforderungen erhebt und wie man sie verständlich dokumentiert, das erkläre ich hier.

Qualität

Beginnen wir zunächst mit den Anforderungen selbst. Dabei starte ich gerne mit dem Begriff der Qualität. Qualität ist definiert als Übereinstimmung mit den Anforderungen. Dabei können diese Anforderungen von sehr unterschiedlichen Personen oder Personengruppen gestellt werden. Daher ist es wichtig, alle am Projekt beteiligten Personen zu befragen.

Anforderungen

Es gibt grundsätzlich zwei verschiedene Arten von Anforderungen: funktionale und nicht-funktionale. Funktionale Anforderungen beziehen sich direkt auf die zu erbringende Leistung des Produkts, bspw. die Möglichkeit, Text in einer Textverarbeitungssoftware fett darzustellen.

Funktionale Anforderungen

Nicht-funktionale Anforderungen beschreiben den ganzen Rest „drumherum“, also z.B. die Performance, Sicherheit, Stabilität, Fehlertoleranz, Benutzbarkeit usw. Sie sind meistens sehr schwer zu definieren, da sie oftmals nicht bewusst wahrgenommen, sondern einfach erwartet werden. Daher werden sie oft vergessen oder können nur schwer quantifiziert werden. Es ist unsere Aufgabe als Projektleiter diese Anforderungen trotzdem so gut es geht zu dokumentieren, damit es am Ende kein böses Erwachen gibt, wenn sie nicht umgesetzt sind.

Nicht-funktionale Anforderungen

Eine gute Übersicht über die zahlreichen möglichen nicht-funktionalen Anforderung bietet die Norm ISO 9126, die den Begriff der Softwarequalität definiert.

Stakeholder

Wer definiert überhaupt die Anforderungen an eine Software (oder allgemein an ein zu fertigendes Produkt)? Ein Stakeholder ist jede Person, Gruppe oder Institution, die an dem zu entwickelnden Produkt oder dessen Herstellungsprozess in irgendeiner Weise – positiv oder negativ – interessiert ist.

Hier kommt eine nicht vollständige Liste möglicher Stakeholder unserer Projekte.

  • Kunde: Der Kunde bezahlt uns für das Projekt. Seine Anforderungen sollten wir auf jeden Fall berücksichtigen.
  • Anwender: Der Anwender ist die Person, die letztendlich mit unserem Produkt täglich arbeiten muss.
  • Management: Auch das Management könnte Anforderungen an unser Produkt stellen.
  • Marketing: Aus dem Bereich des Marketings kommen Anforderungen wie die Corporate Identity.
  • Entwickler: Die Entwickler haben ganz eigene Anforderungen, wie z.B. eine Versionverwaltung.
  • Support: Der Support muss nach Einführung des Produkts den Anwendern Hilfestellung leisten und bringt seine ganz eigenen Anforderungen mit.
  • Gesetzgeber: In fast jedem Projekt gilt es auch bestimmte Gesetze und Richtlinien einzuhalten.
  • Standards: Gerade in der IT gibt es eine Fülle von Standards, an die wir uns halten sollten, z.B. HTTP für Webserver.
  • Auditoren: Wirtschaftsprüfer und andere Auditoren stellen ebenfalls Anforderungen an unsere Software, wie z.B. die Nachvollziehbarkeit von Benutzeraktionen.
  • Kulturkreis: Auch der Kulturkreis, in dem die Software eingesetzt wird, hat bestimmte Anforderungen. So kann sich z.B. die Sprache je nach Land deutlich unterscheiden.

Methoden zur Anforderungsermittlung

Wenn wir wissen, wenn wir nach Anforderungen fragen müssen, ist die nächste Aufgabe, die Anforderungen auch wirklich aus diesen Menschen herauszukommen. Dafür gibt es neben dem Interview auch verschiedene weitere Methoden.

  • Interview: Die einfachste Methode ist wohl, den Stakeholder direkt zu befragen.
  • Selbstaufschreibung: Wenn dies nicht möglich ist, kann er seine Anforderungen auch selbst verschriftlichen.
  • Fragebogen: Etwas mehr Struktur bietet dabei eventuell ein vordefinierter Fragebogen.
  • Brainstorming: Gerade zu Beginn eines Projekts kann sich ein Brainstorming zur allgemeinen Definition von Anforderungen anbieten.
  • Mind-Mapping: Auch eine Mind-Map hilft vielleicht die verschiedenen Bereiche der Projektes zu betrachten.
  • Apprenticing: Hierbei spielt der Anforderungsermittler „Azubi“ und lässt sich vom Anwender die Aufgaben erklären.
  • Feldbeobachtung: Hierbei setzt sich der Anfoderungsermittler einfach neben den Anwender und beobachtet ihn bei seiner Arbeit.
  • Workshop: In einem Workshop können mehrere Teilnehmer gemeinsam Anforderungen erarbeiten.
  • Systemarchäologie: Wenn es schon ein bestehendes System gibt, können aus diesem Anforderungen für das neue System abgeleitet werden.
  • Raten: Zuletzt kann es durchaus auch sinnvoll sein, einfach mal aufs Blaue drauflos zu raten.

Anforderungen an Anforderungen

Wenn wir nun wissen, wen wir was fragen müssen und wie wir dies tun können, müssen wir nur noch eine geeignete Form der Dokumentation der Anforderungen finden. Einige Anforderungen an die Definition der Anforderungen selbst folgen hier.

  • eindeutig: Eine Anforderung soll immer eindeutig und nicht mehrdeutig sein, damit es keine Missverständnisse gibt.
  • atomar: Anforderungen sollen nicht weiter unterteilbar sein.
  • klein: Anforderungen dürfen nicht zu groß sein.
  • schätzbar: Für die Projektplanung ist es wichtig, dass Anforderungen auch geschätzt werden können.
  • unabhängig: Im besten Fall sind die Anforderungen unabhängig voneinander, damit die Umsetzung parallelisiert werden kann.
  • nützlich: Die Anforderungen sollten auch einen echten Nutzen bringen.
  • testbar: Wichtig ist auch festzulegen, wie die Umsetzung der Anforderungen geprüft werden kann.
  • einheitlich: Zuletzt sollten Anforderungen immer gleichartig definiert werden. Wir schreiben keinen blumigen Roman.

Methoden zur Dokumentation von Anforderungen

Snow Cards aus dem Volere-Template

Snow Cards aus dem Volere-Template sind eine Möglichkeit, um Anforderungen detailliert zu definieren. Sie umfassen für jede Anforderung mehrere Felder, die ausgefüllt werden müssen. Damit ist eine Klassifizierung und Priorisierung sehr einfach möglich. Allerdings erfordern sie auch einen enormen Zeitinvest.

Snow Cards aus dem Volere-Template

Allein das Inhaltsverzeichnis über die möglichen verschiedenen Anforderungen, die sich im Projekt ergeben können, ist mehrere Seiten lang. Auch wenn das Template selbst Geld kostet, kann dir die Übersicht der möglichen Anforderungen auf der Website vielleicht ein paar Hinweise geben, an was du in deinem Projekt noch denken musst.

User Stories

Eine einfache Möglichkeit, Anforderungen zu dokumentieren, stellen die User Stories aus dem Extreme Programming dar. Jede Anforderung besteht aus einem Satz, der aus der Sicht eines Anwenders beschreibt, was er mit der Software tun will und warum.

User Stories aus dem eXtreme Programming

As a bank client,
I would like to log into the bank’s internet banking
in order to check my account balance.

Anhand dieser wenigen Informationen, die auch super auf kleine Karteikarten passen, können wir schon eine Priorisierung vornehmen, mögliche Alternativen finden und den Fokus auf die Umsetzung legen. Deswegen sind sie gerade in agilen Vorgehensmodellen wie Scrum, Kanban oder eXtreme Programming so beliebt.

MoSCoW

Außerdem kann man Anforderungen auch nach dem MoSCoW-System vorpriorisieren.

The system…
MUST have this
SHOULD have this if at all possible
COULD have this if it does not affect anything else
WON’T have this time but WOULD like in the future

Die MoSCoW-Methode finde ich sehr oft in Abschlussprojekten von IT-Azubis. Mit ihr lassen sich Anforderungen recht einfach priorisieren. Und oftmals reicht dies auch für den sehr begrenzten Umfang der Abschlussprojekte (80 bzw. 40 Stunden) aus.

Literaturempfehlung

Das Lehrbuch der Softwaretechnik* von Helmut Balzert hat zwar einen großen Umfang, beschreibt aber sehr gut das Vorgehen beim Requirements Engineering, also dem englischen Wort für Anforderungsermittlung. Die Buchreihe kann ich sehr empfehlen, auch wenn sie vielleicht eher an Studenten gerichtet ist und nicht so sehr an Auszubildende.

Balzert - Lehrbuch der Softwaretechnik (Affiliate)*

Links

Der Beitrag Anforderungsermittlung (nicht nur für dein Abschlussprojekt) – IT-Berufe-Podcast #159 erschien zuerst auf IT-Berufe-Podcast.

Projektpräsentation von Sören Molkentin (mit 92% bewertet)

$
0
0

Sören Molkentin hat in der Winterprüfung 2019/2020 von der IHK Schleswig-Holstein 92% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Sören war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Unternehmen wird mit einem Bild vorgestellt und nicht nur mit Text.
  • Die Problemstellung wird mit grafischen Abläufen illustriert.
  • Die Projektphasen sind gut aufgeteilt und haben einen passenden Umfang.
  • Die Projektphasen werden mit ihrer Dauer gut lesbar in Diagramm- und Textform dargestellt.
  • Die Gliederung der Präsentation wird auf Zwischenfolien gezeigt und nicht auf jeder Folie.
  • Die Kosten und die Wirtschaftlichkeit des Projekts werden vorgestellt.
  • Um die Zeit genau einzuhalten wurden Kommentare zur erwarteten Zeit in den Notizen verwendet.
  • Das Projekt wurde testgetrieben entwickelt.
  • Die Dokumentation der erstellten Anwendung wird im Detail vorgestellt. Alle erwarteten Dokumentationen (Benutzer und Entwickler) sind vorhanden.
  • Für die verwendeten Bilder werden Quellenangaben gezeigt.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Es werden kaum Artefakte gezeigt (z.B. Use-Cases, Klassendiagramm usw.)
  • Die Erklärung des Projektthemas ist recht knapp.
  • Die Kostenrechnung hätte umfangreicher ausfallen können und insb. die Amortisationsrechnung fehlt mir.

Metadaten

  • Titel der Projektarbeit: Erweiterung des Moduls Dokumentmanagement zur Speicherung der Dokumente in einer Datenbank
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2019/2020
  • Bewertung: 92%
  • IHK: IHK Schleswig-Holstein
  • Name des Prüflings: Sören Molkentin
  • Ausbildungsbetrieb: QDA Solutions GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Sören Molkentin und QDA Solutions GmbH für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation von Sören Molkentin (mit 92% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektpräsentation zum Informatikkaufmann von Sven Rösser (mit 100% bewertet)

$
0
0

Sven Rösser hat in der Sommerprüfung 2020 von der IHK Kassel-Marburg 100% für die Projektpräsentation seiner betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Sven war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Die Projektarbeit hat ein anspruchsvolles Thema, das gut zum Berufsbild passt: die Auswahl einer Software zum Wissensmanagement.
  • Statt viel Text werden Symbole und Abbildungen zur Visualisierung genutzt.
  • Die möglichen Alternativen werden detailliert und grafisch verglichen.
  • Auch der Einsatz On-Premise vs. Cloud wird verglichen.
  • Die erstellte Nutzwertanalyse wird sauber eingeführt und die Kriterien mit Gewichtung und Bewertung werden erklärt.
  • Die gewählte Lösung SharePoint wird mit Screenshots dargestellt.
  • Die Automatisierbarkeit der Plattform wird mit grafischen Workflows gezeigt.
  • Zu jeder Projektphase wird ein passendes Artefakt gezeigt.
  • Der Soll-Ist-Vergleich ist optisch ansprechend aufbereitet.
  • Die verwendeten Grafiken werden in den Quellenangaben referenziert.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aufgefallen, die mir bei der Präsentation gefehlt hätten.

  • Die Projektorganisation (z.B. Vorgehensmodell) wird nicht erläutert.
  • Eine Wirtschaftlichkeitsanalyse und Amortisationsrechnung für das Gesamtprojekt fehlt mir.
  • Ebenso vermisse ich Hinweise auf Dokumentationen wie z.B. die Betriebsdokumentation.

Metadaten

  • Titel der Projektarbeit: Zentrale Wissensablage – Ermittlung einer geeigneten Softwarelösung
  • Ausbildungsberuf: Informatikkaufmann
  • Prüfung: Sommerprüfung 2020
  • Bewertung: 100%
  • IHK: IHK Kassel-Marburg
  • Name des Prüflings: Sven Rösser
  • Ausbildungsbetrieb: Nicht genannt

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Sven Rösser für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation zum Informatikkaufmann von Sven Rösser (mit 100% bewertet) erschien zuerst auf IT-Berufe-Podcast.


Reguläre Ausdrücke – IT-Berufe-Podcast #160

$
0
0

Um reguläre Ausdrücke – das Schweizer Taschenmesser für ITler – geht es in der einhundertsechzigsten Episode des IT-Berufe-Podcasts.

Probeabo bei Audible (Affiliate)

Inhalt

Ich schwärme immer mal wieder von regulären Ausdrücken. Das liegt wohl einfach daran, dass ich fast täglich mit ihnen arbeite. Sie sind einfach so unglaublich vielseitig verwendbar und machen ITlern das Leben leichter – wenn man sie beherrscht. Nicht umsonst gibt es diesen „Witz“:

Ich hatte ein Problem und versuchte es mit regulären Ausdrücken zu lösen. Nun habe ich zwei Probleme.

In den Händen eines erfahrenen Anwenders sind reguläre Ausdrücke allerdings äußerst hilfreich.

Sinn regulärer Ausdrücke

Reguläre Ausdrücke dienen der Mustererkennung in Zeichenketten und sind quasi Platzhalter on steroids. Statt der einfachen Platzhalter wie * oder ? z.B. in Dateinamen, gibt es viele verschiedene Platzhalter, Quantifizierer und weitere Regeln, um Muster in Texten zu definieren. Nach diesen Mustern kannst du suchen oder du kannst sie zum Ersetzen von Inhalten benutzen. Teilmuster lassen sich gruppieren und beim Ersetzen wiederverwenden. So gut wie jede Programmiersprache enthält eine eingebaute Unterstützung für reguläre Ausdrücke. Jeder vernünftige Texteditor unterstützt reguläre Ausdrücke beim Suchen und Ersetzen genauso wie eine gute Shell (z.B. Bash oder PowerShell).

Grundlegende Muster

  • konkreten Zeichen(-folgen): hallo
  • Bereiche: [], z.B. [a-z], [0-9], [aeiou]
    • Negation mit ^, z.B. [^abc]
  • Zeilenanfang: ^ (nicht mit der Negation verwechseln!)
  • Zeilenende: $
  • Platzhalter für ein beliebiges Zeichen: .
  • Alternativen: A|B
  • Quantifizierer (stehen hinter dem Muster)
    • einmal oder keinmal (0..1): ?
    • keinmal, einmal oder mehrmals (0..n): *
    • einmal oder mehrmals (1..n): +
    • genaue Anzahl: {8}, {2,5} (2 bis 5 mal)
  • Gruppen: (), Referenz mit $1
  • Escapen von besonderen Zeichen (insb. alle obigen): \

Anwendungsfälle aus meiner Praxis

Reguläre Ausdrücke gehören in den Werkzeugkasten jedes ITlers! Egal ob Anwendungsentwicklung oder Systemadministration, reguläre Ausdrücke können vielfältig eingesetzt werden. In der Linux-Administration können z.B. Black- und Whitelists für Hostnamen mit regulären Ausdrücken definiert werden. Die Apache-Konfiguration verwendet ebenfalls reguläre Ausdrücke. Auf der Linux-Kommandozeile kannst du mit grep in Dateien nach regulären Ausdrücken suchen. sed ermöglicht dir die Massenverarbeitung von Dateien. Das Suchen und Ersetzen im vi wird standardmäßig auch mit regulären Ausdrücken gemacht und du kannst sogar mit ihnen navigieren ($ springt z.B. zum Ende der Zeile).

  • Suchen und Ersetzen in Dateien
  • Listen umformatieren
    • Nachname/Vorname zu Vorname/Nachname
    • Anfang oder Ende von Zeilen manipulieren
    • Markdown in HTML und umgekehrt
    • Feldnamen mit public String ; umschließen
    • Batchdatei generieren zum Verschieben von Dateien
  • Whitespace trimmen
  • UUIDs/Domains/Mails in Text/Logs finden

Konkrete Beispiele

Gerade vor wenigen Tagen hatte ich die – eigentlich triviale – Aufgabe, ein paar Dateien umzubenennen, die ein bestimmtes Präfix hatten. Dieses Präfix sollte ausgetauscht werden. Anstatt die Dateien per Hand umzubenennen (oder die entsprechende Shell-Funktion zu nutzen 😉 ), habe ich mir mit einem simplen regulären Ausdruck in wenigen Sekunden ein Shell-Script gebaut, das die Aufgabe für mich löst.

Basis war die Liste der Dateien, die ich in der PowerShell mit dir | ac liste.ps1 erstellt habe.

prefix-Datei1.txt
prefix-Datei2.txt
...
prefix-Datei100.txt

Mit dem Suchen-/Ersetzen-Muster /^(prefix-(.*))$/move $1 neuerPrefix-$2/g im Vim wurde daraus:

move prefix-Datei1.txt neuerPrefix-Datei1.txt
move prefix-Datei2.txt neuerPrefix-Datei2.txt
...
move prefix-Datei100.txt neuerPrefix-Datei100.txt

Die Datei konnte ich dann einfach mit .\liste.ps1 ausführen und war fertig!

  • UUIDs suchen
    • Text: Text mit UUIDs wie z.B. 550e8400-e29b-11d4-a716-446655440000 mittendrin
    • RegEx: [a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}
    • Suchergebnis: 550e8400-e29b-11d4-a716-446655440000
  • E-Mail-Adressen suchen
    • Text: Stefan Macke (mail@example.com) hat einen Podcast.
    • RegEx: [a-z]+@[a-z]+\.[a-z]{2,3} (nicht ausreichend für echte Mails!)
    • Suchergebnis: mail@example.com
  • Vor-/Nachnamen vertauschen
    • Text: Stefan Macke
    • RegEx: (.+) (.+)
    • Ersetzen durch: $2, $1
    • Ergebnis: Macke, Stefan
  • Trailing Whitespace entfernen
    • Text: Zeile mit Leerzeichen am Ende
    • RegEx: +$
    • Ersetzen durch: „
    • Ergebnis: Zeile mit Leerzeichen am Ende
  • Aus Zeilen Markdown-Aufzählungen machen
    • Text: Listenpunkt 1
    • RegEx: ^
    • Ersetzen durch: * (Asterisk muss ggfs. escapet werden)
    • Ergebnis: * Listenpunkt 1
  • Aus Namen Java-Attribute machen
    • Text: alterDerPersonInJahren
    • RegEx: (.+)
    • Ersetzen durch: private Integer $1;
    • Ergebnis: private Integer alterDerPersonInJahren;
  • Aus HTML-Links Markdown machen
    • Text: <a href="https://it-berufe-podcast.de">IT-Berufe-Podcast</a>
    • RegEx: <a href="([^"]+)">([^<]+)</a>
    • Ersetzen durch: [$2]($1 "$2") (Klammern müssen ggfs. escapet werden)
    • Ergebnis: [IT-Berufe-Podcast](https://it-berufe-podcast.de "IT-Berufe-Podcast")

Grenzen regulärer Ausdrücke

Wofür du reguläre Ausdrücke nicht benutzen solltest:

Programme mit Unterstützung für reguläre Ausdrücke

  • Kommandozeile: grep (Bash), Select-String (PowerShell)
  • Editoren: Vim, Notepad++, Visual Studio Code
  • IDEs: Eclipse, IntelliJ, Visual Studio

Und viele mehr…

Literaturempfehlungen

In diesem (zumindest für mich) spannenden Artikel zeigt Liz Bennett die – teils sehr deutlichen – Performance-Unterschiede zwischen guten und schlechten regulären Ausdrücken: Regexes: the Bad, the Better, and the Best.

In diesem tollen Artikel geht Nikita Popov auf die Hintergründe von regulären Ausdrücken ein und erklärt ganz nebenbei noch die Chomsky-Hierarchie und warum man HTML nicht mit regulären Ausdrücken parsen sollte: The true power of regular expressions. Ein wirklich spannender Artikel, der mir wieder mal zeigt, wie sinnvoll es ist, reguläre Ausdrücke zu beherrschen.

Eine witzige Möglichkeit, reguläre Ausdrücke zu lernen, ist übrigens das Regex Crossword. Damit habe ich auch schon einige Stunden verbracht! 😀

In Kapitel 10 (Konzepte der Programmierung) geht Sascha Kersken im IT-Handbuch für Fachinformatiker* auf reguläre Ausdrücke ein und zeigt Programmierbeispiele in Java und Python.

Sascha Kersken - IT-Handbuch für Fachinformatiker: Für Fachinformatiker der Bereiche Anwendungsentwicklung und Systemintegration. Inkl. Prüfungsfragen und Praxisübungen (Affiliate)*

Links

Der Beitrag Reguläre Ausdrücke – IT-Berufe-Podcast #160 erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation zum Fachinformatiker Systemintegration von Björn Jaborek (mit 90% bewertet)

$
0
0

Björn Jaborek hat in der Winterprüfung 2020/2021 von der IHK Nord Westfalen 90% für die Projektdokumentation zur betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Björn war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Das Projektthema ist nachvollziehbar erläutert und gut begründet.
  • Die Dokumentation macht einen professionellen Eindruck mit sauberen Seitenzahlen, Kopf- und Fußzeile, Verzeichnissen usw.
  • Die Verzeichnisse (Abbildungen, Tabellen etc.) sind sehr ausführlich.
  • Die verwendeten Fachbegriffe werden im Glossar und Abkürzungsverzeichnis erläutert.
  • Das Projekt wird ausführlich und nachvollziehbar auf seine Wirtschaftlichkeit geprüft.
  • Es werden mehrere mögliche Lösungen verglichen und nicht nur eine vorgegebene umgesetzt.
  • Es werden eigene Entscheidungen getroffen und begründet.
  • Der Anhang ist sehr umfangreich und enthält viele Artefakte.
  • Es werden auch eigene Fotos der Hardware/Projektumgebung verwendet.
  • Die Dokumentation enthält viele zum Projekt passende Artefakte (z.B. Gantt-Chart, Nutzwertanalyse, Projektstrukturplan, Netzwerkplan).

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit zu verbessern.

  • Die Lohnkosten werden selbst berechnet und sind nicht vollständig (nur Bruttogehalt).
  • Bei der Nutzwertanalyse fehlt die Erläuterung der Bewertung.
  • Die Projektdokumentation ist in der Ich-Perspektive verfasst.
  • Einzelne (triviale) Arbeitsschritte werden sehr detailliert beschrieben.
  • Es wird keine Kunden- und/oder Administratordokumentation erstellt.
  • Die verwendeten Quellen werden nur aufgelistet, aber nicht im Text referenziert.
  • Für 10 Seiten Fließtext ist eine Gliederung bis zur dritten Ebene etwas zu viel.

Metadaten

  • Titel der Projektarbeit: Evaluierung und Umsetzung einer „Best-Practice“-Lösung zur automatisierten Installation von Windows und Linux Systemen
  • Ausbildungsberuf: Fachinformatiker Systemintegration
  • Prüfung: Winterprüfung 2020/2021
  • Bewertung: 90%
  • IHK: IHK Nord Westfalen
  • Name des Prüflings: Björn Jaborek
  • Ausbildungsbetrieb: com.kom IT-Systemlösungen GmbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Björn Jaborek und com.kom IT-Systemlösungen GmbH für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation zum Fachinformatiker Systemintegration von Björn Jaborek (mit 90% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Laura Höll (mit 96% bewertet)

$
0
0

Laura Höll hat in der Winterprüfung 2020/2021 von der IHK Hannover 96% für die Projektdokumentation zur betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Laura war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektdokumentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Die Projektarbeit hat ein modernes Thema: die Implementierung einer Single-Page-Application.
  • Das Teilprojekt wird gut nachvollziehbar vom Gesamtprojekt abgegrenzt.
  • Endlich mal eine Projektdokumentation mit „echtem“ Scrum mit Sprints und nicht mit unpassender Zeitplanung nach dem Wasserfall-Modell.
  • Der Entwicklungsprozess Scrum wird mit Screenshot des Scrum-Boards dokumentiert.
  • Die verwendeten Technologien werden im Detail erklärt.
  • Es werden passende technische Methodiken (Use-Cases, ERM usw.) angewendet und die Software wird professionell entwickelt.
  • Die Dokumentation macht einen professionellen Eindruck mit sauberen Seitenzahlen, Kopf- und Fußzeile, Verzeichnissen usw.
  • Die farbliche Gestaltung der Dokumentation passt zum Corporate Design des Unternehmens.
  • Passend zu Scrum finden kontinuierliche Code-Reviews statt und nicht nur ein einmaliges am Projektende.
  • Die Codebeispiele enthalten auch interessante Teile wie async/await.
  • Die REST-Schnittstelle wurde (programmatisch auswertbar) mit OpenAPI dokumentiert.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Das Kapitel „Nutzwertanalyse“ enthält gar keine Nutzwertanalyse.
  • Es gibt keine Amortisationsrechnung.
  • Lasten- und Pflichtenheft passen nicht so ganz zu Scrum. Hier wäre ein Product-/Sprint-Backlog besser gewesen.
  • Es wurde keine Kundendokumentation erstellt (auch wenn das begründet wird).
  • Die Use-Case-Diagramme sind syntaktisch nicht ganz korrekt (Use-Cases, die auf Use-Cases zeigen; Deaktivieren inkludiert Aktivieren).
  • Einige Inhalte im Anhang (z.B. der Vue-Lifecycle) nehmen viel Platz in Anspruch, wurden aber nicht selbst konzipiert.

Metadaten

  • Titel der Projektarbeit: Entwicklung des Frontends einer Statistikanwendung für einen Verbandskunden
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2020/2021
  • Bewertung: 96%
  • IHK: IHK Hannover
  • Name des Prüflings: Laura Höll
  • Ausbildungsbetrieb: GLEI Service- und Beratungsgesellschaft mbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Laura Höll und GLEI Service- und Beratungsgesellschaft mbH für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Laura Höll (mit 96% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektpräsentation von Laura Höll (mit 98% bewertet)

$
0
0

Laura Höll hat in der Winterprüfung 2020/2021 von der IHK Hannover 98% für die Projektpräsentation zur betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Laura war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Bewertung

Die Projektpräsentation ist ein sehr gutes Beispiel für eine Projektarbeit. Insbesondere folgende Punkte fallen mir positiv auf:

  • Insgesamt ist die Präsentation sehr visuell und wenig textlastig gestaltet.
  • Es werden auch eigene Foto – sogar mit Personen – verwendet.
  • Der Ist-Zustand mit verschiedenen Excel-Dateien wird witzig dargestellt.
  • Es werden einige passende Artefakte (Lastenheft, Use-Cases usw.) gezeigt.
  • Es wird auch Sourcecode des Projekts gezeigt.
  • Der Soll-/Ist-Vergleich wird in Form eines Balkendiagramms visualisiert. Das habe ich bisher noch nicht gesehen.
  • Für die verwendeten Bilder werden Quellenangaben gezeigt.
  • Die verwendeten Technologien (insb. Vue) werden gut verständlich erläutert.

Optimierungspotential

Ein paar Kleinigkeiten sind mir aber auch aufgefallen, um die Arbeit noch zu verbessern.

  • Die Titelfolie ist sehr schlicht gehalten (und macht dadurch wenig Lust auf mehr).
  • Die bildschirmfüllenden Zwischenbilder hätten selbst gemacht werden können, um individueller zu sein.
  • Die Cliparts hätte ich durch (eigene) Bilder ersetzt.
  • Die mitlaufende Agenda und das Firmenlogo nehmen viel Platz weg, gerade auf den 16:9-Folien.
  • Der gezeigte Code könnte größer sein (z.B. bildschirmfüllend).
  • Die zugrundeliegende Datenbank wird nicht vorgestellt.
  • Es wird keine Kunden- oder Entwicklerdokumentation gezeigt.
  • Auf die Qualitätssicherung wird nicht eingegangen.

Metadaten

  • Titel der Projektarbeit: Entwicklung des Frontends einer Statistikanwendung für einen Verbandskunden
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2020/2021
  • Bewertung: 98%
  • IHK: IHK Hannover
  • Name des Prüflings: Laura Höll
  • Ausbildungsbetrieb: GLEI Service- und Beratungsgesellschaft mbH

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Laura Höll und GLEI Service- und Beratungsgesellschaft mbH für das Bereitstellen der Projektpräsentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektpräsentation

Du suchst noch mehr Tipps rund um die Projektpräsentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektpräsentation.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektpräsentation herunterladen.

Checkliste für die Projektpräsentation

Der Beitrag Projektpräsentation von Laura Höll (mit 98% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Projektdokumentation von Marcel Cremer (mit 98% bewertet)

$
0
0

Marcel Cremer hat in der Winterprüfung 2020/2021 von der IHK Mittlerer Niederrhein 98% für die Projektdokumentation zur betrieblichen Projektarbeit bekommen. Herzlichen Glückwunsch zu dieser tollen Leistung!

Marcel war so nett, die Arbeit der Allgemeinheit zur Verfügung zu stellen. Du kannst sie hier herunterladen.

Marcel hat die Prüfung als Externenprüfling, also ohne Ausbildungsstätte und Berufsschule absolviert.

Bewertung

Die Projektdokumentation ist ein interessantes Beispiel für die sehr unterschiedliche Bewertung einer Projektarbeit durch verschiedene Prüfungsausschüsse. Ich selbst hätte die Dokumentation deutlich schlechter bewertet. Mir fallen nur folgende Punkte positiv auf:

  • Es wird ein sehr detailliertes Pflichtenheft erstellt, das den Namen verdient.
  • Einige passende Artefakte (Tabellenmodell, Klassendiagramm) werden verwendet.
  • Es wird auch Sourcecode gezeigt.

Das war es aber auch schon. Deutlich mehr Punkte habe ich zu bemängeln, wie im Folgenden zu sehen.

Optimierungspotential

Mir fehlen recht viele Inhalte und insgesamt liest sich die (knappe) Projektdokumentation für mich sehr oberflächlich. Daher hätte ich die Arbeit nicht mit „sehr gut“ bewertet.

  • Die grobe Zeitplanung ist mir mit drei Phasen viel zu grob. Auch die detaillierte Planung enthält noch Phasen mit über 20 Stunden Länge.
  • Es wird keine Wirtschaftlichkeitsbetrachtung durchgeführt.
  • Die Qualitätssicherung ist seh dünn: nur manuelle Tests ohne Protokoll, kein Code-Review.
  • Das Pflichtenheft im Anhang ist viel zu lang und der Platz wird für andere Artefakte verschenkt.
  • Insgesamt fehlen mir einige Artefakte, wie z.B. Use-Cases, Architekturdiagramme, Mockups o.Ä.
  • Das gezeigte ERM ist eigentlich ein Tabellenmodell.
  • Der gezeigte Code ist größtenteils langweilig bzw. trivial.
  • Es wird keine Dokumentation für Kunden oder Entwickler erstellt.

Ein paar „kosmetische“ Anmerkungen habe ich darüber hinaus auch noch:

  • Die Dokumentation wird durchgängig nummeriert (Einleitung beginnt nicht auf Seite 1, Anhang wird fortlaufend nummeriert) anstatt verschiedenen Abschnitte zu bilden.
  • Es wird die Ich-Perspektive verwendet.
  • Große Abbildungen (z.B. Klassendiagramm) sind im Fließtext eingebunden anstatt im Anhang.
  • Der (lange) Code wird auf schwarzem Hintergrund geschrieben.

Metadaten

  • Titel der Projektarbeit: EquiTAX – Webbasierte Software zur Erstellung von standardisierten Beschaffenheitsbeschreibungen von Pferden
  • Ausbildungsberuf: Fachinformatiker Anwendungsentwicklung
  • Prüfung: Winterprüfung 2020/2021
  • Bewertung: 98%
  • IHK: IHK Mittlerer Niederrhein
  • Name des Prüflings: Marcel Cremer
  • Ausbildungsbetrieb: MennrathS

Wenn du deine Projektarbeit auch auf dieser Seite veröffentlichen möchtest, dann sprich mich gerne an. Ich suche (sehr gute) Beispiele aus allen IT-Berufen.

Download

Vielen Dank an Marcel Cremer und MennrathS für das Bereitstellen der Projektdokumentation. Alle internen Angaben oder personenbezogenen Daten wurden entweder unkenntlich gemacht oder durch fiktive Werte ersetzt.

Weitere Infos zur Projektdokumentation

Du suchst noch mehr Tipps rund um die Projektdokumentation? Dann schau doch mal in diese Artikel- und Podcast-Kategorie: Alle Artikel rund um die Projektdokumentation.

Kennst du schon meine Microsoft Word-/LibreOffice-Vorlage für die Projektdokumentation? Unter dieperfekteprojektdokumentation.de kannst du sie herunterladen.

Und wenn du dich für meinen Newsletter einträgst, kannst du dir jetzt sofort meine Checkliste für die Projektdokumentation herunterladen.

Checkliste für die Projektdokumentation

Der Beitrag Projektdokumentation von Marcel Cremer (mit 98% bewertet) erschien zuerst auf IT-Berufe-Podcast.

Viewing all 452 articles
Browse latest View live