Have you ever had a boss or client ask you to do something and in the course of doing it, you realize there's a fundamental flaw or you see a way it could be done better? What do you do?
There are two options to you.
1) Say or do something.
2) Do what you were asked to do.
In my opinion, option #1 is the best course of action. That's just my opinion though. Option 1 will probably lead to a better end result, but it's risky.
- you could appear to be second-guessing the client;
- you could be showing them up;
- your boss's ego doesn't accept the possibility that he/she's imperfect;
- you're accepting responsibility for actually thinking instead of just doing and now you could be blamed if things go awry down the line.
And then there's the inevitable: rejection. "No, we don't think your idea will improve the product." "Thanks for your input, but we've decided hot pink really is the right colour." Sometimes people will choose to do something you think isn't in their best interest. How irrational. How human. Now what?
You could always choose to be frustrated and angry. Tell your client or boss they're idiots. Burn bridges. Result: you wind up being frustrated and angry with people who don't care. At the very least you look unprofessional if you start mouthing off and you probably lose a client or a job. Carrying anger means you harm yourself and you change nothing.
A better choice: choose to respect their (wrong) decision and move on. You've spoken up and they've ignored your advice, so whatever will be, will be. If the project's a failure, your opinion might be more respected on future projects.
Stick up for option #1. You'll make the world a better place. People will notice your talent and that will lead to better things for you in time.