Agil: das größte ideologische Problem in der IT

Bild

Im Jahr 2001 traf sich eine Gruppe von Technologen und Programmierern, die nicht triviale Theorien darüber austauschten, wie Softwareentwicklung verwaltet werden sollte, im Skigebiet Snowbird, um einige dieser Konzepte schriftlich niederzuschreiben. So wurde das Agile Manifest geboren - ein täuschend einfaches Dokument, das das Dogma der Softwareentwicklung neu definieren soll. Die Softwareentwicklung im agilen Stil hat sich zu einem neuen Standard für die Organisation der Arbeit von Programmierern in einer Organisation entwickelt. Unternehmen wie Facebook , Amazon , Apple , Google und Netflix haben ihre internen Entwicklungsprozesse gemäß den grundlegenden Bestimmungen dieses Manifests aufgebaut. Angesichts der Größe von Agile und seiner öffentlichen Resonanz bei den Befürwortern ist leicht zu erkennen, dass Agile die einflussreichste aller formalisierten Interpretationen der Softwareentwicklung ist. Agile ist jedoch eine Ideologie. Das normative System von Werten und Überzeugungen, fast bis zur Aufnahme in das Geschäft der Softwareentwicklung. Daher bietet die Softwareindustrie heute eine interessante Gelegenheit zu bewerten, wie die nominalen Ziele einer bestimmten Ideologie mit ihrer praktischen Umsetzung übereinstimmen.

Im Wesentlichen war Agile ein Aufstand gegen die Unternehmensdominanz in der Softwareentwicklung. Zum ersten Mal wurde erkannt, dass Softwareentwicklung ein komplexer und oft mysteriöser Prozess ist, der vor Unternehmensbürokratisierung geschützt werden muss. Veränderung, Neuerfindung, Flexibilität, Dynamik - das sind die roten Fäden, die sich durch das Agile-Manifest ziehen. Sie erwiesen sich als unendlich attraktiv: Einer globalen Studie zufolge praktizieren etwa 97% aller Organisationen in der einen oder anderen Form die Prinzipien von Agile. Dank dieser weit verbreiteten Verbreitung hat Agile eine vollständige Nominalisierung in der Theorie des Softwareentwicklungsmanagements erreicht: Der Begriff „agil“ bezieht sich heute auf die Ideologie, Arbeitsmethoden und sogar die Systeme, die zur Entwicklung von Software in einer modernen Organisation verwendet werden. Agile geht sogar über Programmierteams hinaus und wird zunehmend in anderen Teams praktiziert, die beispielsweise für Finanzen oder Personalmanagement verantwortlich sind. Agile, interpretiert als universelle Managementtheorie, hat sich als äußerst zugänglich und beliebt erwiesen - trotz des Mangels an empirischen Beweisen für seine Wirksamkeit und Nützlichkeit.

Interessanterweise versucht das Agile-Manifest nicht, bestimmte Arbeitsmethoden, Regeln, Prozesse, Systeme oder Strukturen zu artikulieren, die zur Entwicklung von Agile-Software beitragen würden. Dies ist nicht überraschend: Schließlich hat das Agile Manifest nie behauptet, eine detaillierte Beschreibung zu haben, wie die Ziele dieses Manifests erreicht werden können. Eine solch klare Unschärfe hat die Popularität von Agile nicht gemindert: Tatsächlich führte die rasante Nachfrage nach bestimmten agilen Methoden und Werkzeugen zur Entstehung einer Metaindustrie, die auf agilen Ressourcen basiert. Dieses Interesse stimulierte die Einführung von Agile, das Eindringen der Ideologie von Agile und seiner Derivate in neue Industrien. Die am klarsten definierten agilen Methoden (z. B. Scrum und Kanban - dh detaillierte Beschreibungen der Prozesse, die zur Implementierung der Prinzipien des agilen Manifests befolgt werden müssen) und spezielle Softwareplattformen, die speziell zur Unterstützung der agilen Entwicklung entwickelt wurden, erwiesen sich als am deutlichsten. Das australische Technologieunternehmen Atlassian verkauft eine Reihe von Produkten zur Unterstützung von Softwareentwicklungsprozessen im agilen Stil. Besonders hervorzuheben sind Confluence und Jira, die de facto zu Industriestandards geworden sind. Für diejenigen, die nicht in der Technologie-Community gekocht werden, scheinen solche Produkte ziemlich mysteriös. Eine Reihe von erklärenden Artikeln erschien, bevor Atlassian unmittelbar danach auf die NASDAQ-Listen kam. Die Artikel sollten erklären, was genau Atlassian verkauft und warum das Unternehmen eine so hohe Marktkapitalisierung erreicht hat.

Wie bei Atlassian-Softwareprodukten ist auch das Vokabular, das agile Prozesse und tägliche Arbeitsmethoden beschreibt, für Uneingeweihte zunehmend undurchdringlich geworden. Agile Praktiker sprechen über Sprints, Kanban-Boards, Aufgabendiagramme, Geschwindigkeiten, User Stories, Epen und Rückblicke - die Bedeutung all dieser Wörter ändert sich häufig je nach Kontext, und diese Begriffe selbst können mit einer oder mehreren klar definierten agilen Methoden verknüpft werden. Ist es kein Wunder, dass es mit zunehmender Komplexität der Agile-Methodik eine wachsende Kohorte von Fachberatern gibt, die dazu beitragen, all dies zu verstehen? Bain & Company verfügt über ungefähr 1.000 agile Praktiker. Dies ist vielleicht der zuverlässigste Indikator dafür, wie profitabel die agile Beratungsbranche geworden ist. Wenn das Agile-Manifest jedoch so einfach ist, wie es auf den ersten Blick scheint, warum gibt es dann so viele Berater? Wie spürbar wirken sich die Dienstleistungen eines von ihnen auf die Qualität und Effektivität der Arbeit in einem typischen Technologieunternehmen aus?

