需求分析与管理
软件需求设计,每个公司都基本有自己的一套玩法。好比你有你的张良计,我有我的过墙梯。国内软件兴起这20年,也经历过各种模式。不过,随着这几年的互联网走精细化路线,大家似乎都对需求管理越来越重视了。从以前的Word满天飞,变成了一个个规范的tapd上的需求。
先看下规范的开发模式是如何运作。承接需求的视角来看,涉及的角色包括:业务方、产品、运营、研发、测试,这些角色以及各项的负责人、系统架构师、风控等部门都会按照需求的大小不同而会被拉到一起进行项目 PRD 评审,并逐步到排期、研发上线。
这里分别介绍下每一个角色在整个项目从研发到上线过程中的角色,方便大家了解在互联网做研发是一种怎样的工作模式。(当然每家互联网可能有不同的扁平化管理会略有差异)
# ⏳ 业务
研发角度你所承接的需求,最开始并不是产品经理给你,而是业务方根据市场战略提出需求,这些需求的背后是依赖于某些战略落地的背景,完成目标结果,这个目标可能是拉新、促活、留存等等,最终在预期投入下完成价值产出。
# 🎨 产品
业务定需求、产品做方案,产品经理需要梳理方案执行落地的过程,协调各方部门配合完成项目开发。
所以在 UI、前后端研发视角下,各处都有产品经理的身影。
当产品经理把各方可配合的信息协调好后,就开始整理输出 PRD 文档,在整理完成后开始拉对应的项目需要的人员,组会一起评审 PRD。可能有些时候第一次 PRD 评审会遇到不少问题,如果不通过或者有问题,则需要 2、3 次评审。评审完成后交棒给研发。
# 👨💻 研发
当产品经理的 PRD 评审通过后,按照项目的大小会有架构师、跨部门协同人员、项目开发人员、测试人员等进入到项目开发落地中。
在这个阶段首先会有架构师确定整体的实现方案,再通过会议评审后,把需求拆分模块拆解分配到各个研发人员身上。
再由研发人员进行细节设计,因为谁开发谁做细化设计,更能把握开发过程。在研发整体设计完成后,统一组会进行设计评审,这时候需要产品、运营、架构师、开发人员、UI 以及 leader,都会参会评审,评审内容包括:架构设计、细节设计、人员分工、开发时间、联调时间、测试时间、预发时间和上线节点,以及运营介入的时间和外部人员配合的时间。
这些内容都在会议上确认完毕后,会由产品经理发出一个整体的项目计划甘特图,由各方人员知晓投入的时间节点以及确认工时投入和目标产出。好了,这些都确认好后,研发正式进入开发阶段,并每天有一次敏捷日会,来反馈风险和进度以及待推进完成的事项。
# 💯 测试
当研发项目逐步接近尾声,并已经完成提测标准时候,有代码评审、有测试用例、有自行验证下,你项目所分配的测试人员就会开始编写测试用例并进入用例评审了。
有些时候测试用例也会早于研发提测前就开始进行,当测试用例评审完成并已经拿到研发人员提测报告,那么测试就要开始进行第一轮冒烟测试了,完成后就是功能、流程和预发以及白名单测试。在测试的过程中测试人员会关注到每一个细节的节点,白盒测试人员还会关注代码实现流程。
当测试工作完成以后,会提交测试报告,再由研发人员通知系统上线时间点,约定各方配合验证,最终发布到线上,交付产品和业务方进行验收。(后面就是运营要做的动作了)
# ✅ 运营
在测试和上线的过程中,运营人员会配合配置一些活动、玩法、券信息、息费、地图链路、视频等各项内容,来配合测试人员进行系统验证。在最终系统交付后也是需要运营人员进行处理各项运营动作,使用业务费用,完成业务目标,收集 GMV、UV、PV、获客、留存、转换等各项数据,用于分析效果和制定优化完善策略。