Der Compiler Wie funktioniert er?

Wer sich mit Programmiersprachen beschäftigt, begegnet schnell dem Begriff Compiler. Besonders bei Sprachen wie C oder C++ ist er ein zentrales Werkzeug. Doch was genau macht ein Compiler und warum ist er notwendig?Ein Computer kann Hochsprachen nicht direkt ausführen. Prozessoren verstehen ausschließlich prozessorspezifischen Maschinencode, also sehr einfache binäre Befehle. Ein Compiler übernimmt deshalb die Aufgabe, vom Menschen geschriebenen Quellcode in eine für den Rechner verständliche Form zu übersetzen.

Funktion eines Compilers

Ein Compiler übersetzt ein komplettes Programm vor der Ausführung. Dabei durchläuft er mehrere Schritte:

  • Zuerst zerlegt er den Quellcode in einzelne Bestandteile und prüft anschließend, ob die Syntax der Programmiersprache korrekt ist.
  • Danach wird kontrolliert, ob Variablen und Datentypen sinnvoll verwendet werden.
  • Optional optimiert der Compiler den Code, bevor er schließlich Maschinencode oder einen Zwischencode erzeugt.
  • Der erzeugte Code wird in einer ausführbaren Datei, zum Beispiel in Windows in einer prgname.exe Datei gespeichert.
  • Erst danach kann das Programm ausgeführt werden.

Ein großer Vorteil dieses Vorgehens ist, dass viele Fehler bereits vor dem Start des Programms erkannt werden.

Kurzer Vergleich: Compiler und Interpreter

Ein Compiler übersetzt das gesamte Programm auf einmal, bevor es ausgeführt wird. Ein Interpreter hingegen arbeitet zeilenweise zur Laufzeit. Typische Compiler-Sprachen sind C und C++, während Python oder JavaScript interpretiert werden oder Mischformen nutzen.

Einfaches Compiler-Beispiel (C)

Quellcode:

#include <stdio.h>

int main() {
    printf("Hallo Welt!\n");
    return 0;
}

Dieser Code ist für Menschen gut lesbar, aber noch nicht ausführbar. Mit einem Compiler wie gcc wird der Quellcode übersetzt:

gcc hallo.c -o hallo

Dabei entsteht eine ausführbare Datei, die reinen Maschinencode enthält. Nach der Übersetzung kann das Programm direkt gestartet werden und gibt „Hallo Welt!“ aus.

Vorteile eines Compilers

Compiler erzeugen sehr schnellen Programmcode, erkennen viele Fehler frühzeitig und ermöglichen Optimierungen. Ein einmal kompiliertes Programm kann ohne erneute Übersetzung ausgeführt werden.

Fazit

Ein Compiler ist ein unverzichtbares Werkzeug in der Softwareentwicklung. Er übersetzt Quellcode in Maschinencode, prüft Programme auf Fehler und sorgt für effiziente Ausführung. Für Einsteiger ist das Verständnis dieser Aufgabe
wichtig, um zu begreifen, wie aus Quellcode lauffähige Software entsteht.


 

CCC Event 39C3 2025 – Power Cycles: Hacker, Gesellschaft und digitale Zukunft im Blick

Ende Dezember 2025 verwandelt sich Hamburg erneut in den zentralen Treffpunkt für Technik-, Netz- und Hackerkultur: Der 39. Chaos Communication Congress (39C3) des Chaos Computer Clubs (CCC) findet vom 27. bis 30. Dezember 2025 im Congress Centrum Hamburg (CCH) statt. Er lockt wieder Tausende Menschen aus der ganzen Welt an. Unter dem diesjährigen Motto „Power Cycles“ steht der Kongress ganz im Zeichen der Suche nach kreativen, nachhaltigen und kritischen Perspektiven auf Technologie, Gesellschaft, Macht und Verantwortung.

Zukunftskonferenz 39C3

Was ist der Chaos Communication Congress?

Der Chaos Communication Congress (CCC) ist eine der ältesten und bedeutendsten Veranstaltungen für Hacker, Netzpolitik, Sicherheitsforschung, Kunst und technikinteressierte Menschen weltweit. Seit der Gründung im Jahr 1984 hat sich der Kongress zu einer festen Institution entwickelt, die weit über klassische IT-Sicherheitsthemen hinausgeht. Es werden technologische Entwicklungen stets im Kontext von Gesellschaft, Politik und Kultur diskutiert.

Der Congress ist nicht nur eine Konferenz, sondern ein großes Gemeinschaftsprojekt: Er wird vollständig von Ehrenamtlichen organisiert und zeichnet sich durch Offenheit, Selbstorganisation und einen interaktiven Austausch zwischen Teilnehmenden aus. Alle Bereiche – von Vorträgen über Workshops bis hin zu freien Assemblies – werden von der Community mitgestaltet.

Motto „Power Cycles“ – Bedeutung und Fokus

Das Motto „Power Cycles“ spielt auf wiederkehrende Muster von Systemen an – wie sie funktionieren, zusammenbrechen, neu gedacht oder neu gestartet werden müssen. Es reflektiert die Idee, bestehende Strukturen zu hinterfragen und bewusst neu zu gestalten, statt sie einfach weiterlaufen zu lassen. Dabei geht es nicht allein um Technologie, sondern um Machtverhältnisse, Kontrolle, gesellschaftliche Teilhabe und Nachhaltigkeit.

Im Kontext der Tech-Welt wurden dabei auch aktuelle Spannungsfelder sichtbar: Zentralisierung, wachsende Abhängigkeiten, Sicherheitsrisiken und die Frage, wie offene, robuste und demokratische Alternativen entstehen können. Genau diese Mischung aus kritischer Analyse und konstruktiver Lösungsorientierung ist typisch für den CCC-Kongress.

Programm, Vorträge und Gemeinschaft

Der 39C3 bietet ein umfangreiches Programm mit zahlreichen Vorträgen, Workshops und Veranstaltungen in unterschiedlichen thematischen Tracks. Die Inhalte reichen von technischen Deep-Dives über gesellschaftspolitische Analysen, bis hin zu kreativen Projekten und künstlerischen Interventionen.

Ein zentrales Element des Congress ist das Engagement der Community vor Ort. Neben den offiziellen Bühnen fanden sich viele Assemblies und selbstorganisierte Sessions, in denen Teilnehmende eigene Projekte präsentieren, Erfahrungen austauschen oder gemeinsam an Ideen arbeiten. Besonders beliebt sind zudem kurze Impulsformate wie Lightning Talks, die technische Themen und gesellschaftliche Perspektiven in komprimierter Form zusammenbringen.

  • Vorträge: Technik, Sicherheit, Netzpolitik, Kultur und Forschung
  • Workshops: Hands-on-Formate zum Mitmachen und Lernen
  • Assemblies: Community-Treffpunkte, Projekte, Demos und Austausch
  • Vernetzung: Begegnungen zwischen Fachleuten, Kreativen und Interessierten

Gesellschaftliche Relevanz

