注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

避免bug代代传  

2013-07-26 08:50:59|  分类: 专业 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
       中小型公司,需要照顾的东西比较多,每天救火都来不及,谈什么迭代改进?特别是自力更生发展起来的公司,除了一堆需要维护的老产品,还有一堆将要开发的产品特性。怎么弄?整天都在救火, 研发人员疲于奔命。难有心情和时间去总结。这都致使问题从一个版本继承到下一个版本,bug代代传。
类似的项目做多了,也有一些小心得。总结如下:
1.通过合理的设计简化业务模型。我们曾经设计一个RTOS系统的项目,原来的设计中大大小小用到了几十个信号量。通过深入的理解项目的需求,重新优化设计,将信号量的个数降低到十个以内。大大降低了系统同步的复杂度,减小了出错的可能性。 另外一个方面,同步要求的降低,实际上是模块间耦合程度的降低,降低带来的直接好处,调试、开发难度都大大降低。 接下来的好处就是项目交付质量的提高。
2. 过程是工具、方法、技术和人的有机结合。这个结合过程的关键是人。人的素质和格局决定了很多东西。有朋友曾今对我说过,软件的质量是测出来的。我不这么认为,质量应该是一场人民战争。设想一下,程序员的写得质量很糟糕,一堆问题交付到QA,QA测试用例能覆盖到所有问题吗?就算是能覆盖,一堆问题打回给研发,研发再改,又是一堆问题。收敛速度慢,QA面对大量的问题和有限的开发时间。只能是挑选主要的测试用例进行测试。 这么一来,怎么保证最终的质量?况且 QA的测试用例本身也有一个发展的过程,不可能测试到所有的问题。所以发动人民战争,群众的眼睛是雪亮的。
从需求开始,提高每个环节的人员素质。集思广益,不要把问题抛给QA,给兄弟部队减少负担。提高整个团队的战斗力。
3.项目要想缩短时间,就是要合理利用资源。很多企业里资源无法复用,效率较低。可以从一些核心的资源开始做起,如建立统一的业务平台。如应用RTOS的公司,一套RTOS肯定是不够的,产品高端的要用好的系统,低端的可能要用低端的系统。代码可能要维持两套。可以通过构建一套兼容库,或者中心库,完成对两个系统的兼容。中心库慢慢添加,以可靠,通用为前提,慢慢添加自己的业务模型,抽象出标准的业务模型,严格的测试。可以大幅度缩短项目的交付周期。统一的研发流程,统一的开发方法都能规避下个项目中可能出现的风险。
不一定一下子就上CMMI,敏捷。CMMi本身只是一个流程的指导,并不牵涉到具体细节的操作。并且在实践中,由于对cmmi的不熟悉和曲解,造成本浪费,成效甚微。可以从CMMI抽出一些和,鞒痰闹傅迹⒉磺I娴骄咛逑附赼g">.loftez题。收统,低端作divd欢盐颂夂?榧漶詈铣潭一些和,鞒痰闹傅迹⒉康慕桓吨芷趐 ?pd=blog&pk郿=blog&_3磺N话:“柘胍幌拢绦蛟钡男吹弥柿恐决缎,由又质迪帧bdivd特意强调某种志龆nof酥 <四持种决侗缛火H似涫凳切槲有蜵A,QA测崩嗨频位拔叶恋南系驮谛闹胁欢献鳌⒔应臃浅类c"><原验告诉我低城慧、知识、能亮场4能划等号盐侍馀在穑覥MM其实更於荚的是从大局持诘, 从全玖鞒角际上从鱿钅恐星际上从柿渴角际选择准大适作di幸桓瞿?榉ㄓ只是沂羌虻オ疤逑副就把蔚岢隹是悸泛痛缶止廴烦。此转把味呷粘鳅发哂暄韦。<导*失去啪龆no源缨去一切类随想用牛囊稻龆no肦TO在开源世界一展抱负pd=blog&pkblog&pk"分享到易信" cl > -blog- "> /div> -blog- "> /d ">-blog-start"iv > /div> -blc05 fc11pv> ="m-aboutme"> href=lass="> pv>;&n/div> hrelass="> > nbc-0 >&c-0-40 pv>mt pv>mt- md评论这张span> hspan> ">eitm0000;font-size:12pxmlayer fcpv> ="m-aboutme"> href=lass="> pv>;&n/div> hrelass="> nbc-0 >&c-0-40 pv>mi&n/div> hrerelighdetail&type=kb.bstamp6thumbrfisrc="_heigs/mi ?el=com" c href= hrelass="blo href= hrerelass="> nbc-0 >&c-0-40 pv>mg">拙蜕至 span> sh itle="分享到新 href= h > &n/div> hyxpm we href= h/div> > ="m-aboutme"> href=lass="> pv>;&n/div> hrelass="> nbc-0 >&c-0-40 pv>mi&n/div> hrerelighdetail&type=kb.bstamp6thumbrfisrc="_heigs/mi ?el=com" c href= hrelass="blo href= hrerelass="> nbc-0 >&c-0-40 pv>mt">拙蜕至 span> sh itle="分享到新 follow" hreleitm> class="t fl -919m> earfix"n/div> h/div> >
sh eitm> comv cclasm0000;foarget="3=qbb 3=qbbofterlangn:013-bok/div> > -917">et="(lass="m weixi="$iReadCou7 fw327 itle=) itle=lass="> ta-917">an> > -917">评论(lass="m weixi="$iC /diCou7 fw0 itle=) itle=/div> >< href= h>
sh/div> >< eitm0000;foarget="4://w 4://wok/div> > tle=" rodyok/div> >an> > lofter2" title="分享到LOFTER" class="shareitm lofter f-bkicons"    e2dimlayer fc06">

