See simle approach would be :
consider all names given Shipping (ShipName, ShipType, TripId, Cargo, Port. Date) as
R(A,B,C,D,E, F) with dependencies given as :-
A->B
C->AD
AF->CE
with candidate keys{AF AND CF)
Now coming to examine new databases below are steps:-
NOTE: again assume all names as variables like A,B,C,D,E and F
1) R1(A,B)
find candidate keys for this relation using only that dependencies that R1 uses(dependency having A and B ie.A->B ) it would be A.
using the dependencies given we will use only those dependencies that come under our R1 ie
A->B because our relation R1 Contains R1(A,B)
check all forms one by one for this dependency – it will satisfy BCNF as A is super key also . R1 is in BCNF
2) R2(C,A,D)
find candidate keys for this relation using only that dependencies that R2 uses(dependency having C,A and D ie. C->AD ). it would be C.
using the dependencies given we will use only those dependencies that come under our R2 ie
C->AD as we are only 3 variables in our R2 that uses this dependency
check all forms one by one for this dependency – it will satisfy BCNF as C is super key also . R2 is in BCNF
3)R3(A,F,C,E)
find candidate keys for this relation using only that dependencies that R3 uses(dependency having F,A,C and E ie. AF->CE).. it would be AF
check all forms one by one for this dependency – it will satisfy BCNF as AF is super key also . R3 is in BCNF