Wir haben eine native Android-App und möchten nun eine native iOS-Version erstellen. Wir arbeiten Scrum / Kanban-Prozess. Wie können wir am besten sicherstellen, dass die Features / User Stories-Implementierung auf beiden Versionen ausgerichtet ist? Wir verwenden Webservices, damit sie das als ihr gemeinsames Backend teilen, was gut ist.
Wie halten Sie die iOS- und Android-Entwickler auf derselben Seite? Welche anderen Praktiken helfen Ihnen sicherzustellen, dass eine Funktion/User Story in beiden Apps auf die gleiche Weise implementiert wird? Was sind Standardpraktiken? z. B. Duplizieren Sie die Post-its für eine User Story und markieren Sie ein Post-it als Android und das andere als iOS? oder was?
PS: Die Android- und iOS-Entwickler werden unterschiedliche Personen sein
Aus PM-Sicht handelt es sich um zwei getrennte Projekte. Wenn dieselben Entwickler sowohl am Android- als auch am iOS-Client arbeiten, können Sie es jedoch als ein Projekt ausführen. Ein sinnvolles Feature-Alignment könnte man erreichen, indem man zwei Versionen der User Stories (iOS / Android) hat und diese nacheinander priorisiert.
Wenn es sich jedoch um zwei verschiedene Teams handelt, können und sollten Sie nicht versuchen, die Funktionsentwicklung über die beiden Projekte hinweg auszurichten. Sie können natürlich in beiden Versionen dieselbe User-Story-Priorisierung vergeben, machen aber keine Abhängigkeiten von einem Projekt zum anderen. Dies wird unweigerlich zu Verzögerungen in einem Team führen, da die gleiche Geschichte auf den beiden Plattformen in der benötigten Zeit stark variieren kann. In dieser Situation sind Sie besser dran, wenn Sie es als zwei verschiedene Entwicklungsprozesse mit separaten Kanban-Tafeln usw. ausführen.
Wenn Sie Scrum betreiben, würden Sie zwei verschiedene Scrum-Prozesse gleichzeitig ausführen und dann ein tägliches oder wöchentliches „Scrum of Scrums“ veranstalten, bei dem sich die Leads aus jedem Team treffen und den Fortschritt besprechen.
Es sollte keinen Unterschied in den User Stories oder Akzeptanzaufgaben/Tests geben, da beide Funktionen erklären, die für beide Apps gleich sind.
Allerdings wird empfohlen, Aufgaben für jede Plattform zu erstellen (auch wenn sie gleich sind), da es aus folgenden Gründen einfacher ist, den Fortschritt für jede Version zu verfolgen:
1.Zeitschätzung kann abweichen
2.Anderer Zessionar
3. Geben Sie jedem Team die Flexibilität, seine Aufgaben zu verwalten. Vielleicht möchte das iPhone-Team mit der Arbeit an Aufgabe Nr. 4 und dann an Nr. 3 beginnen, da es natürlich nicht von anderen Aufgaben abhängig ist, aber das Android-Team beginnt mit der Arbeit an Aufgabe Nr. 3 dann #4.
Sie können eine Farbcodierung verwenden (z. B. rote Post-its für Android, gelbe Post-its für iPhone).
Nehmen wir als Beispiel den Anmeldebildschirm.
User Story: Als Benutzer möchte ich meine Anmeldeinformationen eingeben, um mein Profil anzuzeigen.
Akzeptanztests:
Aufgaben (die Post-its)
usw.
Ich hoffe es hilft.
In der Reihenfolge deiner Fragen..
Wie halten Sie die iOS- und Android-Entwickler auf derselben Seite?
Sie bauen verschiedene Clients für dasselbe Produkt auf. Ich würde dies als ein einziges Projekt behandeln.
Welche anderen Praktiken helfen Ihnen sicherzustellen, dass eine Funktion/User Story in beiden Apps auf die gleiche Weise implementiert wird? Was sind Standardpraktiken?
Das habe ich getan..
Wie ich oben bereits erwähnt habe, müssen die Mitglieder des UI-Designteams, die auf beiden Plattformen arbeiten, für alle Mitteilungen in Bezug auf Funktionen, Anforderungen und Sprintplanung zusammenkommen, da sie ein gewisses Maß an Synchronisierung erfordern
Während der Implementierung haben die Mitglieder des QA & Release-Teams, die auf jeder Plattform arbeiten, plattformspezifische Aufgaben
Allgemein:
Gedränge:
Daten:
Empfohlene Vorgehensweise:
Bitte sehen Sie es als zwei verschiedene Projekte an, weil.
Die Probleme, die bei der Erstellung von Benutzeroberflächen für verschiedene Mobiltelefone oder Smartphones auftreten, beschränken sich nicht nur auf die Darstellung der gestalteten Inhalte auf dem Bildschirm. Beispielsweise unterscheidet sich das Entwerfen einer Benutzeroberfläche für Telefone ohne Touchscreen stark von dem Entwerfen für Touchscreen-Telefone. Ein Schnittstellentyp passt nicht zwangsläufig zu den technischen Anforderungen aller Geräte.
Ich denke, mehrere Leute haben gesagt, dass Sie es als zwei separate Projekte behandeln müssen.
Ich denke, Sie müssen es als Programm behandeln – eine Reihe von Projekten, die mit ähnlicher Methodik und mit einem kohärenten Ziel im Hinterkopf verwaltet werden.
Wie halten Sie die beiden Projekte aufeinander abgestimmt? Richten Sie die Projekte aus. Sicher gehen, dass:
Wenn die beiden nicht übereinstimmen, stellen Sie sicher, dass es einen Grund dafür gibt. Wenn Sie Ihren Teil dazu beitragen, dies einzurichten, werden Sie auch klar erkennen, welcher Teil der Arbeit der Kern Ihres Projekts ist und welche Teile plattformspezifisch sind.
Wenn Sie dies regelmäßig tun, kann es sinnvoll sein, dies als drei Projekte zu behandeln
Ein Projekt zur Herstellung eines neuen Produkts – Schwerpunkt auf Architektur, Funktionalität usw. Sobald die Architektur und Funktionalität festgelegt sind, wird die gesamte Arbeit an eines der beiden anderen Teams ausgelagert, die als Subunternehmer behandelt werden.
Ein Projekt zur Implementierung des Produkts auf Android.
Ein Projekt zur Implementierung des Produkts auf Apple.
Obwohl es viel mehr Aufwand bedeutet, es so einzurichten, halte ich es für möglich, dass auf lange Sicht jeder im Team versteht, was er tut. "Ich entwickle die Architektur für Produkt X". "Ich implementiere die Benutzeroberfläche von Produkt X auf Apple." usw.
Benutzer25602