软件工程基础知识1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.3各活动阶段主要文档
4.3.1可行行分析和项目开发计划
可性行研究报告
项目开发计划
4.3.2需求分析中的文档
需求规格说明书
初步用户使用手册
确认测试计划
修改完善的软件开发计划
4.3.3概要设计阶段文档
概要设计说明书
数据库说明书
用户手册
修订的测试计划(测试的策略、方法、步骤)
4.4.4详细设计阶段
详细设计说明书
优点:可强迫开发人员采用规范的方法,严格规定了各阶段必须提交的文档;要求每一阶段结束后,都要进行严格的评审。及它最相适应的开发方法是结构化方法。
缺点:不适应用户需求的改动。
5.2原型模型
5.2.1快速原型模型
快速原型的用途是获知用户的真正需求,一旦需求确定了,原型即被抛弃。主要用于需求分析阶段。
不追求也不可能要求对需求的严格定义,而是采用了动态定义需求的方法,所以不能定义完善的文档。
5.2.3增量模型
增量模型主要用于设计阶段,把软件产品划分为一系列的增量构件,分别进行设计、编程、集成和测试。新的增量构件不得破坏已经开发出来的产品。
5.2.4原型模型小结
从下面的有关原型化方法的叙述中,选择出正确的叙述:
(1)快速原型方法是一种企图克服传统软件周期模型缺点的开发方法。
(2)在用户的数据资源没有得到很好地组织和管理的时候,应该使用原型化方法。
CMM1.1的5个等级(由低级到高级):
初始级
软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力,管理是反应式(消防式)的。
可重复级
建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功。
Baidu Nhomakorabea已定义级
已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准化软件过程。所有项目均使用经标准、裁减的标准软件过程来开发和维护软件。
特征:简化项目管理、尽快建立初步需求、加强用户参及和决策。
具有广泛技能水平的原型化人员是原型实施的重要保证。原型化人员应该是具有经验及才干、训练有素的专业人员。衡量原型化人员能力的重要标准是他是否能够从用户的模糊描述中快速获取需求。
5.2.2演化模型
在快速原型模型中,原型的用途是获知用户的真正需求,一旦需求确定了,原型即被抛弃。而演化模型应用于整个软件开发过程,是从初始模型逐步演化为最终软件产品的渐进过程。也就是说,快速原型模型是一种“抛弃式”的原型化方法,而演化模型则是一种“渐进式”的原型化方法。
(9)采用原型化方法时,软件的开发成本较高。
(10)采用原型化方法时,关键的因素是建立原形的速度,而不是原形运行的效率。
5.3螺旋模型
螺旋模型综合了瀑布模型和原型模型中的演化模型的优点,还增加了风险分析。螺旋线第一圈的开始点可能是一个概念项目。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直转到软件生命期结束。
4.4.5系统测试阶段
系统测试计划文档
五.有哪些主要生存期模型?
瀑布模型、原型开发模型(快速原型模型、演化模型、增量模型)、螺旋模型、喷泉模型、
5.1瀑布模型
瀑布模型(传统的软件周期模型)严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一阶段,整个模型就像一个飞流直下的瀑布。
软件开发所使用的方法和技术。
三.有哪些软件工程方法学及其要素?
1.使用最广泛的软件工程方法学是结构化方法学和面向对象的方法学。
2.要素:方法、工具和过程。
四.什么是软件生存周期?有哪些活动?
4.1软件生存周期
一个软件从提出开发要求开始到软件废弃不用的整个过程。
4.2开发活动
可行性分析和项目开发计划、需求分析和定义、软件设计(先后细分为:概要设计和详细设计)、编码、测试和运行维护
软件工程基础知识
一.什么是软件?
1.满足功能要求和性能的指令或计算机程序集合;
2.处理信息的数据结构;
3.描述程序功能以及程序如何操作和使用所要求的文档;
二.软件危机以及产生软件危机的原因?
1.软件开发生产率提高的速度,远远跟不上计算机迅速普及的趋势。软件产品“供不应求”。
2.软件成本在计算机系统总成本中所占的比例逐年上升。
5.4喷泉模型
喷泉模型主要用于描述面向对象的开发过程。喷泉一词体现了面向对象开发过程的迭代和无间隙特征。
六.软件过程基础知识
6.1软件过程
软件过程是指人们用于开发和维护软件及相关产品的一系列活动,包括软件工程过程和软件管理过程。
6.2评估工具
软件过程的评估,通常采用软件能力成熟度
模型(Capability Maturity Model,CMM)。
7.1时间管理
7.1.1 Gantt图
是一种简单的水平条形图,它以水平线段表示子任务的工作阶段,线段的起点和终点分别对应着子任务的起始时间,线段长度指示完成该任务所需要的时间。
甘特图的优点:直观简明、易学易绘、可从图上清楚地标出子任务间的时间对比,但它也有
缺点:
(a)不能显示地描绘各项彼此间的依赖关系;
已管理级
收集对软件过程和产品质量的详细度量,对软件过程和产品都有定量的理解及控制。
优化级
加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能持续不断地改进。
七.软件工程项目管理基本知识
软件项目管理开始于任何技术活动之前,并且贯穿于整个的软件生命周期。
软件工程项目管理一般分为时间管理、成本管理、人力资源管理、风险管理。
(3)在用户没有明确地肯定其需求的时候,应该使用原型化方法。
(4)在用户不希望把自己的时间花在软件开发过程中的时候,应该使用原型化方法。
(5)使用原型化方法时应该使用第三代编程语言。
(6)原型化加强了开发过程中用户的参及和决策。
(7)原型化方法大致可分为三类:抛弃式、演化式和递增式。
(8)原型化方法大致可分为演化式和递增式。
3.软件开发人员和用户之间的信息交流往往很不充分,用户对“已完成的”的软件系统不满足的现象经常发生。
4.软件产品的质量不容易保证。
5.软件产品常常是不可维护的。
6.软件产品的重用性差,同样的软件多次重复开
发。
7.软件通常没有适当的文档资料。
产生软件危机的原因可归结为两个重要的方面:
软件生产本身存在的复杂性;
(b)进度计划的关键部分不明显,难以判断哪些部分应当是主攻和主控的对象;
4.3.1可行行分析和项目开发计划
可性行研究报告
项目开发计划
4.3.2需求分析中的文档
需求规格说明书
初步用户使用手册
确认测试计划
修改完善的软件开发计划
4.3.3概要设计阶段文档
概要设计说明书
数据库说明书
用户手册
修订的测试计划(测试的策略、方法、步骤)
4.4.4详细设计阶段
详细设计说明书
优点:可强迫开发人员采用规范的方法,严格规定了各阶段必须提交的文档;要求每一阶段结束后,都要进行严格的评审。及它最相适应的开发方法是结构化方法。
缺点:不适应用户需求的改动。
5.2原型模型
5.2.1快速原型模型
快速原型的用途是获知用户的真正需求,一旦需求确定了,原型即被抛弃。主要用于需求分析阶段。
不追求也不可能要求对需求的严格定义,而是采用了动态定义需求的方法,所以不能定义完善的文档。
5.2.3增量模型
增量模型主要用于设计阶段,把软件产品划分为一系列的增量构件,分别进行设计、编程、集成和测试。新的增量构件不得破坏已经开发出来的产品。
5.2.4原型模型小结
从下面的有关原型化方法的叙述中,选择出正确的叙述:
(1)快速原型方法是一种企图克服传统软件周期模型缺点的开发方法。
(2)在用户的数据资源没有得到很好地组织和管理的时候,应该使用原型化方法。
CMM1.1的5个等级(由低级到高级):
初始级
软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力,管理是反应式(消防式)的。
可重复级
建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功。
Baidu Nhomakorabea已定义级
已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准化软件过程。所有项目均使用经标准、裁减的标准软件过程来开发和维护软件。
特征:简化项目管理、尽快建立初步需求、加强用户参及和决策。
具有广泛技能水平的原型化人员是原型实施的重要保证。原型化人员应该是具有经验及才干、训练有素的专业人员。衡量原型化人员能力的重要标准是他是否能够从用户的模糊描述中快速获取需求。
5.2.2演化模型
在快速原型模型中,原型的用途是获知用户的真正需求,一旦需求确定了,原型即被抛弃。而演化模型应用于整个软件开发过程,是从初始模型逐步演化为最终软件产品的渐进过程。也就是说,快速原型模型是一种“抛弃式”的原型化方法,而演化模型则是一种“渐进式”的原型化方法。
(9)采用原型化方法时,软件的开发成本较高。
(10)采用原型化方法时,关键的因素是建立原形的速度,而不是原形运行的效率。
5.3螺旋模型
螺旋模型综合了瀑布模型和原型模型中的演化模型的优点,还增加了风险分析。螺旋线第一圈的开始点可能是一个概念项目。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直转到软件生命期结束。
4.4.5系统测试阶段
系统测试计划文档
五.有哪些主要生存期模型?
瀑布模型、原型开发模型(快速原型模型、演化模型、增量模型)、螺旋模型、喷泉模型、
5.1瀑布模型
瀑布模型(传统的软件周期模型)严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一阶段,整个模型就像一个飞流直下的瀑布。
软件开发所使用的方法和技术。
三.有哪些软件工程方法学及其要素?
1.使用最广泛的软件工程方法学是结构化方法学和面向对象的方法学。
2.要素:方法、工具和过程。
四.什么是软件生存周期?有哪些活动?
4.1软件生存周期
一个软件从提出开发要求开始到软件废弃不用的整个过程。
4.2开发活动
可行性分析和项目开发计划、需求分析和定义、软件设计(先后细分为:概要设计和详细设计)、编码、测试和运行维护
软件工程基础知识
一.什么是软件?
1.满足功能要求和性能的指令或计算机程序集合;
2.处理信息的数据结构;
3.描述程序功能以及程序如何操作和使用所要求的文档;
二.软件危机以及产生软件危机的原因?
1.软件开发生产率提高的速度,远远跟不上计算机迅速普及的趋势。软件产品“供不应求”。
2.软件成本在计算机系统总成本中所占的比例逐年上升。
5.4喷泉模型
喷泉模型主要用于描述面向对象的开发过程。喷泉一词体现了面向对象开发过程的迭代和无间隙特征。
六.软件过程基础知识
6.1软件过程
软件过程是指人们用于开发和维护软件及相关产品的一系列活动,包括软件工程过程和软件管理过程。
6.2评估工具
软件过程的评估,通常采用软件能力成熟度
模型(Capability Maturity Model,CMM)。
7.1时间管理
7.1.1 Gantt图
是一种简单的水平条形图,它以水平线段表示子任务的工作阶段,线段的起点和终点分别对应着子任务的起始时间,线段长度指示完成该任务所需要的时间。
甘特图的优点:直观简明、易学易绘、可从图上清楚地标出子任务间的时间对比,但它也有
缺点:
(a)不能显示地描绘各项彼此间的依赖关系;
已管理级
收集对软件过程和产品质量的详细度量,对软件过程和产品都有定量的理解及控制。
优化级
加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能持续不断地改进。
七.软件工程项目管理基本知识
软件项目管理开始于任何技术活动之前,并且贯穿于整个的软件生命周期。
软件工程项目管理一般分为时间管理、成本管理、人力资源管理、风险管理。
(3)在用户没有明确地肯定其需求的时候,应该使用原型化方法。
(4)在用户不希望把自己的时间花在软件开发过程中的时候,应该使用原型化方法。
(5)使用原型化方法时应该使用第三代编程语言。
(6)原型化加强了开发过程中用户的参及和决策。
(7)原型化方法大致可分为三类:抛弃式、演化式和递增式。
(8)原型化方法大致可分为演化式和递增式。
3.软件开发人员和用户之间的信息交流往往很不充分,用户对“已完成的”的软件系统不满足的现象经常发生。
4.软件产品的质量不容易保证。
5.软件产品常常是不可维护的。
6.软件产品的重用性差,同样的软件多次重复开
发。
7.软件通常没有适当的文档资料。
产生软件危机的原因可归结为两个重要的方面:
软件生产本身存在的复杂性;
(b)进度计划的关键部分不明显,难以判断哪些部分应当是主攻和主控的对象;