Wie werde ich zum Experten? Die Bloom’sche Taxonomie (2/2)

Wie werde ich zum Experten? Die Bloom’sche Taxonomie (2/2)

Die Bloom'sche Taxonomie bietet einen strukturierten Ansatz zur Verbesserung der kognitiven Fähigkeiten in jedem Fachgebiet. Im zweiten Teil unserer zweiteiligen Serie zeigt der Softwareexperte Dr. Milan Milanović, wie dieses Konzept den Lernprozess am Beispiel der Softwareentwicklung unterstützen kann.

Von Dr. Milan Milanović

Der zweite Teil unserer zweiteiligen Serie beschäftigt sich mit der Bloom’schen Taxonomie. Den ersten Teil über die 4 Stufen der Kompetenz lest ihr hier.

Wie kann die Bloom’sche Taxonomie beim Erlernen der Softwareentwicklung helfen?

Die Softwareentwicklung ist ein komplexes Feld, das eine Vielzahl kognitiver Fähigkeiten erfordert. Durch die Anwendung der Bloom’schen Taxonomie, einem Rahmenwerk zur Anpassung des eigenen Lernfortschritts in einem neuen Fachgebiet, kann man einen strukturierten und effizienteren Lernweg schaffen, ohne sich allein auf sein (oft falsches) Selbstvertrauen zu verlassen. Mit diesem Modell könnt ihr die verschiedenen Ebenen klar erkennen und anderen helfen, die auf diesen Ebenen feststecken.

Die Bloom’sche Taxonomie wurde von einer Gruppe von Pädagogen unter der Leitung von Benjamin Bloom, einem amerikanischen Bildungspsychologen, entwickelt und 1956 im Buch Taxonomy of Educational Objectives: The Classification of Educational Goals vorgestellt. Bloom und seine Kollegen unterteilten die Lernziele in drei Kategorien: kognitiv (wissensbasiert), affektiv (gefühlsbasiert) und psychomotorisch (handlungsbasiert). Der kognitive Bereich, der die sechs Stufen umfasst, ist am weitesten verbreitet und wird oft als Bloomsche Taxonomie bezeichnet.

Bloom'sche Taxonomie

Bloom'sche Taxonomie in radialer Anordnung (Quelle: Wikipedia)

Die sechs Stufen der Bloom’schen Taxonomie, in aufsteigender kognitiver Komplexität:

1. Erinnern

Auf dieser Stufe konzentrieren sich die Lerner auf das Abrufen von Fakten, Begriffen und grundlegenden Konzepten. Als Softwareentwickler könnt ihr die Grundlagen von Programmiersprachen, Tools, Frameworks, Bibliotheken und Softwareentwicklungsmethoden lernen. Darüber hinaus können wichtige Konzepte, Terminologie, Syntax und Best Practices auswendig gelernt werden.

👉 Beispiel: Ihr wollt euch in der Disziplin Clean Code verbessern und könnt euch an die Grundprinzipien von sauberem Code erinnern. Ihr seid vielleicht in der Lage, einige Schlüsselkonzepte wie sinnvolle Variablennamen, kleine Funktionen oder das DRY-Prinzip (Don’t Repeat Yourself) zu reproduzieren. Euer Verständnis beschränkt sich jedoch auf eine einfache Reproduktion, ohne ein tieferes Verständnis aller Aspekte von Clean Code zu haben.

📌 Tipp: Benutzt Karteikarten oder Hilfsmittel zur verteilten Wiederholung, um euch wichtige Konzepte einzuprägen.

2. Verstehen

Auf dieser Stufe müssen Lerner nachweisen, dass sie das Lehrmaterial verstehen, indem sie Ideen oder Konzepte in ihren eigenen Worten erklären, Informationen zusammenfassen oder diese interpretieren. Entwickelt ein tieferes Verständnis von Softwareentwicklungskonzepten wie Algorithmen, Datenstrukturen, Design Patterns und Architekturansätzen. Wenn ihr mit einem Problem konfrontiert werdet, solltet ihr wissen, wie ihr es angehen könnt und in welche Richtung ihr gehen müsst.

