在《软件工程最佳实践》一书中给出了这样一条结论:
初闻之下,如醍醐灌顶;细细思索,深以为然。 比如有这样一个案例。 小吴是某软件的负责人,他的软件在生产环节出现了问题。由于生产进度安排得非常紧,几乎没有多少软件验证的时间,所以小吴在匆匆修复了问题之后,自己调试软件功能正常,就提交给车间继续生产流程。结果这件事儿被质量管理部门发现了,打了不合格项。 在这个案例中,虽然尚未出现新的软件故障,但小吴的做法也违反了组织的软件工程规范的要求,包括:
小吴,所以这样做是因为没有软件验证的时间。没有软件验证的时间是因为车间的生产周期很短。车间的生产周期很短是因为制定生产计划时没有考虑软件更改的流程可能需要更多的时间。没有考虑软件更改验证的时间是因为制定生产计划时并没有软件专业人员参与。这就是组织的结构出现了问题。 小吴这样做只被质量管理部门发现,软件部门事先都不知情。这说明项目监控出了问题,项目负责人不了解情况,QA不了解情况,软件项目组名存实亡,这也说明组织结构出现的问题。 除此之外组织结构如何更好的适配软件项目,还有很多要研究的内容。比如:
下表列出了30种软件专家及其在团队的分布情况。 表1 总数1000名软件人员中软件专家的分布情况
如果团队当中有专家的存在必定会降低软件出问题的概率。比如有测试专家的存在,就可能会降低出现“验证不充分”的问题的出现;有性能专家的存在,就可能会降低“性能无法验证”的问题的出现。 总之,如果你的软件出现了问题,除了找到问题的出处,解决问题之外,还请思考一下相应的组织结构是否存在问题。因为组织结构的问题是根本原因所在,解决了组织结构的问题,就会避免批量问题的出现。 一劳而永逸,何乐而不为? |
|