Ole: (Mobile) Sync. von Warenkörben | große Baumstrukturen abbilden

Guten Morgen,

ich schlage mich grade mit zwei Baustellen eines Mobile-Shops (ein Shop der auf mobilen Endgeräten genutzt werden soll und nicht einer in dem mobile Endgeräte verkauft werden) rum.

1. Synchronisation von Warenkörben

Der Anbieter möchte den Usern anbieten zwei Warenkörbe zu synchronisieren. Im Prinzip keine schlechte Idee, jedoch stellt er sich das so vor:

Die Synchronisation soll (gleichzeitig) bidirektional funktionieren und die Summe beider Warenkörbe in eben diese schreiben.

Beispiel:

Warenkorb 1 enthält 5x Artikel A und 3x Artikel B
Warenkorb 2 enthält 3x Artikel A und 1x Artikel C

Nach dem Sync würden dann beide Warenkörbe 8x Artikel A, 3x Artikel B und 1x Artikel C enthalten.

Meiner Meinung nach ist das nicht grade benutzerfreundlich und auch als eher unüblich anzusehen. Außerdem gäbe es 2 große Nachteile:

1. Es ist nicht möglich Artikel aus beiden Warenkörben zu entfernen, da ja immer eine Summe gebildet wird.
Die Artikel müssten jeweils einzeln aus den Warenkörben entfernt werden
2. Mit jedem weiteren Sync steigt die Anzahl der Artikel exponenziell

Fallen euch weitere Nachteile ein?

Mein Vorschlag wäre eine unidirektional Synchronisation mit 3 Optionen, wobei Option 3 der Vorstellung des Anbieters entsprechen würde, nur eben nicht bidirektional:

1. Der Zielwarenkorb wird gelöscht und mit dem Inhalt des Quellwarenkorbs überschrieben
2. Der Zielwarenkorb wird um zusätzliche Artikel ergänzt und Artikelmengen schon vorhandener Artikel angepasst (Quellsystem ist hier führend)
3. Der Zielwarenkorb wird um zusätzliche Artikel ergänzt und Artikelmengen schon vorhandener Artikel summiert

Optional würde dem User angeboten den Quellwarenkorb zu löschen.

Das halte ich für benutzerfreundlicher.

Habe ich irgendetwas vergessen was für oder gegen das eine oder andere spricht?

=============

2. Abbilden von großen Baumstrukturen

Die Warengruppen (einige hundert) des Shops sind mehrstufig hierarchisch aufgebaut und enthalten schon in der obersten Ebene 40 Einträge.
In der Produktsuche soll dem Kunden nun die Möglichkeit gegeben werden seine Suche auf eine Warengruppe einzuschränken.
Ich suche nun nach einer benutzerfreundlichen Möglichkeit diese Option darzustellen.

Andere Mobile-Shops die ich mir bisher angeschaut habe, hatten entweder nicht eine so große Anzahl an Warengruppen, waren nicht so tief verschachtelt oder beides. Lediglich der Mobile-Shop von Cyberport bietet mit den "Produktkategorien" einen recht ähnlichen Aufbau und verfolgt dabei einen recht pragmatischen Ansatz, auf welchen ich, sollte es keine bessere Lösung geben, zurückgreifen würde.

Habt ihr vielleicht ein paar Ideen, Anregungen oder Tipps für mich wie man es benutzerfreundlicher

Der Shop nutzt jQuery, jQuerymobile und AngularJS. Serverseitig wird auf JAVA zurückgegriffen.

Bei Fragen fragen.

