![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
软件工程
文章平均质量分 81
Rain:)
空与白
展开
-
软件工程(总体设计②设计原理)
设计原理模块化模块是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。按照模块的定义,过程、函数、子程序和宏,都可作为模块。面向对象方法学中的对象是模块,对象内的方法也是模块。模块是构成程序的基本构件。模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求当模块数目增加时每个模块的规模将减小,开发单个模块需要的成本确实减少了,但是,随着模块数目的增加,设计模块间接口所需要的工作量也将增加原创 2021-04-13 17:42:25 · 1991 阅读 · 0 评论 -
软件工程(总体设计①设计过程)
经过需求分析(https://blog.csdn.net/weixin_45626468/article/details/115324885)阶段的工作,系统必选“做什么”已经清楚了,现在是决定“怎样做”的时候了。总体设计的基本目的就是回答“概况地说,系统应该如何实现”这个1问题,因此,总体设计又称为概要设计或初步设计。通过这个阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。总体设计阶段的另原创 2021-04-09 10:45:46 · 1472 阅读 · 0 评论 -
数据规范化、实体-联系图、状态转换图、层次方框图、Warnier图、IPO图及验证软件需求
数据规范化软件系统经常使用各种长期保存的信息,这些信息通常以一定方式组织并存储在数据库或文件中,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把数据结构规范化。通常用“范式(normal forms)”定义消除数据冗余的程度。第一范式(1 NF)数据冗余程度最大,第五范式(5 NF)数据冗余程度最小。但是,第一,范式级别越高,存储同样数据就需要分解成更多张表,因此,“存储自身"的过程也就越复杂。第二,随着范式级别的提高,数据的存储结构与基于问题域的结构间的匹配程度也随之下降原创 2021-04-06 13:29:47 · 4986 阅读 · 0 评论 -
软件工程(需求分析)
需求分析为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深人理解是软件开发工作获得成功的前提条件,不论人们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望.给开发者带来烦恼。需求分析是软件定义时期的最后个阶段 ,它的基本任务是准确地回答“系统必须做什么”这个问题。虽然在可行性研究阶段已经粗略地了解了用户的需求,甚至还提出了一些可行的方案,但是,可行性研究的基本目的是用较小的成本在较短的时间内确定是否存在可行的解法,因此许多细节被忽略了。然而在最终的原创 2021-03-30 15:15:37 · 9621 阅读 · 0 评论 -
软件工程(成本/效益分析)
一般说来,人们投资于一项事业的目的是为了在将来得到更大的好处。开发一个软件系统也是一种投资,期望将来获得更大的经济效益,经济效益通常表现为减少运行费用或增加收入。但是,投资开发新系统往往需要冒一定的风险。系统的开发成本可能比预计的高,效益可能比预期低。把钱存到银行或贷给其他企业也有明显的经济效益(利息),而且风险很低。那么,在什么情况下投资开发新系统更划算呢?成本/效益分析的目的正是要从经济角度分析开发一个特定的新系统是否划算,从而帮助客户组织的负责人正确低作出是否投资于这项开发工程的决定。为了对比原创 2021-03-26 10:01:15 · 14569 阅读 · 3 评论 -
软件工程(数据字典)
数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。任何字典最主要的用这都是供人查阅对不了解的条目的解释,数据字典的作用也正是在软件分析和设计的过程中给人提供关于数据的描述信息。数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,然而没有数据流图,数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。数据字典的内容一般说来,数据字典应该由对下列4类元素的定义组成。(1)数据流;(原创 2021-03-23 18:42:39 · 6965 阅读 · 0 评论 -
软件工程(数据流图的命名、用途和自动化边界)
数据流图中每个成分的命名是否恰当,直接影响数据流图的可理解性。因此,给这些成分起名字时应该仔细推敲。命名1.为数据流(或数据存储)命名(1)名字应代表整个数据流(或数据存储)的内容,而不是仅仅反映它的某些成分。(2)不要使用空洞的、缺乏具体含义的名字(如“数据”、“信息”、“输入”之类)。当标而(3)如果在为某个数据流(或数据存储)起名字时遇到了困难,则很可能是因为对数据流图分解不恰当造成的,应该试试重新分解,看是否能克服这个困难。2.为处理命名(1)通常先为数据流命名,然后再为原创 2021-03-23 18:26:23 · 3965 阅读 · 0 评论 -
软件工程(数据流图例题详解)
假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。对于每个需要再次订货的零件应该列出下述的数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给订货系统。当某种零件的库存数量少于库存量临界值时就应该再次订货。数据流图有4种成分:1、源点和终点2、处理3、数据存储4、数据流因此,第一步可以从问题描述中提取数据流图的4种成分:①首先考虑数据的源点和终点,从上面对系原创 2021-03-23 17:47:09 · 19502 阅读 · 2 评论 -
软件工程(数据流图)
数据流图有4种基本符号:正方形或(立方体)表示数据的源点或者终点;圆角矩形(或圆形)代表变换数据的处理;开口矩形(或两条平行横县)代表数据存储;箭头表示数据流,即特定数据的流动方向;附加符号处理并不一定是一个程序。一个处理框可以代表一系列程序、单个程序或者程序的一个模块;它基本可以代表用穿孔机穿孔或目视检查数据正确性等人工处理过程。有时数据的源点和终点相同,如果一个符合代表数据的源点和终点,则至少将有两个箭头和这个符号相连(一进一出),可能其中一条箭头相当长,这将降低数据原创 2021-03-18 16:26:27 · 2229 阅读 · 0 评论 -
软件工程(系统流程图讲解)
系统流程图是概括地模型物理系统的工具。基本符号系统符号系统流程图的习惯画法是使信息在图中从顶向下或从左到右流动。例子某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果哪种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便订货,规定每天向采购部门送一次订货报告。该装配厂使用台小型计算 机处理更新库存清单主文件和产生订货报告的任务。零件库存量的每一次变化原创 2021-03-18 15:16:46 · 5919 阅读 · 1 评论 -
软件工程(可行性研究讲解)
可行性研究可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决。(只是寻找客户所提需求的解决方案,能干还是不能干的问题。)可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程。在澄清问题定义之后,分析员应该导出系统的逻辑模型。然后从系统逻辑模型出发,探索若干种可供选择的主要解法(即系统实现方案)。一般来说,至少该从下述三个方面研究每种解法的可行性。①技术可行性:使用现有的技术能不能实现整个系统②经济可行性:整个系统的经济效益是否超过它的开发成本③操作可原创 2021-03-18 14:34:51 · 2945 阅读 · 0 评论 -
软件工程(敏捷过程和极限编程)
1,敏捷过程为了使软件开发团队具有高效工作和快速响应变化的能力,17位著名的软件专家于2001年2月联合起草了敏捷软件开发宣言。敏捷软件开发宣言由下述4个简单的价值观声明组成。(1)个体和交互胜过过程和工具优秀的团队成员是软件开发项目获得成功的最重要因素;当然,不好的过程和工具也会使最优秀的团队成员无法发挥作用。团队成员的合作、沟通以及交互能力要比单纯的软件编程能力更重要。正确的做法是,首先致力于构建软件开发团队(包括成员和交互方式等),然后再根据需要为团队配置项目环境(包括过程和工原创 2021-03-17 19:00:54 · 1809 阅读 · 0 评论 -
软件工程(Rational统一过程)
Rational统一过程(Rational Unified Process,RUP)是由Rational软件公司推出的一种完整而且完美的软件过程。RUP总结了经过多年商业化验证的六条最有效软件开发经验,这些经验被称为“最佳实践”。1,最佳实践(1)迭代式开发通常,采用线性顺序的开发方法不可能开发出当今客户的需要的大型复杂软件系统。事实上,在整个软件开发过程中客户的需求会经常发生变化,因此需要一种能够通过一系列细化,若干个渐进的反复过程而得出有效的解决方案的迭代方法。迭代式开发允许每次迭代原创 2021-03-17 18:17:22 · 1477 阅读 · 0 评论 -
瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型
一、瀑布模型1、按照传统的瀑布模型开发软件,有下述几个特点。①阶段间具有顺序性和依赖性阶段间具有顺序性和依赖性,这个特点有两重含义:1,必须等前一阶段的工作完成之后,才能开始后一阶段的工作;2,前一阶段的输出文档介绍后一阶段的输入文档;因此,只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。②推迟实现的观点对于规模较大的软件项目来说,往往编程开始得越早,最终完成开发工作所需要的时间反而越长。③质量保证的观点软件工程的基本目标是优质,高产。为了保证所开发的软原创 2021-03-14 17:05:43 · 7688 阅读 · 0 评论 -
软件工程学简述
软件危机软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重问题。(考试中名词解释或者选择题为主)软件危机的典型表现(1)对软件开发成本和进度的估计常常很不准确。(2)用户对“已完成的”软件系统不满意的现象经常发生。(3)软件产品的质量往往靠不住。(4)软件通常没有适当的文档资料。(5)软件成本在计算机系统总成本中所占的比例逐年上升。(6)软件常常是不可维护等等。(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 总之开发成本高,周期长..原创 2021-03-09 14:18:28 · 250 阅读 · 0 评论