软件工程0Word文件下载.docx
《软件工程0Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件工程0Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
![软件工程0Word文件下载.docx](https://file1.bdocx.com/fileroot1/2023-2/4/2abf6b7d-8d98-4831-ae05-4304a427bc19/2abf6b7d-8d98-4831-ae05-4304a427bc191.gif)
10:
78.结构化程序设计就是要()
1.①保留goTo语句2.②取消前转goTo语句3.③限制goTo语句的使用4.④取消后转goTo语句
11:
89.若要保证开发出来的软件局部优化,而且能尽早发现设计上的错误,应采用()
1.①自顶向下的开发方法2.②自底向上的开发方法
4.④非渐增式的开发方法
12:
软件工程的七条基本原理中有一条是“坚持进行阶段评审”,要这么做的理由有
(1)。
①大部分错误是在编码之前造成的
②在软件开发过程中插入阶段评审是为了张弛有度、提高开发效率③错误发现得越晚,所付出的修正代价越高④为了便于控制开发进度1.供选择的答案:
1.A.①②2.b.①③3.c.②④4.D.③④
13:
76.软件的开发模式有()
1.①面向过程模式、面向对象模式、混合模式2.②变换模式、渐增模式、瀑布模式3.③自顶向下模式、自底向上模式、关系模式4.④分步模式、渐增模式、非渐增模式
14:
80.V(g)=m-n+p中的p取3意味着()
1.①软件有三个模块2.②软件有两个子程序3.③主程序中含两个子程序
15:
82.模块的初始化工作和模块处理意外故障均属于()
1.①时间内聚2.②顺序内聚3.③功能内聚4.④逻辑内聚
16:
81.在数据流图中,源点和终点的数量()
1.①必须是一对一的2.②源点个数大于终点个数3.③终点个数大于源点个数4.④依需要而定
17:
83.hIpo的含义是()
1.①层次、输入、处理、输出2.②高速、信息、程序、目标3.③顶层的Ipo图
4.④关于输入、处理、输出的层次
18:
cmu/seI推出的
(2)将软件组织的过程能力分为五个成熟度级别,每一个级别定义了一组过程能力目标,并描述了要达到这些目标应该具备的实践活动。
篇二:
软件工程复习提纲
?
1.什么是软件?
是一系列按照特定顺序组织的计算机数据和指令的集合,包括程序、数据和文档。
附:
软件的特征:
成本高、风险大、维护困难
2.什么是软件危机,其内容主要是指什么?
原因:
1、与软件本身的特点有关;
2、与软件开发人员有关;
定义:
在计算机软件开发和维护过程中所遇到的一系列严重的问题。
1)对软件开发成本和进度的估计常常不准确。
2)用户对“已完成”系统不满意的现象经常发生。
3)软件产品的质量不可靠。
4)软件的可维护程度非常之低。
5)软件通常没有适当的文档资料。
6)软件的成本不断提高。
7)软件开发生产率无法满足人们对软件的生产要求,软件开发生产率的提高落后于硬件的发展。
3.什么是软件工程?
开发、运行和维护软件的系统方法
软件工程主要研究软件生产的客观规律性,建立与系统化软件生产有关
的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以期达到降低软件生产成本、改进软件产品质量、提高软件生产率水平的目标。
4.软件工程的目标(pp.41)及其组成部分。
方法、工具和过程。
软件工程的目标是:
在给定成本、进度的前提下,开发出具有适用性、
有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。
方法:
是指产生某些结果的形式化过程,
工具:
是用更好的方式完成某件事情的设备或自动化系统,如各种集成开
发环境、编译工具、测试工具等。
过程:
生产特定产品的工具和技术的结合
软件工程方法学包含3个要素:
5.软件开发方法的定义。
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学。
比如sAsD方法、面向对象的软件开发方法。
6.好的软件的一些主要衡量指标。
例如mccall的质量模型。
(1)质量,它的衡量:
产品的质量、过程的质量、商业环境背景下产品的质量。
mccall的质量模型:
开发团队的成员
需求分析员:
与客户合作,确定并文档化客户需求
设计人员:
生成系统描述:
系统要做什么
程序员:
编写事先指定需求的代码
测试人员:
发现错误
培训人员:
向用户说明如何使用这个系统
维护小组:
修复系统验收之后出现的错误
资料管理员:
准备和存储软件需求文档等
配置管理团队:
保持各工件之间的通信
第二章
1.什么是软件生命周期?
主要分为哪些阶段?
各个阶段的主要任务及产生的主要制品?
当过程是在开发软件产品时,把这种软件开发过程称为软件生命周期。
阶段:
(1)可行性研究与计划
任务:
对于问题是否有行得通的解决方法(技术、经济、操作、社会)
制品:
可行性论证报告
初步的项目开发计划
(2)需求分析
为了解决这个问题,目标系统必须做什么
软件需求规格说明书
(3)总体(概要)设计
概括地说,应该怎样实现目标系统
概要设计规格说明书
数据库或数据结构设计说明书
集成测试计划
(4)详细设计
应该怎样具体地实现这个系统
详细设计规格说明书
单元测试计划
(5)实现
写出正确的容易理解、容易维护的程序模块
源程序代码
(6)集成测试
根据概要设计规格说明书,将经过单元测试的模块逐步进行集成和测试
生成满足概要设计要求、可运行的系统源程序和系统集成测试报告
(7)确认测试
根据软件需求规格说明书,测试软件系统是否满足用户的需求
可供用户使用的软件产品(文档,源程序)
(8)使用和维护
通过各种必要的维护活动使系统持久地满足用户的需要
版本更新的软件产品
2.需求分析的定义。
–确定用户对待开发软件系统的需求包括:
功能
性能
运行环境约束
3.典型的软件开发过程模型的特点(优缺点)及要求,特别是原型法、瀑布模型、增量和迭代等
(1)瀑布模型:
需求分析->
系统设计->
程序设计->
编码->
单元测试和集成测试->
系统测试->
验收测试->
运行和维护;
优点:
采用规范的方法;
严格规定每个阶段提交的文档;
要求每个阶段交出的产品必须经过验证;
缺点:
对如何处理开发中产品和活动的变化没有提供相关的指导
将软件开发视为制造而不是创造
创造一个产品没有迭代的活动
需要等待很长时间
(2)V模型:
用单元测试验证程序设计
用系统测试验证系统设计
用验收测试验证需求
如果在验证和确认过程中发现了问题,那么在再次执行右边的测试步骤之前,重新
执行左边的步骤以修正左边
(3)原型化模型:
允许需求或设计反复调查
减少开发中的风险和不确定性
原型模型存在的问题
⑴为了使原型尽快的工作,没有考虑软件的总体质量和长期的可维护性。
⑵为了演示,可能采用不合适的操作系统、编程语言、效率低的算法,
这些不理想的选择成了系统的组成部分。
⑶开发过程不便于管理。
(3)增量开发:
先定义一个小的功能子系统,再在每个新的发布中增加新功能
迭代开发:
一开始就提交完整的系统,再在每一个新的发布中改变每个子系统的功能?
减少循环时间
系统一部分一部分地交付
两个系统功能可以并行
4.原型法的特点以及分类:
探索型原型、实验型原型和演化型
原型法定义
原型法是指在获取一组基本的需求定义后,利用高级软件工具可视化的开发环境,快速地建立一个目标系统的最初版本,并把它交给用户试用、补充和修改,再进行新的版本开发。
反复进行这个过程,直到得出系统的“精确解”,即用户满意为止。
演化型原型
–不仅帮我们回答问题,而且还要演变为最终产品
–原型必须展现最终产品的质量需求,并且这些质量的要求不能改进
5.极限编程的特点
–交流:
保持客户和开发者的交换看法
–简单性:
选择简单设计和实现
–勇气:
尽早并经常性交付功能(敢于承诺并信守诺言)
–反馈:
开发过程中各种活动循环
第三章
1.了解项目计划和管理的主要内容和常用的方法。
ppt71到81
2.软件可行性研究的内容。
技术、经济、操作、社会四个可行性
3.估算工作量的主要方法:
代码行、任务分解技术、自动估算成本技术。
1)代码行技术
软件成本=每行代码的平均成本×
估计的源代码总行数
估算方法:
由多名有经验的软件工程师分别做出估计。
每个人都估计程序的最小规模(a)、最大规模(b)和最可能的规模(m),
分别算出这3种规模的平均值、和之后,再用下式计算程序规模的估计值:
L=(a的平均值+4*m的平均值+b的平均值)/6
单位:
Loc或KLoc。
代码行技术的优点:
代码是所有软件开发项目都有的“产品”,而且很容易计算代码行数;
有大量参考文献和数据。
代码行技术的缺点:
源程序仅是软件配置的一个成分,由源程序度量软件规模不太合理;
用不同语言实现同一个软件所需要的代码行数并不相同;
不适用于非过程性语言。
篇三:
软件工程职业生涯规划
职业规划设计书制作人:
***
姓名:
性别:
*
民族:
所在学院:
****学院
专业班级:
学号:
201*******
联系地址:
联系方式:
电子邮箱:
一、自我分析
二、环境分析
三、职业定位
四、工作计划
五、评估调整
引言
古语有云“凡事预则立,不预则废”。
作为当代大学生,我们面临着巨大的就业压力;
同时,我们接受高等的素质教育,担负报答父母、建设祖国的责任;
因此,我们更有理由为自己的四年大学生活作出规划,为将来的职业生涯作出规划。
1、气质评定
具有较强的应变能力,善于处理各种复杂的情况在处理个方面问题时考虑周全,踏实肯干,具有较强的坚持性,与他人交往适度,既让人感到亲切又保持一定距离。
2霍兰德职业性测试
e(事业型)进取心强,勇于开拓勇挑重担,喜欢支配别人,具有领导才能,喜欢竞争,精力充沛,自信善于交际。
s(社会性)喜欢与人打交道,善于交际。
3360度评价
家人评价:
有责任感,诚实守信,学习刻苦,自控能力较差,胆小老师评价:
做事有条理,虚心好学,善于吸收别人的优点,太过坚持自己的想法,不能当机立断。
同学评价:
乐于助人,不怕辛苦,不怕困难。
过于拘谨。
自我评价:
有责任感,有一定的洞察能力,善于进行沟通。
有良好的团队合作精神,临场应变能力较差,表达能力不强,做事恒心不足。
自我分析小结:
总结来说,我是个外向开朗、乐于沟通、善于学习并且处事条理的人;
我认为我的个性与能力使我适合较为多样的工作类型。
1、家庭环境分析
我的家庭很一般,家里收入一般,我之前并没有接触过与现在所学专业相关的东西,也没有特殊的家庭背景。
由于家庭气氛比较和谐,让我无形中更懂得如何与人相处,这样潜移默化的让我也能更认真的对待生活,工作中的事情。
2、学校环境分析
我所在的学校是一个普通的二本院校,隶属于中国安全质量监督管理总局,也是一所部委高校,我相信,在学校前途一片大好的大环境下,我自身也会有很好的发展。
学校是一个小社会,在这里,我们要处理很多的人际关系,与周围的同学相处的能力就很能体现一个人自身与他人的沟通交流能力。
学校的学生来自于全国各地,我们能通过对不同生活背景,不同生活习惯的人交往来锻炼自己的与人交往能力。
3、社会环境分析
随着科学技术的发展,所有大型企业都开始进行智能化改革,所有企业都需要网络人来来设计,管理。
这就为我们提供了广阔的就业天地。
现在信息化浪潮正在席卷全球,新经济的发展和经济全球化都必须依