2008-1-14 《软件工程》课后习题解答...

第一章 概述
1.软件产品的特性是什么?
a.软件产品是一种逻辑产品。
b.软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。
c.软件产品不会用坏,不存在磨损、消耗问题。
d.软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是"定做"的。
e.软件费用不断增加,成本相当昂贵。

2.软件产品有几个阶段?各有何特征?
阶段 A.程序设计时代(1946-1956) B.程序系统时代(1956-1968) C.软件工程时代(1968-今)
生产方式 个体手工劳动 小集团合作生产 工程化的生产
工具 机器语言、汇编 高级语言 数据库、开发工具、开发环境、网络、 分布式、面向对象技术
开发方法 追求编和技巧,追求程序运行效率 个人技巧,开始提出结构化方法
硬件特征 价格贵、存储容量小、运行可靠性差 速度、容量、工作可靠性有明显提高,价格降低,销售有爆炸性增长 向超高速、大容量、微型化以及网络化方
软件特征 只有程序、程序设计概念,不重视程序设计方法 程序员数量猛增,已意识到软件开发的重要性,开发技术没有新的突破,大量软件开发的需求已提出,开发人员的素质和工程兵的开发技术不适应规模大、结构复杂的软件开发,产生了尖锐矛盾,导致软件危机的产生 开发技术有很大进步,但未能获得突破性进展,软件价格不断上升,没有完全摆脱软件危机


3.什么是软件危机?其产生的原因是什么?
软件危机:软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。
在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现在以下几个方面:
a.经费预算经常突破,完成时间一再拖延。
b.开发的软件不通满足用户要求。
c.开发的软件可维护性差。
d. 开发的软件可靠性差。
软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的:
a.软件的规模越来越大,结构越来越复杂。
b.软件开发管理困难而复杂。
c.软件开发费用不断增加。
d.软件开发技术落后。
e.生产方式落后。
f.开发工具落后,生产率提高缓慢。

4.什么是软件工程?它的目标和内容是什么?
软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。
软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标:
a.付出较低的开发成本;
b.面到要求的软件功能;
c.取得较好的软件性能;
d.开发的软件易于移植;
e.需要较低的维护费用;
f.能按时完成开发任务,及时交付使用;
g.开发的软件可靠性高;
软件工程的内容:
1) 软件开发技术:软件开发方法、软件开发过程、软件开发工具和环境。
2) 软件开发管理:软件管理学、软件经济学、软件心理学。

5.软件工程面临的问题是什么?
软件工程面临的问题:
a.软件费用。b.软件可靠性。c.软件维护。d.软件生产率。e.软件重用。

6.什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
软件生存周期包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等.

7.什么是软件生存周期模型?有哪些主要模型?
软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。(模型:是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。)
软件生存周期主要模型:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等

9.什么是软件开发的方法?有哪些主要方法?
软件开发的方法:是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。
主要方法:结构方法、Jackson方法、维也纳开发方法(VDM)、面向对象的开发方法。


第二章 可行性研究
1.可行性研究的任务是什么?
a.技术可行性:
考虑的因素(1).开发的风险(2)资源的有效性(3)技术(4)开发人员在主段技术可行性时,一旦估计错误,将会出现灾难性后果。
b.经济可行性。
c.社会可行性。

2、可行性研究有哪些步骤?
a.确定项目规模和目标
b.研究正在运行的系统
c.建立新系统的高层逻辑模型
d.导出和评价各种方案
e.推荐可行的方案
f.编写可行性研究报告

3、可行性研究报告有哪些就要内容?
a.引言
b.可行性研究前提
c.对现有系统的分析
d.所建议系统的技术可行性分析
e.所建议系统的经济可行性分析
f.社会因素可行性分析
g.其他可供选择方案
h.结论意见

4.成本---效益分析可用哪些指标进行度量?
有形效益度量:
a.货币的时间价值
b.投资回收期
c.纯收入
无形效益:主要从性质上、心理上进行衡量,很难直接进行量的比较。
通常以有形效益度量作为成本---效益分析的度量。

5.项目开发计划有哪些内容?
a.项目概述 b.实施计划c.人员组织及分工d.交付期限


第三章 需求分析
1.什么是需求分析?需求分析阶段的基本任务是什么?
需求分析是指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的形式主义功能规约(需求规格说明)的过程。
需求分析阶段的基本任务是:
(1) 问题识别:双方对问题的综合需求:a.功能需求b.性能需求c.环境需求d.用户界面需求.
(2) 分析与综合,导出软件的逻辑模型.
(3) 编写文档

2.什么是结构化分析方法?该方法使用什么描述工具?
结构化分析方法:是面向数据汉进行需求分析的方法。
描述工具:a、数据流图b、数据字典c、描述加工逻辑的结构化语言、判定表、判定树。

3.结构化分析方法通过哪些步骤来实现?
结构化分析方法步骤:
a.了解当前系统的工作流程,获得当前系统的物理模型.
b.抽象出当前系统的逻辑模型.
c.建立上标系统的逻辑模型.
d.作进一步补充和优化.

4.什么是数据流图?其作用是什么?其中的基本符号各表示什么含义?
数据流图:简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具,是一种功能模型。
作 用:它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.
基本符号有四种:
→,箭头,表示数据流; ○,圆或椭圆,表示加工; =,双杠,表示数据存储;□,方框,表示数据的源点或终点.

5.画数据流图应该注意什么事项?
画数据流图注意事项:
a.命名.不论是数据流\数据存储还是加工,合适的命名使人们易于理解基含义.
b.画数据流而不是控制流.
c.一般不画物质流.
d.每个加工到少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果.
e.编号.
f.父图与子图的平衡.
g.局部数据存储.
h.提高数据流图的易理解性.

6.什么是字据字典?其作用是什么?它有哪些条目?
字据字典:简称DD,就是用来定义数据流图中的各个成分具体含义的,它以一种准确的\无二义 性的说明方式为系统的分析\设计及维护提供了有关元素的一致的定义和详细的描述.
作 用:1)为系统的分析\设计及维护提供了有关元素的一致的定义和详细的描述.
2)为分析人员查找数据流图中有关名字的详细定义而服务的.
3)它和数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分.
条 目:数据流、数据项、数据存储、基本加工。

