Keine Artikel gefunden.

Foodbar Nah

Inhalt
Dies ist ein Text innerhalb eines div-Blocks.
Dies ist ein Text innerhalb eines div-Blocks.
Dies ist ein Text innerhalb eines div-Blocks.
Abonnieren Sie unseren Newsletter

Oder warum Sie Beispielvariablen aussagekräftige Namen geben sollten

Frustriert beugte ich mich über meinen Schreibtisch und unterdrückte den Drang zu schreien, um das rhythmische Klackern meiner Kollegen nicht zu stören. Ich war den ganzen Morgen über ein besonders fieses Problem beim unendlichen erneuten Rendern von React frustriert, das ich einfach nicht zum Laufen bringen konnte. Der Drang zu schreien kam, als ich mich, mein eigener Werkzeugkasten erschöpft, an Google wandte.

Sie sehen, es sah so aus, als wäre jemand anderes auf dasselbe Problem gestoßen und hätte beschlossen, eine Lösung für Wohlstand (und Internetpoints) aufzuzeichnen. Ich suchte eifrig auf der Seite nach dem Beispielcode, der mir den Morgen retten würde. Als ich ihn fand, wurde mein Blick auf den gefürchteten FooBarbaz gelenkt und ich wusste, dass mein Morgen noch viel schlimmer werden würde, bevor er besser wurde.

Ich liebe die Geschichte des Programmierens und die kleinen Ostereier, die andere Entwickler weitergegeben haben (mein persönlicher Favorit - Ich bin eine Teekanne). Diese tragen dazu bei, dass diese Arbeit mit Computern viel unterhaltsamer und menschlicher ist. Ich verstehe, dass die Verwendung von FooBarbaz bei der Benennung von Beispielfunktionen und Variablen eine lange und geschichtsträchtige Tradition hat, die mindestens bis in die Tech Model Railroad Club am MIT, um 1960. Ich erkenne an, dass die Verwendung von FooBarbaz in erster Linie nicht dazu dient, von dem, was gezeigt wird, ablenken zu lassen. Ich denke auch, dass wir so gut wie aufhören sollten, sie zu benutzen.

Ich bin immer wieder beeindruckt von der Menge an Informationen, die meine Entwicklerkollegen im Internet für mich weggelassen haben. So viele Menschen in diesem Bereich scheinen ein angeborenes Bedürfnis zu haben, anderen zu helfen, was dazu führt, dass sie unzählige Stunden investieren, um Stack Overflow und Blogs mit nützlichen Informationen zu füllen. Ich kann mir nur vorstellen, dass die Leute, die ihre Zeit und Mühe in dieses Ziel investieren, hoffen, dass ihre Bemühungen so vielen Menschen wie möglich helfen werden. fooBarbaz steht dem im Weg.

Lassen Sie mich für eine Sekunde meinen Entwicklerhut abnehmen und meinen kürzlich weggeworfenen, leicht unförmigen und angeschlagenen Psychologen-Hut aufsetzen. Das Verweben komplexer Fakten zu Geschichten ist eine bewährte Technik, die das Lernen erleichtert. Hier in Australien wurde die Technik wird seit Zehntausenden von Jahren von den Aborigines und den Torres Strait Islandern genutzt um ihnen zu helfen, sich wichtige und komplexe Informationen wie die Standorte von Wasserlöchern in weiten Teilen der unwirtlichen Wüste zu merken. Unser Gehirn besteht aus Netzwerken miteinander verbundener Neuronen. Es ist also wahrscheinlicher, dass wir an dem Gelernten festhalten, wenn wir in der Lage sind, neue Informationen in unsere aktuelle Wissensbasis zu integrieren. Der moderne Begriff dafür lautet assoziatives Lernen.

Darüber hinaus war es, wie Sie sich sicher aus der Schule erinnern werden, das Lernen interessant zu halten gezeigt ein starker Motivator zu sein, der das Lernen anregt.

Wenn wir uns all diese Zeit und Mühe nehmen, um mit unseren Entwicklerkollegen zu kommunizieren, können und sollten wir den Vorteil des assoziativen Lernens und der intrinsischen Motivation nutzen, um sicherzustellen, dass die Informationen, die wir veröffentlichen, für so viele Menschen wie möglich nützlich wie möglich sind. Deshalb glaube ich, dass wir bei der Erstellung von Beispielcode genauso viel über sinnvolle Benennungen nachdenken sollten wie in unseren eigenen Codebasen.

Marijn Haverbekes Beredtes Javascript steht regelmäßig an der Spitze Listen von Büchern, die Sie lesen sollten, wenn Sie Javascript lernen (JS). Es ist kein Zufall, dass er auch ein Meister darin ist, aussagekräftige Namen zu verwenden, um Menschen zu helfen, die Prinzipien der Codierung besser zu verstehen. Wenn er neuen Programmierern den Vergleich von Zeichenketten in JS beibringt, verwendet er das folgende Beispiel:

console.log("Itchy" != "Scratchy"); // → true

Marijn nutzt unser vorhandenes Wissen über Springfields Lieblings-Zeichentrickfiguren, um diesem Beispiel zusätzliche Bedeutung und Interesse zu verleihen. Wir wissen, dass Itchy und Scratchy jeweils eine Maus und eine Katze sind und daher definitiv nicht dasselbe sind.

Betrachten Sie dasselbe Beispiel, aber stattdessen mit dem gefürchteten Foo/Bar gerendert:

console.log("Foo" != "Bar"); // → true

Für erfahrene Entwickler ist das vielleicht leicht zu analysieren: Sie haben Hunderte von Beispielen wie diesem gelesen und so den Zusammenhang zwischen Foo und Bar gelernt und verinnerlicht. Dies stellt jedoch eine Lernbarriere für neue Entwickler dar, die diese Regel noch nicht verinnerlicht haben, und erhöht stattdessen die mentale Belastung für sie, das Konzept zu verstehen. Es fehlt auch daran, den kleinen Funken von Interesse oder Freude zu erzeugen, um das Interesse der Leser zu wecken und so ihre Motivation zu steigern, das zugrundeliegende Konzept zu verstehen.

