项目管理系列之质量管理(一)
提起软件质量管理,人们更多地会想起ISO9001、CMM、CMMI这些“质量管理圣经”。但国内企业做了这么多年的质量认证,却没有使软件质量有大幅度地提高。多数企业为了节省成本和赶进度,往往做做表面文章,甚至会忽略质量管理,导致最终软件质量得不到保证。其实程序人员只是影响软件质量的一个很小环节,真正影响软件质量的因素你知道吗?
提起软件质量管理,人们更多地会想起ISO9001、CMM、CMMI这些“质量管理圣经”。但国内企业做了这么多年的质量认证,却没有使软件质量有大幅度地提高。多数企业为了节省成本和赶进度,往往会忽略质量管理,导致软件质量很差——投产后的软件经常会被用户发现很多Bug。实际上,在项目实施中开展质量管理工作十分重要,因为产品上线后的质量问题往往意味着更大的投入。
软件质量管理包括以下活动:质量计划编制、质量保证、质量控制、同行评审、软件测试、软件缺陷跟踪等,优秀的软件质量管理能够在很大程度上减少软件开发过程的不确定性。
质量计划是质量管理的第一过程域,它主要指依据公司的质量方针、产品描述以及质量标准和规则等制定出来实施方略,其内容全面反应用户的要求,为质量小组成员有效工作提供了指南,为项目小组成员以及项目相关人员了解在项目进行中如何实施质量保证和控制提供依据,为确保项目质量得到保障提供坚实的基础。
质量保证是贯穿整个项目全生命周期的有计划和有系统的活动,经常性地针对整个项目质量计划的执行情况进行评估、检查与改进等工作,向管理者、顾客或其他方提供信任,确保项目质量与计划保持一致。软件质量保证人员以独立审查方式,从第三方的角度监控项目开发任务的执行,就软件项目是否遵循已制定的计划、标准和规程给开发人员和管理层提供反映产品和过程质量的信息和数据,提高项目透明度,确保项目实施中质量问题尽早发现并解决,协助软件开发组取得高质量的软件产品
质量控制是对阶段性的成果进行测试、验证,为质量保证提供参考依据。
同行评审过程利用技术同行与行业专家的专业知识,及早发现软件问题。
软件测试是保证软件质量不可或缺的重要组成部分,经过测试计划、测试案例的设计与评审,引入专业的测试工具,对测试过程、案例、BUG进行管理,实现自动化回归测试、性能测试,软件系统的正确性、稳定性均会有大幅提升。
组织级知识库综合了项目经验教训,能够对缺陷的预防和跟踪提供有效的帮助。
软件质量管理应该贯穿软件开发的全过程,而不仅仅是软件本身,软件质量不仅仅是一些测试数据、统计数据、客户满意度调查回函等等,衡量一个软件质量的好坏,应该首先考虑完成该软件生产的整个过程是否达到了一定质量要求。
一、 选择主题的背景及原因/预期结果
随着计算机与因特网的普及和社会信息化进程的加快,计算机软件的地位已发生了巨大的变化,它已成为支撑社会正常运行和发展的重要基础设施。软件变得越来越复杂,人们对软件的要求也越来越高,特别是对软件的可靠性、易用性、应变性和兼容性等各方面都提出了很高的要求。
提起软件质量管理,人们更多地会想起ISO9001、CMM、CMMI这些“质量管理圣经”。但国内企业做了这么多年的质量认证,却没有使软件质量有大幅度地提高。多数企业为了节省成本和赶进度,往往会忽略质量管理,导致软件质量很差——投产后的软件经常会被用户发现很多Bug。实际上,在项目实施中开展质量管理工作十分重要,因为产品上线后的质量问题往往意味着更大的投入。
软件质量管理包括以下活动:质量计划编制、质量保证、质量控制、同行评审、软件测试、软件缺陷跟踪等,优秀的软件质量管理能够在很大程度上减少软件开发过程的不确定性。
质量计划是质量管理的第一过程域,它主要指依据公司的质量方针、产品描述以及质量标准和规则等制定出来实施方略,其内容全面反应用户的要求,为质量小组成员有效工作提供了指南,为项目小组成员以及项目相关人员了解在项目进行中如何实施质量保证和控制提供依据,为确保项目质量得到保障提供坚实的基础。
质量保证是贯穿整个项目全生命周期的有计划和有系统的活动,经常性地针对整个项目质量计划的执行情况进行评估、检查与改进等工作,向管理者、顾客或其他方提供信任,确保项目质量与计划保持一致。软件质量保证人员以独立审查方式,从第三方的角度监控项目开发任务的执行,就软件项目是否遵循已制定的计划、标准和规程给开发人员和管理层提供反映产品和过程质量的信息和数据,提高项目透明度,确保项目实施中质量问题尽早发现并解决,协助软件开发组取得高质量的软件产品
质量控制是对阶段性的成果进行测试、验证,为质量保证提供参考依据。
同行评审过程利用技术同行与行业专家的专业知识,及早发现软件问题。
软件测试是保证软件质量不可或缺的重要组成部分,经过测试计划、测试案例的设计与评审,引入专业的测试工具,对测试过程、案例、BUG进行管理,实现自动化回归测试、性能测试,软件系统的正确性、稳定性均会有大幅提升。
组织级知识库综合了项目经验教训,能够对缺陷的预防和跟踪提供有效的帮助。
软件质量管理应该贯穿软件开发的全过程,而不仅仅是软件本身,软件质量不仅仅是一些测试数据、统计数据、客户满意度调查回函等等,衡量一个软件质量的好坏,应该首先考虑完成该软件生产的整个过程是否达到了一定质量要求。
(未完 待续)
我是李鸣(Aicken) 请您继续关注我的下一篇文章。
李鸣(aicken)原创 转载注明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述