Assertiveness is a communication skill, not a personality trait, and it trains like any other.
The classic structure has three parts: the observation (what happened, without interpretation), the effect (what it produced in you) and the request (what specifically you want). “You've been late three times this week. When it happens I end up rescheduling everything after it and finishing late in the evening. I'd like you to let me know an hour ahead if you won't make it.”
What separates it from aggression is not tone but content: aggression attacks the person, assertiveness describes the behaviour. What separates it from passivity is that the request is actually made, not implied.
The real cost of assertiveness is that sometimes the answer is no. Anyone who confuses assertiveness with a guarantee of getting what they want abandons it quickly — which is exactly why training includes, explicitly, practice at being refused.