精华内容
下载资源
问答
  • 软件设计基本原理

    千次阅读 2018-07-30 20:17:00
    那么 今天会展开一个新的模块:软件设计基本原理 其模块的主要特点是: 1.模块化 模块在程序中是数据说明可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等。 模块...

    那么 今天会展开一个新的模块:软件设计的基本原理  其模块的主要特点是:

    1.模块化

    模块在程序中是数据说明可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等。

    模块具有以下基本属性:

    接口:指模块的输入与输出

    功能:指模块要实现的功能

    逻辑:描述内部如何实现要求的功能及所需数据

    状态:该模块的运行环境,即模块的调用与被调用关系

    模块化是解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。在划分模块时,模块的规模应当取决于它的功能和用途,同时减少接口的代价,提高模块独立性。

    特性:抽象(用层次的方式构造和分析复杂系统)、信息隐蔽(只对特定或者需要的模块进行访问)、局部化

    2.模块的独立性

    指每个模块只完成系统要求独立的子功能,并且与其他模块的联系最少且接口简单。

    衡量标准:

    A.耦合性,也称块间耦合。指软件系统结构中各模块间相互联系的紧密程度的一种度量。

    无直接耦合:模块间没有联系,不相互传递信息。

    数据耦合:指传递简单的数据值。

    标记耦合:指两个模块传递的是数据结构的地址(传址)

    控制耦合:两个模块传递的是控制变量(如开关、标志)该模块通过控制变量的值有选择的执行块某一功能。

    公共耦合:指通过一个公共数据环境相互作用的某些模块间的耦合,公共数据环境可以是全局变量或者数据结构共享的通信区,内存的公共覆盖区以及任何存储介质上的文件、物理设备等

    内容耦合:一个模块直接访问另一个模块的内部数据;一个模块不通过正常的入口转入到另一个模块内部;两个模块有一部分程序代码重迭;一个模块有多个入口。

     内聚性,又称块内联系。指模块功能强度的度量,即一模块内各个元素彼此结合的紧密程度的度量。

    偶然内聚:一个模块间没有联系

    逻辑内聚:模块内执行几个逻辑相似的功能,通过参数确定该模块完成哪一个功能。

    时间内聚:吧需要同时执行的模块动作组合在一起形成的模块为时间内聚模块。

    过程内聚:把流程图作为工具设计程序时,流程图中的某一部分划分出组成模块,就得到过程内聚模块。

    通信内聚:模块内所有处理元素都在同一个数据结构上操作,或者各处理使用相同的输入数据或者是产生相同的输出数据。

    顺序内聚:一个模块内的处理元素和同一个功能密切相关,这些处理必须顺序执行,通常一个处理元素的输出数据作为另一个处理单元的输入数据。

    功能内聚:模块内所有元素共同完成一个功能,缺一不可。因为它的功能是单一的明确的,因此与其他模块的耦合是最弱的。

    面向数据流的设计方法:

       因为是新开的一个模块 所以主要是理解其主要的关键词的含义和概念。

     

     

     

    转载于:https://www.cnblogs.com/bibabo/p/9392510.html

    展开全文
  • 软件工程的7条基本原理

    千次阅读 2019-05-20 11:46:19
    软件工程的7条基本原理 1.用分阶段的生命周期计划严格管理 把软件生命周期划分成若干个阶段,并相应地指定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。 不同层次的管理人员都必须严格按照...

    软件工程的7条基本原理

    1.用分阶段的生命周期计划严格管理

    把软件生命周期划分成若干个阶段,并相应地指定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。
    不同层次的管理人员都必须严格按照计划各尽其职地管理软件开发与维护工作,绝不能受客户或者上级人员的影响而擅自背离预定计划

    2.坚持进行阶段评审

    软件的质量保证工作不能等到编码阶段结束之后在进行,在每一个阶段都进行严格的评审,今早发现错误。原因如下:
    1.大部分的错误在编码之前就造成。
    2.错误发现与改正越晚,所需付出的代价越高

    3.实行严格的产品控制

    在软件开发过程中不应随意改变需求,因为改变一项需求往往需要付出较高的代价。但是,在软件开发过程中改变需求又是难免的,只能依靠科学的产品控制技术来顺应这种要求。也就是说,当改变需求时,为了保持软件各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行基准配置管理。所谓基准配置又称为基线配置,它们是经过阶段评审后的软件配置成分(各个阶段产生的文档程序代码)。基准配置管理也称为变动控制:一切有关修改软件的建议,特别是涉及到对基准配置的修改建议,都必须按照严格的规程进行评审,获得批准以后才能实施修改。绝对不能谁想修改软件(包括尚在开发过程中的钦件),就随意进行修改。

    4.采用现代程序设计技术

    采用先进的技术不仅可以提高软件开发和维护的效率,而且可以提高软件产品的质量

    5.结果应能清楚地审查

    软件产品是看不见摸不着的逻辑产品,然见开发人员的工作进展可见性差难以准确度量,从而使得软件产品开发过程比一般产品的开发过程难于评价和管理。
    为了提高软件开发过程的可见性,应该根据软件开发项目的总目标及完成期限,规定开发组织的责任产品标准,从而使得所得到的结果能够清楚地审查

    6.开发小组的人员应该少而精

    这条基本原理的含义是,软件开发小组的组成人员的素质应该好,而人数则不宜过多。开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素。素质高的人员的开发效率比素质低的人员的开发效率可能高几倍至几十倍,而且素质高的人员所开发的软件中的错误明显少于素质低的人员所开发的软件中的错误。此外随着开发小组人员数目的增加因为交流情况讨论问题而造成的通信开销也急剧增加。当开发小组人员数为N时,可能的通信路径有N(N- 1)/2条,可见随着人数N的增大,通信开销将急剧增加。因此,组成少面精的开发小组是软件工程的一条基本原理。

    7.承认不断改进软件工程实践的必要性

    不仅要积极主动地采纳新的软件技术,而且要注意不断总结经验,例如,收进度资源耗费的数据,收集出错类型问题报告等。这些数据不仅可以用来评价新的软件技术的效果,而且可以用来知名必须着重开发软件工具和应该优先研究的技术

    展开全文
  • 软件工程的基本原理

    千次阅读 2018-04-25 16:10:19
    软件工程的基本原理1、用分阶段的生命周期计划严格管理2、坚持进行阶段评审3、实行严格的产品控制4、采用现代程序设计技术5、结果应能清楚的审查6、开发小组的人员应该少而精7、承认不断改进软件工程实践的必要性...
    软件工程的基本原理
    1、用分阶段的生命周期计划严格管理
    2、坚持进行阶段评审
    3、实行严格的产品控制
    4、采用现代程序设计技术
    5、结果应能清楚的审查
    6、开发小组的人员应该少而精
    7、承认不断改进软件工程实践的必要性


    未完……

    展开全文
  • 一、总体设计(概要/初步设计) 目的: 系统应该如何实现 1、设计过程 2、设计准则 模块化 抽象 逐步求精 ... 使软件结构清晰,容易设计、容易阅读和理解。  使软件容易测试和调试,从而提高软...

    一、总体设计(概要/初步设计)

    目的:
    系统应该如何实现

    1、设计过程
    在这里插入图片描述

    2、设计准则

    • 模块化
    • 抽象
    • 逐步求精
    • 信息隐藏
    • 模块独立

    1. 模块化:
    模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。
    采用模块化原理的优点:
     使软件结构清晰,容易设计、容易阅读和理解。
     使软件容易测试和调试,从而提高软件的可靠性。
     能够提高软件的可修改性。
     有助于软件开发工程的组织管理。

    2. 抽象:
    把这些相似的方面集中和概括起来,暂时忽略它们之间的差异,这就是抽象。或者说抽象就是抽出事物的本质特性而暂时不考虑它们的细节。

    采用抽象原理的优点:
    处理复杂系统:一个复杂的动态系统首先可以用一些高级的抽象概念构造和理解,这些高级概念又可以用一些较低级的概念构造和理解,如此进行下去,直至最低层次的具体元素。

    3. 逐步求精
    为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。

    抽象与求精是一对互补的概念。

     抽象使得设计者能够说明过程和数据,同时却忽略低层细节。
     求精则帮助设计者在设计过程中逐步揭示出低层细节。

    4. 信息隐藏
    应该这样设计和确定模块,使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。实际上,应该隐藏的不是有关模块的一切信息,而是模块的实现细节。
    5. 模块独立
    开发具有独立功能而且和其他模块之间没有过多的相互作用的模块,就可以做到模块独立。

    模块的独立程度由两个定性标准度量,分别是耦合和内聚。
    

    耦合是对一个软件结构内不同模块之间互连程度的度量。尽量使用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全不用内容耦合。

    内聚度量一个模块内的各个元素彼此结合的紧密程度。设计时应该力求做到高内聚。

    二、描绘软件结构的图形工具

    • 层次图
    • HIPO图
    • 结构图
      结构图中一个方框代表一个模块,框内注明模块的名字或主要功能;方框之间的箭头(或直线)表示模块的调用关系。

    三、面向数据流的设计方法

    1. 变换流
      信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。当数据流图具有这些特征时,这种信息流就叫作变换流。
    2. 事务流
      数据沿输入通路到达一个处理T,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行。这类数据流称为事务流。

    四、数据流图以及结构图例题

    银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名、地址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。

    用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象,用面向数据流的方法设计出该系统的软件结构。

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 软件工程概述和基本原理

    千次阅读 2019-06-17 09:11:37
    概述: 软件工程是指导计算机软件...基本原理: 1.用分阶段生命周期计划严格要求。 2.坚持进行阶段评审。 3.实行严格的产品控制。 4.采用现代程序设计技术。 5.结果应能清楚地审查。 6.开发小组的成员应该少而精。 ...
  • 2软件设计过程中应该遵循那些基本原理? 软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来...
  • 软件工程的七条基本原理

    千次阅读 2017-02-14 15:36:09
    1、用分阶段的生命周期计划严格管理 ...这条基本原理意味着,应该把软件生命周期划分成若干个阶段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。Boehm 认为,在软件
  • 操作系统基本原理 进程的状态转换图​ 前驱图 进程的同步与互斥 PV操作 PV操作与前驱图 死锁问题 死锁预防 银行家算法 分区存储组织 页式存储组织 段式存储组织 段页式存储 快表 页面置换算法 索引...
  • 原理设计及仿真流程

    千次阅读 2019-12-19 13:52:52
    原理设计及仿真流程 Proteus ISIS软件具有强大的单片机系统设计与仿真功能,使得它...因而,学生对于内部电路的工作原理并不是很清楚,此时如果将实验电路在Proteus ISIS软件中完成原理设计并进行仿真,得出...
  • 软件工程7条基本原理

    千次阅读 2017-03-01 17:56:08
    今天第一天讲软件工程基础知识,其中比较重要的是软件工程7条基本原理。 1. 用分阶段的生命周期计划严格管理 2. 坚持进行阶段评审 3. 实行严格的产品控制 4. 采用现代程序设计技术 5. 结果应能...
  • 三、产品基本设计步骤 四、原理图->设计注意 五、原理图操作 六、PCB设计->布局注意 七、PCB设计->布线原则 八、PCB设计->连线的一般步骤 九、PCB设计->布线注意以及快捷操作 十、整体检查...
  • 展开全部程序与数据一样存取,按程序编排32313133353236313431303231363533e59b9ee7ad9431333431366237的顺序,一步一步地取出指令,自动地完成指令规定的操作是计算机最基本的工作原理。这一原理最初是由美籍匈牙利...
  • 因此,高内聚、低耦合是一个软件系统设计中必须遵循的基本原则。  所谓高内聚,是指一个软件模块内各个元素彼此结合的紧密程度要高,即一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一...
  • 硬件原理设计规范——基本原则

    千次阅读 2017-12-22 08:37:00
    原理设计基本要求: 规范、清晰、准确、易读。
  因此制定此《规范》的目的和出发点是为了培养硬件开发人员严谨、务实的工作作风和严肃、认真的工作态度,增强硬件开发人员的责任感和使命感,提高工作效.....
  • 软件设计师必备——编译原理·文法

    千次阅读 热门讨论 2014-04-23 17:00:25
     这就是编译原理基本过程,中间码就是近似的汇编语言,而目标程序就是机器可识别的0和1 文法:  就像我们写博客一样,我们写出来的东西要想共同交流,必须按照一定的格式去写,我用英语的格式写没有...
  • 网络系统结构与设计基本原理(一)

    千次阅读 2015-07-27 11:37:53
     1) 资源子网由主计算机系统,终端,终端控制器,连网外部设备,各种软件资源与信息资源组成。资源子网负责全网的数据处理业务,负责向网络用户提供各种网络资源和网络服务。  2) 通信子网由通信控制处理机,...
  • 总体设计原理

    千次阅读 2017-03-06 17:02:51
    1 模块化 2 抽象 3 逐步求精 4 信息隐藏和局部化 5 模块独立
  • SSM基本原理

    千次阅读 2018-05-18 22:24:16
    是标准的MVC模式,将整个系统划分为四层:View层,Controller层,Service层,Dao层Spring MVC主要负责请求的转发和视图管理Spring运用IOC和AOP思想实现业务对象管理Mybatis封装JDBC作为数据对象的持久化引擎原理:...
  • 软件测试基本理论(一)

    万次阅读 多人点赞 2019-03-20 10:43:49
    2.设计阶段:1)概要设计阶段 2)详细设计阶段 由系统架构或分析师完成 产出物《概要设计说明书》、《详细设计说明书》 3.编码阶段:由开发人员完成 产出物:程序 拓展:软件开发设施包括开发平台、开发环境、...
  • 软件工程——软件的系统设计

    千次阅读 热门讨论 2016-09-04 11:14:42
    软件设计基本原理 1.模块化 模块在程序中是数据说明可执行语句等程序对象的集合,或者是单独命名和编址的元素,如高级语言中的过程、函数、子程序等。 模块具有以下基本属性: 接口:指模块的输入与输出 功能:指...
  • 计算机组成原理实验:基本运算器实验

    万次阅读 多人点赞 2021-02-07 15:09:42
    通过一个基本运算器实验,了解运算器的组成原理、工作原理,了解运算器的基本结构,设计一个加法器。 四、实验内容:         运算器内部含有三个独立运算部件,分别为算术...
  • 抢单软件开发原理_软件开发原理

    千次阅读 2020-09-09 12:06:09
    抢单软件开发原理Rubbish software is produced when we try to do everything at once. 当我们尝试一次做所有事情时,就会产生垃圾软件。 Principles, guidelines, best practices, and rules of thumb — they ...
  • 文章目录一、市面上主流的三款低、中、高PCB画制软件(EDA)二、PCB总体设计思路与原则三、产品基本设计步骤四、原理图->设计注意五、原理图操作六、PCB设计->布局注意七、PCB设计->布线原则:八、PCB设计-&...
  • 软件设计师考试考点分析总结

    万次阅读 多人点赞 2020-11-01 11:59:28
    校验码操作系统进程管理死锁及银行家算法存储管理页面置换算法文件管理索引文件目录结构位示图磁盘管理I/O设备管理虚设备与SPOOLING技术微内核操作系统数据库数据库模式数据库设计过程E-R模型关系代数规范化理论函数...
  • Django基本原理

    千次阅读 2017-11-29 13:56:03
    Django是Python的web开发框架,遵循MVC设计模式,但是在Django中通常称为MTV,即models-template-views。 1)views和URL views是业务逻辑层,在Django里面views通常是一个的views.py模块,放在对应的包里。...
  • AD原理图 PCB设计步骤

    千次阅读 2019-10-21 17:59:06
    然后切换到原理图下,到“设计”菜单下更新原理图到刚刚新建的“PcbDoc”文件。更新时,把room选项勾选去掉。 4、在画PCB图时,在“窗口”下点击“垂直分割”,将原理图和PCB图分别放到AD界面左侧和右侧。然后点击...
  • 总体设计(概要设计或初步设计)的基本目的就是回答“概括地说,系统应该如何实现?” 工作内容:将划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等黑盒子级“产品”。黑盒子里的具体内容将在...
  • 凭什么非得按照它设计的来学习呢? 它好在哪里?有以下三种结构(1)客户机/服务器结构(C/S)(2)点对点(p2p)(3)混合结构(上面两种混合)客户机/服务器结构(C/S)服务器(1)7*24小时提供服务(2)永久性...
  • STM32基本原理

    千次阅读 2020-04-06 14:18:47
    STM32基本原理 一、简介 1、意法半导体公司 (1)ST (2)生产ARM Cortex-M核心 2、STM32 SOC命名规则 (1)STM32F103VET6 (2)STM32:产品系列名 F:产品型号,F表示Flash产品,目前没有其他选项 103:产品子系列...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 266,936
精华内容 106,774
关键字:

属于软件设计的基本原理是