上一篇博客是对于软件工程中定义阶段的介绍,主要是可行性研究和需求分析两个方面。在进行完定义阶段以后,就该开始对软件进行设计了。定义阶段要解决的问题是“做什么”,系统“做什么”清楚了以后。就该解决“怎么做”了,这就是软件设计阶段所要解决的问题。这个阶段主要包括总体设计(概要设计)和详细设计。在进行完设计以后就进入更详细的程序编码阶段。
软件设计阶段:
首先是对于软件设计阶段的整体思维导图:
一、总体设计:
总体设计也称为概要设计,总体设计是从两个方面来设计的:系统设计阶段和结构设计阶段。我感觉它的核心在于从整体上对软件系统做一个概要,集中精力解决主要问题,逐步求精的过程。不是具体分析模块中的内容,而是重在分析模块的组成和模块之间的关系。
系统设计:主要是为了确定系统的具体实现方案,以需求分析阶段得出的数据流图为基础,设想供选择的方案,然后从中选取合理的方案。
结构设计:主要是为了确定软件的结构,也就是要确定系统中的每个程序是由哪些模块组成的,以及这些模块相互间的关系。
二、详细设计
详细设计阶段的任务是确定怎样具体的实现所要求的系统,是总体设计的进一步细化,详细设计阶段的好坏对将来编写出程序的可读性、测试、修改和维护都有很大的影响。它主要包括三个部分:结构程序设计、人机界面设计和过程设计。
结构程序设计:主要指顺序结构、循环结构和分支结构三大结构,这是详细设计的基础。
人机界面设计:人机界面设计是接口设计的一个重要组成部分。人机界面的质量直接影响用户对软件产品的接受程度,和其他设计方法同等重要。
过程设计:它的任务是设计解题的详细步骤(即算法),是详细设计阶段应完成的主要工作。过程设计的工具分为三类:图形(程序流程图、盒图、PAD图、判定树)、表(判定表)和语言(过程设计语言)。
三、编码
程序编码阶段主要使用程序设计语言来实现,程序设计包括对程序设计语言的选择、应该遵循的原则、程序设计风格和程序复杂度的测量。
总结:
软件设计和编码阶段是软件工程的核心部分,软件设计分为概要设计和详细设计,这就好像黑盒测试和白盒测试的原理一样。概要设计好像一个黑盒子,它是从一个整体来设计软件的体系结构和模块间的关系的;详细设计类似于白盒,从内部详细的设计每个模块,确定实现模块功能所需要的算法和数据结构。编码是在详细设计基础上的进一步细化。
来源:CSDN
作者:没有折痕
链接:https://blog.csdn.net/u013045214/article/details/41411537