To make long story short. our bank has an O'l Dos base Teller application that they want to move away from. It has no offline mode. It's a very simple "transaction" base application, it does not connect to the banking core...so think of it as record keeping; no real time balance.
the top managers would like to see the new app. a Windows base, with the same function as the DOS (to save time on training) but would like to add "offline mode". we would in-house/outsource the development so we have some control design.
We hired consultant to do some design and document... they suggested.
1) during each session (Customer) the transaction is stored in the local db.
2) after each session (customer) the transaction is sent to the server, than mark the local db to be online.
3) The teller drawer begining & current balance is retrieve from the server (this is due to some "financial" data design?) and calculate with the transaction than save back to the server...and also update the local db.
so if case of server died. the teller can still function.
is this a sound design?
I am no DBA, but I was thinking of scope it even tighter. By not doing the step (3), do the calculation only after the server come back. so during the offline mode, we would just record the transaction and print out customer receipt.... as for the drawer balance, leave it blank during offline. since each teller has a hard copy of their begining balance before the day begin it's not like we would loss money...