Danke & Gruß

  1. hi,

    Fallen euch weitere Nachteile ein?

    Verrückte Idee vom Auftraggeber, aber wer weiß, was daraus entstehen kann ;)

    Grundsätzlich ist ein Warenkorb auf genau eine Sitzung mit genau einem UserAgent bezogen. Das Hauptproblem sehe ich darin, diese beiden Sitzungen miteinander zu verschmelzen und zwar so, dass die Identität des WK-Inhabers über beide Warenkörbe sichergestellt ist. Möglicherweise muss dies bereits vor dem Einfügen der Waren in die Warenkörbe gemacht werden, d.h., eine Authorisierung bereits vor dem Einkauf erfolgte, was jedoch wiederum schlecht für den Shop ist, es sei denn, das ist von vornherein so vorgesehen:

    "Bitte weisen Sie sich aus bevor Sie eintreten..."

    Feature? Warum nicht, dem Kunden muss das nur schmackhaft gemacht werden.

    Das wäre ersteinmal zu klären, bevor nur eine Zeile Code getippt wird ;)

    Hotti

    1. Hallo,

      Grundsätzlich ist ein Warenkorb auf genau eine Sitzung mit genau einem UserAgent bezogen. Das Hauptproblem sehe ich darin, diese beiden Sitzungen miteinander zu verschmelzen und zwar so, dass die Identität des WK-Inhabers über beide Warenkörbe sichergestellt ist.

      Oh, ich sehe mein Versäumnis: Es handelt sich um Warenkörbe in unterschiedlichen Systemen

      Möglicherweise muss dies bereits vor dem Einfügen der Waren in die Warenkörbe gemacht werden, d.h., eine Authorisierung bereits vor dem Einkauf erfolgte, was jedoch wiederum schlecht für den Shop ist, es sei denn, das ist von vornherein so vorgesehen:

      Ein weiteres Versäumnis von mir: Der mobile Shop kann nur mit Anmeldung genutzt werden. So ist der User immer bekannt und kann auf beiden Systemen abgeglichen werden.

      Danke und Gruß

      1. Hallo,

        Oh, ich sehe mein Versäumnis: Es handelt sich um Warenkörbe in unterschiedlichen Systemen

        Wieso zwei Systeme und nicht ein System mit unterschiedliche Oberflächen?

        Grüße
        Siri

        1. Hi Siri,

          Wieso zwei Systeme und nicht ein System mit unterschiedliche Oberflächen?

          Weil der Aufwand (aktuell noch) zu hoch ist.

          Dazu ist eine umfängliche Umstellung der Systeme von Nöten. Weit im Backend teilen sich die Systeme schon einige Komponenten (z.B. Artikel- und User-Datenbanken), aber "weiter vorne" ist das bisher nicht möglich (und aktuell auch nicht gewünscht).

          Auf lange Sicht ist das aber ein Ziel, steht nur im Moment nicht zur Debatte.

          Gruß

          1. Hallo,

            Dazu ist eine umfängliche Umstellung der Systeme von Nöten. Weit im Backend teilen sich die Systeme schon einige Komponenten (z.B. Artikel- und User-Datenbanken), aber "weiter vorne" ist das bisher nicht möglich (und aktuell auch nicht gewünscht).

            Soll das dann so eine Art "Warenkorb-Cloud" sein? Der Benutzer fängt im Garten mit dem Smartphone an einzukaufen und macht dann im Büro am PC weiter?

            Mal abgesehen davon, ob das Szenario sehr realistisch ist... Man kann doch den aktuellen Warenkorb in eine Tabelle schreiben, dann ist er auf beiden System aktuell, ganz ohne Synchro.

            Grüße
            Siri

            1. Hallo,

              Soll das dann so eine Art "Warenkorb-Cloud" sein? Der Benutzer fängt im Garten mit dem Smartphone an einzukaufen und macht dann im Büro am PC weiter?

              Jein. Es sind zwei getrennte Shops. Ein "klassischer" und ein neuer, mobiler der als Testballon auf neue Technik setzt und deshalb nur wenige Komponenten mit dem klassischen Shop teilt.
              Der skizzierte Anwendungsfall ist aber durchaus dicht an der Realität.

              Mal abgesehen davon, ob das Szenario sehr realistisch ist... Man kann doch den aktuellen Warenkorb in eine Tabelle schreiben, dann ist er auf beiden System aktuell, ganz ohne Synchro.

              Das funktioniert aus oben genannten Gründen nicht. Die Systeme sind nicht soweit kompatibel, dass man einen Warenkorb für beide Systeme vorhalten kann.

              Ich kann (im Sinne von dürfen) leider nicht präziser werden. Aber lass dir versichert sein, dass es aktuell keinen anderen als den beschriebenen Weg gibt.

              Gruß