The correct way to solve such question is to start from lowest level of Normalization and go upwards
so we have R(ABCDEFG) with AB → C, BC → A, AC → B, B → D, D → E as FD's
our current relation is not in 2NF due to partial dependency as our candidate key are ABFG, ACFG, BCFG so all FD's violate 2NF
step 1 break it to fulfill 2NF condition. here i am taking ABFG as key
R1(ABFG) with FD A->A, B->B, F->F, G->G
R2(ABCDE) with FD AB → C, BC → A, AC → B, B → D, D → E.
R1 is in 2NF, 3NF and BCNF but R2 violate 2 NF because of B-> partial dependency
R11(ABC) R12(BDE) with there respective FD's.
R11 is in 2NF, 3NF and BCNF
R12 is not in 3NF due to D->E (non prime -> non prime)
break R12 as R121(BD) R122(DE)
Now each relation is BCNF dependency preserving lossless decomposition
which are R1(ABFG) R2(ABC) R3(BD) R4(DE)
If you first try to fix lower normal form higher will be in place here i first converted it into 2 NF and the 3 NF it turned out it automatically became BCNF, there is no algorithm for my method its just aptitude based