问题清单

这个作业属于那个课程 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
这个作业的要求 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10618
这个作业的目标 列出碰到的问题
作业正文  如下
其他参考文献

1. 学习软件工程这门课必须要学习python吗?

答:学会python是最好的,对以后的工作也有很大的帮助。

2. python有一些什么优点?

答:简单易学,开源,解释性语言,可移植性,丰富强大的库,可扩展性。

3.软件工程在软件开发中有什么作用?

答:1>定义项目成功的标准,

       2>识别项目的驱动,约束和自由程度,

       3>定义产品发布标准,

       4>沟通承诺,

       5>写一个计划,

4.如何提高代码的运行效率?

答:尽量使用局部变量,少定义静态变量或方法,尽量重用变量,减少线程,减少循环嵌套。

5.代码性能优化的步骤是什么?

答:1>代码规范

        2>使用性能更好的工具类

        3>代码逻辑优化

        4>组件级别的优化

        5>环境级别的调优

6.软件测试和软件开发的关系是什么?

答:软件开发是生产制造软件;软百件测试是验证开发出来软件的质量。类比传统加工制造企业,软件度开发人员就是生产加工的工人,软件测试人员就是质检人员。

       关系应该是:
       没有软件开发就没有测试,软件开发提供软件测试的对象。

       软件开发和软件测试都是软件生命周期专中的重要组成部分

       软件开发和软件测试都是软件过程中的重要活动。

       软件测试是保证属软件开发产物质量的重要手段。

7.黑盒测试和白盒测试的优缺点?

答: 黑盒测试的优点有 :

        1> 比较简单,不需要了解程序的内部的代码及实现

        2>与软件的内部实现无关

        3> 从用户的角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题

        4> 基于软件开发文档,所以也能知道软件实现了文档中的哪些功能

        5> 在做软件自动化测试时较为方便

缺点 :

        1>不可能覆盖所有的代码, 覆盖率较低,大概只能达到总代码量的30%

        2>自动化测试的复用性较低。

白盒测试的优点有 :

       1> 帮助软件测试人员增大代码的覆盖率。 提供代码的质量,发现代码中隐藏的问题

缺点 :

        1>程序运行会有很多不同的路径,不可能测试所有的运行路径

        2>测试基于代码,只能测试开发人员做的对不对,而不能知道设计是否正确,可能会漏掉一些功能需求

        3>系统庞大时,测试开销会非常大。

8.软件过程有几种模型?

答:瀑布模型,原型模型,迭代式开发,可转换模型。

9.敏捷开发的优缺点?

答:优点:

       敏捷确实是项目进入实质开发迭代阶段,用户很快可以看到一个基线架构版的产品。敏捷注重市场快速反应能力,也即具体应对能力,客户前期满意度高。

       缺点:

       但敏捷注重人员的沟通,忽略文档的重要性,若项目人员流动大太,又给维护带来不少难度,特别项目存在新手比较多时,老员工比较累。

       需要项目中存在经验较强的人,要不大项目中容易遇到瓶颈问题。

10.软件开发团队至少需要哪几个角色?

答:产品经理,决定产品的功能和方向,一个产品的成功与否,产品经理占大部分因素。

       研发,移动端(Android/iOS)研发、后台研发,视情况看是否需要H5前端研发。

       测试,保证应用功能完整和稳定。

       UE/设计师,应用交互细节,整体UI把控。

       CTO,小型团队可能不一定要有这个职位,但是团队里面一定得需要一个技术大牛,来解决技术性问题,是技术方面的老大。

原文地址:https://www.cnblogs.com/guxing2020/p/12677952.html