Here is a setup that allows to have the result from one plane.
Practically speaking (regarding how is the final model in the question), I don't think this is better than the other answers, but it allows to rework the base plane shape as needed in a non destructive way.
The principle is the following :
Start with a plane, array it 3x and curve it so that you obtain 3 faces of a cube. Then array it again in order to make and place the 3 missing faces (for both arrays, set the merge option on).
Now eventually subsurf all that and add a cast modifier to make it round.

Step by step :
- Make a plane and array it with 3 iterations and the merge option on.

- Curve the previous array so that you obtain 3 consecutive faces of a cube.
The curve is composed of 3 segments (a mesh converted to curve). Make sure to have a resolution of 1 in the curve properties panel.

- Use a new array with a count of 2 to obtain the complement part of the cube.
This array uses an empty as 'object offset'. This empty is moved and rotated so that the dual part of the cube is obtained (to finally find it, rotate by 90° steps and move by 1 unit).
Don't forget the merge option here too.

- Now use a subsurf (eventually) and cast to sphere
As the cast by default uses the center of the object, you'll need a second empty (and place it at the wanted center of the sphere) to indicate where the good sphere center is.

- As wanted, the base plane can be edited to influence the final result :

