软件工程简答题补充知识点

在软件开发的早期阶段为什么要进行可行性研究?
在开发一个软件的时候,需要判断原定的系统模型和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度,如果做不到这些,那么花费在这些工程上的任何时间、人力、软硬件资源和经费都是浪费。可行性研究就是一次大大压缩简化了的系统分析和设计的过程,就是在较高层次上以较抽象的方式进行系统分析和设计的过程。可行性研究的目的就是以最小的代价在尽可能短的时间内确定问题是否能够解决。
从伪码转变为程序流程图或从程序流程图转变为伪码是否是唯一的?请说明理由。
伪码准确地描述了程序的控制流程。由于伪码在描述程序的控制流程时是无二义性的,因此,由伪码变成的程序流程图是唯一的。但是,同样的控制流程可以用不同的伪码来描述,因此,由程序流程图转变成的伪码不是唯一的。
可行性研究报告的主要内容有哪些?

  1. 系统概述:说明开发的系统名称,提出单位和开发单位
  2. 可行性研究的前提:系统目标,要求,约束和限制,可行性研究的基本准则等
  3. 对现有系统的分析:处理流程,图示说明现有系统的处理流程和数据流程
  4. 系统需求:功能,性能,操作,信息等要求
  5. 建议系统:系统目标,处理流程,系统结构,性能,功能,系统技术可行性,投资和效益分析,操作可行性
  6. 其他可选方案:与国内外同类型方案的比较,提出一两个可行性方案论证和探讨
  7. 制定下一阶段的预算
  8. 结论性意见:由用户方、设计方和投资方共同签署意见
    请说明多态重用与继承重用的关系。
    多态重用实际是一种特殊的继承重用,是充分利用多态性机制支持的继承重用。一般来说,使用多态重用方式重用已有的类构件时,在子类中需要重新定义的操作比较少,因此,多态重用方式比继承重用方式成本低。
    测试与调试的主要区别?
    测试的目的是找出存在的错误;而调试的目的是定位错误并修改程序以修改错误。
    调试是测试之后的活动,测试和调试在目标,方法和思路上都有所不同。
    测试从一个已知的条件开始,使用预先定义的过程,有预知的结果;调试从一个未知的条件开始,结束的过程不可预计。
    测试过程可以实现设计,进度可实现确定;调试不能描述过程或者持续时间。
    测试是在软件生命周期的全过程中,而调试只在软件生命周期的编码阶段中。
    测试主要由测试人员进行,而调试主要由开发人员进行。
    软件的维护一般分为哪几类?
    为了纠正正在使用过程中暴露出来的错误而进行的改正性维护。
    为了适应外部环境的变化而进行的适应性维护。
    为了改进原有的软件而进行的完善性维护。
    为了改进将来的可维护性和可靠性而进行的预防性维护。
    软件维护困难主要表现在什么方面?
    理解别人写的程序通常很困难。
    需要维护的软件文档资料太少。
    当要求对软件维护时,不能指望由开发人员给人们仔细说明文档。
    绝大多数软件在设计时没有考虑将来的修改。
    软件维护不是一项吸引人的工作。

注:今天1024发一下曾经备考时候的部分资料。

你可能感兴趣的:(软件工程,1024程序员节)