<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Events Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/events/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/events/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Mon, 17 Apr 2023 21:51:31 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Events Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/events/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>Scrum &#8211; Kontinuierliche Verbesserung und Anpassungsfähigkeit</title>
		<link>https://ceosbay.com/2023/04/17/scrum-kontinuierliche-verbesserung-und-anpassungsfaehigkeit/</link>
					<comments>https://ceosbay.com/2023/04/17/scrum-kontinuierliche-verbesserung-und-anpassungsfaehigkeit/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Mon, 17 Apr 2023 21:51:23 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Bildung]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Adaption]]></category>
		<category><![CDATA[Agil]]></category>
		<category><![CDATA[Artefakte]]></category>
		<category><![CDATA[Entwickler]]></category>
		<category><![CDATA[Entwicklerteam]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Inspektion]]></category>
		<category><![CDATA[Kontinuierlich]]></category>
		<category><![CDATA[Kontinuierliche]]></category>
		<category><![CDATA[Kontinuität]]></category>
		<category><![CDATA[Owner]]></category>
		<category><![CDATA[Prinzipien]]></category>
		<category><![CDATA[Produktentwicklung]]></category>
		<category><![CDATA[Projektmanagement]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[Transparenz]]></category>
		<category><![CDATA[Verbesserung]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1763</guid>

					<description><![CDATA[<p>Scrum ist ein Rahmenwerk für agiles Projektmanagement und Produktentwicklung, aus den 90er Jahren von Ken Schwaber und Jeff Sutherland. Es bietet einen iterativen und inkrementellen Ansatz für die Planung und Steuerung von Projekten und ermöglicht &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/17/scrum-kontinuierliche-verbesserung-und-anpassungsfaehigkeit/">Scrum &#8211; Kontinuierliche Verbesserung und Anpassungsfähigkeit</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Scrum ist ein Rahmenwerk für agiles Projektmanagement und Produktentwicklung, aus den 90er Jahren von Ken Schwaber und Jeff Sutherland. Es bietet einen iterativen und inkrementellen Ansatz für die Planung und Steuerung von Projekten und ermöglicht es Teams, schnell auf Veränderungen zu reagieren und bessere Ergebnisse zu erzielen. In diesem Beitrag geht es um die Grundprinzipien von Scrum, die Rollen und Artefakte, die es umfasst, und wie es zur erfolgreichen Umsetzung von Projekten beitragen kann.</p>



<h3 class="wp-block-heading">Die Grundprinzipien von Scrum</h3>



<p>Scrum basiert auf drei grundlegenden Säulen: Transparenz, Inspektion und Adaption. Diese Säulen stellen sicher, dass alle Beteiligten über den Projektstatus informiert sind, kontinuierlich überprüfen, wie die Arbeit voranschreitet, und bei Bedarf Anpassungen vornehmen, um die Ziele zu erreichen.</p>



<p><strong>Transparenz</strong>: Alle Projektinformationen müssen für alle Teammitglieder sichtbar und zugänglich sein. Dazu gehören Fortschritt, Hindernisse und Änderungen am Projektplan.</p>



<p><strong>Inspektion</strong>: Das Team prüft regelmäßig die Fortschritte und identifiziert Probleme oder Verbesserungspotenziale. Dies geschieht durch verschiedene Meetings und Feedback-Loops.</p>



<p><strong>Adaption</strong>: Hat man Probleme identifiziert, müssen Maßnahmen folgen, um diese zu beheben und den Prozess zu verbessern. Die Umsetzung der Änderungen sollte schnell und effektiv erfolgen.</p>



<h3 class="wp-block-heading">Rollen in Scrum</h3>



<p><strong>Product Owne</strong>r: Der Product Owner ist für die Definition und Priorisierung der Anforderungen an das Produkt verantwortlich. Verantwortlich für den sogenannten &#8222;Product Backlog&#8220;, eine Liste von Aufgaben und Funktionen, deren Implementierung in das Produkt erforderlich ist.</p>



<p><strong>Scrum Master:</strong> Der Scrum Master ist ein Coach und Vermittler für das Team. Verantwortlich für die Einhaltung der Scrum-Prinzipien und -Praktiken. Hilft bei der Beseitigung von Hindernissen, die die Arbeit des Teams beeinträchtigen können.</p>



<p><strong>Entwicklerteam</strong>: Das Entwicklerteam ist eine Gruppe von Fachleuten, die zusammenarbeiten, um die Aufgaben des Product Backlogs in funktionsfähige Produktinkremente umzusetzen.</p>



<h3 class="wp-block-heading">Artefakte</h3>



<p>Scrum verwendet mehrere Artefakte, um die Planung und den Fortschritt des Projekts zu verfolgen:</p>



<p><strong>Product Backlog:</strong> Eine Liste aller gewünschten Funktionen, Anforderungen und Verbesserungen, deren Umsetzung im Produkt erforderlich ist. Der Product Owner ist für die Priorisierung und Aktualisierung des Backlogs verantwortlich.</p>



<p><strong>Sprint Backlog:</strong> Eine Liste der Aufgaben, die das Team im aktuellen Sprint (einem festgelegten Zeitraum von normalerweise zwei bis vier Wochen) abgeschließt. Die Erstellung des Sprint Backlogs ist die Aufgabe des Entwicklerteams und basiert auf den Prioritäten des Product Backlogs.</p>



<p><strong>Inkrement</strong>: Das Ergebnis eines jeden Sprints, ein potenziell auslieferbares Stück des Produkts, das neue oder verbesserte Funktionen bietet. Inkremente sollen den Wert des Produkts für den Kunden kontinuierlich steigern.</p>



<h3 class="wp-block-heading">Events</h3>



<p>Scrum definiert verschiedene Events oder Meetings, um den Kommunikationsfluss und die Zusammenarbeit im Team zu fördern und um den Fortschritt zu überwachen:</p>



<p><strong>Sprint Planning:</strong> Zu Beginn jedes Sprints trifft sich das gesamte Team, um den Umfang des nächsten Sprints zu planen. Dabei wählen sie die wichtigsten Elemente aus dem Product Backlog aus und erstellen das Sprint Backlog.</p>



<p><strong>Daily Scrum:</strong> Ein tägliches, kurzes Stand-up-Meeting, bei dem jedes Teammitglied den Fortschritt, die Pläne für den Tag und mögliche Hindernisse teilt. Dies fördert die Transparenz und hilft, Probleme frühzeitig zu identifizieren.</p>



<p><strong>Sprint Review</strong>: Am Ende jedes Sprints präsentiert das Team das fertige Inkrement dem Product Owner und den Stakeholdern, um Feedback zu erhalten und den Fortschritt zu bewerten.</p>



<p><strong>Sprint Retrospektive:</strong> Nach dem Sprint Review reflektiert das Team intern über den Sprint und identifiziert Verbesserungsmöglichkeiten für zukünftige Sprints.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Scrum ist ein agiles Rahmenwerk, das den Fokus auf Transparenz, Inspektion und Adaption legt, um den Projekterfolg zu fördern. Durch die Definition klarer Rollen, Artefakte und Events unterstützt Scrum die effektive Zusammenarbeit innerhalb des Teams und die kontinuierliche Verbesserung der Arbeitsprozesse. Die Implementierung von Scrum kann zu einer erhöhten Produktivität, schnelleren Anpassungsfähigkeit an Veränderungen und einer besseren Kundenzufriedenheit führen. Unternehmen und Projektteams, die sich für einen agilen Ansatz entscheiden, können Scrum als wertvolles Instrument in Betracht ziehen, um ihre Ziele zu erreichen.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/17/scrum-kontinuierliche-verbesserung-und-anpassungsfaehigkeit/">Scrum &#8211; Kontinuierliche Verbesserung und Anpassungsfähigkeit</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/04/17/scrum-kontinuierliche-verbesserung-und-anpassungsfaehigkeit/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1763</post-id>	</item>
		<item>
		<title>Apache Kafka &#8211; Echtzeit-Datenströme in wertvolle Einblicke verwandeln</title>
		<link>https://ceosbay.com/2022/12/25/erklaerung-apache-kafka/</link>
					<comments>https://ceosbay.com/2022/12/25/erklaerung-apache-kafka/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sun, 25 Dec 2022 10:51:49 +0000</pubDate>
				<category><![CDATA[Big-Data]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Brokers]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[Confluent]]></category>
		<category><![CDATA[Connect]]></category>
		<category><![CDATA[Copy]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[Datenströme]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Foundation]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[Kafka]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[Operatoren]]></category>
		<category><![CDATA[Plattform]]></category>
		<category><![CDATA[Producer]]></category>
		<category><![CDATA[Quellen]]></category>
		<category><![CDATA[Schnittstellen]]></category>
		<category><![CDATA[Skalierbar]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[Topic]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1043</guid>

					<description><![CDATA[<p>Apache Kafka ist eine Open-Source-Software der Apache Software Foundation, die insbesondere zur Verarbeitung von Datenströmen dient. Kafka ist dazu entwickelt, Datenströme zu speichern und zu verarbeiten, und stellt eine Schnittstelle zum Laden und Exportieren von &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/25/erklaerung-apache-kafka/">Apache Kafka &#8211; Echtzeit-Datenströme in wertvolle Einblicke verwandeln</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Apache Kafka ist eine <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Software der Apache Software Foundation, die insbesondere zur Verarbeitung von Datenströmen dient. Kafka ist dazu entwickelt, Datenströme zu speichern und zu verarbeiten, und stellt eine Schnittstelle zum Laden und Exportieren von Datenströmen zu Drittsystemen bereit. Die Kernarchitektur bildet ein verteiltes Transaktions-Log.</p>



<p>Apache Kafka ist die Entwicklung von LinkedIn. Seit 2012 ist es Teil der Apache Software Foundation. Im Jahr 2014 gründeten die Entwickler das Unternehmen Confluent aus LinkedIn heraus, welches die Weiterentwicklung von Apache Kafka fokussiert. Apache Kafka ist ein verteiltes System, das skalierbar und fehlertolerant und somit für Big-Data-Anwendungen geeignet ist.</p>



<h3 class="wp-block-heading">Wie funktioniert Apache Kafka?</h3>



<p>Den Kern des Systems bildet ein Rechnerverbund (Cluster), bestehend aus sogenannten Brokern. Broker speichern Schlüssel-Wert-Nachrichten zusammen mit einem Zeitstempel in Topics. Topics wiederum sind in Partitionen aufgeteilt, die im Kafka-Cluster verteilt und repliziert sind. Innerhalb einer Partition werden die Nachrichten in der Reihenfolge gespeichert, in der sie geschrieben wurden. Lese- und Schreibzugriffe umgehen den Arbeitsspeicher durch die direkte Anbindung der Festplatten mit dem Netzwerkadapter (Zero Copy), so dass weniger Kopiervorgänge vor dem Schreiben oder Versenden von Nachrichten nötig sind.</p>



<h3 class="wp-block-heading">Was ist Zero Copy im Kontext Apache Kafka?</h3>



<p>Zero Copy &#8222;Null-Kopie&#8220; beschreibt Computeroperationen, bei denen die CPU keine Daten von einem Speicherbereich in einen anderen kopiert oder bei denen unnötige Datenkopien vermieden werden. Dies wird häufig verwendet, um CPU-Zyklen und Speicherbandbreite bei vielen zeitaufwändigen Aufgaben zu sparen. Beispielsweise bei der Übertragung einer Datei mit hoher Geschwindigkeit über ein Netzwerk, wodurch die Leistung von Programmen (Prozessen), die von einem Computer ausgeführt werden, verbessert wird.</p>



<p>Anwendungen, die Daten in einen Kafka-Cluster schreiben, werden als Producer bezeichnet, Anwendungen, die Daten von dort lesen, als Consumer. Zur Datenstromverarbeitung besteht die Möglichkeit, Kafka Streams zu verwenden. Kafka Streams ist eine Java-Bibliothek, die Daten aus Kafka liest, verarbeitet und die Ergebnisse nach Kafka zurückschreibt. Auch die Verwendung mit anderen Stream-Verarbeitungssystemen ist möglich. Ab der Version 0.11.0.0 ist „„transaktionales Schreiben“ auch möglich, dadurch ist garantiert, dass die Verarbeitung von Nachrichten exakt ein einziges Mal stattfindet, wenn eine Anwendung Kafka Streams verwendet. Stichwort (Exactly-Once processing) &#8211; Wobei dies ein Thema für sich darstellt und den Rahmen hier sprengen würde.</p>



<p>Kafka unterstützt zwei Arten von Topics: „normal“ und „compacted“ Topics. Normale Topics garantieren, Nachrichten für einen konfigurierbaren Zeitraum vorzuhalten oder einen gewissen Speicherbedarf nicht zu überschreiten. Liegen Nachrichten vor, die älter sind als die konfigurierte „retention time“, oder ist das Speicherlimit einer Partition überschritten, kann Kafka alte Nachrichten löschen, um Festplattenspeicher freizugeben. Standardmäßig speichert Kafka Nachrichten für 7 Tage, aber es ist auch möglich, Nachrichten für immer zu speichern. Neben „normal“ Topics bietet Kafka auch „compacted“ Topics an, die keiner Zeit- oder Platzlimitierung unterliegen. Stattdessen werden neuere Nachrichten als Aktualisierung („updates“) alter Nachrichten mit dem gleichen Schlüssel interpretiert. Dadurch ist garantiert, dass keine Löschung der neuesten Nachricht pro Schlüssel stattfindet. Nutzer können Nachrichten jedoch explizit löschen, indem sie eine Spezialnachricht (sog. tombstone) mit null-Wert für den entsprechenden Schlüssel schreiben.</p>



<h3 class="wp-block-heading">Apache Kafka bietet vier Hauptschnittstellen an:</h3>



<ul class="wp-block-list">
<li>Producer API<br>Für Anwendungen, die Daten in einen Kafka-Cluster schreiben wollen.&nbsp;</li>



<li>Consumer API<br>Für Anwendungen, die Daten aus einem Kafka-Cluster lesen wollen.</li>



<li>Connect API<br>Import/Export-Schnittstelle zur Anbindung von Drittsystemen und baut auf der Consumer- und der Producer-API auf. Kafka Connect führt sogenannte Konnektoren („connectors“) aus, welche die eigentliche Kommunikation mit dem Drittsystem übernehmen. Dabei definiert die Connect-API die Programmierschnittstellen, die von einem Connector implementiert werden müssen. Es gibt bereits viele frei verfügbare und kommerzielle Konnektoren, die genutzt werden können. Apache Kafka liefert selbst keine produktreifen Konnektoren.</li>



<li>Streams API<br>Java-Bibliothek zur Datenstromverarbeitung. Die Bibliothek ermöglicht es, zustandsbehaftete Datenstromverarbeitungsprogramme zu entwickeln, die sowohl skalierbar, flexibel als auch fehlertolerant sind. Dafür bietet Kafka Streams eine eigene domänenspezifische Sprache (DSL) an, die Operatoren zum Filtern, Abbilden (Mappen) oder Gruppieren enthält. Des Weiteren werden Zeitfenster, Joins, und Tabellen unterstützt. Ergänzend zur domänenspezifischen Sprache ist es auch möglich, eigene Operatoren in der Processor-API zu implementieren. Diese Operatoren können auch in der domänenspezifischen Sprache genutzt werden. Zur Unterstützung zustandsbehafteter Operatoren wird RocksDB verwendet. Dies erlaubt es, Operatorzustände lokal vorzuhalten und Zustände, die größer als der verfügbare Hauptspeicher sind, als RocksDB-Daten auf die Festplatte auszulagern. Um den Anwendungszustand verlustsicher zu speichern, werden alle Zustandsänderungen zusätzlich in einem Kafka-Topic protokolliert. Im Falle eines Ausfalls können alle Zustandsübergänge aus dem Topic ausgelesen werden, um den Zustand wiederherzustellen.</li>
</ul>



<p>Die Consumer- und Producer-Schnittstellen basieren auf dem Kafka-Nachrichtenprotokoll und können als Referenzimplementierung in Java angesehen werden. Das eigentliche Kafka-Nachrichtenprotokoll ist ein binäres Protokoll und erlaubt es damit, Consumer- und Producer-Clients in jeder beliebigen Programmiersprache zu entwickeln. Damit ist Kafka nicht an das JVM-Ökosystem gebunden.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Apache Kafka bietet als Plattform ein redundantes und skalierbares Event-Streaming. Es funktioniert sowohl auf einem einzelnen Server als auch in riesigen Clustern mit multiplen Brokern. Die Datenquellen und Senken werden in Kafka als Producer und Consumer bezeichnet, die Events in Topics schreiben oder aus Topics lesen. Zusätzlich können verschiedene Systeme über Kafka Connect angebunden werden. Eine Echtzeitdatenverarbeitung auf Stream Basis ist über das Kafka-Streams-Framework möglich. Durch Consumer Groups kann man auch die Anwendungen, die ihre Daten aus Kafka beziehen, verteilt ausgeführen, ohne dass die Verarbeitung eines Events mehrfach stattfindet.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/25/erklaerung-apache-kafka/">Apache Kafka &#8211; Echtzeit-Datenströme in wertvolle Einblicke verwandeln</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/12/25/erklaerung-apache-kafka/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1043</post-id>	</item>
	</channel>
</rss>
