Dato che stai facendo una domanda sull'etica, devi specificare quale codice etico stai rispettando. Risponderò in base al Codice di etica e pratica professionale per l'ingegneria del software dell'ACM .
Le sezioni importanti sono quelle sulla relazione con il cliente e il prodotto stesso:
CLIENT AND EMPLOYER - Software engineers shall act in a manner that
is in the best interests of their client and employer consistent with
the public interest.
In particolare:
2.06. Identify, document, collect evidence and report to the client or
the employer promptly if, in their opinion, a project is likely to
fail, to prove too expensive, to violate intellectual property law, or
otherwise to be problematic.
e
PRODUCT - Software engineers shall ensure that their products and
related modifications meet the highest professional standards
possible.
In particolare:
3.06. Work to follow professional standards, when available, that are
most appropriate for the task at hand, departing from these only when
ethically or technically justified.
3.07. Strive to fully understand the specifications for software on
which they work.
3.08. Ensure that specifications for software on which they work have
been well documented, satisfy the users’ requirements and have the
appropriate approvals.
Quanto sopra dovrebbe rispondere alla tua domanda sui tuoi obblighi etici. Il tuo team di sviluppo deve avvisare il tuo cliente dei problemi riscontrati dal team con i requisiti.
Suggerirei di non farlo da soli. Devi documentare ciò che vedi come problemi e discutere con il tuo project management e la tua leadership tecnica.
I progetti ben avviati dovrebbero avere un processo di gestione dei requisiti, che dovrebbe includere disposizioni per la documentazione e la risoluzione dei problemi rilevati durante lo sviluppo.