7.4 软件设计与硬件设计的关系