Prepare your wood. Cut four 4-by-4-by-16-inch corner posts, eight 1-by-4-by-48-inch pieces for seat slats and facing supports, two 1-by-4-by-16-inch pieces and six 1-by-3-by-16-inch pieces for side supports and seat braces. Seal ends to avoid moisture damage.
Build the seat frame to begin. Set a facing support upright and attach it to a 1-by-3-inch side support, then add opposite facing and side supports. The tops of the side supports will be about an inch lower than the facing supports, which will protect the front and rear edges of the slats. Check for square, then attach the supports with rust-resistant screws. Attach the next seat supports between the front and back, beginning 4 inches in from each side to leave room for the legs. Space the two remaining 1-by-3-inch seat braces evenly across the rest of the space inside. Before attaching each brace with screws through the front or back supports, check that it allows the slats to sit level by laying a slat across the braces and sanding to make the top surface even if necessary.
Put the front and rear slats on the bench, butting each up against the backs of the facing supports on the front and rear of the bench. Turn the seat upside down and set each leg in its corner tightly against the facing support between the side support and first seat brace. Attach each leg through both the facing and side supports with 2-inch deck screws or lag bolts. Before attaching the last leg, turn the seat right-side up again and add the last leg, adjusting so the seat doesn't "wobble" before attaching with 2-inch deck screws or lag bolts.
Attach bottom supports to the outsides of the legs, again starting with facing supports, about 4 inches up from the base of the leg. Check for level before attaching, then attach the two 1-by-4-inch side supports, fitting them between the overlapping ends of the front supports. Turn the bench over and attach the other seat slats to the top. If they fit tightly together, sand the edges so there's a bit of space between them for water to drain. Sand all edges carefully before finishing with paint or stain.
Individualize your bench. Create a back by using 4-by-4-by-36-inch back legs (shorten the back slat 8 inches). Attach a 1-by-2-by-48-inch strip to the back legs just above the seat slats as a back base and another at the top behind the corner posts to form a slight slant. Secure a 20-by-40-inch piece of garden lattice with two more pieces of 1-by-2. Add side pieces to frame the back. Add arms by increasing the height of the front corner legs to 24 inches (shorten the front slat 8 inches) and cut two 1-by-4-by-24-inch arms. Attach 1-by-2-by-3-inch support blocks to each corner of the back, and attach the arm on top of the blocks and front corners with deck screws or rust-resistant nails. Again, sand carefully or finish with a router to detail edges.