multiuser projekt

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • multiuser projekt

    hallo zusammen,

    ich melde mich nach ner ziehmlich lange zeit auch mal wieder zu wort und hab gleich mal ein großes projekt und damit auch ein großes problem im gepäck und ich hoffe mir kann der ein oder andere mit einer idee oder erfahrung weiterhelfen.

    mit einem kollegen bin ich zur zeit mir der entwicklung eines vorentwicklungstools beauftragt worden. ich umschreibe das ganze jetzt einfach mal als ein zeichenprogramm das allesmögliche mit einer datenbank abgleicht. was das tool alles genau macht ist eigentlich nebensächlich...
    unsere problem besteht darin, dass die kollegen die mit dem programm arbeiten sollen, in einem gewissen umfang eine multiuserfähigkeit wünschen.
    man muss dazu wissen, dass das zeichenprogramm verschiedene ebenen zur verfügung stellt. immer wenn ein user das tool startet, beendet oder speichert werden die daten mit der datenbank abgeglichen. auf der untersten ebene sollen mehrere user gleichzeitig an der selben zeichnung arbeiten können.
    sollte ein user aber an einer höheren ebene arbeiten wird die gesamte zeichnung geloggt und es kann nur dieser user an ihr arbeiten bis er seine arbeit beendet hat.
    mir ist klar das man eine art "konfliktlösung" einbauen muss da user die auf der untersten ebene arbeiten evtl ja auch die gleichen zeichnungselemente verändern bzw. die gleichen uniques aus der datenbank verwenden was ja auch nicht geht. leider haben wir aktuell noch keine idee wie sowas umzusetzen ist.
    um das ganze noch etwas komplizierter zu machen muss es auch möglich sein das tool offline zu verwenden da einiger der kollegen oft bei kunden sind und die zeichnungen präsentieren müssen bzw. mit dem kunden zusammen an problemen arbeiten müssen. sobald der user der offline gearbeitet hat wieder im firmennetz ist und sich im programm anmeldet müssen seine geänderten daten wieder mit der datenbank abgeglichen werden und evtl wieder ein konflikt gelöst werden.

    das ganze ist ein projkt unter .net und wird mit c# entwickelt. die daten bank wird wohl eine oracle datenbank werden.

    wir würden uns sehr freun wenn sich ein paar finden die uns mit ideen, tipps und erfahrungswerten weiterhelfen könnten.

    thx, truespin
  • Sollen die echt "Zeichnen" oder existierende Objekte in den Zeichenfläche ziehen?
    Also mehr sowas wie Paint oder nen UML-Tool? :D

    Wenn die so richtig Zeichnen sollen mhm.. dann ist die Frage wann ist es denn überhaupt ein Konflikt? Wenn zwei an einer Ebene gearbeitet haben (offline) und es dann hochladen ohne das die Striche sich berühren.. ist das ein Konflikt?

    Versuch das bitte nochmal etwas genauer zu erläutern.. kann mir das grad nicht so recht vorstellen.
  • Klingt nach einem sehr umfangreichen Projekt!
    Dass du damit in Richtung Google Wave (Stichwort "Kollaboratives Arbeiten") und gleichzeitig Google Gears (offline arbeiten, später synchronisieren) ist dir klar, oder?
    Die beiden Projekte hat Google übrigens beide eingestellt und niemals verheiratet ;)

    Vielleicht findest du unter den beiden Stichwörtern hilfreiche Literatur. Konkrete Implementierungsvorschläge habe ich im Moment keine..
  • hallo und danke für die antworten!

    als erstes, es ist natürlich kein zeichenprogramm ;) leider kann ich nicht viel genauer werden um was es geht.
    aber du hast recht, alles was auf dem zeichenblatt ist, sind objekte! es ist eher eine art visio aber mit ganz anderem hintergrund...
    im grunde geht es um simulationen, auswertungen und konzepentwicklung.

    wenn zwei online arbeiten und sich durch ihre arbeit nicht beeinflussen ist es kein konflikt. sollte aber z.b. user a eine linie löschen die user b verlängert hat ist es sehr wohl ein konflikt.

    ja d0nut... ist ne recht großes projekt... vorallem für zwei entwickler -.-
    von google wave und google gears hab ich schon gehört, aber mich noch nicht damit befasst. im grunde muss das tool ein kleines subversion beinhalten wobei auf versionierung verzichtet wird.

    ich hoffe das erklärt das ganze genauer und ich hab noch nicht gegen eine geheimhaltungsvereinbarung verstoßen ;)

    thx, truespin