什么是软件设计?

九江经开区2023-02-13  24

软件设计是为一组或多组问题设想和定义软件解决方案的过程。软件设计的主要组成部分之一是软件需求分析(SRA)。 SRA是软件开发过程的一部分,列出了软件工程中使用的规范。如果软件是“半自动”或以用户为中心的,则软件设计可能涉及用户体验设计,从而产生情节提要以帮助确定那些规格。如果软件是完全自动化的(意味着没有用户或用户界面),则软件设计可能与流程图或描述计划中的事件序列的文本一样简单。还有一些半标准方法,例如统一建模语言和基本建模概念。无论哪种情况,计划的一些文档通常都是设计的产物。此外,取决于用于设计的技术的可用性,软件设计可以是独立于平台或特定于平台的。

软件分析和设计之间的主要区别在于,软件分析的输出包含要解决的较小问题。此外,在不同的团队成员或小组之间,分析的设计不应有太大差异。相反,设计侧重于功能,因此可以并且将存在针对同一问题的多个设计。根据环境的不同,设计通常是不同的,无论是从可靠的框架创建还是以适当的设计模式实施。设计示例包括操作系统,网页,移动设备,甚至是新的云计算范例。

软件设计包括的两个阶段:

1、对软件的全局观点。系统通过逐步求精使得设计陈述逐渐接近源代码。这里有两个基本步骤,第一步是初步设计,关注于如何将需求转换成数据和软件框架。

2、详细设计,关注于将框架逐步求精细化为具体的数据结构和软件的算法表达。发生中的设计行为、数据、算法和程序设计都需要由现代程序所需的界面设计这一清晰的行为来结合起来。界面设计建立程序布局和人机交互机制。贯穿设计过程的质量由一系列的正式技术评定或设计排演来评价。

软件设计是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。

软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。将问题或事物分解并模块化使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。

扩展资料:

设计要素:

软件设计包括软件的结构设计,数据设计,接口设计和过程设计。

1、结构设计:定义软件系统各主要部件之间的关系。

2、数据设计:将模型转换成数据结构的定义。

3、接口设计:软件内部,软件和操作系统间以及软件和人之间如何通信。

4、过程设计:系统结构部件转换成软件的过程描述。

参考资料来源:百度百科-软件设计

你好,很高兴回答你的问题,

软件设计是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。

软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。将问题或事物分解并模块化使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。

软件设计即“…the process of applying various techniques and principles for the purpose of defining a device, a process or a system in sufficient detail to permit its physical realization. ”“ … 应用各种各样的技术和原理,并用它们足够详细的定义一个设备、一个程序或系统的物理实现的过程。 ”

对任意的工程产品或系统,开发阶段绝对的第一步是确定将来所要构建的制造原型或实体表现的目标构思。这个步骤是由多方面的直觉与判断力来共同决定的。这些方面包括构建类似模型的经验、一组引领模型发展的原则、一套启动质量评价的标准、以及重复修改直至设计最后定型的过程本身。计算机软件设计与其他工程学科相比还处在幼年时期,仍在不断变化中,例如更新的方法、更好的算法分析、以及理解力的显著进化。软件设计的方法论的出现也只有三十年多一点,仍然缺乏深度、适应性和定量性质,通常更多的与经典工程设计学科相联系。尽管如此,现今的软件技术已经存在、设计质量的标准也可使用、设计符号亦可以应用。带着这些意见,我们一起来看看什么有助于程序员们找到他们的软件涅盘 ( 天堂的意思 ) 。

软件设计包括软件的结构设计,数据设计,接口设计和过程设计。

结构设计是指:定义软件系统各主要部件之间的关系。

数据设计是指:将模型转换成数据结构的定义。

接口设计是指:软件内部,软件和操作系统间以及软件和人之间如何通信。

过程设计是指:系统结构部件转换成软件的过程描述。


转载请注明原文地址:https://juke.outofmemory.cn/read/2948046.html

最新回复(0)