软件工程发展趋势

注册

 

发新话题 回复该主题

软件工程经典问题大总结,每一个问题都是软 [复制链接]

1#

数据字典

数据字典是关于数据的信息集合,也就是对数据流图中包含的所有元素的定义的集合

详细设计的步骤及基本任务

详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。

详细设计的基本任务就是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段把这个描述直接翻译成某种程序设计语言书写的程序。

步骤:

1.为每个模块确定采用的算法2.确定每个模块使用的内部数据结构3.确定模块的接口细节4.指定模块的测试计划

3.PAD定义(过程设计的工具,程序流程图,盒图,PAD图)

PAD是问题分析图,它是用二维树形结构的图来表示程序的控制流,将这种图翻译成代码比较容易,PAD图的控制流程为自上而下,从左到右地执行。

4.快速原形模型定义

通过快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品的一个子集

5.软件质量定义

软件质量是软件与明确地叙述的功能和性能的需求,文档中明确描述的开发标准以及任何专业开发软件产品都应该具有的隐含特征相一致的成都

6.文档在软件中的作用

1)提高软件开发过程的能见度。把开发过程中发生的事件以某种可阅读的形式记录在文档中。管理人员可把这些记载下来的材料作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理。2)提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、从而减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。3)作为开发人员在一定阶段的工作成果和结束标志。4)记录开发过程中的有关信息,便于协调以后的软件、开发、使用和维护。5)提供对软件的运行、维护和培训的有关信息,便于管理人员、开发人员、操作人员、用户之间的协作、交流和了解。使软件开发活动更科学、更有成效。6)便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据

7.单元测试的内容

模块接口局部数据结构重要的执行通路出错的处理通路边界条件

8.阿拉法和贝塔测试定义与区别

Alpha测试由用户在开发者的场所进行,并且在开发者对用户的“指导下”进行测试。开发者负责记录发现的错误和使用中遇到的问题,总之,它是在受控的环境中进行的。

Beta测试由软件的最终用户们在一个或多个客户场所进行,

与Alpha测试不同,开发者通常不在Beta的测试的现场,因此,Beta测试是软件在开发者不能控制的环境中的真实应用,用户记录在Beta测试过程中遇到的一切问题,定期的把这些报告给开发者

9.集成和系统测试的区别

集成测试界于单元测试和系统测试之间,起到“桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既验证“设计”,又验证“需求”。系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合“需求规格说明书”。

10.软件生命周期

三大步,八小步,软件生命周期由软件定义,软件开发和运行维护3个小时期组成的,每个阶段的基任务问题定义可行性研究需求分析总体设计详细设计编码和单元测试综合测试

11.软件工程的基本特征,什么是软件工程

软件工程是指导计算机软件开发和维护的一门工程学科。采用工程化的方法来开发和维护软件,把经过实践考验而证明正确的工程管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效的维护它。这就是软件工程。

软件工程

分享 转发
TOP
发新话题 回复该主题