如何给一个软件系统设计解决方案?
一个系统的解决方案,第一步方向性的策略是需要需要选用合适的工具。
比如选用什么样的结构,是BS还是别的什么。需要数据库吗?需要怎样的图形库?需要怎样的线程支持,乃至需要怎样的编程语言。
大的方向性的问题解决后。工作量最大的问题就来了,怎样将问题做有效的分解。
一个软件系统,无论有多少,终归要进行模块分割。
模块分割,往往是依据功能做切分的。切分要选在那个接口最窄的位置。
模块大致拆分完毕后,就可以确定接口了。
确定接口的过程,一般就是软件的设计过程(至少占了70%以上的时间)
接口要明确到每一个接口函数的完整声明的地步。
接口明确的过程中,可能会导致更多的模块的出现(一些结构型的模块,而非功能性的模块)
如果涉及到比较复杂的数据。这里还涉及到数据库设计,数据字典的建立。
完成接口设计,设计也就完成了。
什么是软件设计呢?
软件设计包括的两个阶段:
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://nongye.s666.cn/bk/6_6572059391.html