7.描述加工逻辑有哪些工具?
a,结构化语言b,判定表c.判定树

8.什么是IDEF方法?IDEF0方法有什么特点?
IDEF方法:是美国空军在1981年针对集成化计算机辅助制造(Integrated Computer Aided Manufacturing,简称ICAM)工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析与设计技术的基础上提出来的。
IDEF是ICAM Definition的缩写。
IDEF0方法特点:
a.采用方框和箭头等简单的图形符号描述系统的活动和数据流,描述活动所受到的约束及实现机制。
b.采用严格的自顶向下、逐层分解的方式建立系统功能模型。

9、简述SA方法的优缺点。
优点:
1)公认的、有成效的、技术成熟、使用广泛的一种方法,比较适合于开发数据处理类型软件的需求分析。
2)该方法利用图形等半形式化工具表达需求,简明、易读,也易于使用,为后一阶段的设计、测试、 评价提供了有利条件。
缺点:
1)传统的SA方法主要用于数据处理方面的问题,主要工具DFD体现了系统"做什么"的功能,但它仅是一个静态模型,没有反映处理的顺序,即控制流程。因此,不适合描述实时控制系统。
2)SA方法在使用DFD在分析与描述"数据要求"方面是有局限的。
3) DFD不适合描述人机界面系统的要求。
4)为了更精确地描述软件包需求,提高软件系统的可靠性、安全性,也便于实现自动化,SA方法可与形式方法结合起来。

10.某银行的计算机储蓄系统功能是:将储户填写的存款单或取款单输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算清单储户。请用DFD和IDEF0描绘该功能的需求,并建立相应的数据字典。
(1)数据流条目:
数据流名称:存款单
别 名:无
简 述:储户存款时填写的项目
来 源:储户
去 向:记帐
数据 流 量:未知
组 成:姓名+住址+存款类型+存款日期+利率
数据流名称:取款单
别 名:无
简 述:储户取款时填写的项目
来 源:储户
去 向:统计
数据 流 量:未知
组 成:姓名+住址+取款类型+取款日期+利率

数据流名称:清单
别 名:无
简 述:储户取款后得到的项目
来 源:记录
去 向:储户
数据 流 量:未知
组 成:姓名+住址+取款类型+取款日期+利率+余额
(2)数据存储条目:
数据存储名称:账单
别 名:无
简 述:存放储户信息及其账目
组 成:姓名+住址+余额+存款类型+最后修改日期+利率
组 织 方 式:未知
查 询 要 求:能立即查询
(3)数据项条目:
未知
(4)加工条目:
加工 名:分类检查
编 号:无
激发条件:接收到存/取款单
优 先 级:优先
输 入:存/取款单
输 出:存/取款单
加工逻辑:IF 存款单 THEN 把存款单输出到统计
ELSE
把取款单输出到统计
ENDIF


加工 名:统计
编 号:无
激发条件:取款单
优 先 级:无
输 入:取款单
输 出:清单
加工逻辑:根据账单检查此储户是否存在,不存在输出错误{
IF 取款数<余额 THEN 余额=余额-取款数
输出清单到储户,输出现金到储户
ELSE
输出错误清单到储户
ENDIF
}
加工 名:记录
编 号:无
激发条件:存款单
优 先 级:无
输 入:存款单
输 出:存款单
加工逻辑:根据账单检查此储户是否存在,不存在则建立此储户{
余额=余额+存款数
输出存款单到储户
}



11.某图书管理系统工程有以下功能:
(1)借书:输入读者借书证。系统首先检查借书证是否有效,对于第一次借书的读者,在借书文件建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10本,拒借,未达10本,办理借书(检查库存、修改库存目录并将读者借书情况登入借书文件).
(2)还书:从借书文件中读出与读者有关的记录,查阅所借日期,如果超期(3个月)作罚款处理。否则,修改库存目录与借书文件。
(3)查询:可通过借书文件、库存目录文件查询读者情况、图书借阅情况及库存情况,打印各种统计表。请就以上系统功能画出分层的DFD图,并建立重要条目的数据字典。

12.某厂对部分职工重新分配工作的政策是:
年龄在伙岁以下者,初中文化程度脱产学习。高中文化程度当电工;年龄在20岁到40岁之间者,中学中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁以上者,中学文化程度当材料员,大学文化程序当技术员。请用结构化语言、判定表或判定树描述上述问题的加工逻辑。
(1)结构化语言:
根据职工年龄和文化程序:
REPEAT
If 年龄<=20
If 初中文化 Then 脱产学习 endif
else if 高中文化 Then 电工 endif
endif
If 20<年龄<40
If 中学文化
If 男性 Then 钳工
Else
车工
Endif
else if 大学文化 Then 技术员 endif
endif
endif
If 年龄>=40
If 中学文化 Then 材料员
else if 大学文化 Then 技术员 endif
endif
endif
Until 没有剩余未分配员工
判定表
1 2 3 4 5 6 7 8 9 10 11
年龄 C C D D D D D E E E
文化 G H H G G H I G H I
性别 -- -- M M F F -- -- -- --
脱产学习 √
电工 √
钳工 √ √
车工 √ √
技术员 √ √
材料员 √ √
条件取值表
条件名 取值 符号 取值数
年龄 <=20 C M1=3
>20,<40 D
>=40 E
文化程度 中学 G M2=3
高中 H
大学 I
性别 男 M M3=2
女 F