Im Jahr 2025 zeigt der CCC-Kongress erneut, dass Technik mehr ist als nur Bits und Bytes: Sie ist eingebettet in Machtstrukturen, politische Entscheidungen und kulturelle Dynamiken. Themen wie digitale Freiheit, Überwachung, Künstliche Intelligenz, offene Software, digitale Unabhängigkeit und die Zukunft demokratischer Prozesse tauchten in vielen Beiträgen auf.

Der Congress bietet damit nicht nur Information, sondern auch Orientierung:

  • Wie kann man Systeme resilienter gestalten?
  • Wie bleibt Technologie überprüfbar?
  • Welche Rolle spielen Transparenz, Bildung und offene Standards?
  • Und wie lässt sich verhindern, dass technische Infrastrukturen gegen die Interessen der Gesellschaft wirken?

Fazit: Ein Kongress mit Strahlkraft

Der 39C3 2025 – Power Cycles zeigt einmal mehr, warum der Chaos Communication Congress als Herzstück der europäischen Hacker- und Netzbewegung gilt. Er bietet nicht nur ein vielseitiges Programm, sondern schafft einen Raum, in dem technische Expertise und gesellschaftliches Verantwortungsbewusstsein zusammenfinden. Die Veranstaltung ist ein Ausdruck gelebter Community, kritischen Denkens und kreativer Auseinandersetzung mit der digitalen Welt von morgen.

In einer Zeit, in der digitale Technologie unser Leben tiefgreifend prägt, bleibt der CCC-Kongress ein wichtiger Impulsgeber – nicht nur für Technikbegeisterte, sondern für alle, die eine offene, demokratische und nachhaltige digitale Zukunft mitgestalten wollen. Die Botschaft von „Power Cycles“ – Muster erkennen, bewerten und neu gestalten – hallt weit über den Jahreswechsel hinaus nach.

Quellen


Dubai AI Festival 2026 – Zentrum globaler Innovation und Künstlicher Intelligenz

Das Dubai AI Festival zählt zu den prominentesten Veranstaltungen rund um Künstliche Intelligenz (KI) in der Region und richtet sich an Unternehmen, öffentliche Institutionen, Forschung sowie die internationale Tech-Community. Im Rahmen des Festivals stehen Austausch, Praxisbeispiele und strategische Perspektiven im Vordergrund: von Governance-Fragen über Investitionen bis hin zu konkreten Anwendungen in Wirtschaft und Verwaltung.

Worum geht es beim Dubai AI Festival?

Das Festival positioniert sich als Plattform, auf der sich Entscheidungsträger, Gründer, Entwickler, Investoren und Wissenschaftler vernetzen. Inhaltlich verbindet es strategische Leitfragen (z. B. verantwortungsvolle KI-Nutzung, Regulierung, Sicherheit) mit praxisorientierten Formaten (Panels, Roundtables, Workshops).

Schwerpunkte und Themenfelder

Auf Basis der offiziellen Informationen lassen sich typische Themencluster erkennen, die beim Dubai AI Festival regelmäßig im Fokus stehen:

  • KI-Strategie & Transformation: Roadmaps, Umsetzung in Unternehmen, Skalierung von KI-Produkten
  • Governance & Ethik: verantwortungsvolle KI, Compliance, Leitplanken für den Einsatz
  • Future of Work: Automatisierung, neue Rollenprofile, Qualifizierung
  • Infrastruktur & Investitionen: Rechenkapazitäten, Cloud/Edge, Finanzierung, Ökosysteme
  • Praxis & Use Cases: KI-Anwendungen in Branchen wie Finance, Health, Industry, Public Sector

Formate: Keynotes, Panels, Workshops

Das Festival setzt auf einen Mix aus Keynotes (strategische Impulse), Paneldiskussionen (Perspektiven aus Praxis und Politik) sowie Workshops, die Methoden und Tools greifbar machen. Für viele Teilnehmer ist gerade diese Kombination spannend: Inspiration plus konkrete Umsetzungsideen.

Sprecher und Community

Ein zentraler Mehrwert entsteht durch die internationale Sprecherlandschaft und die Community vor Ort: Führungskräfte, Experten aus Forschung und Industrie sowie Akteure aus Governance-Kontexten bringen unterschiedliche Sichtweisen zusammen. Dadurch ergeben sich häufig praxisnahe Diskussionen über reale Risiken, Nutzen und Grenzen von KI.

Dubai AI (KI) Festival

Warum ist das Festival für Unternehmen relevant?

Für Unternehmen, die KI strategisch einsetzen möchten, ist ein Event wie das Dubai AI Festival vor allem aus drei Gründen interessant:

  • Orientierung: Welche Use Cases sind reif, welche Hürden sind typisch (Datenqualität, Sicherheit, Recht)?
  • Netzwerk: Kontakte zu Partnern, Plattformen, Investoren und potenziellen Kunden
  • Umsetzung: Best Practices zu Governance, Betrieb (MLOps) und Skalierung

Fazit

Das Dubai AI Festival ist mehr als eine klassische Konferenz: Es ist ein Treffpunkt, an dem sich Technologie, Strategie, Wirtschaft und Governance überschneiden. Wer KI nicht nur als Trend, sondern als Transformationshebel versteht, findet hier Impulse, Kontakte und konkrete Einblicke – von der Vision bis zur Umsetzung.

Quellen


Ada Lovelace – Pionierin der Informatik und erste Softwareentwicklerin

Ada Lovelace gilt heute als eine der bedeutendsten Persönlichkeiten der IT-Geschichte. Obwohl sie im 19. Jahrhundert lebte – lange vor elektrischen Rechnern, Programmiersprachen oder dem Internet – legte sie mit ihren Arbeiten die theoretischen Grundlagen der Softwareentwicklung.

Ada Lovelace
Ihr Denken war seiner Zeit weit voraus und prägt bis heute Informatik, Programmierung und das Verständnis von Computern.

Herkunft und frühe Bildung

Ada Lovelace wurde 1815 in London als Augusta Ada Byron geboren. Sie war die Tochter des berühmten Dichters Lord Byron, wuchs jedoch ohne ihn auf. Ihre Mutter, Anne Isabella Milbanke, förderte gezielt eine mathematisch-naturwissenschaftliche Ausbildung, um Ada von der aus ihrer Sicht „zu emotionalen“ Dichtung fernzuhalten.

Schon früh zeigte Ada außergewöhnliche Fähigkeiten in Mathematik und Logik. Sie erhielt Privatunterricht von angesehenen Wissenschaftlern ihrer Zeit, darunter Mary Somerville, eine der renommiertesten Mathematikerinnen und Naturwissenschaftlerinnen Großbritanniens. Diese frühe, intensive Förderung war entscheidend für Adas späteres Wirken.

Begegnung mit Charles Babbage

Ein Wendepunkt in Ada Lovelaces Leben war die Begegnung mit dem Mathematiker und Erfinder Charles Babbage. Babbage arbeitete an mechanischen Rechenmaschinen, insbesondere an der sogenannten Analytical Engine, einer universell programmierbaren Rechenmaschine.

