Hi @hardikbeladiya. I described the end-to-end setup process here: https://github.com/bushidowallet/bushido-doc. If you are interested in just the web application part, details are here: https://github.com/bushidowallet/bushido-web-app/blob/master/README.md. When it comes to the flow of the application, it is described below in the nutshell.
Both the web application and android application are exchanging messages over secure channels with bushido-java-service which contains BIP32 compliant Bitcoin wallet's logic. These secure channels are plain HTTP over SSL and WebSockets over SSL. What sits between clients and server is an instance of Nginx, acting as a proxy and an instance of Rabbit MQ to provide message brokerage component. The backend consists of two components: bushido-wallet-service and bushido-address-watcher. Those two services talk to each other through AMQP channel provided by Rabbit MQ instance mentioned. The bushido-address-watcher is a service that wraps up BitcoinJ library in order to get notifications about balance changes at Bitcoin addresses associated with wallets held by the bushido-wallet-service.