用微信 &nbs1an /div> eitm>

将文章分享到朋友圈。

 
  2dimlayer fc06">

用易信 &nbs1 mdl_t_t">日志将文章分享到朋友圈。

 
&nbslofteToLdc0 bF ingetho we "ni&nbgxuan_20150109_ss= 919.jpegtry=1">注册免费lofteofte p; "nia cl3102div4n /div> href= h hrelinpudocumentft:den" nam要誸m rdId" ionu要0087" 706def6cus=cla7defocuk dla7la7blablank7ocus="tru1068efoculincom" c href= hre hrelinpudocumentft:den" nam要"_bl" ionu要 POSTincom" c href= hre hrelinpudocumentft:den" nam要誦sp;<" ionu要0 fs0">类似的项目做多了,也有一些小心得。总结如下:<通过合理的设计简化业务模型<ebrv id1.<ef="h;窃"计一个R" hrv id统的项目,原来的设计中大大<eblog&v id搅思甘鲂藕帕俊Mü钊氲睦斫庀钅康男枨螅匦掠呕杓疲藕帕康母鍪档偷绞鲆阅凇4蟠蠼档土讼低惩降母丛佣龋跣×顺龃淼目赡苄浴 另外一个方面,同步要求的降低,实际上是模块间耦合程度的降低,降<ef="h;窃"计一个R" hrv id发难度都大大降低。 <eblog&v id暮么褪窍钅拷桓吨柿康奶岣摺
2. 过程是工具、方法、技术和人的有机结合。这个结合过<ebrv id丶侨恕H说乃刂屎透窬志龆撕芏喽鳌S信笥言穸晕宜倒砑闹柿渴遣獬隼吹摹N也徽饷慈衔质量应该是一场人民战争。<ef="h;窃"计一个R" hrv id很糟糕,一堆问题交付到<eblog&v id。杂美芨哺堑剿形侍饴穑烤退闶悄芨哺牵欢盐侍獯蚧馗蟹ⅲ蟹⒃俑模质且欢盐侍狻J樟菜俣嚷琎A面对大量的问题和有限的开发时间。只能是挑选主要的测试用例进行测试。 这么一来,怎么保证最终的质量?况且 QA的测试用例本身也有一个发展的过程,不可能测试到所有的问题』的开番研匪民战争,群众的眼睛是雪亮的。
从需求开始,提高每个环节的人员素质。集思广益,不要把<ebrv id赘鳴A,给兄弟部队减少负担。提高整个团队的战斗力。
3.项目要想缩短时间,就是要合理利用资源。很多企业里资<ebrv idǜ从茫式系汀?梢源右恍┖诵牡淖试纯甲銎穑缃⑼骋坏囊滴衿教āH缬τ肦TOS的公司,一套RTOS肯定是不够的,产品高端的要用好的系统,低端的可能要用低端的系统。代码可能要维持两套。可以通过构建一套兼容库,或者中心库,完成对两个系统的兼容。中心库慢慢添加,以可靠,通用为前提,慢慢添加自己的业务模型,抽象出标准的业务模型,严格的测试。可以大幅度缩短项目的交付周期。统一的研发流程,统一的开发方法都能规避下个项目中可能出现的风险。
不一定一下子就上CMMI,敏捷。CMMi本身只是一个流程的指<ebrv id⒉磺I娴骄咛逑附诘牟僮鳌2⑶以谑导校捎诙詂mmi的不熟悉和曲解,造成本浪费,成效甚微。可以从CMMI抽出一些和,鞒痰闹傅迹⒉磺I娴骄咛逑附赼g">.loftez题。收统,低端作divd<e公司G曾经"计一个R" hrv id趾停程的指导,并部的交付周期p ?pd<eblog&v id<ebrv idblog&_3磺N话:“<e公司G曾经"计一个R" hrv id志龆校捎种实现divd特意强调某种志龆nof酥 <四持种决侗缛火H似涫凳切槲有<eblog&v id……”类似滴话我读的舷低在心中不断作、接τ非类c"><原验告诉我低城慧、知识、能亮场4能划等号盐<ebrv id在穑覥MM其实更於荚的是从大局持诘, 从全玖鞒角际上从鱿钅恐星际上从柿渴角际选择准大适作di幸桓瞿?榉ㄓ只是沂羌虻オ疤逑副就把蔚岢隹是悸泛痛缶止廴烦。此转把味呷粘鳅发哂暄韦。<导*失去啪龆no源缨去一切类随想用牛囊稻龆no肦TO在开源世界一展抱负pd<eblog&v id<eblog&v idincom" c href= hre hrelinpudocumentft:den" nam要8%8A%E" ionu要誨spacom" c href= hre hrelinpudocumentft:den" nam要8%8A%EUrl" ionu要"true" >
>
shsh "分享到易信" cl hreleitm> t$_span$_spao fl $_spao fl-rfin /div> href= h hlass="> f-myLikeI_sin likebtn icn0m">我"> itleLike 不 itle="穒v clas hrerelass="> f-myLikeI_sin re btn icn0m">我"> itleRe ">marginitle="穒v clas hrelass="d randtag phide">&nbs tle=" ro"微ttp://www.iv clas hrerelass="> tle=" "> -919"="m2a">m weixi="$Re Cou7 fw0 itle=人 itle=lass="> tle=" > 722 >&nbtgl >as-> t
tle=" > 62 >&nbtgl0 >as-> t
-917"> itle=blogTag
snv> /div> >d" >
p:/ p; &" href=/div> sh h4 >
sh eitm> m> earfix"n "分享到rereeeee "分享到iv cl eitmd randtag phide">ty:ft:den;llowt:0;arget="0;%E5%texw:ft:den;" > >温躱
m> earfix"n "分享到iv cl "分享到iv cl eitmd randtag phide">ty:ft:den;llowt:0;arget="0;%E5%texw:ft:den;" m wehobgxm" rel="nofhobgxm" >温躱<="cntiv clas h4 >
> earfix"> d_el=d randt_zoom:1bok "分享到iv cllaiv cl eitm> b bmt:d ead" d randtag phide">