Hi Erwin, hi folks.
A method I used is to draw the rooms with furniture in place to make sure that each room is large enough.
For example, for a living-room, I may position a sofa, two armchairs, two end tables, a larger coffee table, a TV and a few lamps to get a nice layout with enough room to move between furniture pieces.
Then I will add a rectangle that covers all these. This will be the perimeter of the living-room I may add more area if I don't mind an overall larger house.
I repeat for each room to get their optimum size.
Then I play with the rectangles representing the rooms to optimize their layout. For example, if I join a living room and a dining room to make one single large room, the free space between the living room area and the dining room area will serves both areas so I can reduce the total overall length of the two adjacent rooms.
When all rooms are positioned, I get the house size and shape.
I may consider using two floors or even a finished basement with even more rooms. Then the placement of staircases comes into play.
Then I adjust all things together to optimize the dimensions in order to fit standard lumber pieces to save on cutting and scrap. For example, a corridor which is 4 feet wide will be faster to tile with 24" x 24" tiles. Inside walls that are multiple of 4 feet will waste less sheetrock, etc. Of couse this is not possible everywhere but it may help in reducing material and labor costs.
I even figure out shafts to allow passing piping, HVAC ducts and wires from one level to another. Why not consider a laundry chute to connect upper floors to the laundry room in the basement.
Need a garage, consider it attached to the house with an inside connecting door.
I also try to avoid making a complex perimeter which will translate in a complex, and expensive, roof.
Of course, all this depends on the style that you want to achieve.
Just ideas.