Trust. People have to trust you/your company to deposit money / coins there.
Safety. You have to make sure people's money / coins are safe. Cold storage, insurance are things to think of.
Usability. Your exchange's usability has to be very good.
Coins. You have to get many coins, but each coin means wallet(s) eating up resources.
Fees. Your fees (exchange and withdrawal too) may have to be lower than the competition at least for the start, until you gain liquidity.
Liquidity. You have to invest and attract people with coins. If nobody has anything to sell/buy on the exchange, there's no reason to go there.
Quite a lot of work and money there. Much more than "having bought a script".
My friend just started an exchange this week. He aims to mainly buy/sell cryptocurrency to fiat, mostly sell. In my country the cryptocurrency has not been adopted widely, then its price always higher than price in other country.
This post will help him very much. Thank you.