.

Wie bildet man ein Webentwicklungsteam zur Erstellung einer großen Website?

Für kleinere Projekte können Sie No-Code-Tools oder die Arbeit eines einzelnen Programmierers verwenden. Er oder sie muss Full-Stack sein, d. h. in der Lage sein, die Backend- und Frontend-Schicht zu erstellen. Eine Website auf diese Weise zu bauen, ist verlockend wegen der einfacheren Verwaltung und der geringeren Kosten. Webentwicklung ist jedoch ein komplizierter Prozess, und die Schwierigkeit kann exponentiell mit der Komplexität der Website zunehmen. Daher stellen wir für größere Projekte ein ergänzendes Team zusammen, das mit der angenommenen Komplexität umgehen kann.

Was ist ein Projektteam?

Ein Projektteam ist eine Gruppe von Personen, die zusammenarbeiten, um Software zu entwickeln, in unserem Kontext – eine Website. Dieser Job ist komplex, kreativ und erfordert Anpassungsfähigkeit, da technologische Herausforderungen auftreten und sich Geschäftsanforderungen ändern.

Ein Team kann aus Personen bestehen, die einem bestimmten Projekt zugewiesen sind und sich ihm zu 100 % widmen, oder aus Spezialisten, die ihre Zeit und ihr Fachwissen zwischen verschiedenen Projekten aufteilen. Abhängig von der Wahl einer Projektmanagement-Methode (z. B. Wasserfall oder Scrum) können Teammitglieder nur in ausgewählten Phasen benötigt werden (z. B. Architekten oder UI/UX-Designer – nur ganz am Anfang) oder während des gesamten Webentwicklungsprozesses.

Für komplexe Projekte, die von Natur aus schwer vollständig zu spezifizieren sind, bieten agile Methoden einen viel höheren Wert als Wasserfall. Dank des iterativen Ansatzes wird das Projekt in Phasen umgesetzt, was es uns ermöglicht, zu überprüfen, ob wir angemessene Fortschritte machen, und den nächsten Arbeitsumfang an sich ändernde Bedürfnisse anzupassen. Anstatt eine lange Spezifikation über mehrere Wochen oder Monate zu erstellen, die eine hohe Wahrscheinlichkeit hat, veraltet zu sein (da wir unter sich schnell ändernden Bedingungen arbeiten), erstellen wir Arbeitsinkremente, die uns dem Ziel näher bringen, selbst wenn es sich ändert (z. B. aufgrund von Marktbedingungen oder neuen Geschäftsanforderungen).

Struktur des Webentwicklungsteams

Ein Softwareentwicklungsteam, das Websites erstellt, kann verschiedene Rollen umfassen. In der Regel besteht es aus den nachfolgend beschriebenen.

Projektmanager

Projektmanager ist die Person, die alle Fäden des Projekts zusammenhält. Der PM ist verantwortlich für die Organisation, Planung, Kommunikation und Umsetzung des Projekts innerhalb des festgelegten Zeitrahmens, Budgets und Umfangs. Obwohl jedes Projekt anders ist, gibt es mehrere Merkmale von Projektmanagern, die bei komplexen Unternehmungen besonders wichtig sind.

  • Anpassungsfähigkeit – komplexe Projekte können sich viele Male entwickeln, bevor sie als abgeschlossen gelten, daher ist die Fähigkeit, mit sich ändernden Annahmen und Zielen umzugehen, sehr wünschenswert.
  • Fähigkeit zur Zusammenarbeit im Team oder mit Einzelpersonen, sowohl innerhalb des Unternehmens als auch auf der Seite des Kunden oder Mitausführers.
  • Eine klare, verantwortungsvolle und transparente Art der Kommunikation.
  • Projektmanagement-Kompetenzen – Auswahl der Methoden, Kenntnis der Tools, Know-how.
  • Führung und Verantwortungsbewusstsein. Ein Projektmanager ist eine Rolle ohne Autorität über andere Mitglieder des Webentwicklungsteams. Eine solche Person sollte in der Lage sein, das Team zu leiten, zu motivieren und die Verantwortung für Erfolge gemeinsam mit dem Team zu übernehmen, aber auch in der Lage sein, Feedback vom Kunden zu akzeptieren, es richtig zu analysieren und die vorgeschlagenen Verbesserungen in der täglichen Arbeit umzusetzen.
Die Arbeit in einem Webentwicklungsteam erfordert viele verschiedene Fähigkeiten von einem Projektmanager