附加题:
1、自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表(姓名、 性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报名者,同时记录到考生名册中(准考证号、姓名、课程)。请绘制该加工的DFD图,并写出数据词典中的数据流条目。
答:


2、“决定比赛名单”这个加工,根据“运动员名单”和“比赛项目”产生 “项目参加者”,如下图所示,运动员名单要包括所在队名,运动员编号号,运动员姓名,及参加的所有项目。请写出这三个数据流条目。

答:
运动员名单=队名+运动员号+姓名+{项目}
项目=项目名
项目参加者=项目名+{运动员号}

3、某旅馆的电话服务如下:
可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。
要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。
答:
电话号码=分机号|外线号码
分机号=7201...7299
外线号码=9+[市话号码|长话号码]
长话号码=区号+市话号码
区号=100...300
市话号码=局号+分局号
局号=[455|466|888|552]
分局号=4{数字}4


第四章 概要设计
1.什么是软件概要设计?该阶段的基本任务是什么?
软件概要设计:在需求分析的基础上通过抽象和分解将系统分解成模块,确定系统功能是实现,即把软件需求转换为软件包表示的过程。
基本任务:
(1)设计软件系统结构(简称软件结构)
a.采用某种设计方法,将一个复杂的系统按功能划分成模块(划分)
b.确定模块的功能。 (功能)
c.确定模块之间的调用关系。 (调用)
d.确定模块之间的接口,即模块之间传递的信息。 (接口)
e.评价模块结构的质量。 (质量)
(2)数据结构及数据库设计
a.数据结构设计
b.数据库设计:(概念设计、逻辑设计、物理设计)
(3)编写概要设计文档(文档主要有:概要设计说明书、数据库设计说明书、用户手册、修订测试计划)
(4)评审

2.软件设计的基本原理包括哪些内容?
软件设计的基本原理:
(1)模块化(四个属性:接口、功能、逻辑、状态)
(2)抽象
(3)信息隐蔽
(4)模块独立性(两个定性的度量标准:耦合性与内聚性)

3.衡量模块独立性的两个标准是什么?它们各表示什么含义?
两个定性的度量标准:耦合与内聚性
耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。
内聚性:也称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。模块内元素联系越紧密,内聚性越高。

4.模块间的耦合性有哪几种?它们各表示什么含义?
耦合性有六种:无直接耦合、数据耦合、标记耦合、控制耦合、公共耦合、内容耦合
无直接耦合:两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息。 (无直接关系)
数据耦合:指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。 (数据值 )
标记耦合:指两个模块之间传递的是数据结构。 (数据结构 )
控制耦合:指控制模块调用另一个模块时,传递的是控制变量,被调用块通过该控制变量的值有选择地执行块内某一功能(控制变量 )
公共耦合:指通过一个公共数据环境相互作用的那些模块间的耦合。 (一个公式数据环境)
内容耦合:一个模块直接使用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部 (内部数据 )

5.模块的内聚性有哪几种?各表示什么含义?
模块间的内聚性有6种:偶然内聚、逻辑内聚、时间内聚、通信内聚、顺序内聚、功能内聚。
偶然内聚:一个模块内的各处理元素之间没有任何联系。
逻辑内聚:模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。
时间内聚:把需要同时执行的动作组合在一起。
通信内聚:指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或产生相同的输出数据。
顺序内聚:一个模块中各处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出是下一功能元素的输入。
功能内聚:最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。

6.什么是软件结构?简述软件结构设计优化准则。
软件结构:软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制体系。
软件结构设计优化准则:
a.划分模块时,尽量做到高内聚,低耦合,保持模块相对独立性,以此为原则优化初始的软件结构。
b.一个模块的作用范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近
c.软件的深度、宽度、扇入、扇出应适当。
D.模块的大小要适中。
E.模块的控制范围模块的接口要简单、清晰、含义明确,便于理解,易于实现、测试与维护。

7.什么是模块的影响范围?什么是模块的控制范围?它们之间应该建立什么关系?
模块的影响范围:受该模块内的一个判定影响的所有模块的集合。
模块的控制范围:模块本身及其所有下属模块(直接或间接从属于它的模块)的集合。
一个模块的影响范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。

8.什么是"变换流"?什么是"事务流"?试将相应形式的数据流图转换成软件结构图。
变换流由输入、变换(或处理)、输出三部分组成。某个加工将它的输入流分离成许多发散
的数据流,形成许多加工路径,并根据输入选择其中一个路径来执行这种特征的DFD称为事物流。

9.试述"变换分析","事务分析"的设计步骤。
变换分析:
a.确定DFD中的变换中心。
b.设计软件结构的顶层和第一层-------变换结构。
c.设计中下层模块。(输入模块下属模块的设计,输出模块下属模块的设计,变换模块下属模块的设计,设计的优化)
事务分析:
a.确定DFD中的事务中心和加工路径。
b.设计软件结构的顶层和第一层------事务结构。(接收、发送给支)
c.事务结构中、下层模块的设计、优化工作同变换结构。

附加:

2、已知模块C中的一个判定影响到模块B,如图所示,它违反了SD的设计原则。试问: 可以采用哪些手段对结构图作改进,请说明改进办法并画出改进的结构图。

3、已知有一抽象的DFD图如下所示,请用SD方法画出相应的结构图。

答:


4、高考录取统分子系统有如下功能:
(1) 计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
答:
(1) 数据流图:

(2) 软件结构图:


5、图书馆的预定图书子系统有如下功能:
(1) 由供书部门提供书目给订购组。
(2) 订书组从各单位取得要订的书目。
(3) 根据供书目录和订书书目产生订书文档留底。
(4) 将订书信息(包括数目,数量等)反馈给供书单位。
(5) 将未订书目通知订书者。
(6) 对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
答:
(1) 数据流图:

(2) 软件结构图:


6、在结构化设计过程中,要将数据流图(DFD)映射成系统结构图(SC),分别画出变换型数据流和事物型数据流的映射方式。
答:
变换型 事务型




第五章 详细设计
1.详细设计的基本任务是什么?有哪几种描述方法?
详细设计的基本任务:
(1)为每个模块进行详细的算法设计。
(2)为每个模块内的数据结构进行设计。
(3)对数据库进行设计,即确定数据库的物理结构。
(4)其他设计:
a.代码设计
b.输入/输出格式设计。
c.人机对话设计。
(5)编写详细设计说明书。
(6)评审。
描述方法(三种):
a.程序流程图
b.PAD图
C.过程设计语言

2.结构化程序设计基本要求要点是什么?
a.采用自顶向下、逐步求精的程序设计方法
b.使用三种基本程序控制结构构造程序
1).用顺序方式对过程分解,确定各部分的执行顺序。
2).用选择方式对过程分解,确定某个部分的执行条件。
3).用循环方式对过程分解,确定某个部分重复的开始和结束的条件。
c.主程序员组的组织形式。

