第一篇:软件工程本科期末考试试卷.doc
一:选择题
1.中级结构成本模型COCOMO是一个()。
A 静态单变量模型B 动态单变量模型
C 静态多变量模型D 动态多变量模型
2.在软件质量模型中,()属于面向软件产品操作的质量因素。
A可用性B 可维护性C适应性D 互操作性
3.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。
ABooch 方法B Coad 方法CUML语言D OMT 方法
4.瀑布模型本质上是一种()。
A线性顺序模型B 顺序迭代模型C线性迭代模型D 及早见产品模型
5.在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()。
A探索型模型B 演化型模型C实验型模型D 提交型模型
6.软件可维护性的特性中相互矛盾的是()。
A可修改性和可理解性B 可测试性和可理解性
C效率和可修改性D 可理解性和可读性
7.软件维护产生的副作用,是指()。
A开发时的错误B隐含的错误 C 因修改软件而造成的错误D 运行时误操作
8.用黑盒技术设计测试用例的方法之一为()。
A因果图B逻辑覆盖C错误推测D人工检测
9.需求分析阶段的任务是确定()
A 软件开发方法B.软件开发工具 C 软件开发费用D 软件系统功能
10.Ada语言是在Pascal语言基础上开发出来的,适用于()项目的应用领域。
A科学工程计算B数据库应用C实时处理D人工智能
11.程序设计语言的工程特性之一为()。
A软件的可重用性B数据结构的描述性
C抽象类型的描述性D数据库的易操作性
12.软件详细设计的主要任务是确定每个模块的()。
A算法和使用的数据结构B外部接口C功能D编程
13.PAD图为()提供了有力的工具。
A系统分析B软件的自动化生成C自动分析数据D测试软件
14.软件结构图的形态特征能反映程序重用率的是()
A深度B宽度C扇入D扇出
15.在大型数据处理系统的功能分析与设计中,数据库的概念设计对应于系统开发的()。
A 需求分析B 概要设计C 详细设计D 程序设计
16.为了提高模块的独立性,模块内部最好是()。
A 逻辑内聚B时间内聚C 功能内聚D通信内聚
17.软件结构图中,模块框之间若有直线连接,表示它们之间存在()。
A调用关系B组成关系C链接关系D顺序执行关系
18.需求分析最终结果是产生()。
A项目开发计划B 需求规格说明书C设计说明书D 可行性分析报告
19.可行性研究要进行一次()需求分析。
A深入的B 详尽的C彻底的D 简化的,压缩了的1
20.软件是一种()
A程序B 数据C逻辑产品D 物理产品
二:填空题
1.成本估算模型中,Putnam估算模型是一种()模型。
2.功能模型描述子系统的所有计算,它由()组成。
3.程序设计语言的心里特性所表现的紧致性是程序员必须记住与编码有关的()。
4.JSP方法主要体现程序结构的设计,不明确地划分()和详细设计的两个阶段。
5.按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和()。
6.数据流图仅反映系统必须完成的逻辑功能,所以它是一种()模型。
7.类是一组具有相同()和相同()的对象的集合。
三.名称解释
1.程序的可移植性。
2.模块的影响范围,模块的控制范围。
3.SA和DFD
4.软件质量保证
四. 简答题
1.试画出Jakson方法所用的结构图的三种基本结构。
2.以GJ.Myer的观点,简述软件测试的规则和目的。
五. 应用题
1.画出一元二次方程的PAD流程图。
2.某校的课酬计算机方案为:
(1)基本课酬为每节课10元。
(2)班级人数超过60人,增加基本课酬的10%。
(3)班级人数超过80人,增加基本课酬的20%。
(4)如果教师为副教授,增加基本费的10%。
(5)教授,增加基本课酬的20%。
(6)助教,不增加课酬。
(7)见习助教,减少课酬的10%。用判定表,表述上述计算方案。
3.某公司为本科以上学历的人重新分配工作,分配原则如下:
(1)如果年龄不满18岁,学历是本科,男性要求报考研究生,女性担任行政工
作。
(2)如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历
是硕士不分男女,任课题组长。
(3)如果年龄满50岁,学历本科,男性任科研人员,女性担任资料员;学历是
硕士,不分男女,任课题组组长。
要求:画出分析过程,得出判定表,并进行化简。
试题二、一:选择题:
1.软件生存周期模型不包括()。
A瀑布模型B对象模型C增量模型D喷泉模型
2.软件可行性研究实质上是要进行一次()需求分析,设计过程。
A简化,压缩的B详细的C彻底的D深入的3.需求分析阶段最重要的技术文档之一是()。
A项目开发计划B、设计说明书C、需求规格说明书D、可行性分析报告
4.在以下模块耦合性类型中,模块之间独立性最差的类型是()。
A无直接耦合B、标记耦合C控制耦合D、内容耦合5.重用率高的模块在软件结构图中的特征是()。
A扇出数大B、扇入数大C内聚性高D、扇出数小
6.软件详细设计的主要任务是对()进行的详细设计。
A算法和数据结构B外部接口C软件编码D功能
7.Jackson方法是一种面向()的方法。
A数据流B、对象C数据结构D控制流
8.第一个体现结构化编程思想的程序设计语言是()。
AFortranBCCPascalDCobol
9.一个成功的测试可以()。
A表明程序没有错误B发现所有错误
C提高软件可靠性D发现尚未发现的错误
10.黑盒技术设计测试用例的方法之一为:()。
A因果图B逻辑覆盖C循环覆盖D预防性维护
11.在软件维护的内容中,占维护活动工作量比例最高的是()。
A校正性维护B适应性维护C完善性维护D基本路径测试
12.当前时期软件维护的费用在总费用中的比例为()。
A35%~40%B40%~60%C60%~70%D70%~80%或更高
13. 软件维护的副作用,是指()。
A开发时的错误B隐含的错误
C因修改软件而造成的错误D运行时误操作
14.增量模型本质上是一种()。
A线性顺序模型B整体开发模型
C非整体开发模型D快速原型模型
15.在快速原型的开发过程中,用于及早向用户提交原型系统的原型模型是()。
A探索型原型B试验型原型
C演化型原型D增量构造原型
16.关联是建立()之间关系的一种手段。
A类B对象C角色D属性
17.面向对象技术特别强调的是()。
A对象的数据结构B对象的使用方式C程序结构D结构化编程
18.对象模型由一个或若干()组成。
A对象B模板C属性D数据流图
19.在McCall质量模型中,不属于与软件修正相关的质量要素是()。
A可维护性B可测试性C可靠性D灵活性
20.Putnam成本估算模型是一种()。
A静态单变量模型B、静态多变量模型C、动态单变量模型D 动态多变量模型
二.填空题:
1.2.3.4.软件工程研究的主要内容是软件开发技术和()两个方面。经济可行性研究主要是进行()分析,从经济的角度,确定系统是否值得开发。数据流图和字典共同构成了系统的()模型,是需求规格说明书的主要组成部分。结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离
成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD称为()的数据流图。
5.人的记忆特性有两方面:联想方式和()。
6.调试的目的是确定错误的原因和位置并改正错误,因此调试应该由()进行。
7.软件维护的内容包括纠错性维护,适应性维护,()和预防性维护。
三.名词解释
1.信息隐藏2.白盒法。3.内聚和耦合4.多态性 5.软件可靠性
四. 简答题
1.软件生存周期包括哪些活动?
2.结构化程序设计的基本要点是什么?
3.简述面向对象的特征
五. 1.某仓库管理系统每天要处理大批单据所组成的事务文件。单据分为订货单和发货单两种,每张单据由多行组成,订货单每行包括零件号,单价,数量等四个数据项,发货单每行包括零件号,零件名,单价,数量等四个数据项,发货单每行包括零件号,零件名,数量等三个数据项,用Jackson结构图表示该事务文件的数据结构。
2.用PAD图描述下列问题的控制结构:有一个表A(1),A(2),…….A(N)按递增顺序排列。给定一个key值,在表中用折半法查找,若找到,将表位置i送人x,否则将零送人到x,同时将key值插入表中。
3、高考录取统分子系统有如下功能:
(1)计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;
(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
4、图书馆的预定图书子系统有如下功能:
(1)由供书部门提供书目给订购组。
(2)订书组从各单位取得要订的书目。
(3)根据供书目录和订书书目产生订书文档留底。
(4)将订书信息(包括数目,数量等)反馈给供书单位。
(5)将未订书目通知订书者。
(6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
5.什么是“变换流”?什么是“事务流”?试将相应形式的数据流图转换成软件结构图。
第二篇:本科人力资源管理期末考试试卷
本科《人力资源管理》期末考试试卷
(2007、7)
一、单项选择题(每小题2分,共20分)
1、人力资源需求预测中的专家判断法,又称()。
A、回归分析法B、经验预测法C、德尔菲法D、马尔可夫分析法
2、下面哪一项不属于工作说明书的基本内容()。
A、工作职责B、工作中晋升C、工作权限D、工作环境
3、企业对新员工上岗进行的培训称为()。
A、培训B、脱产培训C、岗前培训D、在职培训
4、一名工人的绩效,除了产量指标完成情况外,质量、原材料消耗率、能耗、出勤,甚至团结、服从纪律等硬、软方面的表现,都需要综合考虑,逐一评估,这体现了绩效的()的特点。
A、多因性B、多维性C、动态性D、不确定性
5、企业一般给销售人员实行的是()。
A、能力工资制B、绩效工资制C、计件工资制D、职务工资制
6、劳动合同的法定内容不包括()。
A、试用期限B、劳动合同期限C、劳动保护和条件D、劳动报酬
7、个性----职业类型匹配的择业选择理论是由()提出的。
A、帕金森B、约翰.L.霍兰德C、金斯伯格D、施恩
8、李某总是认为人的本性是积极的,并能主动地完成工作,承担责任。李某的管理方式在对人的态度方面认为人是()。
A、“机器人”B、“经济人”C、“生活人”D、“社会人”
9、当人们认为自己的报酬与劳动之比,与他人的报酬与劳动之比是相等的,这时就会有较大的激励作用。这种理论称为()。
A、公平理论B、效用理论C、因素理论D、强化理论
10、在理论界通常将()看作是人力资本理论的创立者、人力资本之父。
A、威廉.配弟B、亚当.斯密C、A.马歇尔D、舒尔茨
二、多项选择题(每小题2分,共10分)
1、同一企业内部不同员工薪酬水平不同,是由于()因素的影响。
A、员工绩效B、员工岗位C、员工能力D、工会力量E、员工工龄
2、职业管理学家萨柏把人的职业生涯划分为五个主要阶段()。
A、成长阶段B、探索阶段C、确立阶段D、维持阶段E、衰退阶段
3、企业进行人力资源外包的主要原因是()。
A、为了节省费用B、聚焦于战略和核心业务
C、为了提高人力资源工作的效果D、维护企业形象
E、临时性措施
4、双重职业道路()。
A、认为技术专家能够而且应该允许将其技能贡献给公司而不必成为管理者
B、既包括纵向的工作序列,也包括一系列横向的机会
C、为经理人员和专业技术人员设计了一个平行的职业发展体系
D、员工有了继续留在技术岗位上发展或进入管理层的机会
E、不提倡从合格的技术专家中培养劣等的管理者,而是组织既可聘请具有高技能的管理者,又可雇佣具有高技能的技术人员。
5、评价中心法主要用来招聘管理人员,常用的方式主要有()。
A、公文处理B、无领导小组讨论C、角色扮演D、智力测验E、性向测验
三、判断题(每小题2分,共10分)
1、人力资源是一种不可再生性资源。()
2、人力资源规划,是各项具体人力资源管理活动的起点和依据,它直接影响着组织整体人力资源管理的效率。()
3、工作评价就是评定工作的价值,制定工作的等级,因此评价对象是任职者。()
4、员工推荐的优点是招聘成本小,可靠性高。()
5、岗前培训是指员工离开工作岗位,去专门从事知识或技能的学习。()
四、论述题(每小题10分,共20分)
1、试述当前我国建立健全社会保障体系的主要任务。
2、试述组织参与职业规划的意义和作用。
五、案例分析题(每小题20分,共40分)
1、通达公司员工的绩效考评
通达公司成立于20世纪50年代初,目前公司有1000人左右。总公司本身没有业务部门,只有一些职能部门;总公司下有若干子公司,分别从事不同的业务。
绩效考评工作是公司重点投入的一项工作,公司的高层领导非常重视,人事部具体负责绩效考评制度的制定和实施。人事部在原有的考评制度基础上制定了《中层干部考评办法》。在每年年底正式考评之前,人事部又出台当年的具体考评方案,以使考评达到可操作的程度。
公司的高层领导与相关职能部门人员组成考评小组。考评的方式和程序通常包括被考评者填写述职报告、在自己单位内召开全体员工大会进行述职、民意测评(范围涵盖全体员工)、向科级干部甚至全体员工征求意见(访谈)、考评小组进行汇总写出评价意见并征求主管副总经理的意见后报公司总经理。
考评的内容主要包含三个方面:被考评单位的经营管理状况,包括该单位的财务状况、经营情况、管理目标的实现等方面;被考评者的德、能、绩及管理工作情况;下一步工作打算,重点努力的方向。具体的考评细目侧重于经营指标的完成、政治思想品德、对于能力的定义则比较抽象。各业务部门(子公司)都在年初与总公司对于自己部门的任务指标进行了讨价还价的过程。
对于中层干部的考评完成以后,公司领导在年终的总结会上进行说明,并将具体情况反馈给个人。尽管考评的方案中明确说考评与人事的升迁、工资的升降等方面挂钩,但最后的结果总是不了了之,没有任何下文。
对于一般员工的考评则由各部门的领导掌握。子公司的领导对于下属业务人员的考评通常是从经营指标的完成情况来进行的;对于非业务人员的考评,无论是总公司还是子公司,均由各部门的领导自由进行。至于被考评人员来说,很难从主管处获得对自己业绩有效评估的反馈,只是到了奖金分配时,部门领导才会对自己的下属做一次简单排序。
试分析:
(1)绩效考评在人力资源管理中有何作用?这些作用在通达公司中是否有所体现?
(2)通达公司的绩效考评存在哪些问题?如何才能克服这些问题?
2、从组织内部寻找人才
台塑董事长王永庆在台湾是一个家喻户晓的传奇式人物,他从白手创业到主持台湾规模最大的台塑企业集团,从贫无立锥之地到台湾首富,是经过一番奋斗的。
企业的兴衰唯人才是赖,所以大多数企业争相到企业外去招揽人才。王永庆不完全同意这种做法,他认为人才往往就在你的身边,因此求才首先从企业内部去寻找。他说:寻找人才是非常困难的,最主要的是,自己企业内部的管理工作先要做好;管理上了轨道,大家懂得做事,高层经理人才有了知人之明,有了伯乐,人才自然就被发掘出来了。自己企业内部先行健全起来,是一条最好的选拔人才之道。
如今大多数企业家,虽然求才若渴,可是,企业内部的基本管理工作没做好,有很多人才而不自知,却在那里大谈求才之难,由于管理未上轨道,根本不知道需要什么样的人才,而盲目到处寻找人才。对此,王永庆进一步分析指出,企业家对自己企业内有无人才浑然不知,对子又盲目向外寻找人才,纵使找到了人才又有何用呢?不能给予适才适所的安置,人才也是枉然。身为企业家,应该知道哪一个部门需要此种人才?例如,这个单位欠缺一个分析成本的会计人员,或是电脑的程序设计人员。究竟是哪一种成本分析?需要的是哪一部门的电脑专家?困难在哪里?从哪里去找?如果这些都弄不清楚,如何去找人才呢?如果自己不了解,怎么去判断何人适合哪一项工作呢?应该说,遇到这种情况,先确定工作职位的性质和条件,再决定何种类型的人来担任最适宜,然后寻找担任此职位的人才。
王永庆说,就像苦苦地研究一样东西,到了紧要阶段,参观人家的制造,触类旁通,一点就会;如果不经过苦苦地研究追求,参观人家的制造,仍然一无所得。要自己经过分析,知道追求的目的,才知道找怎样的人才;否则空言找人才,不是找不到,就是找到了也不懂得用。还有,人才找到了,因为自己的无知,三言两语便认为不行的也多得是;或者因为本身制度不健全,好好的人才来了,不久就失望而去。
基于这个道理,台塑每当人员缺少时,并不是立即对外招聘,而是先看看本企业内部的其他部门有没有合适的人员可以调配,如果有的话,先在内部解决,填写调任单,两个单位互相协调调任即可。负责人事的台塑高级专员陈清标说,通过内部甄选有两大优点,一方面可以改善人员闲置与人力不足的状况,另一方面则因人员已熟悉环境,训练时间可以节省下来。
这种做法的好处是,发挥了轮调的作用,将那些不适合现职的人,或对现职有倦怠的人另换一个工作,使其更能发挥所长,而且,分工太细、组织僵化等现象,也可以从调任中消除掉。
试分析:
(1)你对台塑董事长王永庆的人才观是怎么看的?
(2)从企业内部选聘员工有什么优缺点?
(参考答案附后)
本科《人力资源管理》期末考试试题参考答案
(2007、7)
一、单项选择题(每小题2分,共20分)
1、C2、B3、C4、B5、B6、A7、B8、D9、A10、D
二、多项选择题(每小题2分,共10分)
1、ABCE2、ABCDE3、ABC4、ACDE5、ABC
三、判断题(每小题2分,共10分)
1、×
2、√
3、×
4、√
5、×
四、论述题(每小题10分,共20分)
1、试述当前我国建立健全社会保障制度的主要任务
答案要点:
建立健全与经济发展水平相适应的社会保障体系,既是全面建设小康社会的重要内容和发展社会主义市场经济的必然要求,也是保持社会稳定和国家长治久安的根本大计。其主要任务是:
一是,坚持社会统筹和个人账户相结合,完善职工基本养老保险制度;
二是,推进医疗保险制度改革。需要完善医疗保险配套制度改革,细化医疗服务管理,城镇职工医疗保险制度改革与医疗卫生体制改革、药品流通体制改革同步推进;
三是,建立健全失业保险制度;
四是,全面落实城市居民最低生活保障制度,切实贯彻属地管理原则,将符合条件的城市居民全部纳入最低生活保障范围;
五是,加快建立农村养老保险、医疗保险和最低生活保障制度。农村社会保障是我国整个社会保障制度的薄弱环节,随着农村经济的发展,城镇化进程的加快,农村社会保障问题日益突出。促进城乡协调发展,迫切要求加快建立农村社会保障制度,当前重点是加快农村养老保险、医疗保险和最低生活保障体系的建立;
六是,合理确定社会保障范围、标准和水平。
2、试述组织参与职业规划的意义和作用。
答案要点:
组织的发展依靠个人的发展,组织通过引导、帮助和协调员工的职业规划,能提高员工的工作质量,形成积极向上的工作态度并增加他们对企业的忠诚度。关注员工职业规划的组织在吸引人才上更具优势。有效的组织职业规划能够把组织的需要转化为员工个人的需要和自己要求开发的职业目标,既获得很高的个人满意度,又取得良好的组织绩效。现代企业能否赢得员工献身精神的关键因素之一,就是能否与员工确立共同的目标,达成一致,使员工感到企业、部门的发展目标与个人的发展目标息息相关,从而激发他们的主动性、成就感和创新意识。“为了在一个不断变化的市场环境中动作,组织应认清需要什么样的能力以及什么样的员工,并由此提高自己的动作能力。要能够做到这一点,就必须有组织职业规划。”
员工在组织中的发展通常有两条道路,一是专业技术上的提升;二是行政职位上的上升。一个组织如果能很好地帮助员工进行职业规划,应能大大提升员工对组织的信赖度和忠诚度,有助于稳定队伍。一个队伍相对稳定的组织,较之人员更叠频繁的组织,能更专注于事业,效率更高,更快地实现组织目标。搞好组织职业规划,给每一位员工上升的空间,应能激发员工的潜能,最终受益者将是组织。
五、案例分析题(每小题20分,共40分)
1、通达公司员工的绩效考评
答案要点:
(1)绩效考评在人力资源管理中的作用,主要表现在以下几个方面:为员工薪酬管理提供依据;为员工的职务调整提供依据;为员工培训提供依据;为上级和员工之间提供一个正式沟通的机会,能帮助和促进员工自我成长;为企业组织决策提供参考依据。以上这些作用在该案例或多或少都有所表现。
(2)通达公司在员工考评中存在的问题主要有,一是,考评目的不够明确,也太狭窄,仅仅为了奖金。因此,要进一步明确考评目的;二是,考评指标缺乏科学性,太笼统。需要进一步细化,加以量化;三是,考评人员单一。考评小组要由了解员工工作情况的人组成;四是,考评过程不完整。要进行考评反馈,要面谈。
2、从组织内部寻找人才
分析要点:
(1)台塑董事长王永庆具有如下人才观:一是,人才往往就在你的身边,因此求才应首先从企业内部去寻找,并且把企业内部的管理做好;二是,合适的人做合适的事;三是,寻找人之前首先要分析如何用,找什么样的人。这些观点我很有同感。
(2)但内部招聘也有其优缺点:
内部来源选聘有许多优点:一是,选任时间较为充裕,了解全面,能做到用其所长,避其所短;二是,他们对组织情况较为熟悉,了解与适应工作的过程会大大缩短,他们上任后能很快进入角色;三是,内部提升给每个人带来希望,有利于鼓舞士气,提高工作热情,调动员工的积极性,激发他们的上进心。
内源选任也有其缺陷,表现为:一是,容易造成“近亲繁殖”。老员工有老的思维定势,不利于创新,而创新是组织发展的动力。二是,容易在组织内部形成错综复杂的关系网,任人唯亲,拉帮结派,给公平、合理、科学的管理带来困难。三是,内部备选对象范围狭窄。
第三篇:软件工程期末考试总结
一、1、1968年“软件工程”诞生。
2、软件定义:软件是程序、数据 相关文档的完整结合。其中,程序是能够完成预订功能和性能的可执行的指令序列;数据是使程序能够适当的处理信息的数据结构;文档是开发、使用和维护程序所需要的图文资料。
3、为了解决软件危机,技术措施(方法和工具),组织管理措施
4、软件工程:软件工程是(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(2)研究(1)中提到的途径。
5、软件工程是从管理和技术两方面
6、软件工程的本质特性:(1)软件工程关注于大型程序的构造;(2)专拣工程的中心课题是控制复杂性;
(3)软件经常变化;(4)开发软件的效率非常重要;(5)和谐的合作是开发软件的关键;(6)软件必须有效的支持它的用户;(7)在软件工程领域中通常由具有一种文化背景的人替具有另外一种文化背景的人创造产品。
7、软件工程的7条基本原理:(1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术;(5)结果应能清楚的审查;(6)开发小组的人员应该少而精;(7)承认不断改进软件工程实践的必要性。
8、软件工程包括(技术和管理)两方面内容,是技术与管理紧密结合所形成的工程学科。
9、软件工程方法学包括三个要素:方法、工具和过程。
10、CASE计算机辅助软件工程
11、软件的生命周期由 软件定义、软件开发和运行维护(软件维护)3个时期组成。
12、软件生命周期每个阶段的基本任务:(1)问题定义:必须回答的关键问题是:“要解决的问题是什么?”性质规模总目标;(2)可行性研究:要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?”可解?值得解?(3)需求分析:这个阶段的任务不是具体的解决问题,而是准确的确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能需求规格说明书(4)总体设计:这个阶段必须回答的关键问题是:“概括地说,应该怎样实现目标系统?”(总体设计又称概要设计)软件结构图(5)详细设计:把解法具体化,也就是回答下面这个关键问题:“应该怎样具体的实现这个系统呢?”算法、数据结构(6)编码和单元测试:关键任务是写出正确的容易理解、容易维护的程序模块(7)综合测试:关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求(最基本的测试是集成测试和验收测试)。
13、软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,他规定了完成各项任务的工作步骤。用生命周期模型描述它。
15、过程模型:生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也成为过程模型。
16、瀑布模型是唯一被广泛采用的且现在仍是应用最广泛的过程模型。
17、增量模型:也称渐增模型,适用于能在较短时间内向用户提交可完成部分工作的产品。
18、螺旋模型:适用于内部开发的大规模软件项目。
二
1、可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能解决。
2、研究每种解法的可行性从三个方面:(1)技术可行性(2)经济可行性(3)操作可行性
3、系统流程图是概括的描绘 物理系统 的传统工具。
数据流图是系统逻辑功能的图形表示。
4、数据字典的作用:在软件分析和设计过程中给人提供关于数据的描述信息。
5、系统的逻辑模型由(数据流图和数据字典)共同构成,没有数据字典,数据流图就不严格,没有数据流图,数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。
5、数据字典由4类元素的定义组成:数据流、数据流分量、数据存储、处理,但是对数据处理的定义用
其他工具(IPO图或PDL)描述更方便。
三
1、需求分析:把用户关于软件的期望和想法,转变成软件开发人员需要的关于该软件的规格说明。
2、需求分析过程应该建立的3种模型:数据模型、功能模型和行为模型
3、实体-联系图是用于建立数据模型的图形,数据流图是建立功能模型的基础,状态转换图是行为建模的基础。
4、实体-联系图符号:矩形框代表实体,用连接实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,用直线把实体(或关系)与其属性连接起来。
5、状态转换图:初态、终态和中间态。
6、在一张状态图中只能有一个初态,终态有0至多个。初态用实心圆,终态用一对同心圆(内为实心圆),中间态用圆角矩形。
8、IPO图是输入、处理、输出图的简称,它是由美国IBM公司发展完善起来的一种图形工具,能够方便的描绘输入数据、对数据的处理和输出数据之间的关系。
9、从以下4个方面验证软件需求的正确性:(1)一致性 所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾(2)完整性 需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能(3)现实性 指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的(4)有效性 必须证明需求是正确有效的,确实能解决用户面对的问题
五
10、总体设计阶段主要内容:设计软件结构和设计数据库
11、耦合:耦合是对一个软件结构内不同模块之间互连程度的度量。
12、耦合设计原则:尽量少使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合13、内聚:内聚标志着一个模块内各个元素彼此结合的紧密程度。功能内聚10偶然内聚014、“高内聚,低耦合”
15、启发规则:(1)改进软件结构提高模块独立性(2)模块规模应该适中(3)深度、宽度、扇出和扇入都应适当【深度:表示软件结构中控制的层数,它往往能粗略的标志一个系统的大小和复杂程度;宽度:是软件结构内同一个层次上的模块总数的最大值;扇出:是一个模块直接控制的模块数目;扇入:表明有多少个上级模块直接调用它】(4)模块的作用域应该在控制域之内【模块的作用域:受该模块内一个判定影响的所有模块的集合。模块的控制域:是这个模块本身以及所有直接或间接从属于它的模块集合。】(5)力争降低模块接口的复杂程度(6)设计单入口单出口的模块(7)模块功能应该可以预测。
16、描绘软件结构的图形工具:层次图和结构图。
17、层次图用来描绘软件的层次结构(作为描绘软件结构的文档)。
18、信息流的两种类型:变换流和事务流
19、变换流:信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经过加工处理以后再沿输出通路变换成外部形式离开软件系统。当系统具有这些特征时,这种信息流就叫做变换流。
20、事务流:数据沿输入通路到达一个处理T,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行,这类数据成为事务流,处理T叫做事务中心。
六、详细设计
21、结构程序设计的经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。
七、实现
1、高级语言写程序比用汇编语言写程序生产率可以提高好几倍,而且高级语言写的程序容易阅读,容易
测试,容易调试,容易维护。所以高级语言明显优于汇编语言。
2、实现:编码和测试统称为实现。
3、编码:就是把软件设计结果翻译成用某种程序设计语言书写的程序
4、软件测试:是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。
5、测试的目的:在软件投入生产性运行之前,尽可能多的发现软件中的错误(发现软件中的错误)。
6、调试是在测试发现错误之后排除错误的过程。
7、软件测试的目标或定义:(1)测试是为了发现程序中的错误而执行程序的过程。(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案(3)成功的测试是发现了至今为止尚未发现的错误的测试。
8、测试的目的是暴露程序中的错误由程序的编写者自己进行测试是不恰当的,测试阶段通常由其他人员组成测试小组来完成测试工作。
9、逻辑覆盖:是对一系列测试过程的总称这组测试过程逐渐进行越来越完整的通路测试。
10、语句覆盖:选择足够多的测试数据,使被测程序中每个语句至少执行一次(语句覆盖是很弱的逻辑覆盖)。
11、判定覆盖(分支覆盖):不仅每个语句必须至少执行一次,而且每个判定的没种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。(比语句覆盖强)
12、条件覆盖:不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果(比判定覆盖强)。
13、判定/条件覆盖:选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果(有时不必条件判定强)。
14、条件组合覆盖:是更强的逻辑覆盖,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。
15、点覆盖:如果连通图G的子图G’是连通的,而且包含G的所有节点,则称G’是G 的点覆盖。(要求:选取足够多的测试数据,使得程序执行路径至少经过流图的每个节点一次(与语句覆盖标准相同)。)
16、边覆盖:如果连通图G的子图G”是连通的,而且包含G的所有边,则称G”是G 的点覆盖(要求:选取足够多的测试数据,使得程序执行路径至少经过流图中每条边一次(与判定覆盖相同)。)。
17、路径覆盖:选取足够多的测试数据,使程序的每条可能路径都至少执行一次。
18、控制结构测试包括:基本路径测试、条件测试、循环测试。
19、黑盒测试力图发现下述类型的错误:(1)功能不正确或遗漏了功能(2)界面错误(3)数据结构错误或外部数据库访问错误(4)性能错误(5)初始化和终止错误
20、黑盒测试外部,白盒测试内部。
八、维护
软件维护就是在软件已经交付使用后,为了改正错误或满足新的需要而修改软件的过程。
把诊断和改正错误的过程称为改正性维护。
适应性维护:为了和变化了的环境适当的配合而进行的修改软件的活动,是即必要有经常的维护活动。完善性维护、预防性维护。
第四篇:软件工程期末考试试题
一,单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。
1.可行性研究要进行一次_____需求分析。
A.详细的 B.全面的 C.简化的、压缩的 D.彻底的 2.系统流程图用于可行性分析中的_____的描述。
A.当前运行系统 B.当前逻辑模型 C.目标系统 D.新系统 3.系统流程图是描述_____的工具。
A.逻辑系统B.程序系统C.体系结构D.物理系统 4._______工具在软件详细设计过程中不采用。
A.判定表 B.IPO图 C.PDL D.DFD图 5.程序的三种基本控制结构是
A.过程、子程序和分程序 B.顺序、选择和重复
C.递归、堆栈和队列 D.调用、返回和转移 6.程序的三种基本控制结构的共同特点是
A.不能嵌套使用 B.只能用来写简单程序
C.已经用硬件实现 D.只有一个入口和一个出口 7.产生软件维护的副作用,是指
A.开发时的错误 B.隐含的错误
C.因修改软件而造成的错误 D.运行时误操作
8.维护中,因误删除一个标识符而引起的错误是_________副作用。
A.文档 B.数据 C.编码 D.设计 9.可维护性的特性中相互促进的是
A.可理解性和可测试性 B.效率和可移植性 C.效率和可修改性
D.效率和结构好
10.汽车有一个发动机。汽车和发动机之间的关系是_____关系。
A.一般具体 B.整体部分 C.分类关系 D.主从关系
11.在变更控制中,______可以用来确保由不同用户所执行的并发变更。
A.异步控制 B.同步控制 C.存取控制 D.基线控制
12.变更控制是一项最重要的软件配置任务,其中“检出”和______处理实现了两个重要的变更控制要素,即存取控制和同步控制。
A.登入 B.管理 C.填写变更要求 D.审查
13.提高软件质量和可靠的技术大致可分为两大类:其中一类就是避开错误技术,但避开错误技术无法做到完美无缺和绝无错误,这就需要
A.消除错误 B.检测错误 C.避开错误 D.容错 14._____是以提高软件质量为目的的技术活动。
A.技术创新 B.测试 C.技术创造 D.技术评审 15.面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;________;对象彼此之间仅能通过传递消息互相联系;层次结构的继承。
A.开发过程基于功能分析和功能分解 B.强调需求分析重要性
C.把对象划分成类,每个对象类都定义一组数据和方法 D.对既存类进行调整
16.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫()
A.生存期 B.面向对象设计 C.面向对象程序设计 D.面向对象分析
17.原型化方法是用户和设计者之间执行的一种交互构成,适用于______系统。
A.需求不确定性高的 B.需求确定的 C.管理信息 D.实时 18.原型化方法是一种_______型的设计过程。
A.自外向内 B.自顶向下 C.自内向外 D.自底向上 19.为了提高测试的效率,应该()A.随机地选取测试数据 B.取一切可能的输入数据作为测试数据
C.在完成编码以后制定软件的测试计划
D.选择发现错误可能性大的数据作为测试数据
20.使用白盒测试方法时,确定测试数据应根据_______和指定的覆盖标准。
A.程序的内部逻辑 B.程序的复杂结构 C.使用说明书 D.程序的功能
1.C[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。因此答案为C。
2.A[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。描述的对象是当前正在运行的系统,因此选择A。
3.C[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。
4.D[解析]详细描述处理过程常用三种工具:图形、表格和语言。其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。
5.B[解析]程序的三种基本控制结构是顺序、选择和循环(重复)。子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。6.D[解析]程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。三种结构可以写出非常复杂的程序,而且选择和循环都可以嵌套设计。
7.C [解析]因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用,包括编码副作用、数据副作用、文档副作用三种。只有答案C是正确的表述。
8.C[解析]编码副作用指的是在使用程序设计语言修改源代码时可能引入错误,比如删除或修改一个子程序、一个标号、一个标识符,改变程序代码的时序关系,修改文件的打开或关闭等。因此本题答案为C。
9.A [解析]软件的可维护性可用七个质量特性来衡量,分别是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。对于不同类型的维护,这些特性的侧重点也不相同,有一些可维护特性是可以相互促进的,比如可理解性和可测试性,可理解性和可修改性,另外一些则是相互矛盾的,如答案中的B效率和可移植性、C中的效率和可修改性。至于D中的结构好则不属于可维护性的特征。
10.B [解析]类有两种主要的结构关系,即一般——具体结构关系和整体——部分结构关系。前者称为分类结构,用来描述现实世界中的一般化的抽象关系。后者称为组装结构,用来描述现实世界中的类的组成的抽象关系。汽车和发动机的关系很明显,应该属于整体——部分关系。
11.B[解析]变更控制包括建立控制点和建立报告与审查制度,其过程中的“检出”和“登入”处理实现了存取控制和同步控制,存取控制管理各个用户存取和修改一个特定软件配置对象的权限,同步控制可用来确保由不同用户所执行任务的并发变更。
12.A[解析]“检出”和“登入”处理实现了两个重要的变更控制要素。具体说明见上题。
13.D[解析]提高软件质量和可靠性的技术大致可分为两类,一类是避开错误技术,即在开发的过程中不让差错潜入软件的技术,另一类是容错技术,即对某些无法避开的差错,使其影响减至最小的技术
14.D[解析]技术评审是以提高软件质量为目的的技术活动,是对软件本身的结构、与运行环境的接口、变更带来的影响等方面进行的评审活动。
15.C[解析]面向对象方法有四个特征,分别是对象唯一性、分类性、继承性和多态性。其中分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类,每个类是具有相同性质的个体集合,而每个对象相关类的实例,对象彼此之间通过传递消息互相联系。16.D[解析]面向对象的分析的过程就是认识客观世界的过程,其目的就是建立对客观世界的精确、简洁、可理解的正确模型,也就是所谓的建模。因此本题答案为D。
17.A[解析]原型不同于最终系统,它只实现所选择的部分功能,仅是为了试验或是演示而用,部分功能需求可以忽略或者模拟实现,因此适用于需求不确定性高的系统。
18.A[解析]原型化方法的基本思想是根据用户给出的基本需求,通过快速实现构造出一个小型的、可执行的模型,用户在计算机上实际运行这个用户界面原型,在试用过程中提出意见或建议,然后开发者再对原型进行改进。如此周而复始,逐步弥补不足之处,从而提高了最终产品的质量。它是一种自外向内的设计过程 19.D[解析]软件测试是为了尽可能多的发现程序中的错误,尤其是发现至今尚未发现的错误。在选取测试用例时,不可能进行穷举测试,在每一个细节进行测试,也不能无目的地随机选取测试数据,为了提高测试的效率,测试用例应该选择发现错误可能性大的部分,这样的测试结果才符合软件测试的目的。
20.A[解析]白盒测试是把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,由于白盒测试是一种结构测试,所以被测对象基本上是源程序,以程序的内部逻辑和指定的覆盖标准确定测试数据。二,填空题(本大题共10小题,每小题2分,共20分)
21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的()情况。
22.成本效益分析的目的是从()角度评价开发一个项目是否可行。
23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和()。
24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条()的边的路径。
25.汇编语言是面向()的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
26.在JSP方法中解决结构冲突的具体办法是()。
27.详细设计的任务是确定每个模块的内部特性,即模块的算法、()。
28.所有软件维护申请报告要按规定方式提出,该报告也称()报告。
29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提高维护的效率和质量的()技术。
30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:()、PASCAL语言、C语言和PL/1语言。
21.解:信息流动[解析]系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况。
22.解:经济[解析]成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行。
23.解:宽度优先策略[解析]渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块。它从主控模块开始,按照软件的控制层次结构,以深度优先或宽度优先的策略,逐步把各个模块集成在一起。
24.解:在其他独立路径中未有过[解析]在基本路径测试中,以详细设计或源程序为基础,导出控制流程图的拓扑结构——程序图,在计算了程序图的环路复杂性之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。
25.解:机器[解析]汇编语言属于低级语言,是一种面向机器的语言,它与高级语言相比有许多优越性:如操作灵活,可以直接作用到硬件的最下层,完成与外部设备的接口工作等,是能够利用计算机硬件特性直接控制硬件设备的唯一语言。
26.解:中间数据结构或中间文件[解析]JSP方法是面向数据结构的设计方法。它定义了一组以数据结构为指导的映射过程,根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,在JSP方法中解决结构冲突的具体办法是引入中间数据结构或中间文件,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。
27.解:使用的数据[解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。
28.解:软件问题[解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。29.解:维护支援[解析]面向维护的技术涉及软件开发的所有阶段,能够减少软件错误,提高软件的可维护性。而维护支援技术则包含信息收集,错误原因分析,维护方案评价等项,是在软件维护阶段用来提高维护效率和质量的技术。30.解:FORTRAN语言[解析]计算机语言根据不同行业的需求,使用的侧重点也不尽相同,在办公管理方面,一些数据库语言如FOXPRO、ORICAL有很多的应用,在工程行业,计算机语言的科学计算能力就显得格外重要,如MATLAB、PL/
1、FORTRAN语言都是工程计算中常用的语言。
三,名词解释(本大题共5小题,每小题3分,共15分)
31.经济可行性
解:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。[解析]对于一个系统所必须要衡量的是经济上是否合算,经济可行性的范围很广,包括效益分析、潜在市场前景等。
32.社会可行性
解:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。[解析]社会可行性包括合同、责任、侵权等技术人员不甚了解的诸多问题。
33.投资回收期
解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间。[解析]通常我们用投资回收期来衡量一个开发项目的价值,投资回收期越短,就越快获得利润。
34.对应关系 解:即有直接因果关系在程序中可以同时处理。[解析]对应关系是指数据单元在数据内容上、数量上和顺序上有直接的因果关系,对于重复的数据单元,重复的次序和次数都相同才有对应关系。
35.结构冲突 解:输入数据与输出数据结构找不到对应关系的情况,称为结构冲突。[解析]使用JSP方法时会遇到此类结构冲突问题,对此,Jackson提出了引入中间数据结构或中间文件的办法,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。四,简答题(本大题共4小题,每小题5分,共20分)
36.可行性研究报告的主要内容有哪些?
解:一个可行性研究报告的主要内容如下:(1)引言:说明编写本文档的目的;项目的名称、背景;本文档用到的专门术语和参考资料。
(2)可行性研究前提:可行性研究前提。说明开发项目的功能、性能和基本要求;达到的目标;各种限制条件;可行性研究方法和决定可行性的主要因素。(3)对现有系统的分析:说明现有系统的处理流程和数据流程;工作负荷;各项费用支出;所需要各类专业技术人员的数量;所需要各种设备;现有系统存在什么问题。(4)所建议系统的技术可行性分析:所建议系统的简要说明;处理流程和数据流程;与现有的系统比较的优越性;采用所建议系统对用户的影响;对各种设备、现有软件、开发环境、运行环境的影响;对经费支出的影响;对技术可行性的评价。
(5)所建议系统的经济可行性分析:说明所建议系统的各种支出,各种效益;收益投资比;投资回收周期。
(6)社会因素可行性分析:说明法律因素,对合同责任、侵犯专利权、侵犯版权等问题的分析;说明用户使用可行性,是否满足用户行政管理、工作制度、人员素质的要求。
(7)其他可供选择方案:逐一说明其他可供选择的方案,并说明未被推荐的理由。
(8)结论意见:说明项目是否能开发;还需要什么条件才能开发;对项目目标有什么变动等。
[解析]做软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发,其中的问题能否解决,报告共分为八个基本内容。
37.系统设计的内容是什么?
解:系统设计阶段先从高层入手,然后细化。系统设计要决定整个结构及风格,这种结构为后面设计阶段的更详细策略的设计提供了基础。
(1)系统分解。系统中主要的组成部分称为子系统,子系统既不是一个对象也不是一个功能,而是类、关联、操作、时间和约束的集合。每次分解的各子系统数目不能太多,最底层子系统称为模块。
(2)确定并发性。分析模型、现实世界及硬件中不少对象均是并发的。系统设计的一个重要目标就是确定哪些是必须同时动作的对象,哪些不是同时动作的对象。后者可以放在一起,而综合成单个控制线或任务。
(3)处理器及任务分配。各并发子系统必须分配给单个硬件单元,要么是一个一般的处理器,要么是一个具体的功能单元,必须完成下面的工作:估计性能要求和资源需求,选择实现子系统的硬软件,将软件子系统分配给各处理器以满足性能要求和极小化处理器之间的通信,决定实现各子系统的各物理单元的连接。(4)数据存储管理。系统中的内部数据和外部数据的存储管理是一项重要的任务。通常各数据存储可以将数据结构、文件、数据库组合在一起,不同数据存储要在费用、访问时间、容量以及可靠性之间做折中考虑。
(5)全局资源的处理。必须确定全局资源,并且制定访问全局资源的策略。全局资源包括:物理资源,如处理器、驱动器等;空间,如盘空间、工作站屏等;逻辑名字,如对象标识符、类名、文件名等。
如果资源是物理对象,则可以通过建立协议实现对并发系统的访问,以达到自身控制;如果资源是逻辑实体,如对象标识符,那么在共享环境中有冲突访问的可能,如独立的事务可能同时使用同一个对象标识符,则各个全局资源都必须有一个保护对象,由保护对象来控制对该资源的访问。
(6)选择软件控制机制。分析模型中所有交互行为都表示为对象之间的事件。系统设计必须从多种方法中选择某种方法来实现软件的控制。(7)人机交互接口设计。设计中的大部分工作都与稳定的状态行为有关,但必须考虑用户使用系统的交互接口。
[解析]系统设计是问题求解及建立解答的高级策略。必须制定解决问题的基本方法,系统的高层结构形式包括子系统的分解、它的固有并发性、子系统分配给硬软件、数据存储管理、资源协调、软件控制实现、人机交互接口。
38.什么是软件危机?软件危机的表现是什么?其产生的原因是什么?
解:软件发展第二阶段的末期,由于计算机硬件技术的进步,计算机运行速度、容量、可靠性有显著的提高,生产成本显著下降,这为计算机的广泛应用创造了条件。一些复杂的、大型的软件开发项目提出来了,但是,软件开发技术的进步一直未能满足发展的需要。在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。
软件危机表现在以下四个方面:
(1)经费预算经常突破,完成时间一再拖延。由于缺乏软件开发的经验和软件开发数据的积累,使得开发工作的计划很难制定。主观盲目制定计划,执行起来与实际情况有很大差距,使得开发经费一再突破。由于对工作量估计不足,对开发难度估计不足,进度计划无法按时完成,开发时间一再拖延。(2)开发的软件不能满足用户要求。开发初期对用户的要求了解不够明确,未能得到明确的表达。开发工作开始后,软件人员和用户又未能及时交换意见,使得一些问题不能及时解决,导致开发的软件不能满足用户的要求,因而导致开发失败。(3)开发的软件可维护性差。开发过程中没有同意的、公认的规范,软件开发人员按各自的风格工作,各行其是,开发过程无完整、规范的文档,发现问题后进行杂乱无章的修改。程序结构不好,运行时发现错误也很难修改,导致维护性差。(4)开发的软件可靠性差。由于在开发过程中,没有确保软件质量的体系和措施,在软件测试时,又没有严格的、充分的、完全的测试,提交给用户的软件质量差,在运行中暴露出大量的问题。
造成软件危机的原因是:(1)软件的规模越来越大,结构越来越复杂。(2)软件开发管理困难而复杂。(3)软件开发费用不断增加。(4)软件开发技术落后。(5)生产方式落后。(6)开发工具落后,生产率提高缓慢。
[解析]由于软件危机的出现,人们才开始用工程化的思想来开发软件,从此,软件生产才步入了软件工程时代。
39.软件质量保证应做好哪几方面的工作?
解:软件质量保证是软件工程管理的重要内容,软件质量保证应做好以下几方面的工作:
(1)采用技术手段和工具。质量保证活动要贯彻开发过程始终,必须采用技术手段和工具,尤其是使用软件开发环境来进行软件开发。(2)组织正式技术评审。在软件开发的每一个阶段结束时,都要组织正式的技术评审。国家标准要求单位必须采用审查、文档评审、设计评审、审计和测试等具体手段来保证质量。(3)加强软件测试。软件测试是质量保证的重要手段,因为测试可发现软件中大多数潜在错误。(4)推行软件工程规范(标准)。用户可以自己制定软件工程规范(标准),但标准一旦确认就应贯彻执行。(5)对软件的变更进行控制。软件的修改和变更常常会引起潜伏的错误,因此必须严格控制软件的修改和变更。(6)对软件质量进行度量。即对软件质量进行跟踪,及时记录和报告软件质量情况。
[解析]软件的质量保证是向用户及社会提供满意的高质量的产品,确保软件产品从诞生到消亡为止的所有阶段的质量的活动,是软件工程管理中的重要内容。五,论述题(本大题共3小题,第40小题7分,第41小题8分,第42小题10分,共25分)
40.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。
解:PDL语言:
N=1
WHILE N<=10 DO
IF A(N)<=A(N+1)MAX =A(N+1);
ELSE MAX =A(N)ENDIF;
N=N+1;
ENDWHILE;
PAD图:
[解析]人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。41.根据下列条件使用等价类划分法设计测试用例。
某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065
解:(1)划分等价类并编号,如下表示:(4分)
(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子(2分)
(3)为不合理等价类测试用例,至少设计一个测试用例(2分)
[解析]等价类划分属于黑盒测试的一种,它将输入数据域按有效的或无效的划分成若干个等价类,测试每个等价类的代表值就等于对该类其他值的测试,这样用少量有代表性的例子代替大量测试目的相同的例子,可以有效提高测试效率。本题划分了3个合理等价类,9个不合理等价类进行测试,取到了预期的效果。
42.某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一个计算机辅助企业管理系统,其中:
生产科的任务是:
(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。
(2)根据车间实际生产日报表、周报表调整月生产计划
(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。
(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间
技术科的任务是:
(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。
(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。试写出以上系统中生产科和技术科处理的软件结构图。
解:
画出生产科图的给6分,画出技术科的给4分。
[解析]软件结构图是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系,软件结构往往用树状或网状结构的图形来表示,其主要内容有模块及模块的控制关系,根据题意,可绘制出生产科和技术科的软件结构图,其中生产科的结构图深度和宽度均为4,技术科的结构图的深度和宽度均为3。
第五篇:软件工程 期末考试 名词解释
面向对象建模及它们之间的关系:对象建模:定义了做事情的实体;动态模型:明确规定了什么时候做;功能模型:指明了应该做什么;他们相互补充,相互配合。对象模型是最基本最重要的,他为其他两种模型奠定了基础,我们依靠对象模型完成了3种模型的集成软件工程定义:1把系统的,规范的,可度量的途径应用于软件开发,运行和维护过程,也就是把工程应用于软件;2研究1中提到的的途径
软件生命周期各阶段的基本任务:问题定义;可行性研究;需求分析;总体设计;详细设计;编码和单元测试;综合测试;软件维护
软件过程定义:软件过程是为了获得高质量软件所需要完成的一系列任务的框架,他规定了完成各项任务的工作步骤
生命周期:它规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,也称过程模型
生命周期/过程模型:瀑布模型;快速原型模型;增量模型;螺旋模型
可行性研究过程步骤:1复查系统规模和目标;2研究目前正在使用的系统;3导出新系统的高层逻辑模型;4进一步定义问题;5导出和评价供选择的解法;6推荐行动方针;7草拟开发计划;8书写文档提交审查 系统流程图定义:它是概括地描绘物理系统的传统工具
数据流图DFD定义:它是一种图形化技术,他描绘信息流和数据从输入移动到输出地过程中所经受的变换 符号:数据流图有4种基本符号:正方形表示数据原点或终点;圆角矩形或圆形代表变换数据和处理;开口矩形代表数据存储;箭头表示数据流,即特定数据的流动方向
典型总体设计过程的9个步骤:1设想供选择的方案;2选取合理的方案;3推荐最佳方案;4功能分解;5设计软件结构;6设计数据库;7制定测试计划;8书写文档(系统说明;用户手册;测试计划;详细实现计划;数据库设计结果);9审查和复审
模块独立程度的定性标准度量:1耦合:对一个软件结构内不同模块之间互联程度的度量;2内聚:它标志一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然拓展
结构程序设计经典定义:如果一个程序的代码块仅仅通过顺序,选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的人机界面设计,设计指南:1一般交互指南;2信息显示指南;3数据输入指南
程序流程图:又称程序框图,优点:对控制流程的描绘很直观,便于初学者掌握;缺点:1程序流程图本质上不是逐步求精的好工具,他透使程序员过早地考虑程序的控制流程而不去考虑程序的全局结构;2程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计精神随意转移控制;3程序流程图不易表示数据结构
盒图:又称S-N图,特点:1功能域明确,可以从盒图上一眼就看出来;2不可能任意转移控制;3很容易确定局部和全程数据的作用域;4很容易表现嵌套关系,也可以表示模块的层次结构
Jackson图:1顺序结构:数据由一个或多个数据元素组成,每个元素按确定次序出现一次;2选择结构:数据包含两个或多个数据元素,每次使用这个数据时按一定条件从这些数据元素中选择一个;3重复结构:重复结构的数据,根据使用时的条件由一个数据元素出现零次或多次构成Jackson图的优点:1便于表示层次结构,而且是对结构进行自顶向下分解的有力工具;2形象直观可读性好;3技能表示数据结构也能表示程序结构
计算环形复杂度的方法:1流程图中的区域数等于环形复杂度;2流程G的环形复杂度V(G)=E-N+2,其中E是流程图中边的条数,N是结点数;3流程G的环形复杂度V(G)=P+1,其中P是流程图中判定结点的数目
程序编码的风格应遵循的规则:1程序内部文档;2数据说明;3语句构造;4输入输出;5效率
软件测试的目标(定义):1测试是为了发现程序中的错误而执行的过程;2好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;3成功的测试是发现了至今为止尚未发现的错误的测试
测试的目标:暴露程序中的错误
软件测试的准则:1所有测试都应该能追述到用户需求;2应该远在测试开始之前就制定出测试计划;3把
Pareto原理应用到软件测试中;4应该从小规模测试开始,并逐步进行大规模测试;5穷举测试是不可能的;6为了达到最佳测试效果,应从独立的第三方从事测试工作
测试方法:1白盒测试即结构测试;2黑盒测试即功能测试
测试步骤(先后顺序):1模块测试;2子系统测试;3系统测试;4验收测试;5平行测试
软件维护的定义:在软件应经交付使用之后,为了改正错误或满足新需要而修改软件的过程
软件的可维护性定义:维护人员理解,改正,改动或改进这个软件的难易程度
决定软件可维护的5个因素:1可理解性;2可测试性;3可修改性;4可移植性;5可重用性
面向对象方法学的优点:1与人类习惯的思维方式一致;2稳定性好;3可重用性好;4轻易开发大型软件产品
启发规则:1设计结果应该清晰易懂;2一般到特殊结构的深度适当;3设计简单的类;4使用简单的协议;5使用简单的服务;6把设计变动减成至最小
软件重用:也叫再用或复用,是指同一事物不做修改或稍加改动就多次重复使用
软件重用的三个层次:1知识重用;2方法和标准重用;3软件成分重用
软件维护的特点:1结构化维护和非结构化维护差别巨大;2维护代价高昂;3维护的问题很多
需求分析任务:确定对系统的综合要求;分析系统的数据要求;导出系统的逻辑模型;修正系统的开发计划
验证软件需求:一致性;完整性;现实性;有效性
黑盒测试力图发现下述类型错误:功能不正确或遗漏了功能;界面错误;数据结构错误或外部数据库访问错误;性能错误;初始化和终止错误
黑盒测试满足标准的测试用例集:所设计出的测试用例能减少为达到合理测试所需要设计的测试用例的总数;所设计出的测试用例能告诉我们能否存在某些类型的错误,而不仅仅指出与特定测试相关的错误是否存在1在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调软件开发,并使混乱减到最低程度。
2规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。
3McCall提出的软件质量模型包括11个软件质量特性。
4软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
5为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
6程序设计语言的心理特性主要表现在歧义性、简洁性、传统性、局部性和顺序性。
7软件结构是以模块为基础而组成的一种控制层次结构。
8在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树。
9结构化语言是介于自然语言和形式语言之间的一种半形式语言。
10若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P= F/(1+(n*i))
11软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。0101
12高级语言:独立于机器,面向过程或面向(对象)0101
13软件项目管理的范围主要集中于3个P上,即:People人员、Problem问题和(过程)。0201 14人机界面的风格第一代界面是命令和(询问)方式。1202
15由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。1504
16在公式V(G)= E – N + 2中:E为程序图G中边的总数; N 为程序图中结点的总数。V(G)又称为图G的环形(复杂度)0204。
17任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将系统转成一个信息变换模型
18为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除„?”。1204
19文档是一种数据媒体和其上所记录的(数据)。0101
20文档(document)—一种数据媒体和其上所记录的(数据)。0101
21机器语言、汇编语言:依赖于机器,面向(机器)0101
22软件有效性(efficiency),指软件系统的时间和(空间)效率。0103
23软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。0103
24软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。0103
25为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。0402
一个软件的深度是指其控制的(层数)。0801
26以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫(编码)过程。1301
27软件维护是软件生命周期的(最后)一个阶段。1501
28软件的可互操作性,是指多个软件元素相互(通信)并协同完成任务的能力。0201
29第三代语言也称为(高级)语言。1301
30软件测试是软件投入运行(前),对软件需求分析、设计、实现的强有力的最终审查。1401
31黑盒测试主要是测试软件是否满足(功能)需求。1402
32(调试)的目的是确定错误的位置和引起错误的原因,并加以改正。因此,又称为排错或纠错。1404 33软件工程由方法、工具和(过程)三部分组成,称软件工程的三要素。0101
34软件可追踪性(traceability),是指根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行(逆向)追踪的能力。0103
35瀑布模型是由W.Royce于1970年提出来的。又称为软件(生存周期)模型。0104
36程序设计语言的(可维护)性通常指这种语言编写的程序被理解,被修改及调整和改进的难易程度。1302 37软件工程由方法、(工具)和过程三部分组成,称软件工程的三要素。0101
38软件可理解性,指系统具有清晰的结构,能直接反映问题的(需求)。0103
39在实体-关系图简称E-R图中,数据对象实体用长方形、关系用(菱形)、属性用椭圆表示。0502
40建立数据流模型要遵循的原则包括:每个加工至少应有一个输入数据流以反映被处理数据的来源和一个(输出)数据流来反映加工的结果。0503
41从工程管理的角度软件设计可分为概要设计和(详细)设计两大步骤。0801
42通过向用户提供视觉和听觉上反馈,保持用户与界面间的双向通信,是提高界面可(交互)性的措施之一 43程序设计语言的可靠性是指程序设计语言本身不出错或对错误的(纠正)能力。1302
44对发现错误较多的程序模块,应进行(重点)测试。1401
45测试用例中,不仅要选择合理的输入数据,还要选择(不合理)的输入数据。
46软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。0103
47基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。0301
48数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分别表示数据流、转换、(数据源)以及外部实体。0501
49被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生类子类。0701
50流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基本控制构件。0802 51机器语言和汇编语言,也称为(低级)语言。1301
52软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。1401
53动态测试有两种测试方法:黑盒测试和(白盒)测试。1401
54软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误、改进性能等属性、适应环境变化等方面工作的(难易)程度。0103