软件开发过程中的审查 (Review)

软件开发过程中的审查 (Review)



希望别人做些什么->定义出流程
希望别人做出正确的结果->定义出审查制度 
 
软件开发项目中包括很多的审查动作,贯穿于整个开发过程。个人认为审查主要有以下目的:
1.尽早排查出潜在的问题(Potential Risk/Issue)
  经过其他人的参与,以不同的视角提出不同的看法,会有类似头脑风暴的效果,集思广议来查找工程师未能注意的问题。
2.保持良好且有效的双向沟通
  很多时候沟通并不充分,总有许多以为明白,实际并不明白的情况。组织管理人员需要及时通过审查的方式,与开发人员进行有效的沟通。 同时,审查会使开发有更多的表达和相互沟通的机会,提高参与度,所以审查也可以提高开发人员的认同感和归属感。如果大家都能从审查中得到有效的指导和帮助,也会有助于提高审查效率。
3.通过以上两点,来达成最终正确的结果。
 
管理者需要对最终的结果负责,不能坐等问题发生,一定要先行加以预防,所以需要不断的进行审查。而组员通常对于所谓的审查会有一定的戒心,害怕批评或出丑,或者觉得没有必要,于是管理要确保在审查时做到对事不对人,并能针对问题提供有价值的指导。审查的对象是当前状态及产出,审查的目的在于确保最终的正确产出,审查的方式就是质询,而质询的基础就是审查制度。
 
审查制度可以很灵活,比如在项目开始定义出项目的角色及职责(ARCI矩阵), 然后针对不同的Milestones或任务设置检查点(Check point),重要的环节加以定义,使得审查有据可循。如针对Design Spec,我们需要宣布以下规则:
  1. Design Spec需要遵循公司统一规范。
  2. Design Spec中需要描述清楚Block diagram, Interface defintions等等。
  3. Design Spec什么时候提交给哪些人做审查。
  4. 什么时候举行Design Spec的审查会议,哪些人会参加,等等。
这是针对工程师而言的。Design Spec中的内容相应会有一个审查表(Check List)来进行审查,这就是规则。同样针对管理者也可以设定一个审查表,如:
  1. 必须向所有组员说明一次公司相关的文档规范。
  2. 必须定义清楚撰写及审查的时间安排,并向所有组员宣布,确保大家可以执行。
  3. 必须提供相应的审查记录。
 
对于需求分析、Functional Spec、代码管理、版本控制、发布控制、BUG管理及成本控制,都可以细化相应的动作,加以审查。审查对象包括项目中的各个角色。
 
总结一下,项目中审查制度的建立有以下步骤:
  1. 项目中角色及职责定义(R&R, Who)
  2. 定义审查点 (Check Point, When)
  3. 定义审查内容、范围及目标(Check List, What)
  4. 定义出审查人员 (Who)
 
*SMART原则是目标管理的重要参考法则,对于这个的审查制度有很强的指导性。
 
上面的审查制度是常态性的,另外还有一些突发状况需要由管理者适时判断审查的必要性。
 
如果突然遇到之前未能预估到的技术难题时,管理者必须特别为这个问题设定应急计划和一个更为紧凑的审查机制。比如在应急计划如下:
  1.召开会议,寻求资深工程师的帮助。[负责人及时间]
  2.安排其他人员支援。[负责人及时间]
  3.寻求第三方公司的支持。[负责人及时间]
  4.网络寻求解答。[负责人及时间]
  5.向相关人员报告细节问题,对于项目管理人员要考虑有无替代方案。[负责人及时间]
 
相应的审查一方面要针对每项进行,另外也要有一个统一个状态报告会议,以此来加强组织的有效性。当然这样的问题应及早被识别成风险或问题来加以预防,越少发生越好。
 
 
还有一种主动的自我审查方式。
 
无论对于管理者还是工程师,一定要清楚,你的主管、客户和老板,都需要知道你在做什么!及时的汇报是非常必要的,这也是一种主动的审查,它的效率更高。所以我们可以要求承担重点开发任务的人员周期性提交状态报告,将做过的事情、遇到的问题、后续的计划表列出来。其他人可以另作要求。管理者则应主动为其提供相应支持,这样就可以保持一个较为良性的互动。
 
