Question

Retour en Octobre, Kristopher Johnson a demandé à propos de Design Patterns Logiciel de comptabilité

Il a reçu plusieurs réponses, mais ils étaient tous essentiellement les mêmes, montrant Martin Fowlers modèles comptables .

Je ne trouve pas vraiment des modèles Fowlers tout ce qui utile. Ils semblent trop complexes pour un système de comptabilité plus simpliste, donc je suis ressasser la question de Kristopher et la recherche de plus d'options, de préférence pour les petits systèmes.

Ce serait avant tout un système de caisse dans lequel les utilisateurs sont donnés des comptes similaires à une banque. Ils peuvent se connecter (sur le Web) et vérifier les soldes, effectuer certaines transactions, etc ..

Je suppose que ce serait plus semblable à une société Paypal ou carte de crédit qu'une banque, mais à plus petite échelle. Il ne sera pas à faire face à des impôts, ou, ou tout Amortissements des choses que vous verriez dans un système de comptabilité à part entière. Juste les soldes et les transactions.

Alors peut pointer quiconque à des ressources supplémentaires pour la conception de logiciels à base comptable ou même de bonnes mises en œuvre d'un système de comptabilité simple?

Était-ce utile?

La solution

  

Alors peut pointer quiconque à des ressources supplémentaires pour la conception de logiciels à base comptable ou même de bonnes mises en œuvre d'un système de comptabilité simple?

Le projet numérique gratuit semble utile pour vos besoins. Il fournit un cadre de transactions et du solde de base. Il est volontairement simple et abstraite, donc peut offrir un aperçu de conception utiles, surtout si vous voulez tester des idées nouvelles.

Cyclos est plus pratique. Il couvre les comptes des utilisateurs et des transactions.

MyBanco est un autre système bancaire open source, le soutien des comptes bancaires de l'utilisateur et l'accès Web. Il peut être utilisé avec les deux monnaies virtuelles et réelles.

Tous ces éléments sont open source afin que vous puissiez vérifier la docs, l'architecture et le code directement.

En aparté, si vous êtes vraiment intéressé que les soldes et les transactions, il ressemble à tout motif ou d'un projet lié à la réputation, le karma, ou systèmes de points sera probablement chevauchement pertinent ...

Autres conseils

Les motifs de

Fowler sont pas trop complexe. Ils sont à peu près ce qui est nécessaire. Il est peu probable de pouvoir construire quelque chose plus simple sans avoir des problèmes avec soit les utilisateurs finaux ou l'expert-comptable.

Quand je mets en œuvre la comptabilité, il est le modèle typique d'un des journaux, des transactions et des comptes et types de compte.

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

Je puis ai aussi qui transactions tblJournals groupes sur la base évidente. Vous pouvez également ajouter JournalTypes, qui détiennent une description générale de ce type de revue est, vous pouvez détecter des choses gentilles (reverals, etc).

Il est agréable, parce que renversements compris dans ce modèle sont négligeables. Vous pouvez simplement rassembler toutes les transactions pour votre journal, et remplacez le type.

Le tblTransactions a un déclencheur, et la gâchette met à jour un « CalculatedBalance » contre les comptes spécifiques en fonction du type. Vous pouvez ensuite exécuter également un rapport sur une période donnée, et ainsi de suite.

Il ne nécessite pas beaucoup de connaissances comptables et à mettre en œuvre c'est simple, mais efficace.

Google recherche de "validation en deux phases"

Pas un modèle de conception en soi, mais vous devez faire des opérations sûres comme « transfert montant de $ de account1 $ à compte2 $ » ne pas jamais « retirer » sans correspondance « dépôt » ... à savoir si une coupure de courant avant le " dépôt » se termine, la « est annulée retirer »(défait)

Transactions Commit-mesure sont composées de undo-mesure (rollback) capable de sous-transactions ...

  1. autorisations Acquire nécessaires: le rejet trivial, « insuffisante fonds »
  2. démarrer une "validation en deux phases"
  3. ajouter des sous-transactions
  4. commit ou roll-back

Attention: maths BCD a été inventé pour éviter les erreurs d'arrondi en mathématiques de base 10. Vous ne mentionnez pas les questions internationales, mais vous auriez besoin de point fixe ou « grande précision » les mathématiques, la conversion des devises, et tout le reste ...

Je suis en fait l'auteur de MyBanco, si vous voulez une aide, il suffit de me un e-mail:)

L'argent du magasin en cents (entier) au lieu de dollars (float). Ce n'est pas une conception, mais il est probablement plus utile.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top