A person is becoming good day by day. or A person is becoming better day by day. or A person is getting better day by day. or A person is being good day by day.
Which one is correct and why?
The most natural choice is "A person is getting better day by day." The phrases getting better and day by day both suggest an ongoing process, so they are compatible.
Becoming better is not a correct construction because becoming refers to a goal which the person is striving towards. Better is not a goal, it is a step towards a goal.
Becoming good is a correct construction, because good is the goal. And it describes an ongoing process, so it is compatible with day by day. So I think "A person is becoming good day by day" is also technically correct, although it sounds awkward.
A person who is being good has already reached the goal. This is not an ongoing process so it is not compatible with day by day. Instead you could use every day which does not imply an ongoing process : "A person is being good every day."