项目中从需求分析到研发上线

一、背景

应用系统从设想到需求到研发到上线会经历一些列工程化过程。比如经典的瀑布模型工作流,其实就是一个经过很多经验总结下来的工程方法。本节阐述项目中从需求到研发上线的过程。但是也有些根据不同的行业,不同的公司,不同管理者的风格也会有微小差异,但是基本离不开瀑布模型。

二、从需求分析到研发上线的基本阶段

1、在产品需求分析阶段,包括不限于产品设想,产品规划,方案设计(需求分析文档),UI设计,业务评审 ,研发评审。

2.需求从哪来

 以下是需求识别来源

业务需求

技术支持转需求

系统优化升级转需求

收集需求的一些手段:

项目系统识别需求是项目管理中至关重要的环节,以下是一些关于如何识别项目需求的建议:

确定项目目标:在识别需求之前,首先明确项目的目标,确保所有相关人员对项目的期望和方向有共同的理解。

与利益相关者沟通:与项目的利益相关者进行沟通,了解他们的需求、期望和关注点。利益相关者可能包括客户、用户、项目发起人、项目团队成员等。

制定需求收集计划:制定一个详细的需求收集计划,包括与利益相关者的沟通方式、时间和频率安排、调研方法等。

收集需求信息:通过访谈、问卷调查、焦点小组、观察等方式收集需求信息。确保使用多种方法来获取更全面和准确的信息。

分析需求:对收集到的需求信息进行分析,识别出项目的核心需求和非核心需求,明确需求的优先级和重要性。

建立需求规格书:将分析后的需求整理成文档,形成需求规格书。需求规格书应包括需求的详细描述、功能要求、性能指标、用户界面要求等。

评审和确认需求:在完成需求规格书后,组织利益相关者进行评审和确认,确保需求的准确性和完整性。

持续沟通和调整:在项目实施过程中,与利益相关者保持沟通,对需求进行必要的调整和变更,以确保项目满足实际需求。

3.如何做需求

了解清楚需求的目的,画出用例图,流程图,了解需求的收益

4.产品设计的要点

挖掘出真实的需求

能不能不做? • 能不能少做? • 能不能以后做? • 能不能优化?

专业的人来设计需求

不要让业务⼈员来设计 • 不要替研发做决定

站在用户的角度来设计需求

不影响逻辑的字段必填不限制 • 不影响逻辑的字段修改不限制 • ⾮必要,不限制

需求文档的字典,名词统一

名词统⼀ • 交互统⼀ • 概念统⼀

从眼前看,系统不能变差 从中⻓期看,系统变得更好

三、研发过程

在产品研发阶段 ,包括不限于研发评审,需求确认(需求解读),研发排期,研发中,完成研发,测试,上线,验证,关闭任务等流程。

在产品研发阶段,一系列的流程确保项目从需求确认到最终上线的顺利进行。各个流程的详解:

研发评审:在研发开始之前,团队会对收集到的需求进行评审,确保理解正确并评估需求的可行性和优先级。这一阶段会确保所有团队成员对项目的目标和范围有共同的理解。

需求确认(需求解读):通过与利益相关者的沟通,进一步明确和确认需求,同时将需求转化为可执行和可测量的任务。这一阶段也包括对需求的解读和分析,以便更好地满足用户或客户的需求。

研发排期:根据需求的重要性和紧急程度,以及团队的工作能力和资源,制定详细的研发计划和时间表。这包括分配任务、设定里程碑和交付期限,以确保项目按时完成。

研发中:根据研发计划,团队成员开始进行具体的研发工作。在此过程中,可能需要定期进行内部评审,以确保研发进度和质量与预期相符。

完成研发:当所有功能和特性都按照需求完成,并通过内部测试后,研发阶段宣告结束。

测试:在测试阶段,对产品进行详细的测试,确保产品在各种场景下都能正常工作并满足性能要求。这通常包括单元测试、集成测试、系统测试和验收测试等。

上线:测试通过后,产品可以准备上线。在此阶段,可能需要部署产品到生产环境,并进行相应的配置和调整。

验证:产品上线后,需要进行验证以确保产品正常运行并且满足预期效果。这可能包括功能验证、性能验证和安全验证等。

关闭任务:当产品上线并经过验证后,标志着产品研发阶段的结束。团队需要对整个研发过程进行总结和评估,以便持续改进和提高未来的项目交付能力。