Quelle: Educba

Software-Architekt

Es ist die Person, die für Entscheidungen auf hoher Ebene in Bezug auf die Gesamtstruktur und das Verhalten des Systems verantwortlich ist. Diese Rolle wird in der Regel von einem sehr erfahrenen Entwickler besetzt, der die Kompetenz hat, eine Vision einer ergänzenden Lösung zu entwickeln, die an die Einschränkungen des Projekts angepasst ist.

Entwickler

Es ist ein Team von Softwareingenieuren mit Kompetenzen, die auf die Bedürfnisse des Projekts zugeschnitten sind. Teams dieser Art können eine Vielzahl von Merkmalen aufweisen. Für komplexe Projekte sind am wichtigsten: Erfahrung in der Arbeit an umfangreichen oder komplexen Lösungen, Kommunikationsfähigkeiten (nicht nur innerhalb interner Strukturen, sondern oft auch extern), und die Fähigkeit, Probleme effektiv zu lösen.

UI/UX-Designer

Dies sind die Rollen, die künstlerische Fähigkeiten mit technischen und handwerklichen Fertigkeiten kombinieren. Menschen in diesen Positionen sind verantwortlich für eine kohärente visuelle Kommunikation, die die Ziele des Kunden umsetzt und gleichzeitig die auf den ersten Blick unsichtbaren Aspekte berücksichtigt. Ein erfahrener Designer denkt an die guten Praktiken bezüglich Benutzerfreundlichkeit, Benutzererfahrung, Einhaltung der Barrierefreiheitsstandards (z. B. für Sehbehinderte), Gestaltung von Lösungen, die auf verschiedenen Geräten funktionieren (z. B. Handy, Tablet, Laptop, großer Monitor), und die technischen Einschränkungen, die das Projekt oder seine Zielgruppe mit sich bringt.

QA-Team (Tester)

Das QA-Team (Tester) befasst sich mit Qualitätssicherung. Diese Arbeit beinhaltet das Ausführen verschiedener Tests, um Mängel aufzudecken, ihre Liste zu erstellen und sie den Entwicklern mitzuteilen, damit sie die notwendigen Korrekturen vornehmen können. Manchmal, wenn ein Fehler behoben wird, entsteht ein neuer in einem anderen Teil des Codes. Dann spricht man von Regression. Diese in komplexen Projekten zu erkennen, kann knifflig sein. Ein erfahrener QA wählt die geeigneten Testmethoden aus, die auf die spezifischen Anforderungen des Projekts abgestimmt sind. Sie erstellen beispielsweise eine Reihe automatisierter Tests (kleinerer Programme), die ausgeführt werden, wenn bestimmte Bedingungen gegeben sind, z. B. wenn ein Entwickler seine Aufgabe abgeschlossen hat.

Weitere Mitglieder des Webentwicklungsteams

Bei komplexeren Projekten kann es erforderlich sein, zusätzliche Spezialisten hinzuzuziehen, wie zum Beispiel:

  • UX-Forscher. Sie führen Fokus- und Usability-Tests, Eye-Tracking (Verfolgung der Augenbewegungen, um die Wahrnehmung eines bestimmten Elements zu prüfen) durch und liefern Informationen über die Wahrnehmung des Produkts durch die Benutzer.
  • Business-Analysten. Sie kümmern sich um fortgeschrittene Datenerhebung und -analyse und arbeiten in der Regel mit dem Product Owner zusammen. Durch die Analyse großer Datensätze können sie Schlussfolgerungen präsentieren, die von großer Bedeutung für Geschäftsentscheidungen sein können.
  • SEO-Spezialisten. Sie helfen bei der ordnungsgemäßen Suchmaschinenoptimierung der Website.
  • Marketing- oder Content-Marketing-Spezialist. Sie nehmen an Aufgaben im Zusammenhang mit der Marketingstrategie oder dem Inhalt der Website teil.
  • ML/AI-Spezialisten. Sie beschäftigen sich mit maschinellem Lernen und künstlicher Intelligenz. Sie analysieren und verarbeiten riesige Datensätze (Tera- /Petabytes) und erstellen Texte, Bilder und sogar Videos basierend auf den aus dem Internet konsumierten Inhalten.

Lesen Sie auch: Nicht nur Entwickler. Lernen Sie die Rollen im Softwareentwicklungsteam kennen