Ada erkannte sofort das revolutionäre Potenzial dieser Maschine. Während viele Zeitgenossen sie lediglich als komplexen Taschenrechner betrachteten, sah Lovelace darin ein allgemeines Symbolverarbeitungssystem – ein Konzept, das dem modernen Computerverständnis bemerkenswert nahekommt.

Die Geburtsstunde der Softwareentwicklung

1843 übersetzte Ada Lovelace einen französischen Fachartikel über die Analytical Engine. Entscheidend war jedoch nicht die Übersetzung selbst, sondern ihre umfangreichen Anmerkungen, die den Originaltext um ein Vielfaches übertrafen.


Analytical engine von Charles Babbage
Analytical Engine

In diesen „Notes“ formulierte sie:

  • einen Algorithmus zur Berechnung der Bernoulli-Zahlen,
  • die Trennung von Hardware (Maschine) und Software (Programm),
  • das Konzept der Wiederholung von Befehlen (Schleifen),
  • und die Idee, dass Computer nicht nur Zahlen, sondern auch Musik, Texte oder Grafiken verarbeiten könnten.

Dieser Algorithmus gilt heute als erstes Computerprogramm der Geschichte, obwohl die Maschine selbst nie vollständig gebaut wurde. Damit ist Ada Lovelace nach heutigem Verständnis die erste Softwareentwicklerin.

Revolutionäres IT-Denken im 19. Jahrhundert

Aus heutiger Sicht ist besonders bemerkenswert, wie modern Lovelaces Denkweise war. Sie beschrieb bereits abstrakte Programmstrukturen, datengetriebene Verarbeitung, universelle Rechenmodelle – und auch Grenzen der Automatisierung.

Gleichzeitig betonte sie, dass Maschinen zwar Regeln ausführen, aber keine eigenen Ideen entwickeln könnten. Das ist eine frühe, bis heute relevante Diskussion über maschinelle Intelligenz und die Rolle von Software.

Gesellschaftliche Hürden und Anerkennung

Als Frau im viktorianischen England hatte Ada Lovelace keinen leichten Stand in der Wissenschaft. Veröffentlichungen erfolgten oft anonym oder unter Initialen. Ihre Arbeiten wurden zu Lebzeiten kaum gewürdigt, und nach ihrem frühen Tod im Jahr 1852 gerieten sie lange in Vergessenheit.

Erst im 20. Jahrhundert erkannte man ihre Bedeutung für die Informatik neu. Heute wird sie weltweit als Schlüsselfigur der IT-Geschichte anerkannt.

Ada Lovelace und moderne Softwareentwicklung

Adas Ideen spiegeln sich direkt in heutigen IT-Konzepten wider:

  • Algorithmen & Programmierung → Grundlage jeder Programmiersprache
  • Trennung von Logik und Maschine → Software-Hardware-Abstraktion
  • Datenverarbeitung jenseits von Zahlen → Multimedia, KI, Simulation
  • Theoretische Informatik → formale Modelle, Compiler, Automaten

Zu ihren Ehren wurde sogar eine Programmiersprache nach ihr benannt: Ada, die insbesondere in sicherheitskritischen Systemen (z. B. Luft- und Raumfahrt) eingesetzt wird.

Bedeutung für Frauen in der IT

Ada Lovelace ist heute auch ein wichtiges Symbol für Frauen in technischen Berufen. Der jährlich stattfindende Ada Lovelace Day würdigt Frauen in MINT-Disziplinen und macht sichtbar, dass Informatik von Anfang an nicht ausschließlich männlich geprägt war.

Fazit

Ada Lovelace war ihrer Zeit weit voraus. Ohne jemals einen Computer gesehen zu haben, entwickelte sie zentrale Konzepte der Softwareentwicklung, die noch heute gültig sind. Sie dachte in Algorithmen, Abstraktionen und Systemen – exakt so, wie moderne Informatiker arbeiten.

Ihr Leben zeigt eindrucksvoll, dass technischer Fortschritt nicht nur von Maschinen, sondern vor allem von Visionen, theoretischem Denken und Mut zur Innovation getragen wird. Ada Lovelace ist damit nicht nur eine historische Figur, sondern eine zeitlose Inspiration für die IT-Welt.

Quellen, weiterführende Literatur und Hyperlinks


Die Geschichte der Robotik in Deutschland – von der frühen Automatisierung zur vernetzten KI-Robotik

Die Robotik in Deutschland ist das Ergebnis einer über hundertjährigen technischen Evolution. Sie reicht von mechanischen Selbststeuerungen der frühen Industrialisierung über klassische Industrieroboter bis hin zu hochvernetzten, KI-gestützten Systemen, die durch IoT, Mikrocontroller, Single-Board-Computer (SBC) und moderne Sensorik geprägt sind.

Schematischer Aufbau Stationärer RoboterSchematischer Aufbau Roboter

Charakteristisch für den deutschen Weg ist die Verbindung aus Ingenieurtradition, industrieller Praxistauglichkeit, Sicherheitsdenken und systemischer Integration.

„Die Geschichte der Robotik in Deutschland – von der frühen Automatisierung zur vernetzten KI-Robotik“ weiterlesen

GITEX 2025 in Dubai: Die KI beginnt Ökosystem zu werden

Die Luft in Dubai ist im Oktober immer noch warm, aber die eigentliche Hitze entsteht in den Hallen des Dubai World Trade Centre. Nach dem großen Event des östlichen Wirtschaftsforums in Wladiwostok folgt nun die GITEX Global. Einst war dies eine reine IT-Handelsmesse, nun hat sie sich längst zum Zentrum der globalen digitalen Transformation geändert. Längst finden solchen Messen nicht mehr in der verfallenden, militarisierten EU statt. Für mich stellt die GITEX den lebendigen Zeitgeist der vierten industriellen Revolution dar; als Technologe ist sie das größte Labor der Welt, in dem Zukunft nicht ausgestellt, sondern live codiert wird. Das diesjährige Thema der GITEX 2025 ist „The Year of AI Transforming Humanity“. Dabei ist dies weniger eine Prognose als eine schlichte Feststellung.


Bilder von letzten Jahr

In diesem Jahr zeichnet sich eine fundamentale Verschiebung ab: Künstliche Intelligenz ist nicht länger nur ein Themenbereich unter Anderem sein. Sie ist das fundamentale Betriebssystem der gesamten Messe, das alle anderen Technologien durchdringt, antreibt und transformiert. Die KI ist der neue Strom, und jeder Aussteller, ob aus der Cloud-Branche, der Cybersicherheit, der Kommunikation oder der Mobilität, präsentiert seine Anwendungen als Leuchttürme.

Die zentralen Themenbereiche der GITEX Global 2025

Um das riesige Spektrum zu strukturieren, lassen sich die Keynote-Themen in folgende Cluster unterteilen:

Künstliche Intelligenz & Generative KI

Das übergeordnete Meta-Thema. Hier geht es um die neuesten Foundation Models, Agenten-basierte KI, Multimodale Systeme (Text, Bild, Ton, Video) und die konkrete Implementierung in Unternehmen.