Ich sage nicht, dass FooBarbaz absolut keinen Platz hat (obwohl ich denke, dass ihr Nutzen begrenzt ist). Der beste Weg, diese Begriffe zu verwenden, besteht darin, zu betonen, dass alles an einem bestimmten Ort platziert werden kann. Ein Beispiel dafür ist, wenn wir über Argumente und Parameter in JS-Funktionen sprechen. Sie sehen, in Vanilla JS gibt es keine Typüberprüfung. Wenn wir also eine Funktion wie die folgende haben, die einen Parameter akzeptiert und seinen Wert einfach in der Konsole protokolliert, spielt es keine Rolle, welche Art von Argument wir übergeben:

const consoleLogParameter = (foo) => {   console.log(foo); };  const bar = “bar”; const baz = 42;  consoleLogParameter(bar); // → “bar”;  consoleLogParameter(baz); // → 42;

Ich glaube, dass diese Begriffe in diesem Fall am nützlichsten sind, da sie betonen sollen, dass ihr Typ keine Rolle spielt. Ich möchte auch den Vorbehalt hinzufügen, dass die Verwendung dieser Begriffe auf diese Weise nur geeignet ist, wenn Sie Inhalte für erfahrene Entwickler produzieren, die sich ein funktionierendes Verständnis dieser Begriffe erarbeitet haben.

Auch wenn sich das an erfahrene Entwickler richtet, glaube ich immer noch, dass aussagekräftigere Namen in diesem Beispiel besser wären:

const consoleLogParameter = (anyTypeOfData) => {   console.log(anyTypeOfData); };  const name = “Homer Simpson”; const age = 39;  consoleLogParameter(name); // → “Homer Simpson”;  consoleLogParameter(age); // → 39;

Ein anderes Beispiel, bei dem aussagekräftigere Variablennamen nützlich wären, bezieht sich auf metasyntaktische Variablen. Diese Variablen sind häufig im Quellcode zu finden und sollen vor der realen Verwendung geändert oder ersetzt werden. Diese Variablen sind zwar nur Platzhalter, aber ich glaube, dass es auch besser ist, einen Variablennamen zu verwenden, der Ihrem Entwicklerkollegen mehr Kontext bietet, um ihn beim Lesen und Implementieren des Codes in Zukunft zu unterstützen.

Wir arbeiten in einem wunderbaren Beruf mit einer reichen Geschichte, in dem viele Menschen bereit sind, ihre Zeit zu investieren, um ihre Programmiererkollegen auszubilden und zu betreuen. Die Verwendung aussagekräftiger Variablennamen anstelle von fooBarbaz ist eine Möglichkeit, sicherzustellen, dass sich dieser Aufwand lohnt und so vielen Menschen wie möglich hilft. Es senkt die Zugangsbarrieren für den Beruf und trägt zur Schaffung eines vielfältiger und eine freundliche Programmiergemeinschaft.

Also lass den FooBarbaz fallen (aber nicht den Teekanne) und geh raus und entfacht Freude!

Keine Artikel gefunden.