3.简述Jackson 方法的设计步骤。
Jsp 方法一般通过以下5个步骤来完成设计:
a.分析并确定输入/出数据的逻辑结构,并用Jackson 结构图表示这些数据结构。
b.找出输入数据结构和输出数据结构中有对应关系的数据单元。
c.按一定的规则由输入、输出的数据结构导出程序结构。
d.列出基本操作与条件,并把它们分配到程序结构图的适当位置。
e.用伪码写出程序。

4.请使用流程图、PAD图各PDL语言描述下列程序的算法。
(1)在数据A(1)-A(10)中求最大数和次大数。
(2)输入三个正整数作为边长、判断该三条边构成的三角形是等边、等腰或一般三角形。
答:
(1)
1)流程图:

2)PAD图


3)PDL语言
定义 n1=n2=0
输入A(1).......A(10)
n1=n2=A(1)
while i>10
if A(i)>=n1
n2=n1
n1=A(i)
end while

5.用PAD图描述下面问题的控制结构。
有一个表A(1)、A(2)、........A(n),按递增顺序排列。给定一个Keyw值,在表中用折半查找。若找到将表位置i送入x,否则将零送到x,同时将Key值插入表中。
算法: 1)置初值H=1(表头),T=N(表尾)。
2)置i=[(H+T)/2](取整).
3)若Key=A(i),则找到,i送到x;若Key>A(i),则Key在表的后半部分,i+1送入H;
若Key<A(i),则能Key在表的前半部分,i-1送入T,重复第三世界国家步查找直到H>T为止。
4)查不到时,将A(i),....,A(N)移到A(i+1),.....A(N+1),Key 值送入A(i)中。



6.一个正文文件由若干记录组成,每个记录是一个字符串,要求统计每个记录中空格字符的个数及文件中空格字符的总个数。要求输出数据格式是每复制一行这符串后,另起一行打印出这个字符中的空格数,最后打印出文件空格的总个数,用Jackson方法设计该程序结构。

附加题:
1、假设对顾客的订货单按如下原则处理:
将顾客的信用度分三个档次:
欠款时间不超过30天;
欠款时间超过30天但不超过100天;
欠款时间超过100天。
对于上述三种情况,分别根据库存情况来决定对顾客订货的态度。
情况之一(欠款时间≤30天),如果需求数≤库存量,则立即发货,如果需求数>库存量,则只发现有库存,不足部分待进货后补发。
情况之二(30天<欠款时间≤100天),如果需求数≤库存量,则要求先付款再发货,如果需求数>库存量,则不发货。
情况之三(欠款时间>100天),则通知先付欠款,再考虑是否发货。
试用判定树的形式予以描述(设欠款时间D,需求数N,库存量Q)。
答:

2、用Jackson图表示下图所示的二维表格:

答:


3、有一过程,其流程如下图所示。
其中b1 、b2、 b3为判定的逻辑条件,s1、 s2为加工处理。试用判定表给予描述。

答:


4、1、有一过程如下图所示的流程,试用判定表予以描述。

1 2 3 4
条件 b1 F T T T
b2 … F F T
b3 … F T …
结果 s1 √ √ √
s2 √


第六章 实现
1、程序语言有哪些共同特征?
答:程序语言的共同特征(似为特性更符合题意)是指程序设计语言的语言特性,包括心理特性、工程特性和技术特性三个方面。语言的心理特性对人机通信的质量有主要的影响;语言的工程特性对软件开发成功一否有重要的影响,此外,语言的技术特性也会影响软件设计的质量。

2、在项目开发时选择程序设计语言通常考虑哪些因素?
答:通常要考虑的因素有:
项目的应用领域、软件开发的方法、软件执行的环境、算法和数据结构的复杂性以及软件开发人员的知识等。

3、第4代语言(4GL)有哪些主要特征?
答:4GL的主要特征是:
(1)友好的用户界面
(2)兼有过程性和非过程性双重特性
(3)高效的程序代码
(4)完备的数据库
(5)应用程序生成器

4、举例说明各种程序设计语言的特点及适用范围?
答:以常见的一些编程语言为例:
FORTRAN语言,它不仅面向科学计算,数据处理能力也极强。适用于科学工程计算
Pascal语言,具有很强的数据和过程结构化能力,它语言简明,数据类型丰富,程序结构严谨。它是第一个体现结构化编程思想的语言。用于描述结构化算法和科学计算,操作系统的编写
C语言:功能强大,支持复杂的数据结构,可大量运用指针,具有丰富灵活的操作运算符及数据处理操作符,它还具有汇编语言的某些特征,使程序运行效率高。可用于许多领域,特别是在操作系统等方面有较大优势。
Coble语言,它具有极强的数据定义能力,程序说明与硬件环境说明分开、数据描述与算法描述分开。结构严谨层次分明,广泛用于商业数据处理。
SQL:结构化查询语言,用于对数据库进行存取管理。
汇编语言和Ada语言,主要用于实时处理和编写系统软件。
Prolog、Lisp语言。Lisp是一种函数型语言,特别适用于组合问题中符号运算和表处理,用于定理证明、树的搜索和其他问题的求解。Prolog是一种逻辑型语言,它提供了支持知识表示的特性,每一个程序由一组表示事实、规则和推理的句子组成,比较接近与自然语言。这两种语言主要用于人工智能系统开发。
C++、Java语言,是面向对象的设计语言,用于面向对象的方开发软件。

5、什么是程序设计风格?为了具有良好的设计风格,应注意哪些方面的问题?
答:程序设计风格是指一个人编制程序时所表现出来的特点、习惯、逻辑思路等。
要形成良好的程序设计风格,应从源程序文档化、数据说明、语句构造、输入输出和追求效率几个方面加以注意。


第七章 软件测试
1、软件测试的目的是?测试中要注意那些原则? 软件测试
答:软件测试的目的是的发现软件中存在错误的活动。好的测试用例可以发现至今没有发现的错误、好的测试用例可以发现至今没有发现的错误测试。要提供输入数据还要提供输出数据、保留测试用例、检查它是否做了应该做的还要检查它是否做了不该做的、避免自己测试自己的程序、多错误多的地方要更严格的测试。