Wie stellt man ein gutes Webentwicklungsteam zusammen?

Ein gut ausgewähltes Team erhöht die Erfolgschancen eines Projekts erheblich. Wie macht man es richtig? Wir sollten die Bedürfnisse des Kunden kennenlernen, die optimale Projektmanagement-Methode wählen, die Beteiligung des Kunden am Webentwicklungsprozess definieren, die entsprechenden Teamrollen auswählen und dann spezifische Personen diesen zuweisen.

Analyse der Projektanforderungen

Diese Aktivität sollte in einer der Anfangsphasen der Arbeit stattfinden. Eine Metapher für die Anforderungsanalyse kann eine Brücke zwischen Wirtschaft und IT sein. Dank der Analyse erfahren wir etwas über die funktionalen Anforderungen (z. B. ob der Benutzer Fotos von einem Computer oder direkt von einem Mobiltelefon hochladen wird), die einige IT-Lösungen mit sich bringen werden (die in einer mobilen Anwendung präsentierten Lösungen werden anders sein als die auf einer Website, die für Computer gedacht ist). Je besser wir diese Anforderungen verstehen, desto besser können wir vorhersehen, welche Rollen wir im Team benötigen werden.

Bestimmung der erforderlichen Kompetenzen

Wir wissen bereits, was der Kunde benötigt und haben die Rollen definiert, die im Webentwicklungsteam benötigt werden, also ist es an der Zeit, uns zu fragen, ob wir in der Lage sind, ein solches Team aufzubauen. Möglicherweise finden wir Leute in unserem Unternehmen, die alle Kompetenzanforderungen erfüllen, aber das bedeutet nicht unbedingt, dass sie während der Projektdurchführung verfügbar sein werden. Daher kann es erforderlich sein, externe Spezialisten einzustellen oder zu konsultieren.

Bestimmung der Stakeholder

Bei größeren Webprojekten wird es entscheidend sein, einen einzigen Stakeholder zu benennen, der die aufeinanderfolgenden Phasen der Arbeit abnimmt und akzeptiert. Es sollten formelle Vereinbarungen mit dieser Person darüber getroffen werden, wie viel Zeit sie hat, um neue Teile eines Projekts zu akzeptieren oder abzulehnen. Wenn wir dies nicht sicherstellen, kann es zu Verzögerungen kommen, die sich negativ auf den Arbeitsrhythmus auswirken (z. B. auf den Verlauf von Scrum-Sprints).

Festlegung der Größe des Softwareentwicklungsteams

Große Projekte erfordern entweder mehr Zeit für ihre Fertigstellung oder den Einsatz größerer Teams. Es gibt bestimmte Grenzen, die wir nicht überwinden können. Scrum-Teams bestehen in der Regel aus 6-9 Personen, und das sind der Product Owner, Scrum Master und Entwickler. Bei größeren Projekten können wir mehrere Scrum-Teams zusammenstellen, die parallel an verschiedenen Website-Funktionalitäten arbeiten.

Wenn wir mit einem Kunden arbeiten, stärken wir oft die Kräfte mit deren Spezialisten. Zum Beispiel arbeiten wir beim Erstellen einer Landing Page für eine Marketingkampagne mit einer Person aus der Marketingabteilung zusammen, die Brancheninformationen bereitstellt, Tests durchführt und die erbrachte Arbeit abnimmt. Gleichzeitig können wir mit einem anderen Unternehmen zusammenarbeiten, das sich auf ein enges Gebiet spezialisiert hat, das für das Projekt notwendig ist. Je mehr verschiedene Einheiten an dem Projekt beteiligt sind, desto besser muss es koordiniert werden, mit richtig synchronisierter Kommunikation, Erwartungen, Fristen und Verantwortlichkeiten für separate Komponenten.

Festlegung aller beteiligten Spezialisten auf Kundenseite

Wenn wir mit Spezialisten auf Kundenseite zusammenarbeiten, sollten wir klare und transparente Regeln für diese Zusammenarbeit aufstellen:

  • Wie werden wir kommunizieren? Per E-Mail, Slack oder vielleicht Teams?
  • Wo werden wir Tickets erstellen und wie werden wir uns gegenseitig über sie informieren? Mit dem Tool Jira oder Asana?
  • Wann können wir Antworten auf Fragen erwarten und wie schnell sind wir in der Lage, sie selbst bereitzustellen?
  • Wer ist für endgültige Entscheidungen verantwortlich, insbesondere wenn ein Kompromiss aus irgendeinem Grund nicht möglich ist?

