Decomposition of a relation to 3NF Given a relation $R(A, B, C, D, E, F)$, with the following functional dependencies:
$\{A \rightarrow BC, CD \rightarrow E, B \rightarrow D, E \rightarrow A\}$.

The objective is to decompose $R$ into 3NF relations.

So far, I have determined that the following candidate keys are present in the given relation:
$AF$, $EF$, $CDF$ and $BCF$.

Since every attribute is present as a part of some candidate key, for every $X \rightarrow A$, $A$ will be part of some candidate key, and so R itself should be in 3NF.

Since the question explicitly, however, states that it is not in 3NF, I have got a little confused. Where am I going wrong? Is there something that I have not understood?
The original definition of 3NF was "flawed".  Relvars such as yours could perfectly be in 3NF and still have undesirable redundancy.

And the flaw was exactly in cases when there was more than one candidate key.

Which was the very reason why BCNF was introduced, as a "fix" to the "flaw" that was discovered in [the definition of] 3NF.

The thing is, in cases of >1 candidate key, we wouldn't even want designs such as yours to even satisfy 2NF.  Both 2NF and 3NF can be violated only by nonprime attributes.  That is the flaw in their definition.  When the "fix" was applied to 3NF, superseding it with BCNF, the fix itself was flawed because actually what should have happened was to supersede the definition of 2NF with one that didn't limit itself to "nonprime" attributes".