Banking - Product Knowledge Base
This knowledge base represents a simplified banking environment. It simulates the interaction between customers and the bank. The customer represent a real customer but also a web-shop or merchant are customers of the bank. The customer can initiate an internet banking session, with al kind of actions. The actions are related to account (e.g. transferring money), loan (e.g. withdraw, repay) and credit card. The other flow to be started by the customer is an ATM session (e.g. withdraw, deposit). The Merchant start a sale of goods, and yes you could say it starts with the customer. The customer can pay by cash or via an electronic way (which is much more interesting for the message flow). Then there is an example of WebShop, which sells good via orders, here an aggregator is used to handle the payments. I have used iDEAL, which is popular within the Netherlands. It should be seen as an online payment via the own bank. Payments towards external banks are very simplified. I have made the flows in human representation, first of all because I could not find real protocols (except ISO-20022).
This example show the strength of creating message flow based on knowledge/decision as the outcomes can become very complex. The message flow are sometimes limited on the amount or revisits. This to prevent endless possibilities. In theory this amount of revisits can be increased. One example is the amount visits in the main menu. But more limitations exist. In case there ideas to improve then please contact me.
Example Message-Diagram
The following example shows a Customer starting an internet banking session, which is authenticated and then transfer money from his checking account to his saving account. Along the way several choices are made, like login-valid, enough balance etc. On the interactive Sequence Diagram you can play with the choices and thus create different outcomes. The system will only ask for a 'choice' if there is something to choose from.