2、什么是白盒法?有那些覆盖标准?比较他们的检错能力。
答:将程序看成是白盒子,认真的分析程序的结构和功能制定测试用例来测试。有逻辑覆盖(语句覆盖、判断覆盖、条件覆盖、判断/条件覆盖、条件组合覆盖、路径覆盖)

3、什么是黑盒法?有那些测试方法?特点?
答:将程序当成是黑盒子以设计中的功能为标准在程序的接口出进行测试看它能否达到功能要求。等价类划分、边界值分析、因果图、错误推测。

4、软件测试要经过那些步骤?这些步骤和开发那些阶段对应?
答:单元测试对应详细设计和编码、集成测试对应概要设计、确认测试对应需求分析。

5、单元测试有那些内容?
答:测试模块的接口、数据结构、重要的执行路径、错误处理、边界条件。

6、什么是集成测试?非渐增式和渐增式有什么区别?渐增式如何组装模块?
答:将模块组合起来成为一个完整的系统对其进行测试。非渐增式是将模块先进行单元测试然后组装在一起进行测试。渐增式是逐个将未测试的模块组装到已经测试过的模块上去进行集成测试,每加入一个就测试一次。非渐增式需要桩模块和驱动模块、非渐增式开始可以并行测试、渐增式可以及时的发现接口错误,非渐增式很难发现接口发现错误、渐增式开始不能并行测试、渐增式测试比较彻底。
渐增式组装模块有自顶向下和自底向上两种组装方式。

7、什么是确认测试?该阶段有那些工作?
答:按照需求规格说明书中的确定指标对系统进行功能与性能的测试。进行确认测试(对照需求规格说明书用黑盒法进行测试)、软件配置检查。(文档的完整性、正确性,发现遗漏和错误及时补充和修改)

8、 调试的目的是什么?调试的技术有那些?
答:调试的目的是发现错误的位置并改正错误。简单调试、演绎调试、递归调试、回溯调试。

附加题:
1、对下列子程序进行调试:
procedure example(y,z: real; var x: real)
begin
if (y>1) and (z=0) then x:=x/y;
if (y=2) or (x=l) then x:=x+l;
end.
该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。答题要求:
(1)画出流程图。
(2)用白盒法设计测试用例,并写出它所满足的是何种覆盖标准、预期结果以及路径。
答:(1)流程图

(2)用白盒法中条件组合覆盖设计测试用例:
① y=2, z=0, x=4;
② y=2, z=1, x=1;
③ y=1, z=0, x=2;
④ y=1, z=1, x=1.

2、某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求用黑盒测试法中的边界值法写出测试用例。
答:
输入条件 测试用例说明 测试数据
报表日期的 1个数字字符 5
类型及长度 5个数字字符 20035
7个数字字符 2003005
有1个非数字字符 2003.5
全部是非数字字符 MAY---
6个数字字符 200305

日期范围 在有效范围 200301
边界上选取 200812
数据 200300
200813

月份范围 月份为1月 200301
月份为12月 200312
月份<1 200300
月份>12 200313

3、对以下程序进行测试:
PROCEDURE EX(A,B:REAL;VAR X:REAL);
BEGIN
IF(A=3)OR(B> 1)THEN X:=A×B
IF(A>2)AND(B=0)THEN X:=A-3
END
先画出程序流程图。 再按不同逻辑覆盖法设计一种(写出名称)测试数据。
答:

语句覆盖 A=3 B=0

4、程序功能说明书指出,某程序的输入条件为:每个学生可以选修1至3门课程,试用黑盒法设计测试用例。
(1)按等价分类法设计测试用例(要求列出设计过程)
(2)按边缘值分析法设计测试用例。
答:
1)合理等价类
选修1门
选修2门
选修3门
不合理等价类
没选课
选3门以上
测试用例
选修=2
选修=0
选修>3
2) 边缘值法
0,1,3,4

5、设被测试的程序段为:
begin
s1 ;
if (x=0) and (y>2)
then s2;
if (x<1) or (y=1)
then s3 ;
s4 ;
end
可供选择的测试数据组为:
x y
Ⅰ 0 3
Ⅱ 1 2
Ⅲ -1 2
Ⅳ 3 1
找出实现(1)语句覆盖;(2)条件覆盖;(3)判定覆盖至少要选择的数据组。
答:(1)Ⅰ (2) Ⅰ,Ⅳ (3) Ⅰ,Ⅱ


第八章 软件维护
1、软件维护有哪些内容?
a、校正性维护b、适应性维护c、完善性维护d、预防性维护

2.软件维护的特点是什么?
a、非结构化维护和结构化维护
b、维护的困难性
c、软件强维护的费用

3.软件维护的流程是什么?
a、制定申请维护报告b、审查申请报告并批准c、进行维护并作详细记录d、覆审

4.软件维护的副作用有哪些?
编码、数据、文档副作用

5.什么是软件的可维护性?可维护性的度量的特性是什么?
软件的可维护性:软件能够被理解、校正、适应及增强功能的容易程度。
可维护性的度量的特性是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

6.提高可维护性的方法有哪些?
A、建立明确的软件质量目标。B、利用先进的软件开发技术和工具。
C、建立明确的质量保证工作。D、选择可维护的程序设计语言。
E、改进程序文档。


第九章
1、 渐增模型有那几种?特点?
答:增量构造和演化提交。增量构造是瀑布模型的基础上在一些的阶段中采用增量开发一些阶段整体开发。演化提交是在瀑布模型的基础上所有阶段都使用增量开发也就是不紧使用增量开发也使用增量提交。

2、 快速原形有那几种?特点?
答:探索型、试验型、演化型。探索型:在需求阶段帮助明确理解需求用完抛弃。试验型:在设计阶段考核现行方案是否合适用完抛弃。演化型:及早的向用户展示一个系统的原形包含主要的功能得到用户的认可后将原形不断的扩充直到系统完成。

3、 快速原形开发的步骤?
答:快速开发、需求、构造原形、原形、运行原形、评价原形、修改意见。

