Message Diagrams


Introduction

Interactively created Message Diagrams are generated based on knowledge/programmed logic. They are not statically created Diagrams as done by most common tools. The system gives a choice whenever the logic comes up with more than one option. The user then has to select an option, causing the system to continue on the given path until the next choice arrives. Choices are given until no more choices are available for chosen path. By doing this the user interactively generates the Message Diagram. This approach creates a virtually unlimited amount of permutations in generated Message Diagrams.

More information on Message Diagrams

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.

Learn more about the Banking example

Transfer Saving funds

The customer wants to transfer money from his checking account to his savings account. He does this via an internet banking session, where he needs to login using his password/pin...

Goto Example - Transfer Saving funds

ATM Withdrawal

The customer wants to withdraw money using an ATM. In this case it was chosen to skip the authorization (to simplify the diagram), the cash counted and the checking account is debited...

Goto Example - Customer withdraws money from ATM

Merchant Contactless

The customer needs to pay the merchant for the goods. The customer decide to pay with an electronic payment method. If it was cash then the diagram would have been easy. There are 3 electronic payment method available, in this case contact-less is chosen. The customer taps his card which is validated correctly and the money is transferred to merchants account as he has enough balance...

Goto Example - Merchant starts contact-less payment

Webshop iDEAL

The customer want to buy something in a web-shop. The total amount to pay is shown and the customer is send has several choices on how to pay. In this case a iDEAL (a direct banking payment method) is chosen. The customer enter a valid password. The balance check passed and the the money is transferred to the web-shop owner...

Goto Example - Web-Shop payment using iDEAL

Create your own flow

With the button below you can start creating your own flow. Select a starting point from the given overview...

Lets start creating your own flow

Simple SMSC - Product Knowledge Base

This knowledge base represents a small SMSC. It simulates the interaction between the SMSC and its external parties being the Applications and the User Equipment. It does not simulate the extensive other elements.

Learn more about the SMSC example

Successful UCP submit

An Application (e.g. password validation) want to send to a mobile user. In this case its done using an UCP application which has to identify itself. This succeeded first time, it than submit a message is send after the message is successfully stored

Goto Example - Successful UCP submit

SMPP App to SS7 Mobile

An Application (e.g. 2way password validation) want to send to a mobile user. In this case its done using an SMPP application which has to identify itself. This succeeded first time, it than submit a message is send after the message is successfully stored...

Goto Example - SMPP App to SS7 Mobile

Successful Mo-Mt (SS7)

A mobile user uses SS7 to send a short message. The core accept the message and it is successfully stored. The response is send to the originator. In the mean time a delivery attempt is started to a mobile recipient...

Goto Example - Successful Mobile to Mobile over SS7

Mt SS7 then SIP

The core starts a delivery attempt towards a mobile. First SS7 is attempted but the HLR (SS7 domain) gives a negative response. Then the HSS (SIP domain) is tried, which answers with a positive reponse. The delivery attempt is done over SIP and the mobile accepts the message...

Goto Example - Core retries to Mobile, first SS7 than SIP

Mo-Mt retry

The mobile user using SIP want to send a message to another mobile, the message is successfully accepted by the SMSC. A delivery attempted towards a mobile. First SS7 is attempted the HLR (SS7 domain) thinks is in its domain. Then a delivery attempt is tried to the mobile over SS7...

Goto Example - Mobile to Mobile, retry delivery

Create your own flow

With the button below you can start creating your own flow. Select a starting point from the given overview...

Lets start creating your own flow

Unix Services - Product Knowledge Base

This Knowledge base represents a minimal subset of services available on an Unix server. Other operating systems will have similar message flows, but might have different entities involved.

Learn more about the Unix Services example

Telnet no Listener

The user start a telnet session. His session is rejected as there is no listener active. This happens when the used service (in this case telnet) is not configured or started...

Goto Example - Telnet no Listener

Telnet Login

The user start a telnet session. His session is accepted by the inet daemon and passed on to login process. The user send a correct password on the first attempt. The session is then handed over to the shell process which can handle the command...

Goto Example - Telnet Login

Create your own flow (global view)

With the button below you can start creating your own flow. Select a starting point from the global overview...

Lets start creating your own flow

Create your own flow (detailed view)

With the button below you can start creating your own flow. Select a starting point from the detailed overview...

Lets start creating your own flow

Versatile - Product Knowledge Base

This knowledge base represents some versatile diagrams. More will be added in the future. The flow and enitties do not have (much) relation to each other. The message are mainly in human readable form and do not represent real computer messages or protocols.

Learn more about the Versatile example

Passenger Boards Airplane

The passenger arrives at the airport and had a very smooth procedure to enter the airplane. At the check-in desk he successfully gave his ticket. The single luggage he had was accepted, not over weight nor odd size...

Goto Example - Passenger Boards Airplane

Create your own flow

With the button below you can start creating your own flow. Select a starting point from the given overview...

Lets start creating your own flow

Query Entities

Follow the link below to query the entities used in the Versatile example.

Goto Entities - Versatile

Knowledge Base

The idea behind the product knowledge base is to couple the message flow with additional information stored in the database. The more data is available the more relations it can show. Be aware the created example are only as good as the information.

Learn more about the Knowledge Base

Design Message Diagrams

This website was created as an interface to the Product Knowledge Base (PKB) specifically on the Message Diagrams part. The PKB is much more than just a message creator. It can store many (related) objecst and query its information (e.g. see the entities). The PKB is acting as a server which gets its information from XML files and stores this in memory. Each example has its own server running. The server is written in C and communicates with multiple clients over TCP/IP. The client is written in C (but also a Python and Python asyncio version are created). The main website is written in bash (CGI, HTML, CSS) and uses the client to query the PKB. The bash script parses the information to HTML The website runs under Apache using ExecCGI.

Attachments

Image not found
Image not found
Image not found
Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found
Image not found
Image not found
Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found
Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found

Attachments

Image not found