Am Anfang mag es vielleicht so erscheinen, dass solche Vorkehrungen mehr Stil als Substanz sind. Erfahrung zeigt jedoch, dass dies ein wichtiger Teil der Zusammenarbeit ist, der, wenn er ordnungsgemäß umgesetzt wird, viele Probleme und Verzögerungen vermeiden hilft.

Einsatz eines Outsourcing-Unternehmens

Wenn es im Team an Personen mit Kenntnissen in einem engen Bereich mangelt, können wir nach solchen Spezialisten bei Outsourcing-Agenturen suchen. Diese verfügen über eine Datenbank von Spezialisten aus verschiedenen Bereichen, die ihre Dienstleistungen normalerweise für einen festgelegten Zeitraum anbieten und unverzüglich in Projekte einsteigen.

Wie wählt man eine Outsourcing-Agentur aus? Wir suchen nach einer Agentur, die die benötigte Arbeit anbietet, in der Lage ist, ihre Dienstleistungen zu einer für uns passenden Zeit zu erbringen, sich an unsere Arbeitsmethodologie anpassen kann und in unser Budget passt. Wenn es keine vorherige Beziehung zu einer solchen Agentur gibt, lohnt es sich, nach Meinungen darüber auf Websites wie G2 oder Trustpilot zu suchen.

Planung der Arbeit des Webentwicklungsteams bei einem großen Website-Projekt

Ein Projekt, das sechs Monate dauert und ein standardmäßiges Scrum-Team (7 Personen) umfasst, ist bereits komplex. Wenn wir dazu die Notwendigkeit der Zusammenarbeit mit 2-3 Teams oder externen Spezialisten (z. B. auf Kundenseite) und neuen Technologien hinzufügen, stehen wir vor einer echten Herausforderung. Wir minimieren die Schwierigkeit mit Erfahrung, professionellen Projektmanagement-Methoden, Tools und Prozessen, die potenzielle Probleme reduzieren.

Bei der Arbeit an großen Projekten sollte man auf folgende Dinge achten:

  • Arbeit in einer Gruppe von Entwicklern vs Arbeit unabhängig. Bei Teamarbeit verwenden wir ein Aufgabenverfolgungs-Tool (z. B. Jira), um einen Überblick darüber zu haben, wer was im Projekt macht. Mehrere Personen werden parallel am Code arbeiten, daher wird die Verwendung eines Versionskontrollsystems (z. B. Git) anders sein. Bei der Zusammenarbeit mit einem QA-Team können wir speziell vorbereitete Testumgebungen nutzen, die von den Produktionsumgebungen getrennt sind. Die Organisation dessen ist bei unabhängiger Arbeit wesentlich einfacher, da keine Transparenz sichergestellt oder das richtige Tempo paralleler Arbeiten aufrechterhalten werden muss.
  • Arbeitsplanung. Wir müssen den Fortschritt paralleler Arbeiten berücksichtigen. Manchmal kann es passieren, dass Aufgabe X noch nicht begonnen werden kann, weil Aufgabe Y, die von jemand anderem bearbeitet wird, zuerst abgeschlossen werden muss. Dann müssen wir Aufgabe X in Sprints verschieben und warten, bis Aufgabe Y fertig ist.
  • Das Festhalten der Abmachungen. Alles sollte in einem Projektmanagement-Tool (wie Jira) beschrieben und dokumentiert werden (es gibt verschiedene Möglichkeiten hier). Bei einem sechsmonatigen Projekt für drei Personen wird sich niemand an die vor einem halben Jahr getroffenen Vereinbarungen erinnern.
  • Kommunikation. Ohne tägliche Meetings und den Austausch von Informationen darüber, wer was macht und woran aktuell gearbeitet wird, kommt man nicht aus. Dies ist der richtige Zeitpunkt zu überprüfen, ob wir gemäß dem Plan vorankommen oder ob noch etwas freigeschaltet werden muss.

Haben wir bisher nur an kleineren Projekten gearbeitet und stehen jetzt vor etwas Größerem, ist es sinnvoll, die Dienste eines Unternehmens in Anspruch zu nehmen, das Websites erstellt—z. B. eine Drupal-Agentur—damit wir unsere Vision mit ihrer Erfahrung konfrontieren können.

2. SEO for a Drupal website