Dipende
Il significato della parola "bug" è a volte informale, a volte formale, a volte controverso, anche, a volte, definito dal contratto. Ho lavorato su progetti in cui sono stati addebitati i costi per ogni bug trovato dopo una certa data; in una situazione del genere, la definizione è chiaramente indicata nel contratto.
Evita l'argomento intero
Se la tua situazione non è così rigorosa, ma le persone sono ancora controverse, ti consiglio di evitare completamente il "bug" e di utilizzare questi termini alternativi:
Un difetto di implementazione è presente quando il comportamento previsto non corrisponde al comportamento effettivo. Il comportamento può essere "previsto" solo in presenza di un requisito - no "Semplicemente non mi piace!" tipo di problemi sono ammessi. I difetti di implementazione sono causati e risolti dagli sviluppatori.
Un difetto di progettazione è presente quando il comportamento corrisponde al design, ma il design non soddisfa i requisiti. In altre parole, si è verificata un'errata mappatura durante la conversione dei requisiti di sistema in requisiti software derivati . Questi sono causati e risolti da architetti o analisti tecnici del business.
Un difetto dei requisiti è presente quando il comportamento corrisponde ai requisiti ma i requisiti non corrispondono alla dichiarazione di missione dell'applicazione; in altre parole, c'è un errore nella mappatura di tracciabilità tra requisiti aziendali e requisiti di sistema. Questi sono causati e risolti dalle parti interessate o dagli analisti aziendali. (Nota: quando questi si presentano, è importante aggiornare la documentazione e informare il QA in modo che possano aggiornare i loro casi di test).
Un divario di requisiti è presente quando un comportamento non è incoerente con i requisiti dichiarati, ma sembra sbagliato ed è probabilmente qualcosa a cui nessuno pensava.
Nel tuo caso, la funzione B non è ancora stata implementata, quindi non hai un difetto di implementazione. È probabilmente un difetto di progettazione o un gap di requisiti.