软件设计是从软件需求规格说明书出发,根据需求分况耐总会析阶段确定的功能设计软件系统的整体结构、划分功能交能则修景绝找演降模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。
软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。将问题或事物分解并模块化使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。