Many companies are already implemented this to avoid such problems an increase productivity as well as ROI for the company. I am sure the same will give you good results as time passes.
1. Put a Notice mentioning the Sign-In time is made flexible (9 - 10 AM).
2. The Sign -Out time is 7 PM, but it can be extended by the employee to enable completion of the work assigned.
3. However, if any employee is detained by the Project Manager (who assigns the tasks for the day) to undertake any extra task, he/ she may be permitted to come late next day. In such cases, the PM shall send an e-mail to HR indicating the time at which the employee will report next day. Delay beyond 1 hour (reporting time - 11 AM) is not permitted. However, dinner shall be provided by the company to all those detained beyond 8.30 PM, provided the HR is informed by 7 PM.
4. For detaining a female employee for an extra task, the PM shall be responsible to arrange her safe return back home.
5. The above process is to ensure that the attendance procedure is regulated in the company & the PMs have the requisite power to detain employees for essential jobs leading to timely delivery of projects & client satisfaction.
6. Those not following the above guidelines, will be treated as absent (for 0.5 day, if they report by 1 PM).
It may be better to get the draft Notice cleared by your management. Also it may be desirable to send a copy of the Notice by e-mail to all Managers & Team/ Project Leads.
We can introduce the monthly awards or if you have huge strength you can atleast do recognition.
What we do in my firm is we started off with a monthly recognition mail to all which informs who all were the attenders of the month (people who took 0 leaves and have not even one single late mark.)
Since ours is a small team, off lately we decided to introduce a monthly budget of X amount per month for such attenders. It will actually enable them to look forward and try to reach off on time.
Also as you mentioned if the late back sitting is too frequent, as suggest allow a flexi in time of about an hour so that the people do not think they are just being violated for services.
Instead of using the punishing methods, why not we initiate a rewarding method to engage the people better at work?
All the best