Your post sent me looking for Robert Keidel's "Seeing Organizational Patterns," which posits that org design works best when an organization's need for (1) autonomy, (2) cooperation, and (3) control are explicitly addressed in designing an org structure. His thinking still resonates with me.