👉 Beispiel: Ihr versteht nun die Gründe hinter den Clean-Code-Praktiken. Ihr könnt erklären, warum beschreibende Variablennamen für die Lesbarkeit wichtig sind, wie kleine Funktionen die Wartbarkeit verbessern oder wie das DRY-Prinzip potenzielle Fehler reduziert. Ihr könnt die Clean-Code-Richtlinien interpretieren und deren Vorteile zusammenfassen, habt jedoch möglicherweise Schwierigkeiten, sie konsequent umzusetzen.

📌 Tipp: Bringt die erlernten Konzepte anderen bei oder schreibt Blogbeiträge darüber. Wenn ihr es erklären könnt, versteht ihr es gut. Die Feynman-Technik kann hier helfen.

Wissen vs. Verstehen

Wissen vs. Verstehen

3. Anwenden

Diese Stufe umfasst die Anwendung von Wissen und Verständnis zur Lösung von Problemen oder die Anwendung von Konzepten in neuen Situationen. Setzt euer Wissen und eure Erfahrung mit den Prinzipien der Softwareentwicklung ein, um Softwareanwendungen zu entwickeln, Probleme zu lösen und neue Funktionen zu implementieren. Wenn ihr ein Problem seht und wisst, welche Lösung ihr anwenden müsst, seid ihr bereits auf dieser Stufe.

👉 Beispiel: Ihr könnt die Prinzipien von Clean Code auf dieser Stufe anwenden, beispielsweise indem ihr aktiv aussagekräftige Variablennamen verwendet, komplexe Funktionen in kleinere, überschaubarere aufteilt und Codeverdoppelungen vermeidet. Auch wenn ihr nicht immer die optimale Lösung wählt, könnt ihr diese Konzepte auf neue Programmierprobleme anwenden und bestehenden Code verbessern.

📌 Tipp: Beginnt mit kleinen Nebenprojekten, bei denen ihr neue Konzepte in realen Szenarien anwenden könnt. Dies hilft euch, durch praktische Anwendung zu lernen.

4. Analysieren

Die Analyse besteht darin, komplexe Probleme in kleinere, überschaubare Teile zu zerlegen. In der Softwareentwicklung bedeutet dies, die Architektur einer Anwendung zu verstehen, Code zu debuggen oder verschiedene Algorithmen zu vergleichen. Selbst wenn man das Problem und die Lösung kennt, muss man noch verstehen, warum. Warum ist diese Lösung besser als eine andere? Ist es die bestmögliche Lösung? Was sind die Einschränkungen?

👉 Beispiel: Ihr könnt den Code zerlegen, um Bereiche zu identifizieren, die gegen die Clean-Code-Prinzipien verstoßen. Ihr könnt gut geschriebenen von schlecht geschriebenem Code unterscheiden und untersuchen, wie verschiedene Teile miteinander interagieren und die Gesamtqualität beeinflussen. Ihr könnt eine große Funktion analysieren und herausfinden, wie man sie effizient aufteilt oder doppelte Codeabschnitte identifiziert.

📌 Tipp: Führt regelmäßige Code Reviews und Code Refactoring zur Verbesserung der Lesbarkeit, Effizienz und Einhaltung der Best Practices durch.

5. Bewerten

Auf dieser Stufe seid ihr in der Lage, verschiedene Ansätze bewerten und zu beurteilen. Ihr bewertet die Qualität, Effektivität und Eignung von Softwarelösungen, Methoden, Programmiersprachen und Tools. Außerdem wägt ihr Vor- und Nachteile von Designentscheidungen ab, analysiert Risiken und entscheidet über die beste Vorgehensweise für ein Projekt.

👉 Beispiel: Ihr könnt auf dieser Ebene die Codequalität kritisch bewerten und gute Kompromissentscheidungen treffen. Ihr könnt die Vorteile der Anwendung eines Clean-Code-Prinzips gegen Nachteile wie erhöhte Komplexität oder Performance-Einbußen abwägen. Unter Berücksichtigung von Zeitvorgaben, Teamerfahrung und langfristiger Wartbarkeit könnt ihr verschiedene Refaktorisierungsstrategien für Legacy-Code bewerten.