审查之所以重要,是因为我们处在越来越讲求效率与生产力的环境,走越少的弯路,我们的企业才会更多的利润,员工才有更大的空间。这是管理者与工程师需要共同承担的责任。
*有点乱,先写到这,以后再完善!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 软件开发标准规范指的是在软件开发过程要遵守的一套规范和标准。这些规范和标准旨在确保软件开发过程的高质量和高效率。 首先,软件开发标准规范要求开发团队在开发过程必须有清晰的需求分析和设计阶段。在需求分析阶段,开发团队应该与客户进行深入沟通,确保全面理解客户的需求和预期。在设计阶段,开发团队应该制定详细的系统设计文档,并确保代码的可读性和可维护性。 其次,软件开发标准规范要求开发团队严格遵循编码规范。编码规范包括命名规范、代码注释规范、代码缩进和格式化规范等。这些规范可以提高代码的可读性,并减少开发的错误和bug。 另外,软件开发标准规范还要求开发团队使用版本控制工具来管理代码的变更。版本控制工具可以记录代码的修改历史,并且可以方便团队成员之间的协作和沟通。同时,团队成员还应该定期进行代码的review和测试,以确保代码质量。 最后,软件开发标准规范还要求开发团队进行系统的测试和验收。测试包括单元测试、集成测试和系统测试等。通过测试,可以发现和修复软件的问题和缺陷。验收阶段则是客户对软件进行最终的确认和接受。 总之,软件开发标准规范对于保证软件开发过程的高质量和高效率起着重要的作用。团队成员应该严格遵守这些规范,并不断提高自身的技术能力和软件开发水平。 ### 回答2: C 软件开发标准规范是指在软件开发过程所遵循的一系列标准和规范。它的目的是确保软件开发的质量和可靠性,并提高软件开发过程的效率。 首先,C 软件开发标准规范包括代码编写规范。这些规范定义了代码的命名规则、格式要求以及注释的使用方法。通过统一的代码风格,可以提高代码的可读性和可维护性。 其次,C 软件开发标准规范还包括软件设计规范。这些规范指导开发人员进行软件系统的设计,包括模块划分、接口设计等方面。通过良好的软件设计,可以降低系统的复杂性,提高系统的可扩展性和可重用性。 此外,C 软件开发标准规范还关注软件测试和质量保证。它定义了测试用例编写的规范,以及测试覆盖率和质量指标的要求。通过规范的测试流程和验证标准,可以提高软件的稳定性和可靠性。 最后,C 软件开发标准规范还涉及项目管理和文档编写方面。它定义了开发团队的组织结构、项目计划和沟通流程等,以及各类文档的编写规范。通过规范的项目管理和文档编写,可以保证开发过程的协调性和可追溯性。 总之,C 软件开发标准规范对于软件开发过程起到了指导作用,可以提高软件的质量和开发效率。开发人员应严格按照规范进行开发,并不断学习更新的标准和规范,以保持与行业最佳实践的接轨。 ### 回答3: C 软件开发标准规范是一份技术文档,为了确保软件开发过程的质量和效率,规范了开发团队在软件开发生命周期各个阶段的工作流程和标准。 在项目准备阶段,C 软件开发标准规范要求团队需要明确项目目标、需求和约束,制定进度计划和项目评估。这有助于确保项目的可行性和正确性,并为后续的开发工作奠定基础。 在需求分析阶段,C 软件开发标准规范要求团队进行详细的系统需求分析和规范编写。这包括用户需求调研、功能设计、数据流程图等工作,确保开发的软件满足用户需求和业务流程。 在系统设计阶段,C 软件开发标准规范要求团队进行系统结构设计和模块设计。这包括系统架构设计、数据库设计、模块接口设计等工作。通过合理的设计,提高软件的可维护性和扩展性。 在编码阶段,C 软件开发标准规范要求团队采用统一的编码规范,保证代码的可读性和可维护性。同时,规范还要求进行代码审查和单元测试,以及使用版本控制工具管理代码。 在测试阶段,C 软件开发标准规范要求团队进行系统测试和验收测试。这包括功能测试、性能测试、安全测试等工作,保证软件的质量和稳定性。 最后,在项目交付和维护阶段,C 软件开发标准规范要求团队进行用户培训和文档编写,以及进行持续的维护和技术支持。 总的来说,C 软件开发标准规范对软件开发进行了全方位的规范,并确保了软件开发过程的质量、效率和可维护性。这有助于提高团队的协作效率,减少错误和风险,提高软件的稳定性和用户满意度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值