based on what I read on
BIP174, this is used for coinjoin transaction, am I right?
No, its for MultiSigs... at the moment, MultiSigs are mostly wallet dependant... that is to say, everyone needs to be using the same wallet to be able to participate in a multisig arrangement.
The idea of PSBT is to create a generic format for partially signed transactions, so you can use ANY wallet that supports PSBT to receive a partially signed transaction, sign it with your wallet then pass it on to the next person etc. It should also mean you don't need access to the UTXO set to be able to sign.
Creating unsigned or partially signed transactions to be passed around to multiple signers is currently implementation dependent, making it hard for people who use different wallet software from being able to easily do so. One of the goals of this document is to create a standard and extensible format that can be used between clients to allow people to pass around the same transaction to sign and combine their signatures. The format is also designed to be easily extended for future use which is harder to do with existing transaction formats.
Signing transactions also requires users to have access to the UTXOs being spent. This transaction format will allow offline signers such as air-gapped wallets and hardware wallets to be able to sign transactions without needing direct access to the UTXO set and without risk of being defrauded.
how do we pass this psbt to the other parties so they can do their parts and sign it?
It's effectively just text data, so just you can pass it in the same way you currently provide a partially signed transaction, give them a text file or you could probably use a QR Code or something like that...