Side supports are screwed into the bench legs and back.
The "joists" are screwed to the side supports from the top of the joists.
Very simple to do.
Then I spaced out the scrap 2x4s as roof supports:
I used more scrap wood to add sheathing for the underside of my roofing. I used this to add strength to the roof. We get a lot of snow here and I needed this roof to be able to support the weight of the snow. Any old wood will do as long as it's the same depth.