在整个产品研发过程中,项目管理是至关重要的。确保每个阶段都有明确的责任人和时间表,以及有效的沟通机制,是保证项目顺利进行的关键。同时,不断调整和优化流程也是提高项目成功率的重要手段。

四、良性循环

项目研发过程要做到良性循环,就不能挖坑,或者少挖坑,在这个过程中需要制定一些列制度,规范,研发标准。

 制度:
项目管理流程:定义清晰、一致的项目管理流程,包括需求收集、分析、确认、开发、测试和上线等阶段。
变更管理:建立变更控制流程,确保对需求、计划和资源的变更能够得到妥善的管理。
风险管理:制定风险管理策略,定期评估项目中的风险,并采取相应的措施进行预防或缓解。
规范:
代码规范:制定代码编写规范,确保代码的可读性、可维护性和可扩展性。
测试规范:明确测试的流程、方法和技术,确保产品的质量和性能。
部署与发布规范:定义部署和发布的标准操作流程,确保产品的上线过程安全、可靠。
研发标准:
技术选型标准:评估和选择适合项目需求的技术栈和工具,确保技术选择的合理性和前瞻性。
质量保证标准:制定质量保证的指标和验收标准,确保产品达到预期的质量要求。
安全标准:遵循行业最佳实践,制定安全标准和安全审查流程,保护产品的安全性和数据隐私。
持续改进:
通过项目总结和经验教训的分享,不断优化和完善项目管理流程、规范和标准。
鼓励团队成员提出改进建议,持续改进研发过程,提升团队的研发能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/652059.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot使用AOP

一、为什么需要面向切面编程? 面向对象编程(OOP)的好处是显而易见的,缺点也同样明显。当需要为多个不具有继承关系的对象添加一个公共的方法的时候,例如日志记录、性能监控等,如果采用面向对象编程的方法&…

XMLHttpRequestUpload 对象

一、基本概念 XMLHttpRequestUpload 对象表示一个 XMLHttpRequest 的上传进程。它是 XMLHttpRequest 的一个属性,可以用来监视上传的进度。 XMLHttpRequestUpload 对象有一些事件监听器,可以用来处理上传过程中的各种事件: loadstart&#…

记录浏览器能打开github.com,android studio无法拉取github项目,并且ping github.com也拼不通的问题

问题: Android studio编译flutter工程突然碰上如下问题: 在浏览器打开该地址能正常打开,尝试ping: 解决方式 通过搜索,查到如下办法: 1、首先在ipaddress.com中查询github.com域名的固定ip地址&#xff…

LLM之RAG实战(二十一)| 使用LlamaIndex的Text2SQL和RAG的功能分析产品评论

