Compute keys for R using FDs
Repeat until all relations are in BCNF:
Pick any R with A -> B that violates BCNF
Decompose R into R1(A,B) and R2(A, rest)
Compute FDs for R1 and R2
Compute keys for R1 and R2