Frage

Bereits im Oktober Kristopher Johnson gefragt Accounting Software Design Patterns

Er erhielt mehrere Antworten, aber sie waren alle im Grunde das gleiche, was auf Martin Fowlers Accounting Patterns .

Ich finde nicht wirklich Fowlers Muster alles, was nützlich. Sie scheinen zu komplex für ein stark vereinfachte Abrechnungssystem, so dass ich wieder aufzuwärmen Kristopher Frage und suche nach mehr Optionen, vorzugsweise für kleinere Systeme.

Dies wäre in erster Linie ein Cash-basiertes System, in der Benutzer-Konten ähnlich eine Bank gegeben. Sie können sich anmelden (webbasiert) und überprüfen Salden, stellen bestimmte Geschäfte, etc ..

Ich denke, es wäre ähnlich einen Paypal oder Kreditkarte Unternehmen als eine Bank, aber in einem kleineren Maßstab. Es muß nicht mit Steuern befassen, oder Amortisationen, oder eines der Dinge, die Sie in einem vollwertigen Abrechnungssystem sehen würden. Nur Salden und Transaktionen.

So kann jeder Punkt auf zusätzliche Ressourcen für die Buchhaltung basierte Software-Design oder sogar gute Implementierungen eines einfachen Abrechnungssystemes?

War es hilfreich?

Lösung

  

So kann jeder Punkt auf zusätzliche Ressourcen für die Buchhaltung basierte Software-Design oder sogar gute Implementierungen eines einfachen Abrechnungssystemes?

Die Free Digital Geld Projekt für Ihre Bedürfnisse hilfreich aussieht. Es bietet eine grundlegende Transaktion und Balance Rahmen. Es ist bewusst einfach und abstrakt, so kann nützliche Design-Einblicke bieten, vor allem, wenn Sie neue Ideen testen möchten.

Cyclos ist praktischer. Es deckt Benutzerkonten und Transaktionen.

MyBanco ist ein weiteres Open-Source-Banking-System, unterstützen Benutzer Bankkonten und web-basierten Zugriff. Es kann sowohl mit virtuellen und realen Währungen verwendet werden.

Alle diese sind Open Source, so dass Sie die Dokumente überprüfen können, Architektur und Code direkt.

Als Nebenwirkung, wenn Sie in Salden und Transaktionen wirklich nur daran interessiert sind, dann klingt es wie jedes Muster oder ein Projekt im Zusammenhang mit Ruf, Karma oder Punktesysteme werden wahrscheinlich haben relevante Überlappung ...

Andere Tipps

Fowler Muster sind nicht zu komplex. Sie sind über das, was benötigt wird. Sie sind kaum in der Lage sein, etwas einfacher, ohne in Schwierigkeiten geraten entweder mit den Endnutzern oder dem Buchhalter zu bauen.

Als ich implementieren es ist das typische Modell eines Journals, Transaktionen und Konten und Kontoarten entfallen.

tblTransactions
    - Amount
    - AccountID1
    - AccountID2
    - Type [CR/DR]
    - DateEntered

ich dann auch einen tblJournals welche Gruppen Transaktionen auf der Basis offensichtlich. Sie können auch JournalTypes hinzufügen, die eine allgemeine Beschreibung, welche Art von Zeitschrift zu halten ist, so kann man schöne Dinge (reverals, etc.) erfassen.

Es ist schön, weil Umkehrungen unter diesem Modell trivial sind. Sie können alle Transaktionen für Ihre Zeitschrift nur sammeln, und die Art tauschen.

Die tblTransactions hat einen Trigger und der Trigger aktualisiert eine ‚CalculatedBalance‘ gegen die spezifischen Konten vom Typ abhängig. Sie können dann auch einen Bericht über einen bestimmten Zeitraum laufen, und so weiter.

Es braucht nicht viele Kenntnisse im Rechnungswesen erfordert dies zu implementieren und ist einfach, aber effektiv.

Google-Suche nach "zwei Phasen-Commit"

Nicht ein Entwurfsmuster per se, aber Sie müssen sicherstellen, dass Operationen machen wie "Transfer $ Betrag von $ account1 bis $ account2" nicht immer "zurückziehen", ohne die passende "deposit" ... das heißt, wenn die Leistung vor erlischt die " deposit“vervollständigt, das "wird zurücktreten" zurückgerollt (rückgängig gemacht)

Commit-fähige Transaktionen bestehen aus Undo-fähig (Rollback-fähig) Unter Transaktionen ...

  1. acquire Berechtigungen benötigt: trivial Ablehnung „ungenügend Mittel“
  2. starten eine "Zwei-Phasen-Commit"
  3. hinzufügen Untertransaktionen
  4. Commit oder Rollback

Achtung: BCD Mathematik erfunden wurde Rundungsfehler in der Basis 10 Mathe zu verhindern. Sie erwähnen nicht internationale Fragen, aber Sie müssen festen Punkt oder „große Präzision“ Mathematik, Währungsumrechnung und die ganzen Rest ...

Ich bin eigentlich der Autor von MyBanco, wenn Sie Hilfe möchten, lassen Sie mich einfach eine E-Mail:)

Shop Geld als Cent (integer) anstelle von Dollar (float). Es ist kein Design, aber es ist wahrscheinlich nützlicher.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top