School is there to prepare you for life as an adult. Plain and simple. Being on time is something you will need to do as an adult and being late can have consequences. Not only will you need to be on time for personal matters but also for just about any job you get. Being late will always reflect on your job performance record. Your performance record can affect future advancement and can even be used to fire you. Getting in trouble for being late to class can be looked at as another lesson the school is teaching. This lesson is, if you don't want to get into trouble, be on time.
Kids and adults should be held accountable for their actions. Traffic patterns tend to be fairly consistent, so blaming traffic for being late is not a valid excuse. If there was an accident holding up traffic, most schools will accept your tardiness without punishment if you can offer proof. Punishment for being late will give you an incentive to be on time the next day. Punishment encourages building good habits and responsibility.
Being on time means you have respect for the use of other people's time. School is meant to prepare you for the real world. If you are frequently late for work you get fired. You need to plan ahead, take into account that traffic might be bad, and leave early to make sure your arrive on time.
If we are talking kid kids think about the parents they are the ones driving them to school. One of my friends who lived outside the district but had to attend my school had her mother pick her up and drop her off. She loved school and made good grade but had no desire to be late. She would yell at her mom because they were always waiting on her to get ready and driver to school. At a certain age its not the kids job to get themselves ther on time
Kids should not get in trouble for being late to school because things happen. If they are late a lot then they should get in trouble, but if it's once, there should be no consequences. I bet you've been late to something before. A party, reservations at a restaurant. Did you get in trouble for that?
Kids should not get in trouble because it could be the parents fault. It also could be bad traffic or you could live far away. As long as you are learning things in school, than it shouldn't matter if you are on time or not. It is not fair to people that you get in trouble because you were late. Plus it goes on your school record and that's just not fair.
I don't think that kids should be punished because they are late for a reason and they cant help it unless they slept in or just simply skipped. If they have a good excuse they shouldn't have to have a detention that some schools do. It takes to much time and its worthless.