<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>codecentric Blog</title>
	
	<link>http://blog.codecentric.de</link>
	<description>Expertenwissen rund um agile Softwareentwicklung, Java und Performance Solutions.</description>
	<lastBuildDate>Wed, 16 May 2012 11:51:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/codecentric" /><feedburner:info uri="codecentric" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Ein Wiki? Warum noch ein Tool im Unternehmen?</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/ff5RGwqcLIY/</link>
		<comments>http://blog.codecentric.de/2012/05/ein-wiki-warum-noch-ein-tool-im-unternehmen/#comments</comments>
		<pubDate>Fri, 11 May 2012 15:08:05 +0000</pubDate>
		<dc:creator>Jörg Spiegelhoff</dc:creator>
				<category><![CDATA[Agile Anforderungsbeschreibung]]></category>
		<category><![CDATA[Agile Management]]></category>
		<category><![CDATA[Agilität]]></category>
		<category><![CDATA[Atlassian]]></category>
		<category><![CDATA[Confluence]]></category>
		<category><![CDATA[Intranet]]></category>
		<category><![CDATA[Knowledge Database]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Projektdokumentation]]></category>
		<category><![CDATA[Wissensmanagement]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12891</guid>
		<description><![CDATA[      
            
      Obwohl ein Unternehmens-Wiki schon in sehr vielen Unternehmen Einzug gefunden hat, zweifeln noch immer einige Unternehmen, ob eine Einführung Sinn macht. Oft liegt das daran, dass bereits ein Intranet und ein Dokumenten-Management-System vorhanden sind. Befürchtungen zu weiteren Administrationsaufwand und Kosten &#8230; <a href="http://blog.codecentric.de/2012/05/ein-wiki-warum-noch-ein-tool-im-unternehmen/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <p>Obwohl ein Unternehmens-Wiki schon in sehr vielen Unternehmen Einzug gefunden hat, zweifeln noch immer einige Unternehmen, ob eine Einführung Sinn macht. Oft liegt das daran, dass bereits ein Intranet und ein Dokumenten-Management-System vorhanden sind. Befürchtungen zu weiteren Administrationsaufwand und Kosten für Schulungen kommen hinzu.</p>
<p>Müssen Sie Ihren Chef noch überzeugen und benötigen ein paar gute Argumente? In diesem Artikel habe ich beschrieben, in welchen Situationen ein Wiki einen deutlichen Mehrwert für ein Unternehmen bietet.<span id="more-12891"></span></p>
<h3>Redaktionelle Engpässe vermeiden</h3>
<p>Ein wesentlicher Unterschied zwischen einem Intranet und einem Wiki ist, dass ein Intranet oftmals nur von einer kleinen Personenzahl im Unternehmen aktualisiert wird. Dadurch fehlt die Dynamik der Inhalte und daraus resultierend die Attraktivität für die Mitarbeiter. Im Gegensatz dazu lebt ein Wiki davon, dass jeder Mitarbeiter seinen Beitrag leisten und sein Wissen sehr leicht darin einbringen kann &#8211; wodurch eine Fülle von aktuellen Informationen zu unterschiedlichsten Themen entstehen kann: Projektinformationen und Dokumentationen, Team- oder Abteilungsaktivitäten, eine FAQ oder Knowledge Database zu Produkten, Diskussionen- oder Wissensaustausch zu Veränderungen im Unternehmen sind die am häufigsten anzutreffenden Wiki-Themen. Informationen und Wissen werden somit nicht nur verwaltet, sondern leben und es entsteht ein übergreifender Austausch und eine effiziente Zusammenarbeit.</p>
<h3>Informations-Silos wie E-Mail oder Netzlaufwerke bremsen die Produktivität</h3>
<p>Wo war noch das letzte Meeting-Protokoll abgelegt? Irgendwo in den verschachtelten Ordnerstrukturen des Netzlaufwerks oder doch irgendwo im Postfach?  Die Suche nach Dokumenten oder Informationen nimmt laut einer Studie (Hidden Costs of Information Work: A Progress Report) der IDC ca. 20% der Arbeitszeit ein.<br />
Erstellen und verteilen Sie alles im Wiki, wo es an einem Ort zugänglich und durchsuchbar ist. Durch die zentrale Informationsquelle  bekommen Sie von Kollegen zu Aufgaben die besten Ergebnisse.<br />
Vermeiden Sie Informations-Silos zwischen Teams, Abteilungen und Individuen und es entsteht crowd-sourcing in Ihrer Organisation.<br />
Eine Spezifikation kann z.B. von mehreren Personen gleichzeitig im Wiki erstellt und überprüft werden. Die entstandenen Wiki-Seiten können bei Bedarf später über einen Export in ein einzelnes Dokument überführt werden.<br />
Weiterhin werden nicht selten Diskussionen über E-Mail geführt, die sich dann zeitlich überschneiden, zu unterschiedlichen Zeitpunkten in der Diskussion Empfänger raus- oder hinzugenommen werden und dadurch sehr schnell der Überblick verloren geht.<br />
Im Wiki können Diskussionen, wichtige Entscheidungen und Argumente über Kommentare dauerhaft festgehalten und zu einem späteren Zeitpunkt nachgelesen werden.</p>
<h3>Wikis ergänzen ein Dokumentenmanagementsystem</h3>
<p>Auch wenn ein Wiki sehr viele Funktionalitäten aus dem DMS-Umfeld mitbringt, so bleibt es immer noch ein Wiki und sollte als solches verstanden werden. Wer also ein z.B. OpenText, Filenet oder eine Lösung wie d.evelop sie bietet nutzt, wird die umfangreichen Workflow- und Genehmigungsfunktionalitäten im Wiki vermissen. Den Charme eines Wikis machen aber gerade die  Flexibilität und Einfachheit aus &#8211; die in Kombination mit einfacher Erlernbarkeit zu höherer Akzeptanz führen.</p>
<p>Dateien, die im Wiki abgelegt werden, dienen voranging dem Wissensaustausch und der Dokumentation von Ergebnissen in der täglichen Zusammenarbeit. Wichtige Funktionalitäten für den Umgang mit Dokumenten, die z.B. das Confluence-Wiki sehr gut gelöst hat, sind:</p>
<ul>
<li>Einfaches hinzufügen von Dokumenten per Drag &#038; Drop.</li>
<li>Versionierung von Dokumenten mit Änderungshistorie.</li>
<li>Volltextindizierung.</li>
<li>Inhalte aus Office-Dokumenten unkompliziert in Wiki-Dokumente integrieren oder direkt aus dem Wiki heraus bearbeiten.</li>
</ul>
<p>Durch diese Funktionen und die Möglichkeit, Dokumente im entsprechenden Kontext auf Wiki-Seiten einzubetten, bekommt ein Unternehmenswiki eine andere Bedeutung und lässt sich daher sehr gut ergänzend neben einem Dokumentenmanagement betreiben.</p>
<h3>Zusammenarbeit wird vereinfacht und Veränderungen sind transparent</h3>
<p>In vielen Organisationen liegen wertvolle Informationen an vielen verschiedenen Orten verteilt. Mitarbeiter haben nur wenige Möglichkeiten herauszufinden, dass es diese Informationen gibt und wo es sie gibt. </p>
<blockquote><p>Wenn wir wüssten, was unser Unternehmen weiß, könnten wir Kundenwünsche besser erfüllen, innovative Produkte früher anbieten, schneller auf Marktveränderungen reagieren und unsere Produktivität steigern. Kurz gesagt: Wir könnten schneller besser werden.</p></blockquote>
<p>Ein Wiki ist dazu prädestiniert, Informationen mit anderen zu teilen und das Finden von Informationen zu vereinfachen. Mit Funktionen, die z.B. eine Liste aller zuletzt bearbeiteten Inhalte auf dem Wiki-Dashboard zeigen, erfahren Mitarbeiter welche Änderungen von anderen Kollegen vorgenommen wurden oder sie können sich automatisch über Änderungen in ausgewählten Wiki-Seiten informieren lassen.</p>
<p>Eine der Hemmschwellen bei der Einführung von Wikis, ist die Fucht vor Fehlern beim ändern oder kommentieren von Wiki-Seiten. Sind diese erst überwunden, entsteht eine neue Form der Zusammenarbeit. Nicht nur die Verfügbarkeit von Informationen wird verbessert, sondern auch die Qualität und Glaubwürdigkeit der Informationen verbessert sich.</p>
<h3>Sicherer Schutz von zu schützenden Bereichen</h3>
<p>Wikis sind für gewöhnlich sehr offen und leben von der Transparenz. Dennoch gibt es in der Regel in jeder Organisation zu schützende Inhalte. Die Personalabteilung möchte z.B. eingehende Bewerbungen im Wiki ablegen und diese Informationen nur eingeschränkten Benutzern freigeben oder Kunden sollen nur eingeschränkten Zugriff auf Projektinformationen erhalten.</p>
<p>In einem Wiki können Benutzerberechtigungen auf Inhaltsebene und Funktionalitätsebene vergeben werden.  Es sollte in jeder Organisation abgestimmt werden, wie stark Reglementierungen auf Berechtigungsebene tatsächlich benötigt werden, denn die Transparenz ist ein kritischer Erfolgsfaktor für die erfolgreiche Einführung eines Unternehmenswikis. Risiken in Bezug auf Manipulation von Seiten sind geringfügig &#8211; Jederzeit kann nachvollzogen werden, wer was wann geschrieben hat und über die Änderungshistorie können fehlerhafte Änderungen einfach rückgängig gemacht werden.</p>
<p></p>
<p><br clear="all"></p>
<p><strong>Fazit:</strong><br />
Es gibt viele Gründe die für den Einsatz von Wikis in Unternehmen sprechen.  Wirklich belastbare ROI-Berechnungen, die den Einsatz von Wikis rechtfertigen, habe ich bisher noch nicht kennengelernt. Jedoch hat laut einer <a href="http://blog.codecentric.de/files/2012/05/experiences-of-wiki-use-in-finnish-companies.pdf" target="_blank">Umfrage </a>noch kein Unternehmen ein Wiki wieder abgeschaltet – im Gegenteil: Der Nutzen eines Wiki wurde laut dieser Umfrage von Jahr zu Jahr größer. </p>
<p>Wir bei codecentric setzen das Confluence-Wiki schon seit Jahren ein und nutzen es ausgiebig zur Projektdokumentation, als Knowledge Database und Intranet. Confluence ist bei uns zu einem festen Bestandteil unserer Zusammenarbeit geworden und als Werkzeug nicht mehr wegzudenken. Unsere Erfahrungen, die wir bei unseren Kunden gemacht haben zeigen, dass sich durch Wikis die in diesem Artikel beschriebenen positiven Unternehmenseffekte einstellen.</p>
<p>Sollten Sie in Ihrem Unternehmen auch gerade vor einer Wiki-Einführung stehen oder auch generell Fragen und Anregungen zu Wikis haben, würde ich mich über einen Kommentar oder eine Kontaktaufnahme freuen.</p>
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2F2012%2F05%2Fein-wiki-warum-noch-ein-tool-im-unternehmen%2F&#038;title=Ein+Wiki%3F+Warum+noch+ein+Tool+im+Unternehmen%3F" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/ff5RGwqcLIY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/05/ein-wiki-warum-noch-ein-tool-im-unternehmen/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/05/ein-wiki-warum-noch-ein-tool-im-unternehmen/</feedburner:origLink></item>
		<item>
		<title>Akzeptanzkriterien oder -tests als Anforderungsdokumentation?</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/oZiG1ORMCBc/</link>
		<comments>http://blog.codecentric.de/2012/04/akzeptanzkriterien-oder-tests-als-anforderungsdokumentation/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 13:23:46 +0000</pubDate>
		<dc:creator>Marc Clemens</dc:creator>
				<category><![CDATA[Agiles Testen]]></category>
		<category><![CDATA[Agilität]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12360</guid>
		<description><![CDATA[      
            
      Wird in einem agilen Softwareprojekt eine Dokumentation der Anforderungen, die in einer Software realisiert werden (Systemanforderungen), benötigt? Und wenn ja, welche Form und welcher Detailierungsgrad ist dabei sinnvoll? Bei der ersten Frage kommen mir direkt die Sätze &#8220;Lauffähige Software ist &#8230; <a href="http://blog.codecentric.de/2012/04/akzeptanzkriterien-oder-tests-als-anforderungsdokumentation/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <p>Wird in einem agilen Softwareprojekt eine Dokumentation der Anforderungen, die in einer Software realisiert werden (Systemanforderungen), benötigt? Und wenn ja, welche Form und welcher Detailierungsgrad ist dabei sinnvoll?</p>
<p>Bei der ersten Frage kommen mir direkt die Sätze <em>&#8220;Lauffähige Software ist wichtiger als ausführliche Dokumentation&#8221;</em> und<em> &#8220;Der Quellcode ist die beste Dokumentation (da immer aktuell)&#8221;</em> in den Sinn. Nun schränkt das Agile Manifest direkt ein, dass Dokumentation nicht unwichtig, lauffähige Software eben nur wichtiger ist. Und die Aussage bzgl. des Quellcodes bezieht sich auf die Dokumentation <em>wie</em> und nicht was eine Software macht. Daher spricht nichts gegen eine solche Dokumentation. Im Gegenteil, der Qualitätsanspruch und die damit notwendige Qualitätsicherung machen eine solche Dokumentation sogar zwangsläufig erforderlich.<span id="more-12360"></span></p>
<p>Eine Prüfung der Umsetzungsqualität erfolgt durch den Vergleich der Anforderungen mit dem Verhalten der realisierten Software. Und dies gilt nicht nur für gerade umgesetzte Anforderungen, sondern auch für alle schon früher umgesetzten Anforderungen (solange sie sich nicht explizit ändern oder wegfallen). Daher wird eine Beschreibung des erwarteten Verhaltens der Software benötigt.</p>
<p><strong>Akzeptanzkriterien und Testfälle</strong></p>
<p><strong></strong>Im agilen Umfeld (mit User Stories) werden Anforderungen meist durch Akzeptanzkriterien genauer beschrieben. Hierbei wird für eine Ausgangssituation (Given) und ein Ereignis (When) ein Verhalten der Software (Then) zugeordnet. Wie offen oder genau die Ausgangssituation, das Ereignis oder das Verhalten dabei beschrieben sind, variiert. Beispiele hierfür können sein:</p>
<ul>
<li><em>&#8220;Ein deuscher Benutzer ist angemeldet, wenn er in einem beliebigen Textfeld Text mit deutschen Rechtschreibfehlern eingibt, wird die fehlerhafte Stelle unterstrichen.&#8221;</em></li>
<li><em>&#8220;Das System befindet sich in einem konsistenten Zustand, wenn ein Benutzer die GUI bedient, bleibt das Sytem immer benutzbar und konsistent.&#8221;</em></li>
<li><em>&#8220;Es gibt im Sytem ein Kundenunternehmen mit einer Kontaktperson, wenn der Benutzer eine neue Kontaktperson zu diesem Unternehmen mit gleichem Namen und Vornamen erfasst, zeigt das System einen Warnhinweis einer möglichen Doppelerfassung an.&#8221;</em></li>
</ul>
<p>Dabei sind diese Akzeptanzkriterien nicht von der Umsetzung des Produkts oder eines Testumfelds abhängig. Jede weitere umgesetzt User Story erweitert oder verändert die Menge der Akzeptanzkriterien des Gesamtproduktes. Neben den Akzeptanzkriterien der User Stories gibt es auch &#8220;unausgesprochene&#8221; Kriterien, die gar nicht explizit erwähnt werden und meist sehr offen formuliert werden, z.B. <em>&#8220;Egal was passiert, keine unbehandelten Fehler/Speicherlecks/Abstürze&#8221;</em> oder <em>&#8220;Lesbare und übersichtliche Benutzeroberflächen&#8221;</em>.</p>
<p>Um die Qualität der aktuellen Umsetzung zu prüfen, werden für die Akzeptanzkriterien explizite Testfälle erzeugt. Diese berücksichtigen das aktuelle Testumfeld (wie Technologien und Testdaten) in dem die aktuelle Umsetzung getestet wird. Je offener ein Akzeptanzkriterium formuliert ist, desto mehr Testfälle werden benötigt (und um so schwieriger wird es, sinnvolle Testfälle zu formulieren). Um die Qualität zu überprüfen, muss die Menge dieser Akzeptanztests durchgeführt werden. Eine manuelle Ausführung dieser Tests ist schon nach kurzer Projektlaufzeit nicht mehr regelmäßig möglich. Daher werden möglichst viele dieser Tests automatisiert.</p>
<p><strong>Was könnte jetzt als &#8220;Dokumentation der Anforderungen&#8221; dienen?</strong></p>
<p>Die Liste der Akzeptanzkriterien ist im Grunde eine gute Dokumentation. Sie erfordert aber ein hohes Maß an Disziplin und Aufwand, um aktuell gehalten zu werden. Dies wird wahrscheinlich gerade im Projektstress als erstes ausgelassen werden. Dadurch kann sie sowohl nicht mehr zur aktuellen Umsetzung, als auch nicht mehr zu den aktuellen Testfällen passen.</p>
<p>Die automatisierten Tests und die Liste der nicht automatisierten Testfälle haben dagegen den Charme, dass sie bei der Qualitätsprüfung zumindest teilweise auf Aktualität geprüft werden. Ein fehlgeschlagener Test kann auf einer fehlerhaften Umsetzung des Produkts oder auf einen fehlerhaften Testfall beruhen. Beides könnte aber auch falsch sein und so zueinander passen, dass der Test erfolgreich ist. Dies kann zu einem systemischen Problem werden, da gerade eine enge Zusammenarbeit von Produktentwicklern und Testentwicklern die Wahrscheinlichkeit für diesen Fall erhöht. Dies ist  natürlich noch stärker der Fall, wenn es sich bei beiden Rollen um dieselbe Person handelt. Gerade im agilen Teamsetup, mit Entwicklern und Testern im selben Team, ist das nicht sonderlich ungewöhnlich. Weiterhin stellt sich die Frage, wie vollständig die Anforderungen durch die Tests beschrieben werden. Schon die Akzeptanzkriterien werden nicht alle Anforderungen vollständig beschreiben und die Testfälle werden nicht die Akzeptanzkriterien vollständig abdecken. Gerade bei sehr offen formulierten Akzeptanzkriterien, sind brauchbare Tests nicht immer einfach zu finden. Ein weiteren Nachteil der Testfälle ist, dass sie eine hohe Abhängigkeit zur Testumgebung haben, was bedeutet das sie ohne diese Umgebung nur begrenzt Sinn ergeben. Damit wird auch die Testumgebung mit Ihren enthalten Testdaten zu einem dauerhaften &#8220;Artefakt&#8221; des Projekts, welches persistiert und kontinuierlich gepflegt werden muss. Während der Umsetzungsphase eines Projekts ist dies meist gewährleistet, aber in den folgenden Wartungsphasen wird der dadurch entstehende Aufwand oft vergessen (und nicht betrieben).</p>
<p><strong>Ergebnis</strong></p>
<p>Um die Qualität von Software zu beurteilen, ist eine Dokumentation der umgesetzten Anforderungen erforderlich. Wenn man nicht durch andere externe Bedingungen (z.B. Normen oder Unternehmensrichtlinien) zu einer dokumentenlastigen Form gezwungen wird, kann meiner Meinung nach sowohl die  Menge der Akzeptanzkriterien, als auch die auf diesen basierenden Testfälle ein brauchbares Format darstellen. Dies ist aber nicht ohne Kosten, denn je nachdem, welche Form man für sein Projekt wählt, ist zusätzlicher Aufwand zu betreiben.</p>
<p>Wie beschreibt Ihr was eine von Euch entwickelte Software kann und was nicht?
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2F2012%2F04%2Fakzeptanzkriterien-oder-tests-als-anforderungsdokumentation%2F&#038;title=Akzeptanzkriterien+oder+-tests+als+Anforderungsdokumentation%3F" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/oZiG1ORMCBc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/04/akzeptanzkriterien-oder-tests-als-anforderungsdokumentation/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/04/akzeptanzkriterien-oder-tests-als-anforderungsdokumentation/</feedburner:origLink></item>
		<item>
		<title>MongoDB User-Gruppe Düsseldorf</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/X_TTmEpPCNE/</link>
		<comments>http://blog.codecentric.de/2012/04/mongodb-user-gruppe-dusseldorf/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 05:10:21 +0000</pubDate>
		<dc:creator>Tobias Trelle</dc:creator>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[10gen]]></category>
		<category><![CDATA[düsseldorf]]></category>
		<category><![CDATA[mongo]]></category>
		<category><![CDATA[mongodb]]></category>
		<category><![CDATA[NoSql]]></category>
		<category><![CDATA[sharding]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12796</guid>
		<description><![CDATA[      
            
      MongoDB MongoDB ist eine hochskalierbare, Dokumenten-orientierte NoSQL-Datenbank des Herstellers 10gen. Mehr Details finden Sie auf der MongoDB-Homepage: http://www.mongodb.org. Eine kurze Einleitung, die die ersten Schritte mit MongoDB erklärt, findet Sie in diesem Artikel. Ich bin der Meinung, dass die aktuelle &#8230; <a href="http://blog.codecentric.de/2012/04/mongodb-user-gruppe-dusseldorf/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <h2>MongoDB</h2>
<p><strong>MongoDB</strong> ist eine hochskalierbare, Dokumenten-orientierte <a href="http://blog.codecentric.de/2012/03/ein-paar-gedanken-zu-nosql/">NoSQL</a>-Datenbank des Herstellers 10gen. Mehr Details finden Sie auf der MongoDB-Homepage: <a href="http://www.mongodb.org">http://www.mongodb.org</a>. Eine kurze Einleitung, die die ersten Schritte mit MongoDB erklärt, findet Sie <a href="http://blog.codecentric.de/2012/02/spring-data-mongodb-2/">in diesem Artikel</a>.</p>
<p>Ich bin der Meinung, dass die aktuelle NoSQL-Bewegung mehr als ein Hype-Thema ist, das in wenigen Jahren wieder vergessen sein wird. Der Bedarf an hochskalierbaren, stets verfügbaren (Web-)Anwendungen steigt stetig an. Klassische relationale Datenbanksysteme stoßen dabei vermehrt an ihre Grenzen. Daher beschäftige ich mich seit einiger Zeit verstärkt mit MongoDB.</p>
<h2>MongoDB User-Gruppe Düsseldorf</h2>
<p>Vor kurzem habe ich eine regionale User-Gruppe zum Thema MongoDB gegründet. Ziel dieser Gruppe ist der regelmäßige Informationsaustausch zwischen MongoDB-Usern aus dem Großraum Düsseldorf (und auch gerne darüber hinaus). Wir wollen im Rahmen einer Vortragsserie unsere MongoDB-Projekte vorstellen, diskutieren und unsere Erfahrungen weitergeben. Die Homepage dieser Gruppe finden Sie unter  </p>
<p><a href="https://www.xing.com/net/mongodb-dus/">https://www.xing.com/net/mongodb-dus/</a></p>
<p>Ich freue mich auf neue Mitglieder und vor allem auf den Erfahrungsaustausch.</p>
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2F2012%2F04%2Fmongodb-user-gruppe-dusseldorf%2F&#038;title=MongoDB+User-Gruppe+D%C3%BCsseldorf" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/X_TTmEpPCNE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/04/mongodb-user-gruppe-dusseldorf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/04/mongodb-user-gruppe-dusseldorf/</feedburner:origLink></item>
		<item>
		<title>REConf 2012 – Eindrücke</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/hTCIf6b_-kE/</link>
		<comments>http://blog.codecentric.de/2012/04/reconf-2012-eindrucke/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 19:10:22 +0000</pubDate>
		<dc:creator>Steffen Thols</dc:creator>
				<category><![CDATA[Agile Management]]></category>
		<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Konferenzen]]></category>
		<category><![CDATA[REConf]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12458</guid>
		<description><![CDATA[      
            
      Am 12.-15. März 2012 fand in München zum 11. Male die REConf statt. Laut Veranstalter mit 400 Teilnehmern in diesem Jahr die größte und etablierteste Konferenz im deutschsprachigen Raum, die das Thema Anforderungsmanagement zum Fokus hat. Nachdem diesmal auch ein Track &#8230; <a href="http://blog.codecentric.de/2012/04/reconf-2012-eindrucke/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <p>Am 12.-15. März 2012 fand in München zum 11. Male die REConf statt. Laut Veranstalter mit 400 Teilnehmern in diesem Jahr die größte und etablierteste Konferenz im deutschsprachigen Raum, die das Thema Anforderungsmanagement zum Fokus hat. Nachdem diesmal auch ein Track rund um das Thema &#8220;Agiles Requirement Engineering&#8221; stattfand, habe ich einen Vortrag zu dem Thema: &#8220;Fallstricke im agilen Anforderungsmanagement oder wie bekomme ich mit User Stories von den Geeks was ich will?&#8221; eingereicht.</p>
<div style="float:right; margin-left:10px">Die Folien findet Ihr hier:<br />
<a href="http://blog.codecentric.de/files/2012/03/Thols_Fallstricke_User_Stories.pdf"><img class="alignnone size-medium wp-image-12496" title="Startseite_Vortrag" src="http://blog.codecentric.de/files/2012/03/Startseite_Vortrag-300x187.png" alt="" width="300" height="187" /><br />
Fallstricke im agilen Anforderungsmanagement</a>
</div>
<div>
In meinem Vortrag habe ich anhand eines Vorhabens in einer fiktiven Firma die üblichen Probleme und Lösungsmöglichkeiten aufgezeigt, die mit der Anwendung von User<br />
Stories innerhalb eines agilen Projektvorgehens (in diesem Falle Scrum) einhergehen können:</p>
<ul>
<li>Wie behalte ich den Überblick über mein Gesamtvorhaben?</li>
<li>Wie bekomme ich die User Stories kleiner?</li>
<li>Wo ist der Anforderer?</li>
<li>Technische Lösung in den Stories vorgegeben?</li>
<li>Sprint Review läuft ohne Ergebnis ab?</li>
<li>Welche Werkzeuge soll ich benutzen?</li>
</ul>
</div>
<p><br clear="all"><br />
<span id="more-12458"></span><br />
Während meines Vortrages und auch bei denjenigen Vorträgen, denen ich beiwohnen konnte, hat sich mir der Eindruck aufgedrängt, dass gar nicht wenige Teilnehmer eine regelrechte Aversion gegen agile Methoden haben. Dies äußerte sich durch lautstarken Beifall, wenn ein Redner etwas gegen &#8220;Agil&#8221; sagte und andersherum vernehmliche Unmutsäußerungen, wenn agile Methoden &#8220;zu gut&#8221; wegkommen. (Siehe z.B. den aktuellen Chaos Report der Standish Group, erreichbar über Mike Cohn&#8217;s Blog  <a href="http://blog.mountaingoatsoftware.com/agile-succeeds-three-times-more-often-than-waterfall">http://blog.mountaingoatsoftware.com/agile-succeeds-three-times-more-often-than-waterfall </a>, den ich in meinem Vortrag kurz angesprochen habe.)</p>
<p><a href="http://blog.codecentric.de/files/2012/03/Agile-Waterfall-Success-Failure-Rates.jpg"><img class="alignnone size-medium wp-image-12470" title="Agile-Waterfall-Success-Failure-Rates" src="http://blog.codecentric.de/files/2012/03/Agile-Waterfall-Success-Failure-Rates-300x146.jpg" alt="" width="300" height="146" /></a></p>
<p>Nun befinden wir uns ja immerhin im Jahre 11 nach dem agilen Manifest und agile Methoden kann man nicht mehr &#8220;nur&#8221; als Trends oder seltsame Arten der Softwareentwicklung für komische Menschen/Firmen betrachten, die nicht ernst zu nehmen sind.</p>
<p>Wie kann es also sein, dass -zumindest für meinen Eindruck- nach wie vor derartige Vorbehalte bzgl. agilen Vorgehensweisen existieren?</p>
<p>Kann es vielleicht daran liegen:</p>
<ul>
<li>Es gibt Bedenken hinsichtlich neuen Rollen?</li>
<li>Bestehende Claims werden verteidigt?</li>
<li>Sind die agilen Werte und Prinzipien nicht bekannt?</li>
<li>Wurden agile Vorgehensweisen halbherzig eingeführt und scheiterten?</li>
<li>Will man liebgewonnene Verhaltensmuster und Arbeitsweisen nicht ändern?</li>
</ul>
<p>Wie ist Eure Erfahrung zum Thema althergebrachtes Vorgehen vs. agile Methoden?
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2F2012%2F04%2Freconf-2012-eindrucke%2F&#038;title=REConf+2012+%26%238211%3B+Eindr%C3%BCcke" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/hTCIf6b_-kE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/04/reconf-2012-eindrucke/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/04/reconf-2012-eindrucke/</feedburner:origLink></item>
		<item>
		<title>Verbesserte JBehave Steps mit Varianten</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/jGDlhAYLMsI/</link>
		<comments>http://blog.codecentric.de/2012/04/verbesserte-jbehave-steps-mit-varianten/#comments</comments>
		<pubDate>Mon, 02 Apr 2012 07:00:29 +0000</pubDate>
		<dc:creator>Daniel Schneller</dc:creator>
				<category><![CDATA[Agiles Testen]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12390</guid>
		<description><![CDATA[      
            
      In einem früheren Post wurde bereits eine kleine Einführung in das JBehave Projekt zur Automatisierung von Akzeptanztests gegeben. Während sich dieser Artikel mit der Installation und der allgemeinen Verwendung des Frameworks beschäftigte, konzentriere ich mich heute auf eine Erweiterung, die &#8230; <a href="http://blog.codecentric.de/2012/04/verbesserte-jbehave-steps-mit-varianten/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <p>In einem <a href="http://blog.codecentric.de/en/2011/03/automated-acceptance-testing-using-jbehave/">früheren Post</a> wurde bereits eine kleine Einführung in das <a href="http://www.jbehave.org">JBehave</a> Projekt zur Automatisierung von Akzeptanztests gegeben. Während sich dieser Artikel mit der Installation und der allgemeinen Verwendung des Frameworks beschäftigte, konzentriere ich mich heute auf eine Erweiterung, die ich kürzlich zum Projekt beigesteuert habe, und die es erlaubt, Test Stories in noch natürlicherer Sprache abzufassen, als bislang möglich.</p>
<p><!-- more --></p>
<h2 id="bisherbeispanstyletext-decoration:line-throughlostspanjbehave">Bisher bei <span style="text-decoration: line-through">LOST</span> JBehave</h2>
<p>Ein kurzer Rückblick: In JBehave werden Tests in Sätzen in natürlicher Sprache verfasst, die zur Ausführungszeit auf korrespondierende Methoden abgebildet werden. Folgendes Beispiel stammt aus der JBehave Dokumentation (übersetzt):</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">@When<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;der Artikelpreis $preis ist&quot;</span><span style="color: #009900;">&#41;</span>
@Aliases<span style="color: #009900;">&#40;</span>values<span style="color: #339933;">=</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">&quot;der Artikelpreis $preis beträgt&quot;</span>
             <span style="color: #0000ff;">&quot;der Artikelpreis $preis entspricht&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span> <span style="color: #666666; font-style: italic;">// mehrere Aliase</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> derPreisIst<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">double</span> preis<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// ...</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Diese Methode wird aufgerufen, wenn in einer Test-Story eine der folgenden Zeilen steht:</p>
<ul>
<li><code>Wenn der Artikelpreis 10 ist</code></li>
<li><code>Wenn der Artikelpreis 10 beträgt</code></li>
<li><code>Wenn der Artikelpreis 10 entspricht</code></li>
</ul>
<p>Die Bereitstellung dieser verschiedenen Formulierungen, die jeweils das identische technische Verhalten auslösen, ist für Tester aus verschiedenen Gründen von großem Vorteil. Zunächst muss sich der Autor der Tests nicht exakt an die genaue Schreibweise eines Testschritts erinnern, um die gewünschte Operation auszulösen. Diesem Problem ließe sich mit besserer Editorunterstützung begegnen, z. B. mit dem <a href="http://arnauld.github.com/jbehave-eclipse-plugin/">JBehave Eclipse Plugin</a>.</p>
<p>Darüber hinaus &#8211; und meiner Meinung nach ist dies der wichtigere Aspekt &#8211; erlaubt es, Test-Stories zu verfassen, die sowohl einfacher zu lesen, aber auch <em>zu schreiben</em> sind. Eine strikte Beschränkung auf genau eine gültige Formulierung pro Testschritt reißt Testautoren tendenziell aus dem Schreibfluss.</p>
<p>Im oben genannten Beispiel ist die Ähnlichkeit zwischen den drei Alternativen sehr deutlich. Sie beginnen alle mit der gleichen Einleitung, gefolgt von einer Variablen <code>$preis</code>, sowie einem jeweils unterschiedlichen Wort am Ende.</p>
<p>Diese Wiederholung von Text führt zu erheblicher Unordnung im Java Source und ist eine hervorragende Quelle für später schwer zu findende Copy und Paste Fehler.</p>
<p><span id="more-12390"></span></p>
<h2 id="dasbrandneuevariantenfeature">Neu: jetzt mit noch mehr <em>Varianten</em></h2>
<p>Um dem Wiederholungsproblem zu begegnen, schlug ich den JBehave Autoren eine erste Idee vor und stellte einen Patch bereit, um deren Umsetzbarkeit zu demonstrieren. Nach einer <a href="http://jira.codehaus.org/browse/JBEHAVE-702">kurzen Diskussion</a> &#8211; in deren Verlauf mir die Unzulänglichkeiten meines ersten Ansatzes klar wurden &#8211; entstand die Idee einer allgemeineren Muster-Syntax. Die Implementierung derselben habe ich als <a href="http://jira.codehaus.org/browse/JBEHAVE-702">Patch</a> zur Verfügung gestellt, und sie wird Teil des 3.6er Releases sein. Sie erlaubt das oben genannte Beispiel wie folgt zu vereinfachen:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">@When<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;der Artikelpreis $preis {ist|beträgt|entspricht}&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> derPreisIst<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">double</span> preis<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #666666; font-style: italic;">// ...</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Der Wert der <code>@When</code> Annotation enthält nun ein paar geschweifter Klammern, das mehrere an dieser Stelle zulässige Worte einschließt. Intern erzeugt JBehave alle Permutationen, die sich durch diese Option ergeben und behandelt sie gleichwertig, so als wären sie explizit ausformuliert. Natürlich ist diese Syntax auch in &#8220;normalen&#8221; <code>@Alias</code> Deklarationen möglich.</p>
<p>Es ist durchaus möglich, mehr als einen dieser Blöcke mit Optionen in einer Schritt-Definition mit <code>@Given</code>, <code>@When</code> oder <code>@Then</code> zu verwenden. Hier ein etwas komplexeres Beispiel:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;">@Then<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;{Muss|Sollte|Soll} A $x sein, {außer|es sei denn} es ist {Teil von|enthalten in} {der |}Liste $y&quot;</span><span style="color: #009900;">&#41;</span></pre></div></div>

<p>Wenn man das kurz durchrechnet, ergeben sich daraus insgesamt 24 Permutationen (oder eben &#8220;Varianten&#8221;, wie sie im JBehave Sprachgebrauch Einzug gehalten haben): </p>
<ul>
<li>Drei mögliche Werte für das erste Klammernpaar (&#8220;Muss&#8221;, &#8220;Sollte&#8221;, &#8220;Soll&#8221;)</li>
<li>Zwei mögliche Werte für das zweite Klammernpaar (&#8220;außer&#8221;, &#8220;es sei denn&#8221;)</li>
<li>Zwei mögliche Werte für das dritte Klammernpaar (&#8220;Teil von&#8221;, &#8220;enthalten in&#8221;)</li>
<li>Zwei mögliche Werte für das vierte Klammernpaar (&#8220;der&#8221; und ein Leerstring, womit das Wort &#8220;der&#8221; an dieser Stelle effektiv optional wird)</li>
</ul>
<p>Diese Varianten alle einzeln in den Source zu schreiben wäre sowohl initial als auch aus Wartungssicht nicht praktikabel. Die neue, sehr prägnante Schreibweise erlaubt es hingegen, dem Entwickler das Leben deutlich zu erleichtern, und gleichzeitig den Testautoren ein großes Maß an Flexibilität einzuräumen.</p>
<h2 id="daseclipseplugin">Das Eclipse Plugin</h2>
<p>Gemeinsam mit Arnauld, dem Autoren des <a href="http://arnauld.github.com/jbehave-eclipse-plugin/">JBehave Eclipse Plugin</a> (Sourcecode <a href="https://github.com/Arnauld/jbehave-eclipse-plugin">hier</a>), habe ich außerdem <a href="https://github.com/Arnauld/jbehave-eclipse-plugin/pull/18">dafür gesorgt</a>, dass im Plugin eine Snapshot Version von JBehave aufgenommen wurde, die die Varianten-Syntax unterstützt. Damit lässt sich ausprobieren, wie sich das Schreiben von Tests unter Ausnutzung des neuen Features anfühlt. Allerdings ist zu beachten, dass zur Ausführung der Testfälle derzeit noch kein JBehave Release zur Verfügung steht. Hierfür muss man sich die JBehave Quellen von <a href="https://github.com/jbehave">GitHub</a> clonen und selbst einen Snapshot bauen.</p>
<p>Sollten Sie das in der Vergangenheit (insbesondere <a href="http://jira.codehaus.org/browse/JBEHAVE-725">unter Windows</a>) schon einmal versucht haben, und dabei gescheitert sein, dürfte interessant sein zu wissen, dass das zugrundeliegende Problem dabei inzwischen <a href="https://github.com/jbehave/jbehave-core/commit/756b10ecf126bfef801c3b103aace5019420e6a1">behoben</a> sein sollte.</p>
<h2 id="einsatzbereit">Einsatzbereit</h2>
<p>In den vergangenen Wochen habe ich das neue Feature in einem Kundenprojekt produktiv eingesetzt und keine Probleme festgestellt &#8211; von daher gehe ich davon aus, dass es sich um eine produktiv einsetzbare Funktion handelt. Da sich Snapshot Versionen naturgemäß häufig und ggf. deutlich unterscheiden, lässt sich daraus allerdings keine allgemeingültige Freigabe ableiten. Hier ist also Vorsicht geboten, und je nach persönlicher Einstellung oder Unternehmensvorgabe könnte es angebracht sein, für den tatsächlichen Einsatz auf das finale JBehave 3.6 Release zu warten.</p>
<p>Nichtsdestotrotz hoffe ich, dass dieses neue Feature Anklang finden wird. Über jede Art von Feedback würde ich mich freuen.</p>
<p>Update: Nur ein paar Tage nach der Veröffentlichung dieses Beitrags wurde das 3.6 Release freigegeben. Jetzt steht dem Einsatz dieses neuen Features also nichts mehr im Wege. <img src='http://blog.codecentric.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2Fen%2F2012%2F04%2Feasier-jbehave-steps-with-variants%2F&#038;title=Easier+JBehave+steps+with+variants" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/jGDlhAYLMsI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/04/verbesserte-jbehave-steps-mit-varianten/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/04/verbesserte-jbehave-steps-mit-varianten/</feedburner:origLink></item>
		<item>
		<title>Web Performance Optimization Meetup in Köln: Das SPDY Protokoll</title>
		<link>http://feedproxy.google.com/~r/codecentric/~3/u_GsvzhK2m8/</link>
		<comments>http://blog.codecentric.de/2012/03/web-performance-optimization-meetup-in-koln-das-spdy-protokoll/#comments</comments>
		<pubDate>Fri, 30 Mar 2012 08:58:58 +0000</pubDate>
		<dc:creator>Fabian Lange</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://blog.codecentric.de/?p=12675</guid>
		<description><![CDATA[      
            
      Gestern habe ich auf dem Kölner Web Performance Meetup einen Vortrag mit Demo über das SPDY Protokoll gehalten. Vielen Dank für Eure Teilnahme und die gute Diskussion! Vielen Dank auch an Tobias Baldauf (@tbaldauf) und eco, Verband der deutschen Internetwirtschaft &#8230; <a href="http://blog.codecentric.de/2012/03/web-performance-optimization-meetup-in-koln-das-spdy-protokoll/">weiterlesen  <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[      
            
      <div style="float:right; padding-left:10px;">
<div style="width:425px" id="__ss_12203469"><iframe src="http://www.slideshare.net/slideshow/embed_code/12203469" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
</div>
<div>Gestern habe ich auf dem Kölner <a href="http://www.meetup.com/cologne-germany-high-performance-website-optimization-group/events/51518852/">Web Performance Meetup</a> einen Vortrag mit Demo über das SPDY Protokoll gehalten. Vielen Dank für Eure Teilnahme und die gute Diskussion!<br />
Vielen Dank auch an <a href="http://www.tobias-baldauf.de/">Tobias Baldauf</a> (<a href="https://twitter.com/#!/tbaldauf">@tbaldauf</a>) und <a href="http://www.eco.de/">eco, Verband der deutschen Internetwirtschaft e.V.</a> für das Ausrichten des Abends.</p>
<p>Fotos gibt es auf der MeetUp Seite, und einen Termin für das <a href="http://www.meetup.com/cologne-germany-high-performance-website-optimization-group/events/58506562/">nächste Meetup</a> gibt es auch schon: 26. April.<br />
Thema dann wird unter anderem sein: &#8220;<a href="https://www.varnish-cache.org/">Varnish</a>&#8221; von <a href="http://www.denderello.com/">Dennis Benkert</a> (<a href="https://twitter.com/#!/denderello">@denderello</a>).<br />
Die Folien für meinen Vortrag über SPDY sind auf slideshare: <a href="http://www.slideshare.net/fabianlange/the-spdy-protocol" title="The SPDY Protocol" target="_blank">The SPDY Protocol</a><br />
Viel Spaß beim Ausprobieren!
</div>
<p><br clear="all"/>
<div class="dzone_button" style="float: right;     margin-top: 30px">
<iframe src="http://widgets.dzone.com/links/widgets/zoneit.html?t=2&#038;url=http%3A%2F%2Fblog.codecentric.de%2F2012%2F03%2Fweb-performance-optimization-meetup-in-koln-das-spdy-protokoll%2F&#038;title=Web+Performance+Optimization+Meetup+in+K%C3%B6ln%3A+Das+SPDY+Protokoll" height="25" width="155" scrolling="no" frameborder="0"></iframe>
</div>
<img src="http://feeds.feedburner.com/~r/codecentric/~4/u_GsvzhK2m8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.codecentric.de/2012/03/web-performance-optimization-meetup-in-koln-das-spdy-protokoll/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.codecentric.de/2012/03/web-performance-optimization-meetup-in-koln-das-spdy-protokoll/</feedburner:origLink></item>
	</channel>
</rss><!-- This Quick Cache file was built for ( 80 blog.codecentric.de/feed/ ) in 2.67934 seconds, on May 16th, 2012 at 8:26 pm UTC. --><!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on May 16th, 2012 at 9:26 pm UTC --><!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --><!-- Quick Cache Is Fully Functional :-) ... A Quick Cache file was just served for ( 80 blog.codecentric.de/feed/ ) in 0.00037 seconds, on May 16th, 2012 at 9:07 pm UTC. -->