4、 评价快速原形的优缺点?
答:可以更清楚的理解用户的需求、开发阶段可以用原形解决局部的困难,通过原形的开发可以让用户看见系统的初步功能的实现有利与用户的开发人员更好的交流,及早的解决存在的问题减少开发的风险。
缺乏好的管理工具和开发环境、缺乏管理机制、对开发人员的技术要求高、更新文档比较困难。

5、 对比瀑布模型和增量模型,指出增量模型的新思路。
答:瀑布模型是一种整体的开发模型,开发的每一阶段必须按线性的顺序来进行,前一阶段的工作没有完成后一阶段的工作就不能开始。由于需求分析的易变性使的软件开发工作不顺利,同时瀑布模型的每个阶段有不可避免的错误出现,那么延伸到以下的各个阶段错误就会放大。增量模型是非整体开发的模型它采用渐增模型和原形模型,软件的开发是用增量开发和增量提交。


第十章 面向对象技术
1、 说明对象、类、类结构、消息的基本概念?
答:对象:是客观实体在问题域中的抽象。
类:具有相似或相同性质的对象的抽象就是类。
类结构:类的结构通常有一般----具体(分类结构)整体---抽象(组装结构)
消息:对象之间通信的构造。

2、 面向对象的特征和要素?
答:特征:一致性、多态性、分类性、继承性。要素:共享、封装、抽象。

3、 说明对象模型的特征?
答:对象模型表示了静态的、结构化的、系统数据性质,描述了系统的静态结构,表现了对象间的相互关系,模型主要关心系统中对象的结构、属性和操作使用对象图来描述。

4、 说明动态模型的特征。
答:动态模型描述了与时间和变化有关的系统性质,描述的是系统的控制结构,表示了瞬间的系统控制性质,它关心系统的控制,操作顺序,从对象的状态角度出发表现对象的相互行为。

5、 功能模型的特征。
答:功能模型描述了系统的所有计算。

6、 三种模型的关系?
答:功能模型描述发生了什么,动态模型确定什么时候发生,对象模型确定发生的客体。

7、 三种模型的建立过程?
答:对象模型:确定类、准备数据字典、确定联系、确定属性、完善对象模型。
动态模型:准备脚本、准备事件跟踪、构造状态图。
功能模型:确定输入输出值、建立DFD。

附加题:
1、 一本书有一个封面、一个目录、一个前言、若干章、每章有若干节、每节有若干段每段有若干句子、每节有0个或多个插图,还有0个或多个表格,最后有一个附录。试建立该书的对象模型。
答:



第十一章 软件质量保证
1、 软件质量与质量保证的含义?
答:软件质量:与确定的功能和性能需求一致、与成文的开发标准相一致、与所有专业开发的软件所期望的隐含特性相一致。质量保证:向社会和用户提供满意高质量的产品确保软件从诞生到消亡为止的所有阶段的质量的活动。

2、 影响软件质量的因素有那些?
答:可以直接度量的因素、只能间接度量的因素。

3、 什么是软件质量保证的策略?软件质量保证的主要任务是什么?
答:策略:检测为重、过程管理为重、开发新产品为重。任务:正确定义用户要求、技术方法的使用、提高软件的工程能力、充分发挥开发人员的能力、提高计划和管理质量、软件复用。

5、程序复杂性的度量方法有那些?
答:代码行度量法、环路度量法。

6、 什么是软件可靠性?它们是否能定量计算?
答:在规定的环境下和时间里软件按要求的功能执行的概率。

7、 什么是软件评审?软件设计质量评审和程序质量评审有那些内容?
答:软件评审是一个过滤器,它使用在软件开发的各个阶段,通过软件评审可以及时的发现软件中存在的问题然后加以改正。设计质量评审:评审可靠性、评审可移植性、评审可测试性、评审规格说明是否符合用户的要求、评审保密情况的实施、评审是否有可复用性。

8、 容错定义?容错的方法?
答:定义:规定功能的软件在出现错误是仍然可以在一定程度上完成要求的功能、规定功能的软件可以屏蔽错误、规定功能的软件可以在出错的时候自动恢复到正常的状态、规定功能的软件在一定的程度上有容错的能力。方法:结构冗余、信息冗余、时间冗余、冗余附加技术。


第十二章 软件工程管理
1、 软件工程管理包括那些内容?
答:文档管理、人员管理、控制管理、组织机构管理。

2、 软件项目计划包括那些内容?
答:范围、资源、成本估算、进度安排、计划培训。

3、软件开发成本估算方法有哪几种?
答:COCOMO、PUTANM。

4、 什么软件配置管理?什么是基线?
答:软件配置管理:软件配置管理(SCM)用于整个软件工程过程,目标是表示变更,控制变更,确保变更的正确实施,报告变更。SCM是用在整个软件生存周期个阶段中的变更活动。基线:是软件生存周期中各开发阶段的一个特定点,它的作用是把开发各阶段的工作划分的更加明确化,使本来连续的工作在这些点上断开,便于检查于肯定阶段成果。

附加题:
1、下图是某项目的PERT图:

1-2是建立计划,2-4是编程,4-8是测试代码,8-10是测试系统,
1-3是购买硬件,3-5是安装,5-7是撰写手册,5-6是转化,7-9是培训,
9-10是用户测试。
(1) 画出完整的PERT图(标出EET,LET,和每个作业的机动时间);
(2) 找出关键路径及完成该项目的最短时间;
(3) 从节省人力的角度,画出该项目的GANTT图。
答:
(1)

(2)关键路径如上图粗黑线,该项目最短完成时间为70
(3)
Python遥感图像处理应用篇(二十三):Python+GDAL 批量拼接图像 遥感影像拼接分多种不同的情况,比如比较常用的是两幅影像拼接或者多个图像合并为一个图像。GDAL中实现影像拼接的方式也有多种,比如常用可以通过numpy读取影像数组,并计算各个图像的numpy数组范围,合并多个numpy数组为一个最终的结果,并将其重新输出为一幅新的图像,即可实现图像的拼接。另外比较方便的一种方法便是使用GDAL.warp()函数方法。这个函数的功能很多,可以实现多种不同的目的,比如用于坐标系转换、投影变换、图像合并与镶嵌、地理范围裁剪、更改分辨率、矢量裁剪等多种功能。这些功能可以通过设置Op 阅读详情

