问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

软件设计的设计基础

发布网友 发布时间:2022-04-23 16:22

我来回答

1个回答

热心网友 时间:2023-09-15 11:00

软件设计方*的这套基本原理已经经过了多年的进化,在软件开发的生命周期中,软件设计是在软件描述提供的的基础上,对软件需求进行分析以形成软件内部结构的描述说明的活动之一。耦合和内聚是两个用来评估软件设计质量的方法。每种概念的影响程度不尽相同,但它们都经历了时间的洗礼。基于这些基本原理设计者可以采用更多更成熟的设计方法。这些基本原理有助于设计者回答以下的问题:
1、将软件分割成独立的组件时会采用何种标准?
2、怎样将软件的原则性表示详细分割成函数或数据结构?
3、有没有定义一个软件设计的技术质量的统一标准?
M.A. Jackson 曾经说过:“对一个计算机程序员来说,分辨让程序运行和让程序正确之间的差异是一个良好的开端。”为了“ 使程序正确 ” ,基本设计原理提供了必须的框架。
抽象(Abstraction)在最高层次上指的是使用待解决的问题领域内的术语描述的解决方案。相对较低层次的抽象则更多的面向程序语言,最低层的抽象则是解决方案的可直接实现的方式描述。软件设计的每一个步骤都是对相应层次解决方案的抽象的逐步求精。
求精(Refinement)又叫做逐步求精指的是通过程序细节连续细化来开发程序体系的策略。分步骤的对程序抽象进行分解直至成为编程语言的过程同时造就了程序的层次结构。在这一点上要对细节多做考虑,这也展示了求精实际上是个苦心经营的过程。
模块化(Molarity)指的是软件可被分割为分别命名并可寻址的组件(也叫做模块),将模块综合起来又可以满足问题的需求的性质。 软件的模块化是允许智能化管理程序的唯一属性。 换句话说,当您将一个复杂问题分解为一些小问题时会更容易解决。需要重点解释的是即使一个系统必须象“单片机”一样来实现,它也可以采用模块化设计。
软件体系(架构,Software Architecture)涉及到程序的两个重要特性:1) 模块的
层次结构。2) 数据结构。这源自于需求分析时将真实世界问题的含蓄定义与软件解决方案的要素关联起来的分割过程。当问题的每个部分通过一个或多个软件要素得到解决后,与问题的定义和解决相一致软件和数据结构的进化就开始了。这个过程代表了软件的需求分析和设计之间的位置。控制层级(Control Hierarchy)也称作程序结构,描述程序组件的组织并意味着控制层级。它并不描述软件的程序方面,比如进程顺序、决定的事件 / 命令、或工作循环。如下的层级图表展示了模块之间的通信流,并显示哪些模块是重复的。这个图表描述了一个能够读文件,计算每个记录的值并书写报表来显示记录的信息和所完成的计算。
数据结构(Data structure)描述了单个数据间的逻辑关系。数据结构规定了数据的组织、访问方法、关联程度、和信息的选择处理。数据结构的组织和复杂性只受限于设计者的灵活性。唯一的*就是经典数据结构的数量阻碍了更多的久经考验的结构出现。
软件程序(Software Procere)着重于处理每个模块的细节并必须提供一个精确的处理规范,包括事件顺序、准确的判定点、重复操作、甚至数据结构。软件的程序表现是分层的,处理方法应该包括其所有子模块的参考。
信息隐藏(Information Hiding)的法则建议 由设计决定所刻划的模块特性应该对其余的模块不可见。换句话说,模块应被设计和指定为包含在模块内部且其他模块不可访问的内容对其他模块来说是无需的。隐藏意味着有效的模块性能够通过定义一套独立的模块来实现,这些模块相互之间的通信仅仅包括实现软件功能的所必须的信息。将使用信息隐藏作为设计标准在测试或今后的维护期间需要修改系统时带来了最大的好处。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
智盈人生终身寿险万能型 电脑系统拷贝到u盘电脑系统如何备份到u盘 电脑系统怎么拷贝到u盘上电脑系统怎样下载到u盘里 怎样把电脑装好的系统下载到u盘怎么下载重装系统到u盘 电脑系统复制到u盘里面如何把电脑系统拷贝到U盘 u盘拷贝电脑系统步骤如何把电脑系统拷贝到U盘 如何把电脑系统备份到u盘如何把电脑系统拷贝到U盘 如何把电脑系统拷贝到U盘 电脑系统下载怎么能下到u盘怎么在电脑下载系统到u盘 U盘怎么拷贝电脑系统如何把电脑系统拷贝到U盘 附近充电站 天津南市附近美团充电宝网点 晋城市电动车充电站分布网点在哪? 最新充电站划分范围 怎么查充电站? 献县新能源汽车充电网点有几个 iPhone 7怎么调出小圆点? 支付宝现在总共有多少版本? 苹果越狱了怎么下载旧版的支付宝,苹果更新新版本很不好用,还特意花钱越狱了,就是为了下载旧版的支付宝 越狱了的苹果怎么下载老版本的支付宝钱包 iphone6在哪可以下载旧版支付宝? 现在支付宝钱包换了新版本,怎么下载旧的版本啊 怎么下载旧版支付宝 我的手机是iphone4,哪位大神可以告诉我旧版支付宝怎么下?(发现其他回答没有几个可以的) 荣耀手环A2死机怎么弄 苹果手机怎么下载旧版本的支付宝 苹果支付宝怎么下载旧版本,我更新可,想用旧版本 苹果6怎么下载旧版本支付宝 苹果手机怎么下载旧版支付宝 我京东买的电脑已经到货俩天了,今天发现京东上出现了一个秒杀,我申请价格保护成功了,它一定会退我吗? 大家在外面都是怎么找电动车充电站的? 软件工程要学什么基础课? 湖南哪个城市有快速充电站 软件设计的基础知识 学计算机软件设计应该从什么地方入门?需要什么基础么? 学软件设计要什么基础? 做软件开发,有学习哪些课程呀? 学软件设计需要什么基础 教程 想学习软件设计 最基础的一个学习什么? 求解 非常感兴趣 想学 软件设计基础 软件开发基本步骤 保险平安福18 平安保险公司推出的平安福怎么样? 平安福2018终身寿险交20年,共计192360元,交完后如果解除合同,交的本金能拿回来吗? 平安福2018和平安福2019是指什么 平安的平安福2018有附加医疗住院费吗 平安保险平安福 如何包水饺 水饺制做 水饺做法 花样饺子包法视频的做法步骤图,怎么做好吃 华为荣耀手环a2不亮屏是怎么回事?