疑问汇总

软件工程师需要具备什么能力啊?

(1)具有扎实的计算机专业知识

(2)良好的语言表达能力和沟通能力

(3)健康的心理素质

软件工程开发人员之间是如何配合的?

1)开发提供给测试相关资料:提供要测试的系统程序,提供相关文档如数据库设计文档等

2)测试人员执行测试,登记缺陷给开发人员。

3)开发处理缺陷,并提交缺陷给测试人员验证

4)测试人员进行验证,处理ok就关闭,否则就回退给开发人员重新处理

软件工程的应用

数据库、系统平台、设计模式、程序设计以及软件开发工具。随着现代化社会的来临,电子邮件、人机界面、嵌入式系统、编译器以及操作系统和数据库等都应用软件工程。

如何提高编程质量?

拥有丰富的经验和良好的编程习惯是一个程序员应该具有的基本素质,也是提高开发效率的有效途径。任何一个有经验的程序员都知道,无论是在精历或是财力上,大部分应用程序的维护是一笔很大的开销,编写良好、结构合理的高质量程序代码更加容易理解,良好的编程习惯能让你编写出的应用程序易于阅读和理解,从而在整个生命周期中易于维护,降低维护的成本。

如何写出高质量的注释?

宜精不宜多

如何减少异常和错误的发生?

多练习,平时写代码要规范化

代码审查是否会增加工作量?

如果使用正确的审查代码的方式,那就不会觉得工作量很大。

怎样进行代码优化

多注意细节问题

什么样的人不适合结对编程?

性格内向,不善与人沟通,过于死板的人

单元测试用黑盒还是白盒?

都行

瀑布模型的优缺点

瀑布模型的优点:有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工具的研究,从而提高了大型软件项目开发的质量和效率。
瀑布模型的缺点:
(1)开发过程一般不能逆转,否则代价太大;
(2)实际的项目开发很难严格按该模型进行;
(3)客户往往很难清楚地给出所有的需求,而该模型却要求如此。
(4)软件的实际情况必须到项目开发的后期客户才能看到,这要求客户有足够的耐心。

增量模型的优缺点

  1. 由于能够在较短的时间内向用户提交一些有用的工作产品,因此能够解决用户的一些急用功能。
    2)由于每次只提交用户部分功能,用户有较充分的时间学习和适应新的产品。
    3)对系统的可维护性是一个极大的提高,因为整个系统是由一个个构件集成在一起的,当需求变更时只变更部分部件,而不必影响整个系统。 增量模型存在以下缺陷:
    1) 由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。
    2) 在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而使软件过程的控制失去整体性。
    3)如果增量包之间存在相交的情况且未很好处理,则必须做全盘系统分析,这种模型将功能细化后分别开发的方法较适应于需求经常改变的软件开发过程。

迭代模型的优缺点

优点
1)降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。

  2)降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。

  3)加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。

  4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。

缺点是:在项目早期开发可能有所变化 ,需有一个高素质的项目管理者和一个高技术水平的开发团队

原文地址:https://www.cnblogs.com/-20177613-/p/12594071.html