软件工程第三次作业-关于软件质量保障初探
一·对教材与参考资料阅读后关于软件质量保障你的体会是什么?
1·通读本章以及对参考阅读资料后,我知道了想要做一个好的软件工程要包含:
(1)研发出符合用户需求的软件
(2)通过一定的软件流程,在预计的时间内发布 “足够好” 的软件
(3)并通过数据和其他方式展现所开发的软件是可以维护和继续发展的
2·对于软件质量:软件质量=程序质量+软件工程质量
程序的质量,体现在软件外在功能的质量。
软件工程的质量,体现在成本和时间上,包括:软件开发过程的可见性、软件开发过程的风险控制、软件开发过程的风险控制、软件内部模块,项目中间阶段的交付质量,项目管理工具的因素、软件开发成本的控制、内部质量指标的完成情况。
3·明确了软件测试和软件质量保证工作的概念:
软件测试(Test):运用一定的流程和工具,验证软件能实现预先设计的功能和特性,工作的流程和结果通常是可量化的。例如,测试用例、Bug、代码覆盖率、MTTF、软件效能的参数,等等。正因为流程和结果是明确定义的、可量化的,所以很多测试工作可以自动化。
软件质量保证(Quality Assurance):软件团队为了让软件达到事先定义的质量标准而进行的所有活动,包括测试工作。
二·如果你是一个项目的QA,那么你认为你的工作职责范围是什么?
1.研发流程、规范的执行指导
2.推动项目的开发
3.保证研发团队按定义好的流程执行,检查研发流程中流程、规范的执行效果,并识别出不符合规范的事项并记录、跟踪不符合项问题的解决
4.参与辅助研发
三·如果你是一个项目经理,那么你认为这你的项目中需要专职的QA么?还是只需有Test即可?如果一旦出现问题,你如何界定由谁担责?
结合教科书以及两篇博客,我认为专职的QA和Test都需要,我依然觉得还是分工合作比较重要,一个团队需要分工合作,明确的分工能使一个项目运行的更好。就像教科书中所提到,分工是社会和行业进化的结果。
因为有了分工合作,所以在某一处出现问题时就要求负责这一处的人来承担这个责任。