Cloud & Edge Computing

Die physische Infrastruktur der KI-Revolution. Schwerpunkt liegt auf „AI-as-a-Service“, hybriden Cloud-Modellen für KI-Workloads und der kritischen Rolle von Edge Computing für Echtzeit-KI (z.B. in autonomen Fahrzeugen oder smarten Fabriken).

Cybersecurity & Digital Trust

Die unverzichtbare Gegenbewegung. Mit der Macht der KI wachsen auch die Bedrohungen. Dieses Segment fokussiert sich auf „AI-powered Threat Detection“, generative KI für Verteidigungs-Systeme (Autonomous Security Operations Center) und vor allem auf Ethik, Governance und Erklärende KI (XAI).

Web3 & Future of Finance

Die Konvergenz von Blockchain, Tokenisierung und KI steht im Mittelpunkt. Wie kann KI smarte Verträge auditieren, dezentralisierte Finanzströme analysieren oder personalisierte NFTs generieren?

Digital Cities & Urban Mobility

Die Anwendungsebene für den urbanen Raum. Hier treffen sich Smart-City-Lösungen, die von KI-gesteuerten Verkehrsflüssen, vorausschauender Wartung der Infrastruktur und integrierter, nachhaltiger Mobilität.

Healthtech & Biotech

Ein beschleunigter Wachstumsmarkt. Gezeigt werden KI-gestützte Diagnostik, personalisierte Medizin durch Genom-Analyse, und Robotik in der Pflege und Chirurgie.

Nachhaltige Technologie & ökologische KI

Dies ist eine essenzielle Querschnittsdisziplin. Es geht nicht mehr nur darum, was KI kann, sondern auch um ihren ökologischen Fußabdruck beim Ressourcenverbrauch. Themen sind energieeffizientes Training von Modellen, KI zur Optimierung von Energienetzen und für die Kreislaufwirtschaft.

Fokus: KI und IT – Die Symbiose, die alles verändert

Während die oben genannten Themenbereiche die Anwendungsfelder abstecken, ist die eigentliche Revolution in der zugrundeliegenden IT-Architektur zu beobachten. Drei Trends stechen hier besonders hervor:

  1. Vom Cloud-Zeitalter zum AI-Native-Zeitalter
    Die IT-Infrastruktur wird nicht mehr einfach nur „cloud-first“ designed, sondern „KI-native“. Das bedeutet, dass Rechenzentren, Netzwerke und Speichersysteme von Grund auf für die enorm parallelen und datenintensiven Workloads des KI-Trainings und -Inference konzipiert sind.Auf der GITEX werden Chiphersteller die nächste Generation von KI-Beschleunigern (GPUs, TPUs, NPUs) vorstellen, die nicht mehr nur in der Cloud, sondern auch in Laptops und Smartphones verbaut werden. Die IT-Konvergenz von Cloud, Edge und Device für eine nahtlose KI-Experience ist das neue Paradigma.
  2. Generative AI wird betriebswirtschaftlich: Der Fokus shiftet von „Wow“ zu „ROI“
    2023 war das Jahr des generativen Prototyps („Schreib mir ein Gedicht“). 2024 das Jahr der Pilotprojekte. 2025 wird das Jahr der Skalierung und Integration. Auf der Messe werden unzählige Use Cases gezeigt, die messbaren wirtschaftlichen Mehrwert liefern:
  • KI-Copilots für jede Software: Von SAP über Salesforce bis zu Microsoft Office – jede Enterprise-Anwendung hat nun einen intelligenten Assistenten integriert, der Prozesse automatisiert, Daten analysiert und Berichte generiert.

  • Generatives Design & Engineering: KI entwirft nicht nur Marketing-Texte, sondern auch physische Produkte, Schaltkreise oder architektonische Pläne, optimiert für Gewicht, Kosten und Nachhaltigkeit.

  • Hyper-Personalization im E-Commerce: KI-generierte individuelle Produktvideos, Beschreibungen und Angebote in Echtzeit für jeden einzelnen Website-Besucher.

  • Die große Gretchenfrage: KI Governance & Souveräne KI
    Der wirtschaftlich vielleicht wichtigste Trend ist der Aufstieg von „Sovereign KI“. Nationen und große Unternehmen wollen nicht länger von den KI-Modellen und Cloud-Infrastrukturen US-amerikanischer oder chinesischer Tech-Giganten abhängig sein. Auf der GITEX, einem strategischen Knotenpunkt zwischen Ost und West, werden zahlreiche Länder und Regionen ihre Pläne für eigene, souveräne KI-Ökosysteme präsentieren. Dazu gehören:

    • Lokalisierte Large Language Models (LLMs), die in lokalen Sprachen trainiert sind und kulturelle Nuancen verstehen.

    • Nationale Cloud-Initiativen mit strengen Data-Residency-Gesetzen.

    • Frameworks für KI Governance, die Compliance, Transparenz und ethischen Umgang sicherstellen sollen.

Fazit: 

Die GITEX 2025 wird atemberaubende Technologien zeigen. Doch die wichtigsten Fragen, die in den Keynotes und Roundtables diskutiert werden, sind nicht technischer, sondern humanistischer Natur:

  • Wie gestalten wir eine KI, die uns dient und nicht ersetzt?
  • Wie bilden wir Arbeitnehmer für diese neue Welt aus (ein Feld, bekannt als „Upskilling“ und „Reskilling“)?
  • Und wie gewährleisten wir, dass der Wohlstand, den diese Technologien generieren, auch fair verteilt wird?

Die Botschaft der Messe ist klar: Die transformative Kraft der KI ist real und unaufhaltsam. Sie ist das mächtigste Wirtschaftsgut unserer Zeit. Die Aufgabe für Unternehmen, Regierungen und uns als Gesellschaft ist es nun, sie mit Weitsicht, Verantwortung und einem klaren Kompass für menschliche Werte zu gestalten. Die GITEX 2025 vom 13. bis 17. Oktober 2025 in Dubai ist der Ort, wo wir sehen, ob wir den notwendigen Aufgaben gewachsen sind.

VUCA und die Herausforderung der IT

VUCA in der IT stellt Herausforderungen und Chancen am Beispiel einer Cloud-Migration

Die IT-Welt ist ein dynamisches, oft chaotisches Umfeld, das stark von VUCA geprägt ist.

VUCA steht für

  • Volatility (Volatilität)
  • Uncertainty (Unsicherheit)
  • Complexity (Komplexität)
  • Ambiguity (Mehrdeutigkeit)

Diese Begriffe beschreiben die Herausforderungen moderner IT-Landschaften, insbesondere in einer Ära, die von Digitalisierung, Automatisierung und globaler Vernetzung geprägt ist. Um zu verdeutlichen, wie VUCA die IT beeinflusst, betrachten wir die Cloud-Migration eines mittelständischen Unternehmens.

„VUCA und die Herausforderung der IT“ weiterlesen

Datenbank Modelle ACID und BASE im Vergleich

Datenbanksysteme