相关推荐

22AP10 SS524 平替 海思HI3521DV200 可提供开发资料

入,突破了数字接口的视频输入性能瓶颈,提供两倍于前代产品的视频输入能力。视频编解码引擎、视频图像处理的算法效果及性能得到了进一步提升。芯片为客户产品提供了高性能、优异图像质量。推理引擎,支持多种智能算法应用。合丰富的外围设备及高速接口,该。解决方案,广泛用于模拟高清。产品应用开发的新一代专。四核处理器和性能强大的。

szhorsway的博客 1011

软件工程教程:第4章总体设计 课后习题

《软件工程教程》(第2版)主编:吴迪马宏茹丁万宁电子科技大学出版社 一、选择题(单选或多选) (1)面向数据流的软件设计方法中,一般将信息流分为(A)。 A.变换流和事务流 B.变换流和控制流 C.事务流和控制流 D.数据流和控制流 (2)采用模块化技术的好处有(ABCD)。 A.容易测试和调试 B.有助于提高软件的可靠性 C.提高可维护性 D.有助于软件开发工程的组织管理 (3)属于软件设计的基本原理的是(BD)。 A.数据流分析设计 B.模块规模应该适中 C.事务流分...

WHT869706733的博客 1万+

从零到一:构建嵌入式Nginx的模块化架构与跨平台部署实战

本文详细介绍了在ARM32架构的RV1126嵌入式设备上,通过交叉编译技术构建模块化Nginx服务器的完整实战流程。涵盖环境配置、依赖库编译、Nginx核心与http_ssl_module等模块集成、性能优化及部署调试,为嵌入式开发提供高效可靠的Web服务器解决方案。

rock5的博客 202

《软件工程》第五章 总体设计 作业

1.什么是总体设计?总体设计的任务是什么? 1)通过仔细分析软件规格说明,适当地对软件进行功能分解,从而把软件划分为模块,并且设计出完成预定功能的模块结构。基本目的是回答“概括地说,系统应该如何实现”这个问题。 2)其一是划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等,但是每个物理元素仍然处于黑盒子级;其二则是设计软件的结构,也就是要确定系统中每个程序是由哪些模块...

菜鸡成长之路 1万+

Windows 10/11 安装 HYSPLIT 气象模型全攻略(附必备工具包下载清单)

本文提供了一份详尽的Windows 10/11系统下HYSPLIT气象模型安装与配置全攻略。指南涵盖了从核心认知、必备工具包(Tcl/Tk、ImageMagick)下载,到分步安装、环境变量设置及首次运行验证的完整流程,旨在帮助研究者和学生高效部署这一用于大气轨迹模拟与污染物扩散分析的专业工具。

weixin_28335283的博客 608

AutoDL跑yolo

由于博主在AutoDL的JupyterLab的终端直接上传ZIp文件要么老是再上传中被中断,要么就是上传后使用unzip指令解压显示“找不到”,作为纯小白的我实在太难了!这个文件列出了一个 Python 项目所需的所有依赖包及其精确的版本号。这个文件是 Python 项目中常见的一种方式,用于确保项目在不同环境中都能以相同的依赖包配置运行。3.进入JupyterLab,在文件夹目录中找到上传的文件夹,右键点击“复制路径”。然后在终端中输入以下指令进行切换到该文件夹路径。9.安装成功后开始输入指令开跑!

m0_73804659的博客 1206

软件工程 科学出版社 郑逢斌主编 第9章 结构化设计方法 课后习题答案

软件工程 科学出版社 郑逢斌主编 第9章 结构化设计方法 课后习题答案

m0_51658788的博客 3996

避坑指南:OpenWRT改AP模式必做的5个关键设置(DHCP/防火墙/WAN口处理)

本文详细解析了将OpenWRT设备从路由模式切换为AP模式时,必须完成的五个关键设置步骤。核心在于理解AP模式本质是带无线的智能交换机,需彻底关闭DHCP服务、调整防火墙策略、正确桥接所有物理接口(包括WAN口处理),并集成无线网络,以确保设备能透明接入主路由网络,避免出现设备隔离或无法互访等常见问题。

t1u2v的博客 734

数据的最小值和次小值

