I gave this some sort and thought I do it the way that I only create the average for the Efficiency for the last available 3 Fiscal Periods. I dont think its fair for an Uptodate report to build the average for longer periods back, why should an orginzation benefit in their Efficiency Rating in the end from an average that includes data from a really long time ago? So I limited the average calculation for the efficiency to max. 3 last available 3 years.
Additionally I build in a check to make sure that the criterias that were defined are looked at only for the last available fiscal period, did not check if that even occurs but generally I guess it could happen that an Organization for example grants to individuals in data from 2016 but not in 2017, or maybe even they had 98 employees in 2016 and 102 in 2017. I think its not an issue in this data set, but as I usually build stuff as much general (so to be used with new datasets later) as possible, I built that check in as well.
Lastly I have made this all dynamic, so no static, manual downloads at all, all is running dynamically and pulling the data at run time. If I were to design that for a production use case, I would probably design this as an Analytical App where the user could choose if they want to download the files newly or if they want to use the existing dataset that has been downloaded in the past.