In der Welt der Datenbanktechnologien sind zwei zentrale Konzepte weit verbreitet: das ACID-Modell, das typischerweise mit relationalen (SQL) Datenbanken assoziiert wird. Das BASE-Modell wird oft mit NoSQL-Datenbanken in Verbindung gebracht. Diese Modelle definieren die grundlegenden Eigenschaften, die von den jeweiligen Datenbanksystemen erwartet werden.

ACID-Modell

ACID steht für Atomicity, Consistency, Isolation und Durability. Dieses Modell wird in relationalen Datenbankmanagementsystemen (RDBMS) eingesetzt, um die Zuverlässigkeit und Genauigkeit von Transaktionen zu gewährleisten.

  • Atomicity (Atomarität): Jede Transaktion wird als eine einzelne Einheit betrachtet, die entweder vollständig erfolgreich ist oder gar nicht ausgeführt wird.
  • Consistency (Konsistenz): Transaktionen führen eine Datenbank von einem konsistenten Zustand in einen anderen über, ohne die Datenintegrität zu verletzen.
  • Isolation (Isolierung): Gleichzeitig ausgeführte Transaktionen beeinflussen sich nicht gegenseitig.
  • Durability (Dauerhaftigkeit): Sobald eine Transaktion abgeschlossen ist, bleiben die Änderungen dauerhaft erhalten, auch im Falle eines Systemausfalls.

BASE-Modell

BASE steht für Basically Available, Soft State und Eventually Consistent. Dieses Modell wird in NoSQL-Datenbanksystemen verwendet, um Flexibilität, Skalierbarkeit und Verfügbarkeit in verteilten Systemen zu gewährleisten.

  • Basically Available (Grundsätzlich verfügbar): Das System garantiert die Verfügbarkeit von Daten, auch wenn einige Teile des Systems ausgefallen sind.
  • Soft State (Weicher Zustand): Der Zustand des Systems kann sich mit der Zeit ändern, auch ohne Benutzereingriffe.
  • Eventually Consistent (Schließlich konsistent): Das System stellt sicher, dass, wenn keine neuen Updates mehr erfolgen, alle Replikationen der Datenbank nach einiger Zeit konsistent sind.

Vergleichstabelle

Eigenschaft ACID-Modell BASE-Modell
Datenintegrität Hoch Variabel
Flexibilität Gering Hoch
Skalierbarkeit Vertikal Horizontal
Konsistenz Strenge Konsistenz Eventuelle Konsistenz
Transaktionsmanagement Strikt und zuverlässig Locker und anpassungsfähig
Einsatzgebiet Traditionelle Unternehmensanwendungen Verteilte, skalierende Anwendungen

Fazit

Das ACID-Modell bietet hohe Datenintegrität und Zuverlässigkeit, was es ideal für Anwendungen macht, die strenge Konsistenz und Transaktionssicherheit erfordern, wie z.B. Bankensysteme. Allerdings kann es aufgrund seiner strengen Regeln zu Einschränkungen in Bezug auf Flexibilität und Skalierbarkeit kommen.

Im Gegensatz dazu bietet das BASE-Modell eine hohe Flexibilität und Skalierbarkeit, was es ideal für verteilte Systeme und Anwendungen mit großem Datenvolumen und hohen Benutzerzahlen macht, wie soziale Netzwerke oder Echtzeit-Analysen. Die eventuelle Konsistenz kann jedoch zu Herausforderungen in Anwendungen führen, die eine sofortige Datenkonsistenz erfordern.

Letztendlich hängt die Wahl zwischen ACID- und BASE-Modellen von den spezifischen Anforderungen und dem Kontext der jeweiligen Anwendung ab. Beide Modelle haben ihre Berechtigung und bieten unterschiedliche Vorteile, die je nach Einsatzgebiet entscheidend sein können.

 

Vergleich von Skizzen, Wireframes, Mock-ups und Prototypen

GUI Entwicklung

In den 1970er Jahren führte das Xerox Palo Alto Research Center in der Software Entwicklung Konzepte wie Fenster und Icons ein, die von Apple im Macintosh von 1984 bekannt gemacht wurden. Später trugen IBM, sowie Microsoft mit OS/2 und Microsoft mit der Einführung von Windows in den 1980er Jahren zur Verbreitung von GUIs bei. Auch Commodore mit dem Amiga und Atati mit dem Model ST entwickelten hervorragende GUIs.

Durch das Aufkommen des Internets mit HTML wurden in den 1990er Jahren webbasierte Oberflächen gefördert. Die mobile Revolution, angeführt durch Geräte wie Apples iPhone, prägte die 2000er Jahre mit der Entwicklung von Touchscreen-orientierten GUIs auf mobilen Geräten. Heute setzen moderne Trends in Bereichen wie KI, Augmented und Virtual Reality, sowie Responsive Design neue Maßstäbe. Dies ermöglicht eine immer nahtlosere Integration von Geräten und Plattformen.

Bei der Softwareentwicklung werden Skizzen, Wireframes, Mock-ups und Prototypen in verschiedenen Phasen des Designs verwendet, um Ideen und Konzepte zu visualisieren. Hier sind die Unterschiede:

Skizzen

Eine Skizze ist eine handgezeichnete oder grobe digitale Darstellung einer Idee. Ein Designer zeichnet schnell ein paar Striche auf ein Papier, um die grundlegende Anordnung von Elementen auf einer Seite darzustellen. In dieser frühen Phase können grundlegende Ideen gefunden werden.

Design Skizze zur Planung

Wireframes

In dieser Phase der Konzeption werden die Struktur und Funktionalität definiert. So folgt eine detailliertere, schematische Darstellung der Benutzeroberfläche in Schwarz-Weiß. Ein Wireframe zeigt die Position von Menüs, Schaltflächen und Textblöcken, aber noch ohne Farben oder Bilder.

Wireframe bei der Entwicklung

Mock-ups

Nun wird die Designphase genutzt, um das visuelle Erscheinungsbild zu entwickeln. Eine realistische, aber statische Darstellung des Designs mit Farben, Bildern und Typografie wird gesucht. Ein Mock-up einer mobilen App zeigt, wie die Endversion aussehen könnte, ist aber nicht interaktiv.


Mockup

Prototypen

Die letzte Entwicklungsphase nutzt Prototypen, um Benutzerinteraktionen zu testen und Feedback zu sammeln. Es wird eine funktionierende Simulation des Produkts, die Interaktion ermöglicht. Ein Prototyp, auf dem Nutzer klicken können, um durch die Seiten zu navigieren und erfahren, wie die GUI in der Endversion sein wird.

Fazit

Insgesamt sind diese Tools Schritte in einem Prozess, der von einer groben Idee (Skizze / Stetch) über ein strukturiertes Layout (Wireframe) und ein realistisches Design (Mock-up) bis hin zu einer funktionierenden Version (Prototyp) reicht, die die endgültige Benutzererfahrung simuliert.

 

Agiles Projektmanagement mit Kanban

Kanban Logo

