How to convert a table into second normal form

normalization

I am really struggling to convert the table into second normal form.
I've tried examples which are much easier, however I can't seem to be able to identify the keys for this one and work my way forward. I have converted that to 1st normal form by duplicating the module information.

enter image description here

Best Answer

1NF: Only the key
    Remove repeated data/data groups 
    i.e. having a person and address table instead of single mega-table
2NF: The whole key
    Ensure that all nonkey columns are dependent on the whole key
    So with a table where employee name and location could be a primary key, 
    and there is a skill attribute the skill attribute isn’t dependent 
    on the whole of the key as 
    it isn’t dependent on location therefore must be split into two tables
3NF And nothing but the key
    Should not have any dependencies on things other than the primary key

Now this seems like a bit of a homework question so I won't do it for you but make a module table, make a room table. If you want third normal form making a booking table with module code and room number as a compound primary key, and the fields relevant to a booking.

Remember normalisation is to make all the data related and remove repetition.