Time:2020.01.16 PART One 这里首先定义了一个5*5的数组,目的是求解数组每行的最小的和次之的两个数据,该程序实现了矩阵每行最小的两个值的程序。 目的:为了求矩阵中每行最小的和次之的两个数据的位置,考虑先找到目标数据,然后对其定位。 int main() { nx=5; ny=5; // int b=100,a=30; vector...

罗宾酱的博客 1320

从你的全世界路过---陌陌X-SIGN还原

我们上期介绍了hook 接口方式,今天我分析so 层。学习是为了复杂的事情简单化。不用如此繁琐。跟进native_sdbyecbu37x这个函数,我们f5看伪代码 v13 = sign(v9, v10, v11, a6); 跟进这个函数 代码如下(示例): 2.代码贴入 SHA消息摘要java代码如下: java 代码如下(示例): 总结 算法,结合动态调试!

任雪飘的博客 2299

DJI O2协议物理层逆向工程解析:揭开无人机通信的神秘面纱

DJI的O2协议是其OcuSync传输技术的最新演进,应用于Mini 2、Mavic Air 2、Mavic Air 2s和Mavic 3等无人机模型。这种协议结合了多种先进无线通信技术,能够在远距离提供稳定可靠的低延迟连接。O2协议物理层(PHY)是OSI模型的最底层,负责在物理媒介上传输原始数据比特流。它定义了电气特性、调制方式、编码方案、数据传输速率和同步机制等。DJI O2协议的物理层逆向工程是一个复杂但极具价值的领域。

QQ_778132974的博客 2385

2008年上半年程序员考试试题分析

文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国。一、二、三、四 职场规划:一些杂七杂八的职场感悟吧。不值钱的软件人才 精力充沛与事业成功 让系分来得更猛烈些吧 不值钱的系统分析师 我的诗歌:都是我的打油诗,但是很值得一读。不要工作还衣食无忧之四难歌 香格里拉美人图 宝宝图...

weixin_33753003的博客 135

第14.8章 高翔博士最新开源框架Lightning-LM源码解读(八):位姿平滑器PoseSmoother深度剖析,从原理到代码实现

本文深度解析了高翔博士开源框架Lightning-LM中的位姿平滑器PoseSmoother模块。该模块通过设置平滑因子,在保证位姿准确性的同时减少突变,使位姿变化更平稳。文章详细讲解了模块功能、数据流程和核心代码实现,包括构造函数、拷贝构造函数以及关键的PushDRPose和PushPose函数。重点分析了位姿平滑算法原理,涉及运动有效性校验、位姿队列维护和平滑因子调节等核心机制。此外还介绍了相关C++语法(如显式构造函数、默认拷贝构造)和优化方向。本解析为SLAM学习者提供了位姿平滑处理的实用实现范例。

行知SLAM 601

软件工程理论与实践 (吕云翔) 第四章 结构化分析课后习题及答案

数据字典的作用是提供对系统中使用的数据元素的定义、属性、类型和关系的集中管理和描述,确保数据的一致性和完整性,为系统分析、设计和开发提供准确的数据资源和参考资料。对于比较复杂的系统,通常要先构造出各部分的E-R图,然后将各分E-R图集合成总的E-R图,并对E-R图进行优化,以得到整个系统的概念结构模型。​ 结构化分析方法是一种面向数据流的需求分析方法,其中数据作为独立实体转换,数据建模定义了数据的属性和关系,操作数据的处理建模表明当数据在系统流动时处理如何转换数据。读者,在借书文件上建立档案。

ak_bingbing的博客 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

某厂对部分职工重新分配工作的政策是: 年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁到40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁...

这是某厂重新分配工作的政策的结构化描述: if 年龄 < 20: if 初中文化程度: 脱产学习 else: 当电工 else if 年龄 >= 20 and 年龄 < 40: if 中学文化程度: if 性别 == "男": 当钳工 else: ...

weixin_35757531的博客 919

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

慕课软件工程(第四章.习题4.3)

慕课北京大学.软件工程.第四章.结构化分析方法.习题4.30 目录4 结构化分析方法4.7 习题4.34.7.1课堂重点4.7.2测试与作业5 下一章 0 目录 4 结构化分析方法 4.7 习题4.3 4.7.1课堂重点 4.7.2测试与作业 某厂对部分职工重新分配工作的政策是: 年龄在20岁以下者,初中文化程度脱产学习。高中文化程度当电工;年龄在20岁到40岁之间者,中学中学文化程度男性当钳工...

weixin_42473228的博客 2311

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

软件工程作业

软件工程作业1(第1~4章) 一、选择题: 1. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。 A.软件工程 B.软件周期C.软件危机D.软件产生 2. 瀑布模型本质上是一种(A )模型。 A.线性顺序 B.顺序迭代 C.线性迭代 D.早期产品 3. 瀑布模型存在的问题是...

weixin_30790841的博客 1615

实用软件工程(张海藩)复习笔记

(内容有出入,某些按自己理解简写) 软件设计、测试和维护 ​ 面向数据流的软件设计模式可将 数据流 映射软件结构。 软件模块的独立性由内聚性和耦合性来衡量: 内聚性:模块的功能强度(模块内各元素之间彼此结合得紧密程度) 耦合性:模块间相连程度的度量。 ​ 在软件设计时,应该提高模块的内聚程度,高内聚低耦合。 ​ 耦合程度 小->大 : 数据,控制,公共,内容。 Jackson方法是根据 数据结构 导出程序结构。 在面向数据流的软件设计方法中,一般将信息流分为变换流和事务流。 .

Aatroy的博客 1万+

软件工程概论题库

软件工程复习题 一、选择题: 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。 A.软件工程 B.软件周期 C.软件危机 D.软件产生 瀑布模型本质上是一种(A)模型。 A.线性顺序B.顺序迭代C.线性迭代D.早期产品 瀑布模型存在的问题是(B)。 A.用户容易参与开发 B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求...

一曲无痕奈何 1万+

软件工程考试题库

软件工程概述 一 单项选择 1. 软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。 A需求分析 B 结构设计 C程序编制 D软件维护 2. 软件是一种逻辑产品,它的开发主要是(A )。 A研制 B拷贝 C再生产 D复制 3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。 A...

ZJC'博客 5370

作业20:第十章课后题

qq_41384942的博客 530

软工习题札记

软件工程练习题

莫道桑榆晚 为霞尚满天 6119

某厂对一部分职工工重新分配工作,分配原则是:(1)年龄不满20岁,文化程度是小学者脱产学习,文化程度是中学者当电工;(2)年龄满20岁但不足50岁,文化程度是小学或中学者,男性当钳工,女性当

(2)年龄满20岁但不足50岁,文化程度是小学或中学者,男性当钳工,女性当车工;文化程度是大学者当技术员;(3)年龄满50及50以上,文化程度是小学或中学者当材料员,文化程度是大学者当技术员。试分析规格说明书,建立决策表,并简化,根据简化后的决策表写出对应的用例表。年龄不满20岁,文化程度是小学者脱产学习,文化程度是中学者当电工;

qq_62632745的博客 2180

软件工程的图之数据流图,盒图

软件工程图图图 今天刚考完软件工程,趁脑子还热会,赶紧来总结一下,之前复习软件工程的图的时候让我太痛苦了… 数据流图 先简单了解一下他的概念:数据流图是描绘信息流和数据从输入移动到输出的过程中所经受的变换 在数据流图中有四要素:源点终点,数据流,数据存储,处理 (图形表达不唯一,以下只介绍我一般用的) 以例子来说明:自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表(姓名、 性别...

weixin_43557093的博客 8180

《软件工程教程》(第2版) 主编:吴迪 马宏茹 丁万宁 第四章课后习题参考答案

《软件工程教程》(第2版) 主编:吴迪 马宏茹 丁万宁 第三章课后习题参考答案

weixin_55701118的博客 4109

软件工程-图书管理系统的概要设计

软件工程实验-图书管理系统概要设计-软件概要设计说明书

weixin_74092648的博客 4700
下一篇: Flex Array,Arraylist,ArrayCollection使用详解
andyny_java2006
博客等级 码龄20年 5粉丝 3原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值