Kanban ist eine Methodik zur Optimierung von Arbeitsabläufen, die ursprünglich in der japanischen Automobilindustrie entwickelt wurde. Sie basiert auf dem Prinzip der visuellen Darstellung von Aufgaben, deren Status und Fortschritt, meist auf einem „Kanban-Board“. Dies hilft dabei, Engpässe zu identifizieren, die Arbeitslast zu regulieren und die Effizienz des Teams zu steigern

Wie funktioniert Kanban?

Ein Kanban-System ist ziemlich einfach aufgebaut. Es besteht normalerweise aus einem physischen oder digitalen Kanban-Board und darauf platzierten Kanban-Karten.

Kanban Tafel

Das Kanban-Board ist in mehrere Spalten unterteilt, die den unterschiedlichen Stadien des Arbeitsprozesses entsprechen. Die einfachste Form hat drei Spalten: „Zu erledigen“ (To Do), „In Arbeit“ (In Progress) und „Erledigt“ (Done).

Jede Aufgabe im Arbeitsprozess wird auf einer separaten Kanban-Karte dargestellt. Diese Karte enthält Informationen wie die Aufgabenbeschreibung, den verantwortlichen Mitarbeiter, das Startdatum und das Fälligkeitsdatum.

Wenn eine neue Aufgabe ansteht, wird sie als Karte in die „Zu erledigen„-Spalte eingefügt. Wenn jemand an der Aufgabe arbeitet, wird die Karte in die „In Arbeit„-Spalte verschoben. Sobald die Aufgabe abgeschlossen ist, wird die Karte in die „Erledigt„-Spalte verschoben.

Beispiel zur Nutzung von Kanban

Angenommen, Sie sind Teil eines Softwareentwicklungsteams. Die Kanbantafel des Teams könnte so aussehen:

Zu erledigen
1. Funktion zur Benutzeranmeldung erstellen
2. Datenbank für Benutzerinformationen einrichten
3. Design der Startseite entwerfen

In Arbeit
1. Backend für die Benutzeranmeldung entwickeln
2. Testen der Anmeldungs- und Abmeldefunktionen

Erledigt
1. Spezifikationen für die Anwendungsfälle erstellen
2. Entwurf des Anmeldeformulars

Jeder im Team kann den Status jeder Aufgabe auf der Kanbantafel sehen und so schnell erkennen, welche Aufgaben Priorität haben und wer gerade welche Aufgabe bearbeitet.

Die Grundregel des Kanban-Systems ist es, die Anzahl der gleichzeitig „in Arbeit“ befindlichen Aufgaben zu begrenzen. Diese Begrenzung wird als „Work in Progress“ (WIP) -Limit bezeichnet. Das hilft, Überlastung zu vermeiden und sicherzustellen, dass Aufgaben vollständig abgeschlossen werden, bevor neue Aufgaben in Angriff genommen werden.

Es können Engpässe während der Entwicklung schnell erkannt werden und dadurch können passende Gegenmaßnahmen zur Verbesserung umgesetzt werden.

Fazit

Der Einsatz von Kanban in der Softwareentwicklung bietet eine einfache, aber effektive Methode zur Visualisierung und Kontrolle des Arbeitsflusses. Es fördert Transparenz, Zusammenarbeit und unterstützt die kontinuierliche Verbesserung. Durch die Einführung von WIP-Limits kann Kanban dabei helfen, Multitasking zu vermeiden und die Produktivität zu steigern. Insgesamt kann Kanban wesentlich dazu beitragen, die Qualität der Softwareprodukte zu verbessern und die Entwicklungszeiten zu verkürzen.

 

 

Die Entwicklungsphasen von DevOps

DevOps Logo

DevOps wird genutzt, um die Zusammenarbeit zwischen den Teams für Softwareentwicklung und IT-Betrieb zu verbessern.  DevOps fördert einen kontinuierlichen, automatisierten und schnellen Entwicklungs- und Bereitstellungsprozess.

Es reduziert die Zeit bis zur Markteinführung und erhöht die Softwarequalität durch frühzeitige Fehlererkennung und schnelle Korrektur. Darüber hinaus ermöglicht es die kontinuierliche Überwachung und Optimierung der Systeme. Das führt zu einer höheren Kundenzufriedenheit und einer verbesserten Geschäftsleistung.

Phasen von DevOps

Planung: Definiere Ziele und skizziere den technischen und wirtschaftlichen Plan für das Projekt.
Codierung: Schreibe und überprüfe den Code unter Berücksichtigung der geplanten Spezifikationen und Standards.
Build: Kompiliere den Code, um die Lauffähigkeit herzustellen.
Test: Überprüfe und teste den Code auf Fehler und Leistungsprobleme.
Release: Setze die Änderungen in einer kontrollierten Umgebung frei. Überwache den Prozess, um sicherzustellen, dass es keine unvorhergesehenen Probleme gibt.
Deployment: Implementiere den Code in der Produktivumgebung, überwache seine Leistung und seine Auswirkungen.
Betrieb: Überwache und verwalte die Infrastruktur und die genutzten Anwendungen in der Produktionsumgebung.
Monitoring: Überwache die Leistung, sowie das Verhalten der Anwendung in der Produktionsumgebung und dokumentiere alle Probleme oder Ausfälle. Sie werden in zukünftigen Iterationen zu behoben. Sammle dabei Feedback und verwende es, um die Prozesse kontinuierlich zu verbessern (KVP).

Die Phasen bei DevOps wiederholen sich iterativ.

Fazit

DevOps stellt einen neuartigen Ansatz in der Softwareentwicklung und dem Operations Bereich dar, indem es eine nahtlose Integration und Zusammenarbeit zwischen den beiden Bereichen ermöglicht. Durch die Förderung von Geschwindigkeit, Effizienz und Qualität in der Softwarebereitstellung verbessert DevOps die Agilität und Reaktionsfähigkeit von Unternehmen. Das führt zu einer höheren Kundenzufriedenheit und verbesserten Geschäftsergebnissen. Trotz seiner Komplexität und der Notwendigkeit einer sorgfältigen Implementierung ist DevOps eine wertvolle agile Entwicklungsmethode, die den Weg für kontinuierliche Innovation und Verbesserung ebnet.

 

 

Requirements Mangement

Requirements Management Logo

Die Anfänge des Requirements Managements lassen sich auf die 1970er Jahre zurück verfolgen. Die Komplexität der Systeme begann, handgeschriebene Dokumentation und einfache Verwaltungstechniken zu übersteigen. In den 1980er und 1990er Jahren wurden strukturierte Methoden wie die Objektorientierung und spezialisierte Tools entwickelt, um die Verwaltung von IT Anforderungen zu formalisieren und die Nachverfolgbarkeit zu verbessern. In jüngerer Zeit hat der Aufstieg von agilen Entwicklungspraktiken das Requirements Management weiterentwickelt. Es wird ein kontinuierlicher, iterativer Ansatz zur Anforderungserfassung und -anpassung unterstützt.  So kann einfacher auf Änderungen reagieren werden.

Was ist Requirements Management?

