I don't know your data safety requirements, but by not using roles hierarchies, you've lost one of the most powerful built-in tools available in Salesforce that generally speaking, IMO, enhances data safety if properly applied.
That being said, I've not tried what I'm about to describe and it will involve extra work because you're not using role hierarchies. The first thing you'll need to do is establish easy ways to select your groups. Normally, User
will have who a User's Department
is and the ManagerID
each one reports to. So presumably, you could use User.ManagerID
to establish your initial groups of Users
for each Supervisor
. Whether Managers
need to see Supervisors
who don't report to them or not, will determine how you'll set up the private sharing groups. I'm also assuming Supervisors don't need to see Users of Supervisors who don't report to them.
For info on setting up private sharing groups, here are several references. First is Force.com Platform Fundamentals - Creating on Demand Applications. Others would be Security Implementation Guide and Tips and Hints for Sharing Cheatsheet.
You'll then need to create Custom Reports for each level. One set of Reports for Supervisors and another set for Managers. Depending on how you set up sharing will determine whether you can do those as all in one report or if you'll need to do a template and then run them for each Supervisor and each Manager. Since I don't know your security requirements, I can't advise you in that respect.
Again, the Force.com Platform Fundamentals will be a good resource for you in creating your custom reports. Additional resources would be Analytics Workbook, Using the Drag-n-Drop Report Builder, Getting Started with Analytics, Report Formula Summary Functions Cheatsheet and Maximizing Report Performance Cheatsheet.
I hope this helps you develop a solution that will meet your organization's needs. Sounds like you have a difficult task.