亚马逊和沃尔玛等电子商务平台上每天都有大量的产品评论,这些评论是反映消费者对产品情绪的关键接触点。但是,企业如何从庞大的数据库获得有意义的见解? 我们可以使用LlamaIndex将SQL与RAG(Retrieval Augmented Generation&#x…

【Go】Channel底层实现 ②

文章目录 channel底层实现channel发送、接收数据有缓冲 channelchannel 先写再读channel 先读再写(when the receiver comes first) 无缓冲channelchannel存在3种状态: channel底层实现 // channel 类型定义 type hchan struct {// channel 中的元素数量, lenqcoun…

【vue3源码】vue源码探索之旅:项目介绍

简言 记录下我眼中的vue源码项目。 gitHubvue3项目仓库 项目要求: vue版本 3.4.15nodeV18.12.0以上使用pnpm包管理器vitest测试框架Vue3 vue3是渐进式JavaScript框架,易学易用,性能出色,适用场景丰富的 Web 前端框架。 Vue 是一个框架,也是一个生态。其功能覆盖了大部分…

QGIS编译(跨平台编译)之二十六:giflib编译(Windows、Linux、MacOS环境下编译)

文章目录 1、giflib介绍2、giflib下载3、Windows下编译4、Linux下编译5、MacOS下编译1、giflib介绍 giflib(又称为Libgif)是一个开源的C语言库,用于处理GIF图像格式。它提供了一组函数和工具,使得开发者可以读取、写入和操作GIF图像文件。 GIFlib支持GIF87a和GIF89a两种版…

Transformer模型 | Pytorch实现Transformer模型进行时间序列预测

Transformer模型最初是为了处理自然语言处理任务而设计的,但它也可以用于时间序列预测。下面是将Transformer模型应用于时间序列预测的一般步骤: 数据准备:准备时间序列数据集,包括历史观测值和目标预测值。通常,你需要将时间序列转换为固定长度的滑动窗口序列,以便输入…

计算机网络之广播风暴

广播风暴(Broadcast Storm)是指在计算机网络中出现大量广播帧的现象,这通常会导致网络性能下降,甚至整个网络瘫痪。在一个广播风暴中,网络上的每个设备都会接收并处理这些广播帧,这会消耗大量的带宽和处理能…

解决 github.com port 443: Timed out 的问题

国内访问github.com总是那么不竟如人意,时而无法加载网页,时而等我们抽完了一根烟后,它还处于转圈的状态。 虽然国内有gitee.com等诸多的代码托管平台,但却鲜有国人愿意去呢?其中的缘由,想必也不用我多说&a…

openssl3.2 - 测试程序的学习 - test\aesgcmtest.c

文章目录 openssl3.2 - 测试程序的学习 - test\aesgcmtest.c概述笔记能学到的流程性内容END openssl3.2 - 测试程序的学习 - test\aesgcmtest.c 概述 openssl3.2 - 测试程序的学习 aesgcmtest.c 工程搭建时, 发现没有提供 test_get_options(), cleanup_tests(), 需要自己补上…

Strassen矩阵乘法的C语言算法实现

矩阵乘法是高等代数中的重要基本运算,本文将介绍Strassen矩阵乘法的基本原理和用C语言进行算法实现的过程。 1. 一般矩阵乘法 首先,我们来看一下一般矩阵乘法的计算过程。 矩阵 A [ a 11 a 12 … a 1 n a 21 a 22 … a 2 n … … … … a n 1 a n 2 …

mysql中char和varchar的区别

目录 主要区别 具体区别 场景举例 优缺点 主要区别 char和varchar都是用于在数据库中存储字符串的数据类型。它们之间的主要区别在于存储空间的使用方式。 char是一种定长的数据类型,它的长度固定且在存储时会自动在结尾添加空格来将字符串填满指定的长度。cha…

【HDFS】一天一个RPC系列--updatePipeline

updatePipeline这个RPC一般都会配合updateBlockForPipeline RPC一起使用。 先updateBlockForPipeline、然后再updatePipeline。 建议先阅读【HDFS】一天一个RPC系列–updateBlockForPipeline 本文目标是弄清楚以下问题: 弄清updatePipeline这个RPC的作用。弄清updatePipeli…

【算法】观光(求次短路,Dijkstra)

题目 “您的个人假期”旅行社组织了一次比荷卢经济联盟的巴士之旅。 比荷卢经济联盟有很多公交线路。 每天公共汽车都会从一座城市开往另一座城市。 沿途汽车可能会在一些城市(零或更多)停靠。 旅行社计划旅途从 S 城市出发,到 F 城市结…

美赛注意事项

2024年1月27日 : 赖维杰 同学分享 1、最后的展现必须要漂亮(绘图、呈现) 李维情 西北建模王 论文位(核心)必须清楚建模位、编程位知道做了些什么 常见模型: 1、看真题,读往年论文,选…

在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通

目录 博客前言 一.创建springboot项目 新建项目 选择创建类型​编辑 测试 二.集成达梦数据库 添加达梦数据库部分依赖 添加数据库驱动包 配置数据库连接信息 编写测试代码 验证连接是否成功 博客前言 随着数字化时代的到来,数据库在应用程序中的地位越来…

Liunx运维批量启动、停止服务

在日常运维过程中,经常会碰到需要批量启动若干个应用服务,若果手动一个一个启动,非常耗时效率很低,这时候可以考虑脚本批量启动。 一、批量启动应用服务 1、准备服务列表 将需要启动的服务文件写入文件svc_list.txt cat >&…

pytorch-metric-learning度量学习工具官方文档翻译

基于Pytorch实现的度量学习方法 开源代码:pytorch-metric-learning官网文档:PyTorch Metric Learning官方文档 度量学习相关的损失函数介绍: 度量学习DML之Contrastive Loss及其变种度量学习DML之Triplet Loss度量学习DML之Lifted Structu…

Kubernetes的有状态应用:基础

文章目录 环境创建StatefulSet顺序创建pod StatefulSet中的pod检查pod的顺序索引使用稳定的网络身份标识发现StatefulSet中特定的pod 写入稳定的存储 伸缩StatefulSet扩容缩容顺序终止pod 更新StatefulSet滚动更新分段更新金丝雀发布分阶段发布 OnDelete 删除 StatefulSet非级联…