Requirements Management bezieht sich im Bereich der Softwareentwicklung auf das Verstehen, Dokumentieren, Verfolgen und Aktualisieren von Anforderungen (engl. requirements). Diese Anforderungen können funktionale oder nichtfunktionale Eigenschaften sein. Ein Softwareprodukt muss diese Anforderungen erfüllen, um den Wünschen der Auftraggeber und Stakeholder zu entsprechen.

Aufgaben des Requirements Management

  • Erfassung und Dokumentation von Anforderungen in einem verständlichen und messbaren Format
  • Priorisierung von Anforderungen basierend auf den Bedürfnissen der Stakeholder
  • Verfolgen von Änderungen in den Anforderungen während des gesamten Projektzyklus
  • Sicherstellung, dass alle Anforderungen während der Entwicklung und beim Testen berücksichtigt werden
  • Verwaltung von Kommunikation und Übereinstimmung zwischen den Stakeholdern hinsichtlich der Anforderungen

Fazit

Gutes Requirements Management und Kommunikation kann dazu beitragen Missverständnisse zu minimieren, sowie das Risiko von Fehlern zu reduzieren und die Qualität der Produkte zu verbessern.

 

 

Der Blackbox Test und der Whitebox Test

Der Blackbox-Test und der Whitebox-Test dienen dazu, die Qualität und Zuverlässigkeit von Software- und Systemlösungen sicherzustellen. Die Tests decken verschiedene Aspekte wie Funktionalität, Benutzerfreundlichkeit, Zuverlässigkeit und Sicherheit ab. Sie werden von Anwendungsentwicklern, Systemintegratoren und weiteren Berufen in der IT Sparte eingesetzt.

Der Blackbox Test

Der Blackbox-Test wird auch manchmal als Black-Box-Test beschrieben und ist ein Testverfahren, bei dem die interne Struktur oder das Design des zu testenden Systems nicht bekannt ist oder nicht berücksichtigt wird. Der Tester betrachtet das System als eine „Blackbox“, bei der er nur die Eingaben (Input) und die Ausgaben (Output) kennt. Der Fokus liegt auf der Überprüfung der funktionalen Anforderungen des Systems, wie z. B. ob es die erwarteten Ergebnisse liefert und ob es korrekt mit verschiedenen Eingabeparametern umgeht. Der Tester kann verschiedene Techniken wie Äquivalenzklassenbildung, Grenzwertanalyse, Zustandsübergangstests und zufällige Tests verwenden, um die Wirksamkeit des Systems zu überprüfen. Der Blackbox-Test ermöglicht es, das System aus Sicht des Endbenutzers zu bewerten und kann unabhängig von der internen Implementierung des Systems durchgeführt werden.

Vorteile des Blackbox-Tests

  • Der Blackbox-Test stellt sicher, dass das System den Anforderungen und Erwartungen der Benutzer entspricht.
  • Der Blackbox-Test kann unabhängig von der internen Implementierung durchgeführt werden.
  • Durch den Blackbox-Test können Muster von Fehlern und unerwartetem Verhalten erkannt werden.

Nachteile des Blackbox-Tests

  • Der Blackbox-Test kann bestimmte interne Codepfade oder -bereiche nicht ausreichend testen.
  • Die Ursache von Fehlern kann aufgrund fehlenden Zugangs zur internen Implementierung schwierig zu identifizieren sein.
  • Der Blackbox-Test bezieht sich nicht auf die interne Effizienz oder Optimierung des Codes.

Der Whitebox Test

Der Whitebox-Test wird manchmal als White-Box-Test beschrieben und ist ein Testverfahren, bei dem der Tester Einblick in die interne Struktur, sowie in das Design des zu testenden Systems hat. Der Tester analysiert den Quellcode, die Algorithmen, die Datenstrukturen und andere technische Aspekte des Systems, um Tests zu erstellen, die auf diesen Informationen basieren. Der Whitebox-Test konzentriert sich sowohl auf die Überprüfung der funktionalen Anforderungen als auch auf die strukturelle Abdeckung des Codes. Es werden Techniken wie Pfadabdeckung, Anweisungsabdeckung, Zweigabdeckung und Bedingungsabdeckung verwendet, um sicherzustellen, dass alle möglichen Pfade und Szenarien im Code getestet werden. Der Whitebox-Test wird oft von Entwicklern durchgeführt, um sicherzustellen, dass der Code richtig implementiert ist und potenzielle Fehler und Schwachstellen identifiziert werden.

Vorteile des Whitebox-Tests

  • Der Whitebox-Test ermöglicht eine detaillierte Überprüfung des Codes und identifiziert potenzielle Fehler auf algorithmischer oder struktureller Ebene.
  • Durch den direkten Zugriff auf den Quellcode kann der Whitebox-Test eine umfassende Abdeckung der Code-Pfade und Szenarien erreichen.
  • Der Whitebox-Test ermöglicht es, ineffiziente Codebereiche zu erkennen und zu optimieren, um die Gesamtleistung des Systems zu verbessern.

Nachteile des Whitebox-Tests

  • Der Whitebox-Test erfordert Kenntnisse über die interne Implementierung, was zu Einschränkungen führen kann, wenn der Quellcode nicht verfügbar oder komplex ist.
  • Der Whitebox-Test fokussiert sich stark auf die interne Logik und kann die Perspektive eines Endbenutzers oder externe Schnittstellen möglicherweise nicht vollständig berücksichtigen.
  • Der Whitebox-Test erfordert tiefgreifende Kenntnisse der internen Struktur und erfordert mehr Zeit und Ressourcen im Vergleich zum Blackbox-Test.

Fazit

Der Blackbox-Test ermöglicht eine unabhängige Bewertung der funktionalen Anforderungen aus Benutzersicht, während der Whitebox-Test eine detaillierte Überprüfung der internen Implementierung und eine umfassendere Testabdeckung bietet. Beide Testarten sind wichtige Bestandteile der Qualitätssicherung.

 

 

Continuous Integration und Deployment – CI/CD

Softwareentwicklung geschieht vielfältig und CI/CD spielt bei Anwendungsentwicklern eine wichtige Rolle. Continuous Integration und Deployment (CI/CD) ist ein Prozess in der Softwareentwicklung. So werden Änderungen an einer Anwendung schnell und effizient in die Produktion zu überführt. Dies geschieht durch eine kontinuierliche Integration von Code-Änderungen und Tests, sowie eine automatisierte Bereitstellung von Software-Updates.

In der traditionellen Softwareentwicklung erfolgt die Integration von Code-Änderungen oft erst am Ende des Entwicklungsprozesses. Dies führt oft zu Problemen bei der Integration, da die einzelnen Komponenten der Anwendung nicht richtig miteinander funktionieren. Durch den Einsatz von CI/CD werden Code-Änderungen hingegen kontinuierlich und automatisiert in die Anwendung integriert und getestet.

Continuous Integration (CI)