Verwandte Artikel

  • Workflow

    8 Methoden der Softwareentwicklung erklärt

    Softwareentwicklungsteams sind dafür bekannt, eine Vielzahl agiler Methoden, Ansätze und Tools einzusetzen, um Kunden einen Mehrwert zu bieten. Je nach den Bedürfnissen des Teams und der am Produkt Beteiligten ist es üblich, dass Teams eine Kombination von Softwareentwicklungsmethoden einsetzen und nutzen.

    Die meisten Entwicklungsteams kombinieren Methoden und Frameworks, um ihren eigenen einzigartigen Ansatz für die Produktentwicklung zu entwickeln. Sie werden feststellen, dass sich viele Prinzipien von einer Methode zur nächsten überschneiden. Der Schlüssel liegt darin, ein System auszuwählen und als Team daran zu arbeiten, diesen Ansatz zu verfeinern und zu verbessern, damit Sie weiterhin Verschwendung reduzieren, die Effizienz maximieren und die Zusammenarbeit optimieren können.

    In diesem Beitrag werden wir die folgenden acht Softwareentwicklungsprozesse skizzieren und vergleichen:

    1. Methodik der agilen Softwareentwicklung

    2. Wasserfall-Methodik

    3. Funktionsorientierte Entwicklung (FDD)

    4. Methodik der schlanken Softwareentwicklung

    5. Methodik der Scrum-Softwareentwicklung

    6. Extreme Programmierung (XP)

    7. Schnelle Anwendungsentwicklung (RAD)

    8. DevOps-Bereitstellungsmethodik

    Illustration of a female character with phone UI

    1. Methodik der agilen Softwareentwicklung

    Agil ist der gebräuchlichste Begriff zur Beschreibung von Entwicklungsmethoden. Er wird häufig als Überbegriff für Methoden verwendet, die agil sind. Dabei handelt es sich um einen iterativen Prozess, der Verschwendung reduziert und die Effizienz maximiert.

    Die meisten Softwareentwicklungsmethoden sind agil und legen im Gegensatz zum traditionellen Projektmanagement einen starken Schwerpunkt auf Iteration, Zusammenarbeit und Effizienz. Es ist, als würde man Jazz mit klassischer Musik vergleichen. 🎷

    Traditionelle, lineare Managementmethoden, wie die Wasserfallmethode, auf die wir weiter unten eingehen werden, sind wie klassische Musik, die von einem Dirigenten geleitet wird, der einen festen Plan hat, wie die Musik gespielt werden sollte. Der agile Prozess ähnelt dagegen eher dem Jazz, der durch Zusammenarbeit, Experimente und Iteration zwischen den Bandmitgliedern zustande kommt. Er ist anpassungsfähig und entwickelt sich mit neuen Ideen, Situationen und Richtungen weiter.

    2. Die Wasserfall-Methodik

    Das Wasserfall-Ansatz ist eine traditionelle Methode, die in der Softwareentwicklung nicht mehr sehr verbreitet ist. Viele Jahre lang war das Wasserfallmodell die führende Methode, aber sein starrer Ansatz konnte den dynamischen Anforderungen der Softwareentwicklung nicht gerecht werden.

    Es ist üblicher, dass die Wasserfallmethode eher für das Projektmanagement als für die Produktentwicklung verwendet wird. Zu Beginn eines Projekts sammeln Projektmanager alle notwendigen Informationen und verwenden sie, um im Vorfeld einen fundierten Aktionsplan zu erstellen. Normalerweise ist dieser Plan ein linearer, schrittweiser Prozess, bei dem eine Aufgabe in die nächste übergeht, was ihr den Namen „Wasserfall“ gibt.

    Der Ansatz ist planorientiert und starr, sodass wenig Spielraum für Anpassungen bleibt. Es ist mehr oder weniger das Gegenteil von agil und legt Wert darauf, sich an den Plan zu halten, anstatt sich an neue Umstände anzupassen.

    3. Funktionsorientierte Entwicklung (FDD)

    Feature-getriebene Entwicklung wird auch als ältere Methode angesehen. Obwohl sie einige agile Prinzipien verwendet, wird sie als der Vorgänger der heutigen agilen und schlanken Methoden angesehen.

    Wie der Name schon sagt, konzentriert sich dieser Prozess auf die häufige Implementierung von Funktionen, die vom Kunden geschätzt werden. Es ist ein iterativer Prozess, bei dem alle Augen darauf gerichtet sind, den Endbenutzern greifbare Ergebnisse zu liefern. Der Prozess ist adaptiv und verbessert sich auf der Grundlage neuer Daten und Ergebnisse, die regelmäßig gesammelt werden, um Softwareentwicklern zu helfen, Fehler zu erkennen und darauf zu reagieren.

    Diese Art von fokussierter agiler Methodik kann für einige Teams funktionieren, die einen stark strukturierten Ansatz und klare Ergebnisse wünschen und gleichzeitig einen gewissen Spielraum für Iterationen lassen.

    4. Methodik der schlanken Softwareentwicklung

    Schlanke Softwareentwicklung basiert auf den Prinzipien der schlanken Fertigung. Im Kern zielt Lean Development darauf ab, die Effizienz zu verbessern, indem Verschwendung vermieden wird. Durch die Reduzierung von Aufgaben und Aktivitäten, die keinen echten Mehrwert bieten, können die Teammitglieder mit optimaler Effizienz arbeiten.

    Das fünf Lean-Prinzipien Stellen Sie einen Arbeitsablauf bereit, den Teams verwenden, um Verschwendung zu identifizieren und Prozesse zu verfeinern. Lean ist auch ein Leitgedanke, der Menschen helfen kann, effizienter, produktiver und effektiver zu arbeiten.

    Die Philosophien und Prinzipien von Lean können auf agile und andere Softwareentwicklungsmethoden angewendet werden. Die Lean-Entwicklung bietet eine klare Anwendung für die Skalierung agiler Praktiken in großen oder wachsenden Organisationen.

    5. Methodik der Scrum-Softwareentwicklung

    software development methodologies: Woman posting sticky notes on the office board

    Gedränge ist ein System, das regelmäßig von Softwareentwicklungsteams verwendet wird. Wie viele Softwareentwicklungsmethoden ist Scrum agil und konzentriert sich auf einen wertorientierten Ansatz. Der Scrum-Prozess basiert auf Empirismus, der Theorie, dass Wissen aus praktischer Erfahrung und beobachtbaren Fakten stammt.

    Ein Scrum findet über einen voreingestellten Zeitraum statt, der als Sprint bezeichnet wird. Normalerweise liegt der Zeitrahmen zwischen zwei und vier Wochen und das Scrum befindet sich zu Beginn des Sprints. Das Ziel jedes Sprints ist es, eine unvollständige, aber fortschrittliche Version eines Produkts herauszugeben, die den Stakeholdern zur Verfügung gestellt werden kann, sodass Feedback sofort in den nächsten Sprint integriert werden kann.

    Das Spezifische Ziele jedes Sprints werden bestimmt durch Produkteigentümer wer ordnet und priorisiert Backlog-Elemente (die Artefakte, die fertiggestellt werden müssen). Der Sprint-Prozess wiederholt sich immer wieder, wobei das Entwicklungsteam auf der Grundlage von Erfolgen, Misserfolgen und dem Feedback der Stakeholder Anpassungen vornimmt und iteriert.

    Lernen mehr über Scrum — die komplette Programmplanungslösung für Jira.

    6. Extreme Programmierung (XP)

    Extremes Programmieren, auch XP genannt, ist eine Methode, die auf der Verbesserung der Softwarequalität und Reaktionsfähigkeit basiert. Es handelt sich um einen agilen Ansatz, der sich auf der Grundlage der Kundenanforderungen weiterentwickelt. Das ultimative Ziel ist die Erzielung qualitativ hochwertiger Ergebnisse. Qualität beschränkt sich nicht nur auf das Endprodukt — sie bezieht sich auf jeden Aspekt der Arbeit und gewährleistet Entwicklern, Programmierern und Managern ein großartiges Arbeitserlebnis.

    Die Entscheidungsfindung beim Extremprogrammieren basiert auf fünf Werten: Kommunikation, Einfachheit, Feedback, Mut und Respekt. Die Besonderheiten von XP können nicht für alle Situationen gelten, aber das allgemeine Framework kann unabhängig vom Kontext einen Mehrwert bieten.

    7. Schnelle Anwendungsentwicklung (RAD)

    Schnelle Anwendungsentwicklung (RAD), manchmal auch Rapid Application Building (RAB) genannt, ist eine agile Methode, die darauf abzielt, qualitativ hochwertige Ergebnisse mit einer kostengünstigen Investition zu erzielen. Der Prozess priorisiert das schnelle Prototyping und häufige Iterationen.

    Die schnelle Anwendungsentwicklung beginnt mit der Definition der Projektanforderungen. Von dort aus entwerfen und bauen die Teams unvollkommene Prototypen, um sie den Stakeholdern so schnell wie möglich zur Verfügung zu stellen. Prototyping und Bau wiederholen sich immer wieder in Iterationen, bis ein Produkt vollständig ist und die Kundenanforderungen erfüllt.

    Dies ist ideal für kleinere Projekte mit einem klar definierten Ziel. Der Prozess hilft Entwicklern, auf der Grundlage häufiger Rückmeldungen von Interessengruppen schnelle Anpassungen vorzunehmen. Es geht darum, schnelle Prototypen zu erstellen, die den Benutzern so schnell wie möglich konstruktives Feedback geben können. Dieses Feedback fließt in das Benutzerdesign ein, sodass Entwicklungsentscheidungen auf den direkten Gedanken und Bedenken derjenigen basieren, die das Produkt verwenden werden.

    8. DevOps-Bereitstellungsmethodik

    Das DevOps-Bereitstellungsmethodik ist eine Kombination aus Dev (Softwareentwicklung) und Ops (Information Technology Operations). Zusammen entwickeln sie eine Reihe von Verfahren zur Verbesserung der Kommunikation und Zusammenarbeit zwischen den Abteilungen, die für die Entwicklung eines Produkts verantwortlich sind.

    Es handelt sich um eine kontinuierliche Kommunikationsschleife zwischen Produktentwicklern und Betriebsteams (IT-Betrieb). Wie so viele agile Prozesse ist es auf kontinuierliches Feedback angewiesen, um Teams dabei zu helfen, Zeit zu sparen, die Kundenzufriedenheit zu erhöhen, die Markteinführungsgeschwindigkeit zu verbessern und Risiken zu reduzieren.

    Die Schritte der DevOps-Bereitstellung wiederholen sich mit dem Ziel, die Kundenzufriedenheit mit neuen Features, Funktionen und Verbesserungen zu erhöhen. Diese Methode weist jedoch einige Nachteile auf. Einige Kunden möchten keine kontinuierlichen Updates für ihre Systeme, sobald sie mit einem Endprodukt zufrieden sind.

    Softwareentwicklung leicht gemacht

    Die meisten Softwareentwicklungsteams verwenden eine Kombination aus Methoden und Frameworks, die zu ihrer Teamgröße, Teamdynamik und Art der zu erledigenden Arbeit passen. Der Schlüssel liegt darin, eine agile Methode zu verwenden und zusammenzuarbeiten, um Ihre Systeme kontinuierlich zu verbessern, während Sie lernen und wachsen.

    Easy Agile hat es sich zur Aufgabe gemacht, Teams dabei zu helfen, besser mit Agile zusammenzuarbeiten. Wir entwerfen agile Apps für Jira mit einfacher, kollaborativer und flexibler Funktionalität. Von der Agilität des Teams mit Einfacher agiler Teamrhythmus, zu skalierter Agilität mit Einfache agile Programme, unsere Apps können Ihren agilen Teams helfen, Ihre Kunden besser zu beliefern.

    Buchen Sie eine 1:1 -Demo um mehr über unsere Jira-Toolsuite zu erfahren, oder kontaktiere unser Team wenn Sie weitere Fragen haben. Wir bieten eine kostenlose 30-Tage-Testversion an, damit Sie unsere Produkte ausprobieren können, bevor Sie eine Verpflichtung eingehen.

  • Workflow

    Your Guide for agile softwaredevelopment cycles

    Ein häufiges Missverständnis bei agilen Softwareentwicklungsmethoden ist, dass sie keinem formalen Prozess folgen. Jedes Team macht einfach sein eigenes Ding mit wenig oder gar keiner Planung, und irgendwie klappt alles. Nun, wir hassen es, Ihre Seifenblase platzen zu lassen, aber Softwareentwicklung funktioniert so nicht, agil oder nicht. 🤯

    Genau wie bei traditionellen Wasserfallprojekten folgt agile Projekte einem agilen Softwareentwicklungszyklus (SDLC). Aus der Prozessperspektive besteht der Hauptunterschied in einem linearen Ansatz mit Wasserfall und einem iterativen Ansatz mit Agilität. We are something later into into there.

    Lassen Sie uns zunächst erläutern, wie ein agiles SDLC mit agilen Prinzipien im Einklang steht. Dann werden wir sowohl in Scrum- als auch in Kanban-Umgebungen über agile SDLC sprechen.

    How the cycle of agile softwaredevelopment agile principles supports

    agile software development life cycle: Teammates having a meeting while drinking coffee

    Das Agiles Manifest nennt vier Grundwerte, die zur Verbesserung der Softwareentwicklungsprozesse beitragen. Sie sind:

    Individuals and Interactions about Processes and Tools
    Funktionende Software über eine umfassende Dokumentation
    Zusammenarbeit mit Kunden over Contracts
    Reagieren Sie auf Veränderungen anstatt einem Plan zu folgen.

    Das sind großartige Werte! Heben Sie jetzt Ihre Hand, wenn Sie sich an den nächsten Satz erinnern. Irgendjemand?? Lass uns dein Gedächtnis auffrischen: „Das heißt, obwohl die Elemente auf der rechten Seite einen Wert haben, schätzen wir die Elemente auf der linken Seite mehr ein. “

    Allzu oft sind neue agile Softwareentwicklungsteams so begeistert davon, „agil zu werden“, dass sie vergessen, den gesamten Inhalt des Agilen Manifests vollständig zu verstehen. Wir verstehen es — es ist schwer, sich an alle 68 Wörter zu erinnern, wenn man begeistert ist. 🤓

    Schauen wir uns das noch einmal an: The article on the right page have a value. Das klingt nicht so, als ob Sie alle Dokumentationen, Prozesse und Tools entfernen sollten. Sie benötigen tatsächlich einige dieser Dinge, um effizient als Team zu arbeiten. The least must to take any art of contract, when they want develop software for a external stakeholder and paid.

    Wir würden Ihnen gerne genau sagen, wie viele Prozesse und wie viel Dokumentation und Planung Sie benötigen, aber das können wir nicht. Ein Teil der Agilität besteht darin, die Dinge im Laufe der Zeit anhand Ihrer Teamumgebung und der Bedürfnisse der Kunden zu erkennen. If your agile team ready, start you to check the processes, tools and project documentation and that your team needs to efficient and effective to work.

    Wir schauen uns nun einige Lebenszyklusmodelle für agile Softwareentwicklung an.

    Das Scrum SDLC model

    agile software development life cycle: Diagram of agile vs waterfall product development model

    Erinnerst du dich, dass wir bereits darüber gesprochen haben, dass Wasserfall linear und agil iterativ ist? Scrum ist das perfekte agile Framework, um den Unterschied hervorzuheben.

    The traditional water fall model of the product development requires several steps before you going to a final product. Waterfall projects meet the definition of ready, when the complete project is completed and in the hands of users or stakeholders. Es ist linear — ein gerader Weg von Anfang bis Ende.

    The agile method of Scrum is dagegen iterativ and adaptiv. Scrum-Teams teilen die Ergebnisse in kleineren Teilen mit kürzeren Zeitrahmen, die als Sprints bezeichnet werden. Es ist das Ziel, bei jeder Iteration während des gesamten Produktentwicklungsprozesses Teile der funktionierenden Software bereitzustellen.

    Anstatt eines einzelnen Sprints, wie oben gezeigt, sieht ein vollständiger Scrum-Lebenszyklus eher so aus:

    agile software development life cycle: Diagram showing a full Scrum life cycle

    Für jede Iteration plant, entwickelt, überprüft und implementiert das Team Updates der Produktfunktionen. If the involved agreement tests and you see the functional product, they may questions by new priority or requirements. This feedback is added the product backlog, sodass the Product Owner with other functions and work priorisiert wird. Dann beginnt der Prozess erneut.

    Da sich die Software ständig weiterentwickelt, wiederholt sich dieser Prozess, bis das Produkt entweder einen Wartungsgrad erreicht hat oder das Ende seiner Nutzungsdauer erreicht und außer Betrieb genommen wird.

    Inparticular in Scrum is planning a great part of the SDLC. The Sprint Planning bringt das Team zusammen, um die Arbeit auf der Grundlage der vom Product Owner definierten Sprintziele zu priorisieren. The daily standup provides the team the possible to coordinating his activities for the day. The Sprint-Review ermöglicht es dem Product Owner und anderen Stakeholdern, die während des Sprints Ergebnisse zu überprüfen und zu besprechen. Und schließlich bietet die Sprint-Retrospektive dem Team die Gelegenheit, über den Prozess, die Teamdynamik und mögliche Verbesserungen für die Zukunft nachzudenken.

    Reibungslose Sprint-Planung mit

    Einfache Agile User Story Maps

    Testing now

    Verfeinerung des Backlogs is also a art of planning, that should be completed before a sprint planning ession or on end of a sprint. When the verfeinerung can be review the teams the ability specific functions or Ideas for development methods to meet the Acceptance criteria. Sie können auch die Verfügbarkeit von Ressourcen bei der Planung berücksichtigen. Sie könnten beispielsweise erwägen, zusätzliche Komponententests erstellen, um den Aufwand eines Testers zu reduzieren, der während der nächsten Sprints im Urlaub sein wird.

    The difference between the planning in Scrum and Waterfall is darin, how much work you want planning. Wasserfallpflanze zu Beginn des gesamten Projekts. The Scrum planning does during the complete product development, from beginning to the end.

    Die agile Kanban-Methode

    Diagram showing a Kanban framework

    Ein Kanban-Framework hat einen etwas anderen agilen Prozess. Workelemente sind nicht unbedingt miteinander verwandt oder voneinander abhängig. Einzelne Teammitglieder können asynchron arbeiten, um neuen Code in die Produktion einzubringen, sobald er fertig ist. Kanban ist jedoch immer noch iterativ, da die Arbeitselemente in einem Backlog priorisiert werden, und dann werden sie entwickelt, überprüft und zur Produktion gebracht.

    Basierend auf dem Feedback der Endbenutzer werden dem Board neue Backlog-Elemente hinzugefügt. The priority of work elements is regular checked and adjusted that they is perfect to the agile value, to react on veränderungen.

    Ein großer Unterschied mit Kanban Bedeutet, dass jede Spalte im Kanban-Board nur eine begrenzte Anzahl von Arbeitselementen enthalten kann (WIP-Grenzwerte), anstatt sie auf der Grundlage von Storypoints und Teamgeschwindigkeit zur Arbeit zu verpflichten. This helps Teams, konzentriert zu bleiben, in ihrem Prozess zu erkennen, zu erfahren, wo Automation hilfreich sein könnte, und allgemein zu verstehen, wo ihr Prozess funktioniert und wo er wenig Hilfe benötigt.

    Bei Kanban liegt der Fokus mehr auf dem kontinuierlichen Arbeitsfluss in jeder Phase. The WIP border values helps teams to identify specific phases, they behind the work process, that they detect the cause, they detect and last the efficiency work.

    Jedes Kanban-Team kann die Spalten auf seinem Board nach seinen Bedürfnissen auswählen. Das Ziel von Kanban ist es, die Geschwindigkeit zu verbessern, indem die Arbeit auf dem Board voranschreitet. A precise monitoring and measurement of movement of work elements is for kanban teams of significant meaning.

    Working with the agile software development cycle

    Smiling colleagues looking at their scrum board

    Egal, ob Sie in einem ausgerüsteten Unternehmen oder einem Startup-Team arbeiten, eine angemessene Menge an Dokumentation, Tools und Prozessen in agilen Softwareentwicklungsmethoden ist von Wert. Actual helps the facility a agile software development cycle your team, efficient to work.

    TIPP! Auf der Suche nach mehr Teamzusammenstellung? Probiere es aus Einfaches agiles Programm

    Think you, on the Agile Manifest and The back access Die 12 Prinzipien hinter dem Agilen Manifest wenn du nicht weiterkommst. This values and principles applies not only for the what you build, but also for the work type your team. The key concept behind agile Frameworks contains in, they to check and adapt — both the software as also also the art and way how you work as team.

    Use so much process and documentation, how you need, but not more. Schauen Sie sich an, was Sie heute haben, und identifizieren Sie wichtige Punkte, ohne dass das Team Ihrer Meinung nach nicht funktionieren kann. Fügen Sie dann Schritte hinzu oder entfernen Sie sie, wenn Sie herausfinden, wie Ihr Team am besten in einem agilen Framework arbeiten kann.

    Bei Easy Agile are here, to help them, the best from your agile Practices, and help them to help them to develop a powerful, agile team. 💪 If you want more learn, look you see our weitere Blogartikel zu agilen Themen.

    If you help with the Jira tool by Atlassian, we have einige tolle Apps damit du es versuchst. Unser Simple Agile Programs for the Jira App can support your planning activities by skalable direction and visualization of dependencies.

    Testing now

  • Agile Best Practice

    7 Produktmanagement-Softwaretools zur Rationalisierung der Entwicklung

    Sie können Dutzende von Produktmanagement-Tools finden, die den SaaS-Zielen entsprechen.

    Diese Tools unterscheiden sich in ihren Merkmalen, Funktionen und Preisen. Eines ist jedoch sicher: Produktmanagement-Tools sind unterstützender als je zuvor.

    Finden Sie heraus, welches Produktmanagement Ihre Softwareentwicklung am besten unterstützen kann.

    Was sind Produktmanagement-Softwaretools?

    Softwaretools für das Produktmanagement helfen dabei, Softwareentwicklungsteams durch ihren Arbeitsablauf zu führen.

    Produktmanagement-Tools können Teammitgliedern dabei helfen, Recherchen durchzuführen, Bewertungen zu erstellen, Iterationen durchzuführen und ihre Produkteinführungen zu planen. Einige Tools unterstützen sogar das Roadmapping der Produktentwicklung, sodass sie agile Teams unterstützen können.

    Entwicklungsteams können Roadmapping-Tools verwenden, um:

    • Optimieren Sie die Produktstrategie
    • Erstellen Sie ihren Produktplan
    • Erstellen Sie ihre Produkt-Roadmaps
    • Entwickeln Sie User Journey Maps
    • Backlogs verwalten
    • Recherchen zu den Kundenbedürfnissen durchführen
    • Verbessern Sie die Priorisierung von Produktmerkmalen
    • Bestimmen Sie die Länge ihrer Scrum-Sprints
    • Analysieren Sie Daten für ihre Produktforschung
    • Führen Sie eine Prozesszuordnung durch
    • Produktveröffentlichungen verwalten
    • Verbessern Sie die Zusammenarbeit agiler Teams
    • Neue Produkte erstellen
    • Liefern Sie bessere Produkte
    • Teammitgliedern eine Nachricht senden

    Die Verwendung von Produktmanagement-Tools ist ideal für die Arbeit mit Remote-Teams. Es ist auch die Lösung für die Verbesserung der Zusammenarbeit zwischen funktionsübergreifenden Teams.

    Viele oder die meisten dieser Produktmanagement-Tools lassen sich auch gut in bestehende Software integrieren, sodass es keine große Sache ist, bestehende Systeme anzupassen. Sie können viele dieser Produktmanagement-Tools auch an die Anforderungen Ihres Produktteams anpassen.

    Hier sind acht der bekanntesten Produkt-Softwaretools, mit denen Sie Ihre neue Roadmapping-Reise beginnen können.

    1. Jira

    Jira wird in der Regel als das beste Produktmanagement-Softwaretool für die Softwareentwicklung angesehen. Viele andere Branchen verwenden Jira jedoch für das Roadmapping und die Verwaltung ihrer Projekte. Diese Beliebtheit ist auf die Tatsache zurückzuführen, dass Jira einen kostenlosen Plan anbietet, der jedoch noch tiefer geht.

    Jira ist das ideale Software-Management-Tool für die Verwaltung von Scrum, Kanban, Waterfall und anderen agile Methoden. Die Benutzeroberfläche ist intuitiv, sodass sie einfach und bequem zu bedienen ist, egal ob Sie ein Produktmanager für Software oder andere Produkte sind. Da es sich auch um ein praktisches Tool handelt, können Sie es verwenden, um Aufgaben zuzuweisen und Projekte und Produktentwicklung zu verwalten.

    Produktmanager können Arbeitsabläufe, agile Teamverantwortlichkeiten und Aufgaben leicht im Auge behalten. Sie können sehen, wo sich Backlogs in Scrum oder Kanban aufbauen. Mit der Jira-Software kannst du auch Velocity-Charts, Burndown-Charts, Release-Burndown- und Sprint-Berichte verwalten.

    Du kannst auch Software wie Slack, GitHub und andere hinzufügen, um dein Jira-Produktmanagement-Tool abzurunden.

    Zu den wichtigsten Funktionen, die Sie in dieser Software erwarten können, gehören:

    • Visuelle Erfassung der Produktvision zur Entwicklung besserer Produkte
    • Tools für die Zusammenarbeit, um Teams in Echtzeit an Bord zu halten
    • Gantt-Diagramme zur Anzeige des Projekt- und Produktfortschritts
    • EIN Scrum oder Kanban-Board
    • Benutzerfreundliche Roadmaps
    • Meilensteinverfolgung
    • Portfoliomanagement
    • Umfassendes Agle-Reporting
    • Umfassende Automatisierung des Produktmanagementprozesses
    • Die Fähigkeit, Codes mit Problemen zu verbinden

    In Bezug auf die Preisgestaltung entscheiden sich kleine Unternehmen häufig für den kostenlosen Tarif. Mit dem kostenlosen Tarif von Jira können 10 Benutzer gleichzeitig auf Roadmapping und andere Funktionen zugreifen. Der kostenpflichtige Tarif kostet etwa 7$ pro Monat für jeden Benutzer.

    Agile Teams, die Jira verwenden, können davon profitieren Einfache Agile-Programme für Jira. Es hilft Teams, sich auf ihre Ziele zu konzentrieren, sich auf Funktionen und Epen zu konzentrieren und Abhängigkeiten zu erkennen. Aber alle Einfache Agile-Plugins arbeite mit Jira. Sie vereinfachen alles, von der PI-Planung bis zur Erstellung Personas und Straßenkarten.

    2. Trello

    Trello verwendet ein Kartensystem, um Kanban- und andere Produktentwicklungsabläufe zu verwalten. Wenn der Administrator das Trello-Board einrichtet, erhalten die Produktteams eine visuelle Darstellung von Workflows. Sie können Anwenderberichte sehen, wer für Aufgaben verantwortlich ist, und einen Gesamtüberblick über Arbeitsabläufe und Produktlebenszyklen erhalten. All diese und andere Funktionen sind ein hervorragendes Roadmap-Tool.

    Der Nachteil dieses Systems ist, dass es keinen Kalender hat. Ein weiterer Nachteil ist, dass es grundlegende Ordner für die Aufgabenkategorisierung bietet. Es wird beispielsweise schwierig sein, Trello für Scrum zu verwenden, da Sie nur eingeschränkten Zugriff auf Ordner haben und es keine Unterordner gibt. Du kannst jedoch auf mehrere User Stories zugreifen, um Arbeitsabläufe für einfache Projekte zu optimieren.

    Trotz dieser Nachteile bietet Trello dank des Butler-Roboters eine Workflow-Automatisierung. Mit dieser kleinen Roboterfunktion können Sie bestimmte Regeln und Kalender-Trigger festlegen, sodass Sie sich wiederholende Aufgaben automatisieren können. Trello eignet sich wahrscheinlich besser für Startups oder die Verfolgung des Fortschritts, wenn Sie eine kleine Vertriebsmannschaft haben.

    Da die Trello-Plattform einfach (aber intuitiv) ist, ist die Zusammenarbeit im Team praktisch. Die Kommunikation über Trello ist auch benutzerfreundlich und hilft den Produktteams, sofort zu sehen, wer was tut und welche Aufgaben zu erledigen sind.

    Trello verwendet standardmäßig die Kanban-Methode, du kannst sie aber auch für andere Projekttypen verwenden.

    Es gibt mehrere Funktionen, auf die du dich bei Trello freuen kannst, darunter:

    • Priorisierung von Aufgaben
    • Termine verfolgen
    • Gantt-Diagramme
    • Kanban-Tafel
    • Tools für agile Teamzusammenarbeit
    • Ressourcen- und Aufgabenmanagement
    • Automatisierung von Arbeitsabläufen
    • Den Fortschritt der Teammitglieder verfolgen
    • Verschiedene Vorlagen

    Trello hat einen kostenlosen Plan, bei dem Produktmanager bis zu 10 Boards für jedes ihrer Teams verwenden können. Du kannst den Schmerzplan auch auf jährlicher Basis erwerben, was etwa 10$ pro Benutzer kostet.

    3. Wrike

    Wrike ist sowohl ein Tool zur Rationalisierung von Arbeitsabläufen als auch zur Verwaltung der Produktentwicklung. Wrike ist flexibel, anpassungsfähig und dynamisch und ein Tool, das für bessere Produktentscheidungen entwickelt wurde.

    Sie können es für das Management kleiner Produkte, für die Verwaltung einzelner Kunden oder als unternehmensweites Tool für das Produktmanagement verwenden. Wrike ist auch vielseitig genug, um es in der Softwareproduktentwicklung oder im Marketing einzusetzen. Diese Plattform verfügt auch über ein spezielles Tool für das Marketing, das die Verwaltung von Salesforce-Abläufen erleichtert.

    Wrike ist anpassbar, sodass Sie Gantt-Diagramme und Kanban-Boards hinzufügen können, um die Zusammenarbeit der Teammitglieder zu verbessern. Eine weitere Funktion dieser Plattform ist das Work Intelligence KI-Tool, mit dem Produktmanager das Produktrisiko automatisieren und vorhersagen können.

    Wrike funktioniert gut mit Jira, Slack, GitHub, Dropbox und mehreren anderen Tools. Sie können auch andere Integrationen anpassen, um Wrike auf Produktmanagement-Teams zuzuschneiden. Wenn Sie Software hinzufügen möchten, die diese Plattform nicht unterstützt, können Sie das tun. Sie erstellen einfach die Lösung, die Sie benötigen.

    Die wichtigsten Funktionen von Wrike sind:

    • Die Fähigkeit, Anwendungen von Drittanbietern zu integrieren
    • Seine umfassende, vielseitige API
    • Verwaltung mehrerer Vorlagenoptionen
    • Erlaubnis und Zugriffskontrolle
    • Daten importieren und exportieren
    • Integration von Tabellenkalkulationen und Tabellen
    • Komfortables Aufgabenmanagement
    • Eine Benutzeroberfläche zum Ziehen und Ablegen
    • Produktaufgaben kategorisieren und strukturieren
    • Kalender- und Zeitleistensteuerung
    • Verwaltung von Dateien und Dokumenten
    • Aktivitäten und Fortschritte verfolgen
    • Filterung von Daten
    • Statistiken und Berichterstattung
    • Gemeinsamer oder öffentlicher Arbeitsbereich

    Wrike bietet einen kostenlosen Tarif für die Nutzung einfacher Funktionen an. Sie müssen jedoch für jeden Benutzer etwa 9,80 USD pro Monat bezahlen, um auf komplexere Funktionen zugreifen zu können.

    4. Produktboard

    Productboard steht mit Unternehmen wie Zendesk ganz oben. Es bietet eine der besten Funktionen zum Sammeln von Benutzerfeedback. Wie jedes Softwareentwicklungsteam weiß, kann das Feedback der Benutzer über den Erfolg eines Produkts entscheiden oder ihn zum Scheitern bringen. Mit diesem Produkt können Sie Kundenfeedback kategorisieren, in wertvolle Informationen umwandeln und dieses Feedback priorisieren.

    Mit Productboard können Sie ihr Feedback während des Lebenszyklus jedes Produkts über ein Portal verfolgen. Dieses Portal unterstützt den Ideenaustausch und das Management. Diese Informationen nutzen die Teammitglieder als Input, um den Produktwert zu steigern. Dieses Software-Tool eignet sich auch hervorragend zum Sammeln Anwendungsfälle und das Nutzerverhalten zu verstehen, um die richtigen Produkte für Kunden zu entwickeln.

    Sie können Slack und E-Mail mit dem Productboard verwenden, aber wenn Sie eine zusätzliche Softwareintegration wünschen, müssen Sie dies selbst arrangieren. Zum Glück ist die API in diesem Produkt benutzerfreundlich, um dies zu ermöglichen.

    Zu den Hauptfunktionen von Productboard gehören:

    • Lagerhäuser für Produktfeedback
    • Kundensegmente, die besonders dynamisch sind
    • Die Fähigkeit, Kundenfeedback zu priorisieren und zu kategorisieren
    • Feedback in wertvolle Erkenntnisse umwandeln
    • Ein leistungsstarkes System zur Wertbewertung
    • Roadmapping-Tools, die Sie anpassen können
    • Priorisierung von Aufgaben

    Sie können einen jährlichen Productboard-Basisplan für etwa 20 USD pro Monat für jeden Benutzer erwerben.

    5. ProdPad

    ProdPad berücksichtigt die Benutzererfahrung. Es verfügt über eine schlanke Roadmapping-Funktion, mit der Sie Ziele und Vorgaben hervorheben können. Sie können mit diesem Produktsoftwaretool experimentieren, um Benutzerfeedback in die Produktentwicklung einzubeziehen. ProdPad ist auch als eines der besten Produktmanagement-Softwaretools auf dem Markt bekannt.

    Die Produkt-Roadmap-Tools sind einfach zu verwenden und enthalten eine Farbcodierung für das Roadmapping. ProdPad verfügt über eine einfache Drag-and-Drop-Funktion sowie Datenschutzeinstellungen, und Sie können die Prioritätsprüfpunkte nach Bedarf verwenden.

    Entwicklungsteams können auf eine Funktion zur Ideenverwaltung zugreifen, um Prioritätsdiagramme zu erstellen. Hier können sie sehen, wie Rückstände die Wirkungs- und Aufwandsdiagramme in Workflows beeinflussen. Sie können auch einfach Daten aus anderen Quellen importieren, um bei Bedarf die Entwicklung neuer Produkte voranzutreiben.

    Eine weitere Funktion, die ProdPad auszeichnet, ist die Fähigkeit der Teammitglieder, Zusammenhänge zwischen Benutzerideen und Produktentwicklung zu erkennen. Sie können auch Kundenlisten erstellen, um weitere Fragen zu ihren Produkterfahrungen zu stellen.

    Sie können Anwendungsfälle sammeln und das Nutzerverhalten besser verstehen. All diese Informationen können Sie dann als Input für die Entwicklung neuer Produkte verwenden.

    Funktionen, die Sie von diesem Produktmanagement-Tool erwarten können, sind:

    • Ideengenerierung und Erfassung
    • Erfassung und Speicherung von Kundenfeedback
    • Integration mit Apps, die Kundenfeedback unterstützen
    • Integration mit anderen Apps von Drittanbietern
    • Prioritätenliste der Ideen
    • Lean Produkt-Roadmaps
    • Auf Zielsetzungen basierendes Produkt-Roadmapping
    • Erstellung von Kundenportfolios

    Sie können den Essential Plan von ProdPad für etwa 149 USD pro Monat für die jährliche Abrechnung erwerben. Mit diesem Plan können Sie drei Administratoren oder Redakteure für die Produktplanung verwenden.

    6. Asana

    Asana ist auch eine nützliche Verwaltungsplattform. Sie können es als Lösung für die Planung von Arbeitsabläufen verwenden. Asana ist bei kleinen Unternehmensgründungen und größeren Unternehmen beliebt.

    Diese Verwaltungslösung ist cloudbasiert. Sie ermöglicht es Teammitgliedern, ihren Arbeitsbereich gemeinsam zu nutzen und Aufgaben und Arbeitsfortschritte zuzuweisen und zu verfolgen. Asana ist auch eine hervorragende Plattform für die Zusammenarbeit von Teammitgliedern.

    Mit Asana erhalten Sie nicht viel Kundensupport. Und obwohl Asana nicht ideal für ein komplexes Teammanagement ist, bietet es viele nützliche Funktionen, von denen einige Folgendes beinhalten:

    • Exzellente Kommunikation und Zusammenarbeit im Team
    • Ideal, um detaillierte Ziele zu skizzieren
    • Effizient für die Verwaltung mehrerer Aufgaben und Teammitglieder
    • Ein benutzerfreundliches Dashboard
    • Verfolgung von Meilensteinen
    • Automatisierung
    • Option für mehrere Vorlagen
    • Funktionen zur Projektplanung
    • Mehrere Analyse- und Berichtsoptionen
    • Verwaltung von Ressourcen
    • Zeit- und Kostenerfassung

    Asana hat einen kostenlosen Tarif, wenn Sie mit eingeschränkten Funktionen zurechtkommen. Bezahlte Tarife beginnen bei etwa 10,99 USD pro Monat für jeden Benutzer. Das Unternehmen stellt jährlich Rechnungen ab.

    7. SEGELFLUGZEUG

    Es gibt mehrere Verwaltungslösungen zur Rationalisierung von Produktabläufen. GLIDR bietet eine weitere Plattform, von der aus die Entwicklungsziele für Produktsoftware erreicht werden können. Sie können detaillierte Produktpläne entwickeln, die den Kundenerwartungen entsprechen. GLIDR hebt das Kundenerlebnis hervor und stellt daher deren Feedback in den Vordergrund, um die besten Produktleistungen zu erzielen.

    Auf dieser Plattform können Sie Produktrecherchen, Anwendungsfälle und Nutzerverhalten verwalten. Anschließend können Sie Produktspezifikationen erstellen, Ideen verknüpfen und realisierbare Ideen erstellen Anwenderberichte, priorisieren Sie Funktionen und vieles mehr.

    GLIDR bietet verschiedene Board-View-Optionen, die Softwareentwicklern helfen, Themen aus Ideen zu erstellen. Sie können Ideen auch nach ihrem Status kategorisieren, Zeitleisten ausfüllen oder diese Ideen auf Kanban-Boards zeigen.

    Zu den weiteren hilfreichen Funktionen gehört die Möglichkeit, Apps wie Intercom und Zendesk in GLIDR zu integrieren. Sie können Jira und Trello auch mit dieser Produktverwaltungssoftware verknüpfen.

    Produktmanager und Teams können GLIDR verwenden, um ihre Arbeitsabläufe zu optimieren, den Produktfortschritt zu verfolgen, Berichte zu erstellen und Roadmaps in die bestmöglichen Produkte umzuwandeln.

    Zu den Hauptfunktionen von GLIDR gehören:

    • Produktwerbeanzeigen
    • Öffentliche Straßenkartierung
    • Optionen für Forschung und Experimente
    • Trendergebnisse zur Einstufung von Ideen
    • Priorisierung von Funktionen
    • Aktivitäts-Feeds
    • Fortschrittsverfolgung und Überwachung
    • Benutzerfreundliche Dashboards
    • Berichte, die Sie im PDF-Format exportieren können

    Du kannst GLIDR 14 Tage lang kostenlos testen. Dann kostet die günstigste Option etwa 8 USD pro Person und Monat für ein Team von fünf Personen. GLIDR stellt jährlich Rechnungen ab und bietet drei weitere Tarifoptionen, mit denen Sie auf weitere Funktionen zugreifen können.

    Verbessern Sie Ihr Spiel mit Easy Agile

    Eine Möglichkeit, Ihre Produktmanagement-Software zu verbessern, besteht darin, die Ressourcen von Easy Agile zu nutzen. Sie können entweder unsere Jira-Apps verwenden, um sie in bestehende Produktmanagement-Plattformen zu integrieren, oder Ihrem bestehenden System einen Schub geben.

    Wählen Sie aus Apps für Kanban-Arbeitsablauf für Jira oder steigern Sie die Leistung der Produktentwicklung mit Story-Maps von Benutzern für Jira.

    Verbessern Sie Ihr Spiel mit Easy Agile Straßenkarten für Jira, um dein Team zum Produkterfolg zu führen, oder nutze unsere Programme für Jira für Program Increment Planning.

    Welche Apps du auch wählst (alle?) , können Sie das Produktteammanagement mit der besten verfügbaren Produktmanagementsoftware verbessern.