软件工程有哪些大问题,哪些问题我们该注意的

软件工程有哪些大问题,哪些问题我们该注意的

详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构 。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂 。详细设计的基本任务就是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段把这个描述直接翻译成某种程序设计语言书写的程序 。
1.为每个模块确定采用的算法
确定每个模块使用的内部数据结构,确定模块的接口细节 。

3. PAD定义

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

4. 快速原形模型定义

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

5. 软件质量定义

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

6. 单元测试的内容

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

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

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

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

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

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

9. 软件生命周期

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

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

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

11. 系统模型图和数据流图的定义

数据流图简称DFD , 是SA方法中用于表示系统逻辑模型的一种工具 。它以图形的方式描述数据在系统中流动和处理的过程 , 由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型 。

系统流程图是描绘系统物理模型的传统工具 。它的基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件,表达信息在各个部件之间流动的情况,而不是对数据加工处理的控制过程

12. 软件生命周期模型

软件生命周期模型它简洁的描述了软件过程 。生命周期模型规定了把生猛周期划分成哪个阶段及各个阶段的执行顺序,因此也成为过程模型 。

瀑布模型的优缺点

1.阶段具有顺序性和依赖性前一阶段结束后一阶段开始,前一个阶段输出文档,后一个阶段输入文档 。



2.推迟实现观点瀑布模型在编码前设置系统分析、系统设计,推迟程序物理实现,保证前期工作扎实 。
【软件工程有哪些大问题,哪些问题我们该注意的】3.质量保证观点瀑布模型每阶段坚持两个重要做法:是每阶段都必须完成完整、准确的文档 。软件开发时人员间通信、运行时期维护的重要依据 。是每阶段结束前对文档评审 。

瀑布模型由于是单向的,所以实际开发中如果一个步骤出现问题,是没有办法返回处理的 , 为了解决这个问题,实际开发中的瀑布模型是带有反馈环的,就是说开发过程中如果之前的一部出现问题的话,还可以回去解决

静态测试

静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性 。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错误的方法 。

经验总结扩展阅读