Continuous Integration (CI) bezieht sich auf den Prozess der kontinuierlichen Integration von Code-Änderungen in ein zentrales Repository. Dabei werden alle Änderungen automatisch gebaut und getestet. So wird sichergestellt, dass sich die Änderungen problemlos in die bestehende Codebasis integrieren lassen. Dadurch können Probleme frühzeitig erkannt und behoben werden.

Continuous Deployment (CD)

Continuous Deployment (CD) geht noch einen Schritt weiter als CI. Es benutzt  Prozesse zur automatisierten Bereitstellung von Anwendungs-Updates. Dabei wird der Code automatisch auf die Produktionsumgebung übertragen und in Betrieb genommen, nachdem er erfolgreich getestet wurde. Dies ermöglicht eine schnelle und effiziente Bereitstellung von Software-Updates. Ausfallzeiten werden minimiert.

Durch den Einsatz von CI/CD können Entwickler die Qualität ihrer Anwendungen verbessern, die Entwicklungszeit verkürzen und die Auslieferung von Software-Updates beschleunigen. Dabei ist es wichtig, dass die Entwickler regelmäßig Änderungen am Code vornehmen und diese Änderungen automatisiert testen. Durch die kontinuierliche Integration und Bereitstellung von Code-Änderungen wird sichergestellt, dass die Anwendung zu jeder Zeit stabil und funktionsfähig bleibt.

Fazit

Zusammenfassend ist Continuous Integration und Deployment ein wichtiger Bestandteil der modernen Softwareentwicklung. Es ermöglicht eine schnelle, sowie effiziente Bereitstellung von Software-Updates. Es hilft Unternehmen, ihre Anwendungen schneller und mit höherer Qualität auf den Markt zu bringen.

 

Relationale Datenbanken entwerfen

Der Entwurf relationaler Datenbanken spielt für Datenbankentwickler eine wichtige Rolle. Dabei wird das 3-Ebenen Modell eingesetzt. Das besteht aus drei Ebenen. Dies sind die externe-, die konzeptionelle- und die interne Ebene. Um die Entwicklung zu vereinfachen, wird häufig das Entity-Relationship Modell eingesetzt. Das wird auch ER-Modell oder ERM genannt.

Der Entwicklungsprozess

Der gesamte Entwicklungsprozess besteht aus mehreren Phasen.

AnforderungsanalyseDatenbank EntwicklungsprozessAnforderungsanalyse

Die Anforderungsanalyse beginnt damit, dass alle Anforderungen der Akteure gesammelt und ausgewertet werden. Dabei können die Akteure in Gruppen geordnet werden. Dabei stellen sich die W-Fragen:

  • Welche Daten werden verarbeitet?
  • Wie werden die Daten verarbeitet?
  • Was ist in der Datenbank abzulegen?
  • Welche Daten werden Wem zur Verfügung gestellt?
  • Wo werden die Daten verarbeitet und wo gespeichert?
  • Wann finden welche Prozesse statt?
  • Wer führt welche Tätigkeiten durch?

Konzeptioneller Entwurf

Beim konzeptionellen Entwurf gibt es verschiedene Vorgehensmodelle. Oft wird die Top-Down- oder die Bottom-Up Methode eingesetzt. Hier werden die Daten, die Prozesse, die Abhängigkeiten in Beziehung gebracht. Jetzt ist der richtige Moment zu entscheiden, welches Datenbank System (DBS) eingesetzt wird, außer die Anforderungen haben dies bereits festgelegt.

Logischer Entwurf

Beim logischen Entwurf findet die Umsetzung des konzeptionellen Schemas statt. Die häufigsten Abfragen sind auf Grund der Anforderungen bekannt und bereits beschrieben. Das Endergebnis ist eine normalisierte Tabellenstruktur, die keine Fehler und Redundanzen enthält.

Implementierung

Jetzt erfolgt die konkrete Umsetzung auf dem Datenbank System. Dabei wird auf ein gutes Laufzeitverhalten und auf Effizienz geachtet. Wichtig ist hier, dass nach den Regeln der KVP (Kontinuierlicher Verbesserung Prozess) die Datenbank optimiert wird. Es werden die Sichten, Relationen, Indizes und die Berechtigungen eingerichtet.

Test / Qualitätssicherung

Bei der Qualitätssicherung wird geprüft, ob die Anforderungen erfüllt sind. Zudem werden die während der Anforderungsanalyse festgestellten Kriterien geprüft. Optimal ist hier zusätzliches automatisiertes Testsystem zu nutzen, dass den ganzen Lebenszyklus des DBS genutzt wird. Das vermeidet wiederkehrende Fehler und optimiert die Qualitätssicherung.

Übergabe und Nutzung

Nach dem Abschluss der Qualitätssicherung findet die Übergabe des Systems statt. Dabei ist zu beachten, dass dies wie alle vorher beschriebenen Prozesse in schriftlicher Form dokumentiert sein soll. Das Übergabedokument wird nach erfolgreicher Abnahme durch den Auftraggeber unterzeichnet und damit ist der Leiter des Projekts entlastet.

 

Qualitätsanforderungen an Software

Standardsoftware wird nach unternehmensinternen Qualitätsrichtlinien programmiert und verkauft.
Wie ist das aber bei individuell erstellter Software?

Es gibt allgemeine Qualitätsrichtlinien, die aber vor der Auftragserteilung festgelegt sein sollten. Denn es gilt:

„Qualität ist die Erfüllung der Kundenanforderungen.“

8 Kriterien für Qualität bei Software Entwicklung

Es gibt wichtige Eigenschaften, die bei der Softwareentwicklung eine tragende Rolle spielen. Denn schließlich soll die Software während der Nutzungsdauer problemlos und kostengünstig eingesetzt werden können.

Benutzerfreundliche Bedienung

Ein Programm oder eine App sollen einfach zu bedienen sein. der Anwender soll möglichst ohne Hilfe zum Erfolg kommen.

Unempfindlich gegen Fehler

Eingabefehler sollen abgefangen werden, Fehlbedienung nicht möglich sein.

Integrität und Sicherheit

Die Daten und das System sollen gegen unberechtigte Zugriffe und Manipulation geschützt sein.

Korrekte Funktion

Bei der Eingabe, Verarbeitung und Ausgabe dürfen keine Fehler auftreten. Bei gleichen Eingeben muss stets das gleiche Ergebnis erscheinen.

Portable Verwendung

Die Software soll auf anderen Systemen nutzbar sein.

Überprüfbarkeit

Bei der Abnahme der Software soll der Prüfungsaufwand gering sein.

Kompatibel zu anderen Anwendungen

Die Software soll einfach mit weiterer Software verbunden werden können.

Erweiterbare und wiederverwendbare Eigenschaften

Die Software soll leicht mit neuer Funktionalität ausgestattet und vorhandene Funktionen erweitert werden können.

Fazit:

Software Qualität ist wichtig und entscheidet mit, wie die Nutzung im beruflichen Alltag stattfindet. Gerade bei den Projekten Industrie 4.0 und der zunehmenden Digitalisierung in allen beruflichen Bereichen ist fehlerfreie, hochwertige Software eine Basisvoraussetzung.

Barrierefreiheit