从格力高事件谈SAP项目质量管理

2024-05-02 15:36

本文主要是介绍从格力高事件谈SAP项目质量管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近我相信大家都听说了格力高SAP项目上线后因为某些原因系统不能出货的事故,对于格力高这么一家著名的食品公司来说,无疑是非常严重的问题。对于本次事件的解读,大家可以参考各路业内人士的文章或者视频。今天我想借这个话题,聊一下SAP项目中的质量管理。

从事过软件开发工作的人都知道在软件开发领域一直在追求把软件开发作为一项系统工程来看待,也就是可以把开发一款软件比作建造一座房子,如果房子的使用年限是100年,那么建造标准、建造方法、材料等级等都需要围绕这个目标来制定,并且需要有一套严格的质量标准来控制。所以在软件开发领域有CMMI评级,来检验软件开发公司的软件能力成熟度,这其中就包括了软件质量评估。

很可惜我在SAP项目管理领域并没有看到类似的评估标准,所以造成了在实施SAP项目过程中出现了很多质量问题,除了像格力高这种上线后不能出货这种典型问题外,还有比如数据迁移后财务报表不平、开发没有注释和文档导致后期程序难以理解、测试不完整导致问题没有提前发现等等都是SAP项目中的典型质量问题。

那我们如何能最大程度的避免这些质量问题的发生呢?我觉得要从以下几个方面着手。

  • 实施范围管理

SAP项目作为实施企业管理流程和SAP系统的项目,实施范围是项目所有工作的基本前提。实施范围管理是一个不断细化的过程, 特别是采用了敏捷项目方法论后,需要逐步把实施范围完善。但是不管采用哪种方式,实施范围必须清晰可见的,以便项目组成员都清楚的知道什么在实施范围内什么不在。实施范围具体体现在1)在项目章程中的基本项目范围2)项目实施范围管理列表或者是用户故事列表,有了明确的实施范围,才能保证项目后续的工作都有明确的目标,从而避免流程或者功能没有实施、有流程完全没有被测试到的情况。

  • 变更流程和技术标准

项目中提出的需求或者用户故事,我们要避免用户和顾问商量一下就可以实施的情况,需要经过一定的变更流程才能开始实施和测试,这也是保证质量的重要手段,因为有了变更流程才可以确保需求描述清楚、审批人有相应的职权和知识、相应文档齐全、经过全面的测试。另外配置、开发、增强等技术工作也需要制定一定的技术标准,比如对命名标准、代码规范、技术文档等,这样可以大大的增加可维护性,出了问题可以快速准确的定位。

  • 知识(文档)管理

对项目中所有的知识都需要进行一定的管理,除了我们常规理解的文档,比如需求说明文档、用户故事、流程说明文档、用户操作手册、技术文档等,还有一些决定、会议纪要等都需要以一定的方式记录,记录的好处是可以查询当初是怎么讨论的、怎么决定的,这样测试的时候出现一些分歧或者上线后出现的非技术问题都有据可循。当然,文档也不是越全越好,文档的内容可以根据复杂程度适当增减,最主要的是保留和传递信息,而不是写冗余和无效的信息。最后,最好对文档还有一定的审核机制,以确保文档的撰写、修订都是规范的。

  • 阶段验收标准

我们知道SAP项目是分为不同的阶段来执行的,上一个阶段中所有任务的完成是下一个阶段的准备和前提,所以为了确保项目按时推进和保质保量的完成本阶段的所有任务,制定阶段的验收标准尤为重要,不管是在ASAP方法论中的里程碑还是在Activate方法论中的质检门都是这个目的。为了使全体项目成员理解每个阶段的工作重点,阶段验收标准必须提前制定并宣布并且在阶段结束前进行评估,如果有标准没有达到,还需要制定相应的应对方案,最严重的情况是需要延迟下一阶段的开始时间,因为如果强行继续,到上线的时候会出现更严重的后果。

SAP Activate方法论中已经制定了非常详细的质检门,大家可以参考以下链接获取信息

质检门定义:https://support.sap.com/content/dam/SAAP/SAP_Activate/PM_210.pptx

质检门检查列表:https://support.sap.com/content/dam/SAAP/SAP_Activate/S4H_0271.xlsx

  • 测试和问题管理

SAP项目中测试是质量控制的最后一道关卡,虽然我一直强调SAP项目实施的不仅仅是SAP系统,但是实施的核心或者说最终体现是在SAP系统里面的。如何更好的组织和管理测试是一个比较复杂的问题,为什么往往我们测试的时候没有什么问题,但是一旦上线后就一堆问题?其实道理很简单,测试的用例和范围都太理想化了,只考虑了最简单的流程,现实企业在运营过程中会出现很多问题,或者说有问题是常态,没有问题才是不正常的。简单的例子,质量问题可能出现在采购、生产、仓储、运输过程中的任何环节,但是我们测试的时候会考虑这么多吗?

那么我们如何更好的准备和执行测试呢?首先我们要严格按照项目实施范围来指导我们准备测试用例,当然在范围管理的时候就不能仅仅考虑“最好的情况”,各种异常情况也需要考虑在实施范围以内。其次,测试必须要准备测试脚本,这是规范我们测试步骤的最好方式,如果第一次测试的时候发现脚本的步骤有问题,第二次测试前还可以修改完善。最后就是需要建立一定的问题管理和反馈机制,测试出来的技术和非技术问题都需要一一记录,并且追踪落实解决。我个人最讨厌看到的是,同一个问题在不同的测试中反复出现,这就说明问题并没有得到反馈和解决,这是非常浪费时间的事情。

  • 管理工具

对于以上提到的实施范围管理、测试和问题管理等都需要一定的管理工具来确保项目组成员可以访问一致的信息,最简单的方式当然是使用Excel来管理,不需要太多的成本。如果项目达到一定的规模可能就需要像Azure DevOps中的Boards或者Jira来管理,SAP ALM也提供类似的功能,如果公司购买了云版本的SAP,这个工具是免费的。另外,如果出现了复杂严重的质量问题,推荐使用鱼骨图来层层分析,这也可以避免在找原因过程中相互推诿的好办法。好的管理工具可以帮助我们事半功倍,从纷繁复杂的项目事务中定位当前状态并且发现根本问题。

这篇关于从格力高事件谈SAP项目质量管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/954578

相关文章

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

MyCat分库分表的项目实践

《MyCat分库分表的项目实践》分库分表解决大数据量和高并发性能瓶颈,MyCat作为中间件支持分片、读写分离与事务处理,本文就来介绍一下MyCat分库分表的实践,感兴趣的可以了解一下... 目录一、为什么要分库分表?二、分库分表的常见方案三、MyCat简介四、MyCat分库分表深度解析1. 架构原理2. 分

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

在.NET项目中嵌入Python代码的实践指南

《在.NET项目中嵌入Python代码的实践指南》在现代开发中,.NET与Python的协作需求日益增长,从机器学习模型集成到科学计算,从脚本自动化到数据分析,然而,传统的解决方案(如HTTPAPI或... 目录一、CSnakes vs python.NET:为何选择 CSnakes?二、环境准备:从 Py