软件开发过程中常见风险和应对策略

简介: 软件开发过程中常见风险和应对策略

大家好,我是阿萨。今天给大家罗列一下之前阿萨经历过的项目风险。

  • 需求变更
  • 进度紧张
  • 预算风险和技术风险
  • 质量风险
  • 人力资源风险
  • 工具风险


一、需求变更


开发最害怕需求变更,尤其是推倒重来的那种。它某些程度上是一种资源的浪费。需求变更其实就意味着之前的工作都白做了,有些变更是之前需求分析不到位导致的。有的变更是开发发现实现成本巨大,不得不变更的。有的变更是后期发现场景遗漏或者重大缺陷无法避免的。

遇到这种情况该怎么办?

1.前期用户故事和需求分析要多了解背景知识。业务分析再透彻一些。避免场景遗漏情况以及沟通不到位的情况发生。

2. 开发预研的时候可以先原型先行,避免出现严重缺陷,无法避免。

3.开发反串讲环节和开发转测试验收环节必须覆盖主流程的happy path

4. UX先行,先让UX把原型和客户确定好,避免后期返工情况。


二、进度紧张


估计工时的时候,大多数情况大家都说自己肯定能很好的完成。大部分情况下都会有延迟交付。可能是突发事件影响,比如hotfix,重要成员请假等情况。缺陷修复花费时间比预计要多。

遇到这类情况,如何避免?

1. 估计工时时,需要考虑各种意外情况。比如节假日附近,大家请假的情况。

2. 产品质量差导致的修复缺陷时间长。其实可以让每个开发把修复缺陷时间加上。

3.排计划,预留出突发状况的情况。


三、预算紧张和技术风险


预算紧张一定会影响采购,那么服务器或者开发工具如果不能按照预期时间到位。就会出现阻塞性情况。所以前期一定要考虑采购计划。包括采购服务器和开发工具等情况。

另外所使用技术遇到无法解决问题导致客户场景无法实现的。也是常见风险。

解决措施:

1. 技术风险,在前期技术可行性分析和研究的时候,就需要考虑是否存在特殊场景无法实现,来避免此类问题。

2. 项目采购计划,在项目初期也要合理安排好。针对特殊情况下,提前预留部分预算。项目初期技术可行性研究和测试策略制定时针对硬件以及软件的需求需要及时上报。


四、质量风险


没有人愿意用质量差的产品,任何人都不例外。但是大部分情况下交付产品都会遇到客户评价质量无法达标的情况。

该如何规避?

1.项目初期,确定好所有质量标准。和客户明确需要达成的质量目标和要求。

2. 建立质量门禁,确保流水线所有步骤的质量门禁都可以达标。

3. 测试左移和测试右移需要在制定测试策略的时候就明确并执行起来。确保全面质量管理和质量内建尽快做起来。


五、人力资源风险


项目规划了10个人,实际到位5个人。项目交付日期还不能变。这种项目风险极高。

项目进行中,骨干离职。比如那个底层工程师离职导致登月计划受影响的热搜。

如何避免呢?

1.人员轮岗。尤其是关键岗位人员。一定要过一段时间轮换一段时间岗位。

2. 项目计划阶段,人力资源和项目交付日期一定要把好关。避免出现,人力资源不到位情况。


六、工具风险


也可以理解为日常工作的软件和硬件风险。比如开发一款苹果手机应用,开发和测试没有云测试平台,没有苹果机。开发和测试了个寂寞。

工欲善其事,必先利其器。连工具都没准备好。咋干活?

这种只能找领导申请资源啦。

希望大家的项目都顺风顺水,尽量避免此类现象出现。

相关文章
|
弹性计算 Linux Shell
阿里云ECS完美升级gcc版本基于CentOS8
阿里云ECS完美升级gcc版本基于CentOS8
2923 0
|
编译器 C语言 C++
右值引用,完美转发,NRVO 和RVO优化(简单易懂详细)
右值引用,完美转发,NRVO 和RVO优化(简单易懂详细)
1692 0
|
小程序 容器 JavaScript
探索uni-app:构建跨平台应用的神奇工具
探索uni-app:构建跨平台应用的神奇工具
|
Java API Apache
使用 Apache PDFBox 操作PDF文件
Apache PDFBox库是一个开源的Java工具,专门用于处理PDF文档。它允许用户创建全新的PDF文件,编辑现有的PDF文档,以及从PDF文件中提取内容。此外,Apache PDFBox还提供了一些命令行实用工具。
2659 6
|
传感器 数据采集 存储
项目实战:嵌入式系统应用开发
项目实战:嵌入式系统应用开发
|
消息中间件 设计模式 监控
如何优雅地实现接口统一调用?
【2月更文挑战第6天】
1240 3
|
前端开发 Java
SpringSecurity6从入门到实战之默认登录页面的生成
本文介绍了SpringSecurity在SpringBoot项目中如何自动生成默认登录页面的过程。当访问如`/hello`的受保护路由时,请求会经过多个过滤器。在AuthorizationFilter中,未认证的请求会被拦截并抛出AccessDeniedException。接着,ExceptionTranslationFilter捕获此异常并启动身份验证,调用LoginUrlAuthenticationEntryPoint的commence方法,重定向到/login。DefaultLoginPageGeneratingFilter拦截/login请求,生成并返回默认的登录页面。
|
机器学习/深度学习 算法 数据可视化
【传知代码】知识图谱推理-论文复现
本文探讨了基于图神经网络(GNN)的知识图谱推理,提出了一种创新的自适应传播策略AdaProp,旨在解决大规模知识图谱处理中的效率和准确性问题。AdaProp通过动态调整传播路径,优化了传统GNN方法。研究在KDD '23会议上发表,提供了tensorboard可视化结果和开源代码。实验表明,AdaProp在效率和性能上超越了传统方法,如全传播、渐进式传播和受限传播。通过Python和PyTorch实现, AdaProp在多个数据集上展示了优秀性能,为知识图谱推理领域开辟了新思路。
526 0
【传知代码】知识图谱推理-论文复现
|
编解码 Linux Windows
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
本文档介绍了在Windows环境下如何为FFmpeg集成libopus和libvpx库。首先,详细阐述了安装libopus的步骤,包括下载源码、配置、编译和安装,并更新环境变量。接着,同样详细说明了libvpx的安装过程,注意需启用--enable-pic选项以避免编译错误。最后,介绍了重新配置并编译FFmpeg以启用这两个库,通过`ffmpeg -version`检查是否成功集成。整个过程参照了《FFmpeg开发实战:从零基础到短视频上线》一书的相关章节。
1400 0
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
|
Java 程序员 API
【深入探究 Qt 线程】一文详细解析Qt线程的内部原理与实现策略
【深入探究 Qt 线程】一文详细解析Qt线程的内部原理与实现策略
1392 0

热门文章

最新文章