Trotz des Wortschatzes, der speziellen Tools und einer Vielzahl von Ressourcen, die jedem zur Verfügung stehen, der in seinem Unternehmen Softwareentwicklung im agilen Stil üben möchte, ist es oft schwierig zu verfolgen, wie genau Agile in der Praxis implementiert wird - das heißt, es entspricht dem Geist und dem Buchstaben, den die Autoren im Manifest aufgezeichnet haben Agil Das Agile Manifest wird absichtlich und unweigerlich abstrakt gemacht. Möglicherweise führte dies zu einer allmählichen Verzerrung der agilen Methodik und infolgedessen der gesamten Managementkultur in der Softwareindustrie als solcher. Etwas Kolossales wurde auf scheinbar einfachen Grundlagen aufgebaut - ein Mechanismus, der diejenigen äußerst enttäuschte, die den Grundstein für seine erste Iteration legten. Aufgrund der langen Beliebtheit von Agile verloren Spezialisten ohne formale Agile-Qualifikation den Wettbewerb mit Kollegen, die sich angeblich professionell mit Agile auskennen. Viele Karriereprämien warten auf diejenigen, die behaupten, das Agilr-Gerät zu verstehen und zu wissen, wie man es benutzt. Eine solche Realität regt den Konformismus an und übertönt alle Versuche, die Dominanz von Agile anzuzweifeln oder eine Frage nach seiner Wirksamkeit zu stellen.

Andy Hunt, einer der Gründungsautoren des Agile-Manifests, beklagt, dass aufgrund der abstrakten Formulierung des ursprünglichen Manifests endlose Regeln aufgetaucht und verbreitet wurden, die außerhalb des Kontexts verwendet werden und angeblich die Grundlage für die Entwicklung des Agile-Stils bilden. Im Laufe der Zeit werden solche Regeln in Form spezieller Methoden kodifiziert, die gedankenlos befolgt werden müssen, wobei die ursprünglichen Richtlinien des Manifests vergessen werden müssen. Mit anderen Worten, es hat sich als äußerst schwierig erwiesen, die agile Ideologie zu studieren, zu lernen und zu praktizieren. Daher stützen sich einige Charaktere auf streng definierte Regeln oder Heuristiken, die als agil ausgegeben werden, und ersetzen diese Regeln (oft aus dem Zusammenhang gerissen) weiterhin durch agile Praktiken, die mit den Zielen des Manifests übereinstimmen. In den meisten Organisationen erfolgt keine schrittweise Verfeinerung des Entwicklungsprozesses. Stattdessen geraten Manager in einen Irrtum, weil sie glauben, dass der Prozess keine Änderungen zulässt, lehnen eine schrittweise Verbesserung des Produkts ab und bemühen sich, drei Skins von den Entwicklern abzureißen, wobei sie hauptsächlich mit Kanonen arbeiten, die von der Decke genommen und starr fixiert wurden. Unternehmen, die keinen wirklichen Nutzen aus Agile ziehen (und es gibt viele von ihnen), tendieren natürlich dazu, die Implementierung eines bestimmten Agile-Prozesses zu überwachen, während sie die unschärferen, aber wichtigeren Ergebnisse des Prozesses ignorieren, dh die Bereitstellung funktionsfähiger Software.

Die Blütezeit von Scrum und Kanban ist bestenfalls ein Versuch, die agile Ideologie zu formalisieren und zu verbreiten. Im schlimmsten Fall sind alle diese Methoden nichts anderes als eine zusätzliche Bürokratie, die immer neue unangemessene Regeln und Metriken generiert, denen Entwickler folgen müssen. All dies wird aus Gründen auferlegt, die oft nicht vollständig empirisch gestützt werden. Unter solchen Bedingungen gedeihen mittelmäßige Manager, Berater, Entwickler und sogar ganze Organisationen: Es wird einfacher, sich auf die nominalen Regeln der Ideologie zu konzentrieren, und dies stellt sich allmählich als vorrangiger heraus als das Erreichen realer Ziele. Grundsätzlich gibt es in der Softwareentwicklungsbranche eine Manie mit der Messung von „Beitrag“ und „Rendite“ von Agile auf der Ebene der einzelnen Mitarbeiter. Eine solche Manie hat dazu geführt, dass die ursprüngliche agile Ethik vernachlässigt wurde, die Prioritäten für die Erfassung von Statistiken für jeden einzelnen Mitarbeiter verschoben wurden, während es tatsächlich notwendig ist, die Prozesse auf der Ebene der gesamten Organisation schrittweise zu verbessern.

Die größte Ironie dieser Entartung ist, dass die ursprüngliche agile Philosophie den durchschnittlichen Programmierer von der Tyrannei des Mikromanagements und der unnötigen bürokratischen Kontrolle befreien sollte. Stattdessen ist das Wesen dieser Ideologie in ihrer gegenwärtigen Form für diejenigen, die sie geschaffen haben, bereits schwer zu erkennen. Allgemeiner ist das Schicksal von Agile als Softwaremethode ein bitteres Beispiel dafür, wie eine lakonische und abstrakte Ideologie mit zunehmendem Einfluss allmählich verzerrt und verzerrt wird und immer mehr Versuche unternommen werden, sie in die Praxis umzusetzen.

Source: https://habr.com/ru/post/de448668/


All Articles