<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://www.aspnetzone.de/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Search results matching tags 'Software Craftsmanship' and 'Agile'</title><link>http://www.aspnetzone.de/search/SearchResults.aspx?o=DateDescending&amp;tag=Software+Craftsmanship,Agile&amp;orTags=0</link><description>Search results matching tags 'Software Craftsmanship' and 'Agile'</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61120.2)</generator><item><title>Das Agile Development Framework</title><link>http://www.aspnetzone.de/blogs/juergengutsch/archive/2011/02/14/das-agile-development-framework.aspx</link><pubDate>Mon, 14 Feb 2011 06:41:00 GMT</pubDate><guid isPermaLink="false">ce930855-ae9b-4fa4-8077-06a76071cc6a:220969</guid><dc:creator>Jürgen Gutsch</dc:creator><description>&lt;P&gt;&lt;IMG style="MARGIN-BOTTOM:10px;MARGIN-LEFT:10px;" align=right src="http://www.agile-development-framework.net/Images/Logo.png"&gt;Noch vor ein paar Monaten hatte ich mit eine Art umfassendes Handbuch für Software-Handwerker gewünscht (Siehe: &lt;A href="http://www.aspnetzone.de/blogs/juergengutsch/archive/2010/09/24/gedankenspiel-softwareentwicklung-als-handwerkskunst.aspx"&gt;Gedankenspiel: Software-Entwicklung als Handwerkskunst&lt;/A&gt;) und wieder sind wir diesem Handbuch ein Stück näher gekommen. Nicht mehr lang und jeder Software-Handwerker greift sich an den Allerwertesten, zückt sein Handbuch und fragt es um Rat. Ganz egal um was für ein Problem es sich gerade handelt.&lt;/P&gt;
&lt;P&gt;Mit dem &lt;A href="http://www.agile-development-framework.net"&gt;Agile Development Framework&lt;/A&gt; (ADF) fasst &lt;A href="http://www.goloroden.de"&gt;Golo Roden&lt;/A&gt; die Vorteile der unterschiedlichen Agilen Methoden und Ansätze zusammen zu einem gesamten Framework, dass alle Situationen abdecken kann.&lt;/P&gt;
&lt;P&gt;Wenn man die Dokumentation zu ADF liest, fallen einem gleich die alten Bekannten aus Scrum, Extreme Programming, Kanban und der Crystal Family auf, die hier teilweise mit neuen Bezeichnungen und in leicht abgewandelter Form erscheinen. Die neu gewählten Bezeichnungen führen zu einem klaren Schnitt zwischen den bekannten Methoden und ADF.&lt;/P&gt;
&lt;P&gt;Die Integration der Prinzipien und Praktiken der Clean-Code-Developer Initiative und der klare Verweis auf CCD runden alles ab. Es ist also nicht nur ein einfaches leeres Rahmenwerk entstanden, sondern ein Rahmenwerk mit konkreten Ideen und Vorstellungen zur Umsetzung von Code, zur Entstehung von Software und zur Weiterentwicklung der Individuen.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;Golo Roden über ADF: &lt;BR&gt;&lt;/STRONG&gt;„Das Agile Development Framework (ADF) ist eine mehrstufige, den gesamten Entwicklungsprozess und alle beteiligten Rollen umfassende Stream-basierte agile Methode für vereinte, verstreute und verteilte Teams zur flexiblen, konstruktiven und evolutionären Entwicklung qualitativ hochwertiger Software.”&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Die Beschreibung verspricht viel. Zu viel?&lt;/P&gt;
&lt;P&gt;Nein, auf keinen Fall. Wer schon mal versucht hat eine agile Methode in einem Unternehmen einzuführen, das eigentlich kein Unternehmen ist, welches von Haus aus Software entwickelt, stößt früher oder später an Grenzen. Auch wenn die agile Methode zuerst mit Begeisterung aufgenommen und umgesetzt wird, sind diese Grenzen da und sorgen für Verwirrung und Unmut. “Agile Ja, aber ohne uns anzupassen” ist das was man zwischen den Zeilen heraushört. “Die Agile Methode behindert uns bei unserer bisherigen Art zu arbeiten.” Immer öfter werden die neu eingeführten Prozesse gestört, ignoriert und durchbrochen.&lt;/P&gt;
&lt;P&gt;Golo verspricht viel, aber er verspricht auch eine flexible Methode die kontinuierlich eingeführt werden kann und nicht gleich im gesamten Unternehmen eingeführt werden muss, sondern die Einführung beginnt kontinuierlich bei den Individuen (“ADF White”). Sind die einzelnen Entwickler soweit, dass sie ADF leben und umsetzen kann das gesamte Team nach ADF arbeiten (“ADF Blue”). Macht letztendlich das gesamte Unternehmen mit, so haben wir “ADF Grey” erreicht:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://www.agile-development-framework.net/Images/Documentation/Structure.png"&gt;&lt;/P&gt;
&lt;P&gt;Im Falles des obigen Unternehmens ist es eine agile Methode ohne iterative Softwareauslieferung, ohne Wartezeit, ohne das der Scrum-Master die Ausführung der Kundenprojekte behindert. Das bedeutet, für das Unternehmen ändert sich erst mal groß nichts, sondern nur für das Team und dessen Mitglieder. Die Änderungen für das Unternehmen sind erst mal Minimal. Wie früher zu Chaoszeiten, kann das Unternehmen nun wieder jederzeit eine Software ausliefern. Der kleine feine Unterschied ist, dass diese Software qualitativ hochwertiger ist als zuvor. Das Team ist ein anderes, es arbeitet anders und es ist wie ausgetauscht.&lt;/P&gt;
&lt;P&gt;Im folgenden die Vorteile von ADF:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;STRONG&gt;1 Multifunktionales Werkzeug &lt;BR&gt;&lt;/STRONG&gt;Das Agile Development Framework ist das Schweizer Messer unter den agilen Methoden: Da ADF den gesamten Entwicklungsprozess und alle beteiligten Rollen umfasst, werden Reibungsverluste und Aufwände vermieden – die in der Regel durch die Kombination verschiedener agiler Methoden verursacht werden.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;2 Flexible und zeitnahe Entwicklung &lt;BR&gt;&lt;/STRONG&gt;Als Stream-basierte agile Methode ermöglicht das Agile Development Framework flexible und zeitnahe Reaktionen auf intrinsische und extrinsische Faktoren – wie den Kontext durch sich verändernde Rahmenbedingungen, den Kunden durch neue und veränderte Anforderungen und das Team durch neue Technologien und Konzepte.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;3 Kosten senken und Effizienz steigern &lt;BR&gt;&lt;/STRONG&gt;Der Einsatz des Agile Development Frameworks führt zu qualitativ hochwertigerer Software bei gleichzeitiger Reduktion des dafür benötigten Aufwands – die Maximen Evolution, Eleganz, Kommunikation und Vertrauen führen zu Synergieeffekten, geringeren Kosten und gesteigerter Effizienz innerhalb von Teams und des ganzen Unternehmens.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;4 Qualitativ hochwertige Software &lt;BR&gt;&lt;/STRONG&gt;Das Agile Development Framework fördert minimalistisches, klares und zielführendes Design – auf diese Art entstehen qualitativ hochwertige und elegante Lösungen, die zwar einfach, aber zugleich auch konsistent, tragfähig und für die Zukunft evolvierbar sind.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;5 Bewährte Vorgehensweisen &lt;BR&gt;&lt;/STRONG&gt;In der Praxis bewährte Vorgehensweisen bilden die Basis des Agile Development Frameworks – auf diese Art werden etablierte und bereits erprobte Methoden mit neuen Ansätzen zu einem leistungsfähigen Ganzen kombiniert.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;6 Fokus auf Ergebnisse &lt;BR&gt;&lt;/STRONG&gt;Im Rahmen des Agile Development Frameworks zählt das Ergebnis, nicht der Weg dorthin – es fokussiert also auf die gleichen Werte und Ziele wie der Kunde. Die Konzepte, Richtlinien und der Prozess von ADF tragen daher ihren Teil dazu bei, die gemeinsam gesetzten Ziele effizient und für alle beteiligten Rollen zufriedenstellend zu erreichen.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;7 Freiraum zum Lernen und Wachsen &lt;BR&gt;&lt;/STRONG&gt;Individuen, Teams und Unternehmen müssen sich weiterentwickeln können – ebenso wie Ideen, der Kunde und der Kontext eines Projekts. Deshalb schafft das Agile Development Framework Freiräume zum Lernen und Wachsen und berücksichtigt die individuellen Anforderungen der einzelnen Rollen.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;8 Leicht einzuführen &lt;BR&gt;&lt;/STRONG&gt;Das Agile Development Framework kann von Individuen, Teams und Unternehmen Schritt für Schritt eingeführt werden – dies vereinfacht die Einführung, da Aufwände und Risiken minimiert werden. Zudem kann ADF damit den individuellen Bedürfnissen angepasst werden, da eine Einführung zunächst in strategisch ausgewählten Bereichen stattfinden kann.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;9 Konstruktives und zukunftsgerichtetes Vorgehen &lt;BR&gt;&lt;/STRONG&gt;Evolution ist die Voraussetzung, sich zeitnah an einen sich beständig verändernden Kontext optimal anzupassen. Daher verfolgt das Agile Development Framework ein konstruktives und zukunftsgerichtetes Vorgehen – allerdings nicht unreflektiert, sondern unterstützt dies durch regelmäßige Retrospektiven und aktive Reflektion.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;10 Technologieneutral &lt;BR&gt;&lt;/STRONG&gt;Das Agile Development Framework ist unabhängig von der Wahl einer Technologie oder eines Herstellers – das bedeutet, dass Individuen, Teams und Unternehmen ADF unabhängig davon nutzen können, welche Technologie im konkreten Fall verwendet wird.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Ich bin überzeugt. dass wir mit ADF ein weiteres Werkzeug in der Hand halten, dass uns hilft dort einzugreifen, wo herkömmliche agile Methoden (“herkömmlich agil” ist IMO heute kein Paradoxon mehr *fg*) nicht greifen können oder wollen. Die Hemmschwelle in Unternehmen dürfte durch die kontinuierliche Einführung wesentlich geringer sein. Eine Einführung bis “ADF Blue” hat nur so geringe Auswirkungen auf das Unternehmen, dass dieses bei den genannten Vorteilen eigentlich keine andere Wahl hat. Eine Einführung bis “ADF White” bekommt das Unternehmen gar nicht erst zu spüren, wie auch TDD ist das eine Arbeitsweise, eine Einstellung eines einzelnen Entwicklers, dem keiner zu widersprechen hat solange das Ergebnis stimmt.&lt;/P&gt;
&lt;P&gt;Mit ADF bin ich nun meinem universellen Software-Handwerker-Handbuch ein großes Stückchen näher :-)&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Übrigens&lt;/STRONG&gt; ist in der aktuellen &lt;A href="http://www.dotnetpro.de/"&gt;dotnetpro&lt;/A&gt; (Ausgabe 03.2011, die heute am Kiosk erscheint) ein Überblick über ADF enthalten.&lt;/P&gt;
&lt;DIV style="TEXT-ALIGN:left;PADDING-BOTTOM:4px;MARGIN:0px;PADDING-LEFT:4px;PADDING-RIGHT:4px;PADDING-TOP:4px;" class=wlWriterHeaderFooter&gt;&lt;A href="http://dotnet-kicks.de/kick/?url=http://www.aspnetzone.de/blogs/juergengutsch/archive/2011/02/14/das-agile-development-framework.aspx"&gt;&lt;IMG border=0 alt="DotNetKicks-DE Image" src="http://dotnet-kicks.de/Services/Images/KickItImageGenerator.ashx?url=http://www.aspnetzone.de/blogs/juergengutsch/archive/2011/02/14/das-agile-development-framework.aspx&amp;amp;bgcolor=3169AD&amp;amp;fgcolor=FFFFFF&amp;amp;border=000000&amp;amp;cbgcolor=D4E1ED&amp;amp;cfgcolor=000000"&gt;&lt;/A&gt;&lt;/DIV&gt;</description></item></channel></rss>