📌 Tipp: Nehmt an Code-Reviews teil, sei es durch Beiträge zu Open-Source-Projekten oder in eurem Team. Bewertet sowohl euren eigenen Code als auch den anderer kritisch, um eure Entscheidungsfähigkeit zu verbessern.

6. Gestalten

Dies ist die höchste Stufe der kognitiven Fähigkeiten in der Bloom’schen Taxonomie, bei der die Lerner neue Ideen, Produkte oder Perspektiven entwickeln, indem sie bestehende Elemente kombinieren oder neu organisieren (Schaffensprozess). Entwerft und implementiert innovative Softwarelösungen und nutzt euer Wissen und eure Fähigkeiten in der Softwareentwicklung, um neue Produkte zu schaffen, die den Menschen einen Mehrwert bieten.

👉 Beispiel: Auf dieser Stufe könnt ihr nun innovative Clean-Code-Strategien oder -Muster entwickeln. Ihr könnt eigene Linting-Regeln erstellen, um teaminterne Clean-Code-Standards durchzusetzen, neue Refaktorisierungstechniken für komplexe Altsysteme entwickeln oder Lehrmaterialien erstellen, um weniger erfahrenen Entwicklern zu helfen, die Clean-Code-Prinzipien zu meistern.

📌 Tipp: Entwerft auf dieser Stufe euer eigenes Framework oder Tool, das ein spezifisches Problem löst, dem ihr in euren Projekten begegnet seid. Dies fordert euch heraus, euer Verständnis in verschiedenen Bereichen zu integrieren und innovative Lösungen zu entwickeln. Teilt eure Kreationen dann durch Blogs, Vorträge oder auf Github und holt Feedback ein, das eure Arbeit weiter verfeinern und euch als Entwickler beim Wachstum helfen kann.

Einige Tipps, wie ihr die Bloom’sche Taxonomie zum Lernen nutzen könnt:

✅ Setzt euch klare Lernziele für euch selbst oder euer Team, die auf verschiedene kognitive Ebenen abzielen.

✅ Arbeitet euch von den unteren Ebenen nach oben vor – dies ist eine gute Strategie. Vermeidet es, die höheren Ebenen anzugehen, bevor ihr die unteren gemeistert habt.

✅ Fördert Zusammenarbeit, Selbstreflexion und Mentoring, um das Lernen und die Entwicklung auf allen kognitiven Ebenen zu unterstützen.

✅ Stellt euch selbst auf die Probe, während ihr voranschreitet und die Stufen hinaufsteigt. Vergewissert euch, dass das, was ihr gelernt habt, mehr ist als nur Abrufen und Verstehen.

Bloom'sche Taxonomie

Die Bloom‘sche Taxonomie

 

Dieser Artikel ist die deutsche Fassung des Artikels „How to become an expert in anything?“ von Dr. Milan Milanović, CTO des US-Softwareunternehmens 3MD und Experte für Softwareentwicklung mit umfangreicher akademischer und industrieller Erfahrung. Sein Newsletter Tech World With Milan bietet Softwareingenieuren und -architekten, technischen Managern und allen anderen IT-Interessierten Expertenwissen aus der Softwarebranche und darüber hinaus.

 

Bild: KI-generiert mit Midjourney

Alles für deine IT-Karriere

Entdecke unser vielfältiges Angebot für deine persönliche und fachliche Weiterentwicklung in der IT. Fachtrainings, E-Learningkurse oder Coachings zu den wichtigsten IT-Themen und Trends in der Golem Karrierewelt.

Jetzt entdecken!

IT-Weiterbildungen für Unternehmen

Seit Jahren unterstützen wir erfolgreich kleine, mittlere und große Unternehmen bei der Konzeption und Umsetzung von Weiterbildungen für IT-Professionelle. Jetzt über die Angebote für Unternehmen informieren.

Weitere Informationen

IT-Karrieretipps und Services

Ob Jobsuche, Sprachen lernen, IT-Fernstudium oder Gehaltsvergleich: Bei uns findest du alles für deine IT-Karriere. Erkunde unseren Karriere-Ratgeber oder nutze das Karriere-Lexikon zu allen relevanten Themen und Begriffen.

Zum IT-Karriere-Ratgeber