I call the last two lines a "summary recap"
I know of two ways to get those totals:
A single multi-row field populated with data via ExecuteSQL or
A portal where a relationship and/or portal filtering matches to the desired person and group of records. The portal method typically would use a data model that looks like this:
Hours (layout report table)::anyfield X People::anyField
People::gYear = Hours II (2nd occurrence of report table)::cYear
gYear would be a global field set to a value such as 2016 via a script and cYEar would be a calculation field Year ( DateFIeld ) to return just the year. (You may already have such a field). Your portal would list name fields from People and either summary fields from Hours II or calculation fields from People defined as Sum ( Hours II::Hours ) to return yearly totals for each person.