除了评审和测试,软件工程师还能做些什么来保证软件的质量?
软件工程师吧
全部回复
仅看楼主
level 13
首先 楼主
作为一个软件开发人员,小李的工作很辛苦,加班是常态,节假日是摆设。
最近小李的压力更大了。领导在工作会上讲了2019年公司的工作重点是严抓产品质量,要求每个软件开发人员都要提高自己开发的软件产品的质量,如果软件出了质量问题,一定要追责到底。
小李心里非常不愤,觉得自己承担那么多开发任务,能按上级要求的节点完成就不错了,质量能不能保证,他心里一点谱儿都没有。还有,软件工程理论讲究的不是‘软件质量是由评审和测试来把控’吗,软件质量都靠开发还要他们干什么?
这里不谈评审和测试对软件质量的作用,只想谈谈作为一名软件开发人员,在不靠外力的情况下,能够做些什么事情来提高软件产品的质量。
2019年02月15日 09点02分 1
level 13
首先 楼主
质量意识
软件开发人员经常戏称自己为码农,说自己就是写代码的,这样称呼自己的软件开发人员一定缺少质量意识,只想着实现软件功能,没有去想软件质量。
相反,如果软件开发人员有了质量意识,就不会仅仅想到如何实现功能,更应当想到开发出高质量的产品。这样的软件开发人员就不再是码农,而是软件工程师。
2019年02月15日 09点02分 2
level 13
首先 楼主
资产重用
软件开发人员一定要把自己的每一次开发的经验(无形资产)和过程资产(有形资产)保留下来,形成自己的资产库。在下一次开发中,软件开发人员要会调用自己的资产库和组织的资产库,提高开发效率的同时,也会提高实现的软件产品质量。
2019年02月15日 09点02分 3
level 13
首先 楼主
开发方法
软件开发不能一上来就开始编码。开发必须从需求分析开始,经历概要设计和详细设计活动才开始编码活动的。没把需求和设计想清楚,必然会遗留大量的缺陷在软件中,而要解决这些后期爆发的缺陷就需要花费高昂的代价。如果评审和测试再不给力,那软件的质量就太差了。
即使是看起来不那么复杂的软件,软件开发人员也要按部就班地进行。除非你在大脑中能够把所有的活动考虑清楚,否则就要形成必要的文字、图表来记录你的分析和设计的结果。你会发现这样做是非常值得的。
当然,在这个过程中,你可以不用管组织的那些形式化的要求,不做无用的事情,重内容不重形式。
2019年02月15日 09点02分 4
level 13
首先 楼主
遵循规范
很多规范是结合了前辈的经验,遵循这样的规范,对提高软件的质量会有很大帮助。
但是,规范也不一定条条都要遵守。软件开发人员要理解规范的内涵,要能够根据软件的特点去筛选出那些真正适合所开发软件的条款,并且标识出对所开发软件质量的影响大小,影响质量最大的条款就要严格遵守,影响小的条款争取遵守,没有影响的可以不遵守。
2019年02月15日 09点02分 5
level 13
首先 楼主
合理规划
软件开发人员经常会被各种各样的事情所干扰。要写报告,要参加评审和讨论,开各种会,这些都会降低软件开发人员的效率和质量。
即便没有这些事情,也会有同时多个软件开发任务等着你。在不同的软件之间切换工作,也是很费时费力的事情。
软件开发人员要合理安排好这些事情,让自己能够集中精神做好分析和设计。必要的话,学习一些时间管理方法,比如番茄工作法。
2019年02月15日 09点02分 6
level 13
首先 楼主
善用工具
工欲善其事,必先利其器。软件开发人员要学会使用各种各样的工具来帮助自己完成软件开发工作。比如,代码检查工具、单元测试工具、自动化测试工具等等。使用这些工具可以帮助你用很少的时间去发现和去除软件的缺陷,这种事半功倍、一劳永逸的事,何乐而不为呢?
同时这些工具是在不断迭代更新的。软件开发人员需要不断去跟踪新的工具,以不断提高软件开发的效率和质量。
求人不如求己。软件工程师要想不被领导问责,不要把自己的软件质量水平全部寄希望于评审和测试,还是要想想自己能够做些什么来提高软件的质量。
2019年02月15日 09点02分 7
level 5
我本来要准备一个课件是关于开发和测试的关系,这里给予了我一个很好的思路,真的很受用。
2019年02月20日 07点02分 8
1