版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
互联网产品研发流程概论I一、研究背景1、提高研发计划性产品开发流程每个环节都涉及时间排期,这些时间管理要素可以有效控制项目时间表。2、提高研发效率通过明确开发团队每个角色的职责和协作方式,让每个成员只需严格按照规范做好自己的工作即可高效协作,降低沟通成本。3、^证产品质量通过确保每个环节的输入输出结果,让最终产出的产品得到有效保证。4、及时发现问题通过各环节过程数据,方便管理人员深入了解问题。|二、研发流程要点1、明确团队角色责权利每个角色都有明确分工和职责,以及业绩和晋升规则,从根本上保障团队执行力。2、明确项目管理工具通过项目管理工具将分解每个角色的工作任务,并形成高效信息流转。除了产品经理和项目经理需要通观全局外,其他每个角色只需及时关注自己负责的部分即可。3、明确^发流程最重要的是针对每个环节明确该环节的上下游关系,以及该环节作业的输入和输出内容。产品研发团队研发团队是产品研发管理的核心,建立强有力的产品研发核心团队是成功的关键步骤。1、组建团队产品研发核心团队通常由产品经理(1名)、研发经理(1名)、研发人员(5-10名)组成。产品开发涉及的职责分配到各位成员身上。2、角色与分工(1)产品经理产品经理是产品管理职位,负责市场调查并根据用户的需求,确定开发何种产品,选择何种技术、商业模式等。并推动相应产品的开发组织,他还要根据产品的生命周期,协调研发、营销、运营等,确定和组织实施相应的产品策略,以及其他一系列相关的产品管理活动。(2)研发经理研发经理是技术研发管理职位,负责了解项目的需求,系统分析,做相关的技术选型,制定开发计划与开发规范。(3)产品设计师产品设计师是产品策划职位,负责将客户需求转换为具体的产品形态。(4)架构师架构师是软件系统和网络系统的设计师,负责确认和评估产品需求、搭建软件研发和网络系统的核心构架、并扫清主要难点。架构师着眼于〃技术实现”,能对常见场景快速给出最恰当的技术解决方案,并能评估团队实现功能需求的代价。架构师分为软件架构师和系统架构师两类,分别专注于软件开发和系统运维两个阶段的系统设计。⑸交互设计师交互设计师是功能设计职位,负责根据需求文档设计交互原型。⑸视觉设计师视觉设计师是界面设计职位,负责根据需求文档和交互设计文档设计出产品视觉界面。(7)Web前端工程师Web前端工程师是界面研发职位,负责根据架构设计文档和界面设计稿,使用Web技术(HTML/CSS/JavaScript等)进行Web产品界面开发,并调用Server端接口实现Web应用。(8)APP开发工程师APP开发工程师是APP界面研发职位,负责根据需求文档和界面设计稿开发出APP客户端界面,并调用Server端接口实现APP应用。(9)测试工程师测试工程师是软件质量的把关者,负责根据需求文档编写测试用例、执行测试任务提交测试Bug、跟进Bug修正等。(10)运维工程师
运维工程师是产品发布职位,负责维护并确保整个服务的高可用性,同时不断优化系统架构、提升部署效率、优化资源利用率提高整体ROI。三管理工具三管理工具推荐腾讯敏捷开发平台TAPD,这是腾讯内部正在使用的敏捷产品研发平台,微信、QQ、腾讯视频等产品,都是通过TAPD进行产品技术项目研发管理。1.打开TAPD平台首页2.注册系统帐号
2.注册系统帐号工作功同从未如此轻用速空?HS出发生命同期,团力团块欣脸爬,可钞快锢工作功同从未如此轻用速空?HS出发生命同期,团力团块欣脸爬,可钞快锢3.借助企业微值配置权限无论折墙出脖型古亮更改成品4.支持需求研发全流程管理贯穿敏捷研发生命周期,帮助团队敏捷迭代,小步快跑。通过迭代进行目标制定与计划评审,完成工作分配,使用故事墙与燃尽图进行研发过程跟踪。迭代全程目标清晰,进度可控,研发过程敏捷迭代,小步快跑。支持Web版本、PAD版、手机版。五、主要流程环节产品研发流程分为以下阶段:立项阶段、设计阶段、开发阶段、测试阶段、上线阶段、磨合阶段、运营阶段、总结阶段。1、立项阶段立项阶段从公司战略分解开始,然后通过市场调研获取客户需求,然后梳理产品方向形成产品提案给产品委员会审批,审批通过后正式进入产品研发阶段。(1)市场调研需求调研就是通过调研筛选典型客户,并对这些客户的需求细节进行汇总和梳理。
25262?28291132瑞遴乱翻25262?28291132瑞遴乱翻的年龄理三1M挣用到IT步U不1呷百器;外口口到H岁237%加到允好211]%315^E5%九星MD手3.0%汕岁11上[万斗A EiC D E F GQQPVI^ZEHl?QQMfiS3B^rmit:丹曲is口出门rHMIC^fe®0i7/7£m8(.59S*53联54■■■5朗犯「品iA4jt-L£肉静L日生也下1JJ:19.0K.pmtST.TS6Lrm疼B勺京50Cn3D2*sasftZ5-JQ笔14DS丸H1S™泪遮:1?1]四口上弧仔鼻JLM3L.«.£9.眼艇向等而丁中以下L&T*1.5Dl对7%EL音:中L中干JV骡3l温珀W第Z:t2EJ1货ZO.IS古丹国立上28£n鼓“E珊学生唱相41.itSuCM»?5i14司亩工作曾ML0£弱dtg叁42弘16JL1S19202122212d自由础青ia.dKIMit2ntQ*他&M7HIt!Oft⑪以下55.需4E.FlEL.TH.LXO-1WE49/21咚E3.铁雷.萧R例H.4H1Z.I黑Q后艮上已13."J7我gq*西柯惠的性卿是:国59.5%文4D.5%【畔品由潴直要性与黄直修讦精用书感诉求如<川4*【畔品由潴直要性与黄直修讦精用书感诉求如<QQ早期用户画像数据对新产品则需要先约定大致客户群特征,然后针对这个群体做抽样问卷调查。问卷设计一般都需要产品经理完成,然后可以找专业调研公司去实施。QQMuw儿而4走QQMuw儿而4走SIN0TRUST新华德-为牌讥科技制作-腾讯QQ音乐用户研究总报告2006年11自新华值国际惜息皆询[北京)有跟公司
wwwsinatrustcn"京上港广州造博新华信协助QQ音乐产品团队进行用户调研(2)客户需求分析客户需求分析就是将调研过程中涉及的需求信息,根据需求重要程度分级,优先满足客户基础需求,也就是我们常说的客户痛点。目标用户需求 满足用户需求目标用户需求 满足用户需求的途径用户最关注视频内容质量、更新速度.连接速度,因此对平台的依赖性较差,用户退出门解较低口高级需求腾讯视频的需求层次分析V1.0(3)编写产品提案立项阶段主要是要输出产品提案,提交给公司产品委员会决策。产品提案也就是“商业需求文档”,简称BRD(BusinessRequirementDocument),是基于商业目标或价值所描述的商业需求。其核心用途是用于在投入研发之前,为企业高管层提供决策评估依据。其内容涉及产品概述、市场需求、竞争环境、重要性、成功要素、营销策略、盈利预测等内容,一般比较短小精炼,不包含产品细节。
支付宝用户事业部产品提案模版【产品提案名称】提案人坤雪部门昭外产品概述•产品内容?*产品目版r市场需求时用户外5户的竹的毡什幺?港H用户席户素有田大白面市场规模各大用长潜为各大?竞争环境提供类似怖馅的服务.市场上的■领先者罡谁?它为什必能取得领先?有无挑显着?若有的话,为什幺会构成挑战?对史村宝的必要性•对上乜宝《或河里巴巴J的伊直拈什么?*是舍有益「照固或睚化支付宝r货阿里巴巴下业务?•t4、曲的玷;是否必对殳付宝1成眼里巴巴》育苗在的威胁?美键成功要素•产打戊功的工世性因素是什么?支付宝E或阿里巴巴)现有资源是不是其中重要因南*基于文忖宝f或E可里巴巴)的优势.我伯是否有创新手般使再上付宝《则里巴巴1产品旌潼光]-市场上的竞争酒.“眼颖而出r莉芝何宝《或网里巴巳)的美侵性不确定因果是什幺?制支讨宝「或阿里巴巴〕的关侵性不利因廉加计幺?«收购其血公司站否是一个好的进入方式?所需资源预估♦电动产和所福人数?t却略估计):*完成产品开牡戡的盟何?(粗略估计"•所需甚池主要赍源1t妞硬件、带宽“一支付宝用户事业部产品提案模板(4)提交产品决策委员会评审提案评审主要是判断以下要点:与战略关联关系是否紧密?产品价值有多大?资源投入有多大?公司产品决策委员会根据提交的产品提案进行评估,评估流程如下图所示:
2、产品设计产品设计分为输出概念设计、输出功能清单、输出需求概要文档、输出需求详情文档等步骤。(1)产品概念设计•支•支付宝用户价值一■■钱包里有什么?♦身惊证——身精骑征体系概念设计是非常关键的产品环节,简单明确的概念不仅让客户更容易理解,也让产品研发过程思路清晰、少走弯路。而且,概念设计也是软件架构师将产品概念转化为技术对象化模型的关键环节。以支付宝产品为例,就是采用了“钱包”概念模型。钱包里有现金、银行卡,也可以放身份证、名片、照片、小票、发票等。区分好需求层级,产品交互体验的层次和用力程度自然就出来了。4现金——余款银行卡——卡逋信用卡——快捷支付优惠券一忧思春积分罚——积分宝会员卡——金时户去哪里用?+花载场民,文力土自仃业为f生活端要..格用十用款.转眼、堡“-福宝、口再-阿里巴巴,自作也牛(此推胆、处的而、盟惨、忖区,・购买理由>的美・价廉支付宝钱包用户产品模型(2)确定产品功能组合根据产品概念模型和需求优先级,确认关键性的功能要点。PersonaADplicationOffneApphcatioApplication外观;社区化应用(3)确定功能清单然后对功能进行树状化梳理,把所有功能点都整理到一个列表里。ci#)同知不观屈•*#)AMLMUCHMx:,皿ACSY4MAXMX1MI■Jr"HAKKiUDt«fwi«9bb■“eM»r«博Et".也.«*£4r»9.MnsXMMrgr•—•—,包AaiLlj—rr*.ll匚y夏外.工ur*ArthrrrrmEHL^issasStMraz:m,L WM<€・M”*/:〈moo«»«<>«w>款温也43I6:8«MnIUf才百■,sit'dRBV7M.VJBisff*jgft用E••6・JW“开火0Ann9AtriFi*rae“苑EA“N•月W«w«frnra-rrrrTrrmrr:■«/«,1-*X*7TfWt/Mn«.m»«-3KE/・?“*VQ«©f■W■大・出匕割PTO-・^・ ■,.■Tiv”—4g*9T<■■位M99r/WJtTt/Tl0发山总I上冗dvrcRM/,・■■・Bfn.z.nmj4F»am”QQ影音产品功能清单V1.0这些功能点后续都作为需求点加入项目管理系统TAP中,方便团队所有成员沟通和完善这个功能清单。形成功能清单初稿后,产品经理需要先在产品团队中组织讨论完善,然后再找运营团队沟通完善,然后是找交互视觉团队补充完善,最后再找研发项目经理、研发、测试、运维等角色沟通完善。这个过程既是帮产品经理完善的过程,也是形成团队共识、激发团队热情的过程。(4)输出需求概要文档概要文档明确某个功能模块下的功能介绍,一般是多个功能点的描述。需求概要一般由产品经理负责撰写,不包含功能细节描述。为了方便与产品设计师们沟通需求,可以将主要功能界面草稿加入该文档中,用原型草图能更好地描述主要功能。3产品特性概览,主姜功能。功能描述c状态中P2Pp含人新版P2P^ .OPENhP开机启动,支持F2P甲DELAW书签功有加记住观看具体位置产OPK产窗口尺寸#窗口尺寸自适应分辨率甲OPEN卡广吉声音控制中广告声音控制产OPEM控件整合"点播回搐.QQU、造完整安装的兼容户OPEW自幼登录甲增加自动登录选项产QFL2B缓存管理上用户可以设置缓存路径和大小平口FEW4特性概要描述1P2Pv更新P2P开发生的8月版本,主要特性包括(Fromwwj。:¥可配置延迟HTTP下载(主要用于广告缓冲时间:4斐正直观看节目,采用究P2P下载模式m亚分存储与请求,对于顺定义块<12SK>,切分为1K为单位细分请求〈不分用户与下载模式)pP2P采用顺序下载为主。艮务器可动态配差)3P州优先,HTTP辅动下载.【以前逻辑为端畅度优先”《服务器可调节第略》3■4.2开机启动.,腾讯视频PC版播放模块的需求概要文档有了某个模块的需求概要文档后,研发项目经理组织团队沟通需求概要。产品经理首先介绍需求概要然后由其他团队成员提出自己关心的专业问题。会前产品经理提前分享文档,并收集准备大家的问题点。会后主架构师根据需求概要做架构设计框架,研发工程师也可以针对自己负责的模块做技术预研。有经验的工程师,往往在这个阶段就开始试着做个Demo,把主体功能流程跑通,这样在正式进入研发时就会比较轻松,专注于细节完善和产品质量。
(5)输出需求详情文档需求详情文档由产品设计师负责编写。需求概要中的需求点,每个都需要单独编写需求详情文档,而不是把所有的需求详情都写在一个文档里。这样会导致需求详情文档非常长,内容庞杂,这个会导致后续很多问题。需求点最好都能拆分到1周内能完成研发测试比较好,这样才能有效实现敏捷开发。腾讯视频自动登录需求文档」修订日际修订内审修订版本产修订人卡200+5-3W创建文档产VWTeresagao*212009-6-3^根据交互稿更新产Teresagat%12009-6-15卡根据讨论,去掉提小登录框,不用提取用9“登陆后您才能使用该功能”产“却Teresagao*212009-7-15卡我的视频tab处理调整一V4PTerssagaot11目录JL+JL+JL+JL+J2+J2项目背曷具体说明客户端QQ面板启动桌面启动网页或其他方式启动客户端设置修改登录说明视频库统计问题对历史观看的葡响■2项目背景一腾讯视频PC版自动登录需求文档需求文档并不是产品设计师一个人闭门造车就能写出来的。产品设计师需要频繁与交互、运营、视觉、用户研究(UER)、架构师、测试经理、开发、运维等人员沟通。沟通的过程更多是产品设计师学习和融合各个角色思考的过程,同时也让各个角色的工作更加明确。一般需求文档的编写分成以下步骤:第1步:根据需求概要设计用户操作流程图。第2步:根据用户操作流程拆分各个界面,绘制主界面草图加入文档,再分别描述每个界面的主要元素和功能点,再描述界面之间交互的逻辑,最后加上交互背后涉及的业务逻辑。第3步:找运营沟通需求,根据运营人员的建议补充营销位、运营后台工具等内容。第4步:找交互设计师沟通交互细节,根据交互设计师的疑问补充界面中的交互逻辑。交互设计师完成交互设计稿后,将交互稿截图并加入文档,并完善交互逻辑说明。第5步:找视觉设计师沟通视觉细节,提醒视觉设计师突出重点。视觉设计师完成设计稿后,将设计稿截图并加入文档,并完善视觉界面说明。第6步:找架构师沟通算法和技术逻辑,根据架构师提出的疑问完善业务逻辑。第7步:找测试经理沟通测试用例,根据测试经理提出的疑问完善功能细节。因为测试经理需要写测试用例,测试用例是以需求文档为蓝本,如果需求文档不清楚必然会导致测试用例不完善,因此测试经理往往对产品设计师的帮助很大,甚至会比产品设计师更了解产品细节。第8步:找UER做功能调研。UER将需求文档转化为调研文档,然后通过产品体验群、邀请客户当面体验等方式找出产品设计中的问题。然后UER反馈给产品经理,产品设计师合并优化成产品需求详情文档。有的公司UER调研也是由产品设计师承担,但是专业性上有可能难以保障。第9步:找产品经理、研发项目经理、运维确认需求文档,并初步确定排期。(6)需求评审如果之前编写过程与每个角色都有了充分的沟通,需求评审就会变得很轻松愉快。否则,产品经理和产品设计师将会陷入无止境的辩论中,往往动辄就让整个团队消耗了几个小时还无法形成结论。因此,需求评审的关键就是产品设计师事先做好评审会的一切准备。提前准备好所有资料并提前发给团队所有成员,并事先与所有角色都逐一确认过关键问题,而且得到了产品经理和研发项目经理的确认。在评审会上,先讲总体,再讲重要细节,再讲次重要细节,并层层确认。对于会议上争议较大的问题点,5分钟后还没结论的马上记录下来,会后再单独讨论。如果问题点太多,就说明产品设计师还没考虑清楚,那就尽早结束会议,重新修改后再召开评审。这种情况会严重影响产品团队的声誉,因为耽误的是所有人的时间。为了减少这种风险,需求评审一定要提前1-2周召开,而不要等到开发前夕才进行评审。3、交互设计交互设计主要是将产品经理的功能设计,用原型图和交互流程的形式展现出来,方便与用户及团队进行沟通。交互设计原型将产品经理提供的产品原型草图具象化,减少了需求不确定性,保证产品功能可用性。HCIDESIGNFLOW事方妁■催重加目大。虫车进行■!!步攀任各会议输出理论应用."闲晞思■东博・口便与眉目眼金第玻山量/八曷若兹时朗当4监I二聚茶1交互做计离求,,或箫耒用尿天日您石《四用广?修要需京晓由M卫可讨产品口岌王〉幽却尸厉行品濯.了解剧目背*ftAfLT*生克常去符才REffSKUflitif|定期T?面带商.|H44BIU零用性■上|里II总济纯反铁泡免廉里1(1)交互设计需求分析『雄三;宓豆胃m舍出£?对I同H包F£和:*算工产国空工注计件新修告、1同声仙屯鹿展场*;<!?国曾)上情外酎心jcMehm[土巾:出勤风#总帖值粕】in^Ai^Hn^jW)zra上忡TI'xujrfeLecox:*I二内・干方股:筑的〕.n配:片.叮讲⑥白 CMk星」SClEifeBM力取及嘛W旧商〕xm讷就归:叼¥:,口」,1:Efiikt腾讯设计完整流程图交互设计需求分析主要是要回答以下问题:L^micx^r上fl至'%oJytxaM:就占1t由谢H目嘉坛夏卜<x:w产品制西,丹氏前/或MKHN汇选,・用团中再方丈住如[交至谡阍HJEK*覆*《XX广用零日后整1抬rfc罐】£人机*•我计i,旺什江也)4%朴海质》=用用性1W*txx产乱也牛评成承告,用户研究 人物角色 情景描述 任务分解 设计IA)重点是给哪些角色看?涉及交互稿的角色很多,几乎每个角色都需要,但是只要有专业细致的交互稿,也就能满足所有角色的需求了,无需针对每个人提供不同的交互稿版本。产品经理:产品经理需要将交互稿截图合并到需求文档,提供给各个角色作为需求源。视觉设计师:需要以交互设计稿为基础,设计出每个界面的PSD文档。研发经理:需要通过交互设计稿,判断需要调配哪些角色参与,大概需要多少时间。架构师:需要通过交互设计稿,梳理出软件架构设计,特别是功能流程设计与软件架构和网络架构设计紧密相关。Web前端开发:需要通过交互设计稿,确认网页界面是如何串联起来的。这里不仅涉及功能流程设计,也包括交互细节。APP客户端开发:需要通过交互设计稿,确认APP软件界面是如何串联起来的。这里不仅涉及功能流程设计,也包括交互细节。后台开发:需要通过交互设计稿,确认采用哪种后台调用方式,以及如何通过交互设计让用户在面对网络延迟等情况时体验更佳。测试:需要通过交互设计稿,编写功能测试用例,以及每个交互体验细节的测试用例。用户研究:需要通过交互设计稿,访谈客户,让客户更容易理解产品功能,从而获得更有效的反馈。B)用户场景是什么?确定是要做什么场景下的交互设计。具体包括用户画像、主要功能流程等。C)采用什么样的形式?交互文档大多都采用Axure进行设计,一般都采用线框稿的形式。使用Axure创建交互设计文档D)要达到什么标准?一般衡量交互水平的指标,是整个功能操作流程的流量转化率。以注册登录为例,可以通过抽样监测从进入注册到登录完成每个步骤进行数据跟踪,然后得出转化率数据值,然后再跟竞品或类似产品进行对比,不断提升这个转化率。(2)功能交互设计功能交互设计主要是将软件界面之间的跳转关联关系表达清楚。tKff^udifeOrmwa-as上兆百'1IM星.弧由唯址「3陶赛・m“卫士吐自检将3y线理的电的叟金也由.在毒、掇并隹加:易.品KbiHd*停苧日塞左因地交生用再-门祥山运的町52率雄也比馋,治包"墓久俗代一|小此能孙卓IEtKff^udifeOrmwa-as上兆百'1IM星.弧由唯址「3陶赛・m“卫士吐自检将3y线理的电的叟金也由.在毒、掇并隹加:易.品KbiHd*停苧日塞左因地交生用再-门祥山运的町52率雄也比馋,治包"墓久俗代一|小此能孙卓IE受划E干卡:甲督人工J**酒啊”11胸am防啜却口■无木品1$±ETS,三叟**岬,一IB3I盯口日檀用』Utd或K天与求刑下」^^.挈疣升江占百大^督甯占应主毒炉件康卡根*.M*僧斗df由总不利白巳生.也速下就ff»nit»md!ft."ritTR.3^,鬲费.iLFitg一冲季差,时I鼻滑曾武宝,修直壬断盾工事》hhp3豹*1(僖即iEMSritfc.我时融K4S.壬U1■也SWlXOgBTH.附0ifH呻刊为力/flesf-.Tjjjwm-r»?Fn-.号H横■为二年天!■一十划T开百思工土工界而E目己峋唯事出手Ehffl■盟St^TJBi1巾“匕ClQiTmiSHhHW:河FIS%jNffiEK助止本身看重入廓.WS-UM的画应■»化盅AH1上臼.- -:g金”EiiM:争百度顿W*3 "4干反.感▼flUBn3B.bnldj.t.r, ■质手划职 期IT# 要显fi 挈件的 1m*中字港.:IDSt*tlQT3)i3gMHH:即却IZW)5回 器跳匕工由富山母林猩庄g百度电图管事41ufft@tr超制护<EiE-F«*宸m内百度电幽管家qu内百度电幽管家qu占山自.Mldu.oom女JVE荀口F■世件可小£Bj软策印1.印M至比变/碎KJ25]iO.H-lE>MJ-AflffB.fHQQHlLUd'Xfi算工门前IKim也融HUilt(3)交互细节设计交互细节涉及点非常多,不同公司、不同类型的产品都会有自己不同的交互设计风格和细节处理方式。为了保证产品交互细节上的统一和规范,互联网公司一般都会制定自己的交互设计规范,以便指导设计师完成交互设计。网站产品交互摭范VE.W基础交互期范VL&一、.目的“.它,吁卢品苴咒住牧的统一.'2,词少不谴的沟通和开发成本,,二】内容(网站应用交互基础(控件组件),•基附隹扪地范3你与■按里(CommandButtons}・怆展接三(ProgressiveDisclosureControls)受ij^CLinks更园至13(RadioButtoni)♦翼选运:匚MMBoxes卜文丰恒;TextBoxes)*Tips提示(looltipsandtnfotips)a瓦签(心也)v框:GroupBoxes)」至单(iVlenus}q*孤M明件规范!<围灾阻件期范髓证起蛆件规范*■何宓谑组件规范f对话国M-s的日BM僚土勒眄hlbcix)期范〃搜索组件期殍版快=H月住用规范f公司已有;1腾讯网站产品交互设计规范V1.0交互细节设计,一般涉及交互控件元素、交互文案、装饰图形等内容。每个看似很小的功能细节,都往往需要花费大量精力去做细。为了节省成本,在这样的功能开发出来后,都最好对象化模块化,其他场景只需调用这个模块即可快速创建类似的功能。上一页百页答非当前页当前页省略号尾页将下1页♦一页.3.4上一虫-必选当前页为第一页时r上一页按包置友n下一页-必选当前页为最后一页时r下一页按短置灰n首面特-必选尾页符一口」选省昭号-视上一页百页答非当前页当前页省略号尾页将下1页♦一页.3.4上一虫-必选当前页为第一页时r上一页按包置友n下一页-必选当前页为最后一页时r下一页按短置灰n首面特-必选尾页符一口」选省昭号-视情况出现,,最察保留9千页符,多于9个页符时使用音暗号7+“尾页符”的形式当前页-彦选当前瓦为不可点击状态r并奏出显示区另吁其f也页码的“当前克”状态非当前页必选翻哪域区可选页码输入框4确支按钮,如:到第确定网页翻页功能细节交互设计4、视觉设计(1)视觉设计需求分析视觉设计需求分析主要是明确视觉设计需要达到的目的。以Logo设计为例,最常见的需求要点是两个:明确表义、吸引视线。因此在设计过程中,通过把竞品和不同设计方案可以放到一起,从而找到最优的设计方案。结果■色机醒白的颜色.从耳里凸出晌立体理存助手抓在用户狗主意力.和输人法眠系不上旭宾在■色机醒白的颜色.从耳里凸出晌立体理存助手抓在用户狗主意力.和输人法眠系不上旭宾在用过搏狗不知道这个是输入温加加保菖品,没兴.趣。票光,陵品、源砍魅党很奇怪.息不是错了。宇国P:根可眠是2/8联福.不到pinyinP箝测晶口nnt逛组.喏:SiSttJg标取物宇也匕指代初莪急勤晒接汉字科头五:得定是百度输入法Logo设计需求调研(2)视觉概念设计视觉概念设计建立在视觉风格推导基础上,用以描绘出产品视觉风格的基本方向。该步骤需要确定产品风格,为后续确定设计元素、明度、色调、质感等设计细节奠定基础。
(3)主界面设计主视觉设计师拿到交互稿后,针对主要功能界面设计风格定位稿。=<00:00:^5/00:16:32火花对决精武风云那女受错身盗梦三间主城戒备火龙对决火龙对决精武风云火龙对决火龙对决Thesenatorm或已百度影音播放器主界面HDTV.X264-DIMENSION庭百度常音播放列表 +fflii精武风云精武风云精武风云火龙对决=<00:00:^5/00:16:32火花对决精武风云那女受错身盗梦三间主城戒备火龙对决火龙对决精武风云火龙对决火龙对决Thesenatorm或已百度影音播放器主界面HDTV.X264-DIMENSION庭百度常音播放列表 +fflii精武风云精武风云精武风云火龙对决(4)觉细节设计然后针对界面中的每个控件,都按照像素级标准进行绘制。每个空间的分层素材都需要通过PSD文档进行保留,色块区域的颜色值需要标注,按钮的每个状态都需要单独设计,每个控件的尺寸也需要明确标注。交互设计中的每个细节设计状态,也都应该有对应的设计稿。aw3FxafWCW,,。立LtAkJ.”W»t-»»O—V.X5ji〜e・,ypiwviimmtut<!***»xorrrx”r±»K^MxiNf *dE、:▼eW—•y—•♦Mly,Mirs«.Mv*««e i*ah“rwwflKG・;WXKe”J*<zAa«i»^ilWeVMj.>•■PWt«ML・XXZ*<▼»•♦OZZMXT?».-4..«wNH%»,*”■♦;-2OJA**■,3TJ«■:*««♦♦♦・•・,
♦♦♦♦♦
*****腾讯视频播放器内容库视觉细节设计(5)视觉设计规范与交互设计类似,视觉设计涉及点也非常多。为了保证产品视觉细节上的统一和规范,互联网公司一般都会制定自己的产品视觉设计规范,以便指导设计师完成视觉设计。,引言介培啜日若与人QQMusic•产品设计理念风格美髭学•V工基侬素系烧体志标准审徐志和标志宇的州自岳吉减•悔黑道,引言介培啜日若与人QQMusic•产品设计理念风格美髭学•V工基侬素系烧体志标准审徐志和标志宇的州自岳吉减•悔黑道•VI诲用系统界面翟计加a主要界面球果更羽面空享超对主孱面理用界面』甜】㈱■S,QQMusic;;QQ音乐视觉设计规范5、架构设计架构设计是架构师对各个子系统关系的抽象模型,用于指导大型系统的开发和运维。架构设计主要包括三项工作:系统架构设计、软件架构设计、网络架构设计三个部分。系统架构设计一般都会采用MVC(Model-View-Controller)模型,将业务逻辑模型、软件界面、控制器逻辑层进行分层处理,然后通过控制器逻辑层确保业务逻辑层和软件界面层的同步。MVC模型的好处是在优化界面及用户交互的同时,无需重新编写业务逻辑。同时也有助于管理复杂的应用程序,可以在不依赖业务逻辑的情况下专注于视图设计,不同开发人员可以同时开发界面、控制器逻辑和业务逻辑,同时也让测试变得更加容易。(1)系统架构设计如果整个系统研发是从零开始的,架构设计则需要从概况图开始梳理,然后再补充各个模块的架构图。这部分一般由首席架构师牵头,属于整个产品技术架构的总纲。系统架构概况盘平台个人北吊平台公共鹿者播 语喜安介认证四f,汴俾.4活助手—海宝:咫B新行蛆出出应国平台言作伙骤入收粮台收割安全辘处理平自客户宿愿平台信ffi
产品赚盘平台个人北吊平台公共鹿者播 语喜安介认证四f,汴俾.4活助手—海宝:咫B新行蛆出出应国平台言作伙骤入收粮台收割安全辘处理平自客户宿愿平台信ffi
产品赚前户信息督中心
帐劳之讳
支价消HAPI银行接人通忖网美支付宝平台系统架构概况图一般而言,子系统名称都会与产品概念保持一致。子系统不论是应用前台还是后台,通过公共服务层、业务逻辑层、基础业务逻辑层关联到一起。这种对象化的架构设计方法,会让整个团队使用同一种语言在沟通,相互理解起来更容易,有利于提高协作效率。分户日余颤日终子系统科目汇总分户账户[内)外部分户历史日余额内部分尸历史日余颔支付宝财会系统架构图(2)软件架构设计软件架构设计一般采用分层架构设计模型。软件首先分为两个大层次:前端和后台。前端应用负责提供与用户交互的软件,分成Web应用,PC客户端应用、移动APP应用等场景;后台负责实现所有业务相关的操作和服务,分成接口层、业务逻辑层、基础逻辑层。软件架构设计时,需要主要做到以下几点:支持模块化、高内聚、低耦合、可伸缩性,同时也要防止过度设计。已上线软件如果要新增某个功能,则需要针对该功能进行软件架构设计,并最终形成软件架构设计图。
曲Coo)(io(uiii]GcIQQFtscndScrv1ct.SccoraicndScrvlct觇木惇的bindCr«ateMailBodyTpl数损婵c.砌11FtIandSeivlet腾讯视频邮件推荐功能软件架构设计图然后针对这个软件架构图进行细化,先明确系统涉及的所有基础逻辑层模块(对象),以及该模块的输入和输出项,并明确模块内部的基本处TU.ingij,所有奸友缶息的卜匚血'曲Coo)(io(uiii]GcIQQFtscndScrv1ct.SccoraicndScrvlct觇木惇的bindCr«ateMailBodyTpl数损婵c.砌11FtIandSeivlet腾讯视频邮件推荐功能软件架构设计图然后针对这个软件架构图进行细化,先明确系统涉及的所有基础逻辑层模块(对象),以及该模块的输入和输出项,并明确模块内部的基本处TU.ingij,所有奸友缶息的卜匚血'™™™™™"™^...L. 13-uin>zuinsHG.flitfir工笠I.・•端同曲渊1鼎黜坤3工n温丘而i同DisplayReccnoirendList,Te11,最近近善好友信息的]lKL12.CgkiMuinhjTUl]LL£hvid2Dr提作j 是否成功的J(血R4m™物#即A.CrjakiE'(uij.!I?平和,%iE^nodinendAriBjultj।G.Toinis14.bin.rui】LE15-拚作 j 接用户;…1晋量值用'比即山W。mUs故推吞好i友!理逻辑。这些模块有的有可能已经存在,则无需再开发,单独标注出来即可;还没有开发的模块,则可以交给软件项目经理指派给工程师开发。Tancent腾讯Tancent腾讯概要设计说明书下表要1腾讯视频邮件推荐子模块功能和处理流程表卡模职务亏模职名梆输入地理渣程输出 Gqvrcmdl*21L用户点击“推荐”按钮〃2.用户和推荐界面的互动信息+3.姮回传的response^1显示推荐界面Q.判断用户输入,信急的合法性1.判断用户操作是否成功产工用户操作是否『合法的提示“2.用闩桌作是否成功的提示#工.:.对服务器的request请求产qV_rcniL"Qistlajiagm.用户点击“推荐气按钮产’生成登录界面,装收.用户登录信息产跳转到推荐界面产砂gv_rcniJ_3^胸,.根据必息首战对应的所有好友的用工和nick+-,.将装些信息整理成合适的网页输曲所有好友信息的<html代码产qv_rcni[]_4^我IS氯Y腐皿1.根据胤口道找对应的最近好友的yjX和nick+J.宿这些信息整理成合适的网而输出c最近好云信息的btml代码产qvrcmtlS*21网由request请求产1.判断®JUESt是否合法"包含操作是否成一功的xtrM然后明确界面上可以直接调用的各个业务逻辑层模块(对象)名称,以及对应接口、属性、方法。
表3.2.QQVideo视频邮件推荐模块和功能交叉引用表」推荐好友交互界面好左条件检查发送邮件数目检查邮件发送亩计数据记录U(取所有好友信息)*甲甲U(取最近好友信息),P甲PuG理界面显示)0U(好友数目)Q度会盥到m典d$题xkL)-Pu(好友双向关系》卡11卡11卡甲U(传递数据)户11炉11炉.U(查询数据库)炉U卡U卡U(登录提示)PCmglailB皿加甲U(生成邮件体正文)*对于还未开发的接口,如果涉及到数据调用,则需要梳理相关的数据结构,并确定算法。■5.数据结构和算法设计4,5.1.用户推荐视频基础信息表JL理也乐飙正,本表用于记录用户推荐视频的相关信息”为其他模块提供基础数据。v字段名 类型 空否 其他 说明否。主键」用户的皿号1maduius可p用户推荐的好友90号1可一♦用户推荐的视频编号。w可(数认:0)用户推荐的次数(以一段周期为单位,例如天)产讲可(数认:0)卡炉用户推荐的时间(一段周期的开始时间)一w否炉记录创建时间户timestamp可p记录最近修改时间户loc^皿血X©州可(数认:0)为数据迁移设置,上面介绍的只是最基础的软件架构设计流程,为了保证软件的柔性可用,经常还会RPC服务组件(让网络分布式应用开发变得更容易)、消息中间件(将模块之间的交互异步化)等方案。⑶网络架构设计A)运维架构架构设计需要保证每个环节都能快速迭代配置尤其是在服务器CPU、内存、存储、带宽几个方面需要做到高可用性。以新零售个性化推荐动态Feed为例,我们梳理下整个网络结构设计的流程。首先需要根据业务数据分析网络系统需求。一般Feed信息流前3页访问量往往占了90%以上,因此在做缓存设计的时候,我们完全可以在缓存数据中只保存每个用户最近的100条数据其他的需要用户下拉再从数据库中实时生成。然后需要从技术上解决高并发和高性能的问题。因为Feed性能压力主要集中在查询请求量上,而且一条Feed数据经常是数百甚至上百万人访问,因此Feed很适合采用缓存系统。当访问压力不大时,采用单层缓存数据就可以了。如果日均访问量达到了百万人次而且峰值非常明显,则最好采用双层缓存机制以增加系统扩容的灵活性。当写入Feed量很小但是访问量暴增时,只需扩容L1层服务即可;写入量暴增,则对L2层服务快速扩容。缓存扩容主要是提升QPS、带宽瓶颈以及缓存数据库生为上备性能。多级双机房缓存系统idcl idc2L1扩容T增加吞吐量T小加访砰带宽idcl地来的诘求生为上备性能。多级双机房缓存系统idcl idc2L1扩容T增加吞吐量T小加访砰带宽idcl地来的诘求idc2端来的清求Mas帕「犷容,增加容量,降低穿透率SlaveGroupMasterGrojpLIGrojpLIGroupLlGroup每个Group 价,内部H日stiLlGroup如果希望降低研发成本,也可以考虑购买腾讯云个性化推荐服务,这些中间处理过程就全部交给云服务去处理,这样可以集中力量解决业务层问题。Feed中除了文本数据外,还会有大量图片甚至视频数据,此时可以采用该CDN做文件缓存。LocalCache+分布式缓存,这是常见CDN缓存策略。此时比较经济的选择,是购买CDN云服务,发布Feed时,把这些图片和视频数据先Post到服务器,然后再同步到CDN云服务中去。然后是数据库的分布式架构。网络架构师拿到软件架构师的数据结构后,首先对Feed数据区分冷热数据。Feed数据冷热一般都非常明显,可以按时间维度拆分做分表(例如每天Feed数据是独立一张分表)进行冷热数据分离,并对冷热数据采用不同的存储方案降低成本。Feed数据还有快速检索的需求,因此需要通过建立索引提高检索速度。
Feed存储架构-MySQL二级索引
offsetscount内容content・按照UI二级索引
offsetscount内容content,每个用户每个月一条记录■每条记■录表示这个.用户这个月发表了多少条撇博一级索引按照ID分库分表每天建立一张表为什么不需要我照UPHash?B)服务拨测系统一级索引按照ID分库分表每天建立一张表为什么不需要我照UPHash?此时,就需要有效的服务追踪系统。对新零售企业而言,最经济有效的办法是采用腾讯云拨测系统。通过部署抽样接口到云拨测系统,特别是在高峰时段进行监测,即可通过手机短信或邮件监控服务异常。0日志统^系统日志统计系统建议直接采用腾讯云日志服务。日志服务CLS三”.鼻总■:CloudlogSerui忧I娓供一站式器口信盟铝瞪夷吉赤,它无画牝注IT瑞音后吉:弗辛五分独书引电多挟,,I阿至=ME卡〕•件£三存话到白云内若审基讨出好于于全启植后左仃而;匕古眼若,邪即忌轻松建决业起内看计.括行监拄,和全*if己占i己更.大太曜任白志运鞋116.甲甫FF遇此外,还要考虑全链路压测、服务器登录安全性、运维权限分配、流量峰后降级预案、共享Docker集群资源等问题,确保系统可用性、安全性、单位成本。6、创建版本计划当架构设计完成并评审后,研发项目经理开始对需求和架构进行切分,形成版本计划。版本主要作用是用来明确研发节奏,方便团队协作,特别是方便测试和产品发布。一般产品研发节奏都是按每周1个小版本,以便安排和协作。但是因为APP有发布周期和推广成本的考虑,因此会每隔几周发布一个大版本。每个版本都包括若干需求点,因此自然就明确了测试范畴,这样测试范围就不会无限制蔓延,可以让产品节奏非常明确,形成快速迭代和敏捷开发的研发风格。版本落地到代码管理层面上关键就是代码管理系缴一般都选用Git)中的Trunk版本。首先项目经理需要在Git中创建Trunk版本,并为每个研发人员创建分支版本。研发人员在分支版本中测试没有问题的版本代码,将由架构师或项目经理合并到Trunk版本中,这个版本经过编译后进行功能和系统测试,没问题后再同步到运维发布系统中发布。7、^发阶段(1)^发测试环境准备主要是部署Web、APP开发测试环境,以及部署需求管理系统、代码管理系统Git等。青任人日均0,在言并代码・看评有莱匐1内河早.境试一为国三田利试像楚音1离到所声口左人员冏代码cMTin-台并代码,得止像西stiakahuariEL2月L5日2塘降连校测出坏1S的全装包,并作安装、克庙、升强等基本中船刑试shakahJijariKL2RL5S赏迎包文件统一采用小写字后氤名m则M其本脚后对代码忖在计siblashATitL2月L5日j国代吗支以总hensheriE国月比日4用匾证省端绿代码siblflshariE13月15日物件打包>c-nztiEriEL2月L5日注烹版本专1文件名要班毫由开发人员右测国环携的全桁电削玄不相试,坦改bq;fi构正式科惬的戴搦导人刊试科也willsamiajmL2月L5日提首备份到TI孔杯的也搪构节豉句展交洽曲皿沙小四j上佶g制试房源匹圭BL2月也日由宅必项知危,全部卫正版AME埔江e+交玷划上忙到理戊开风/t亚筮年占3hah:ahuari£思月14日T耻餐刑沮并度就相be-ckzh.aanfL2月|L5日不鸵技加”三不营前丁舌的裾罚受源推荏修茂刃图过坏审K在刑世耳1且别比,EWuttfabmmi12月比日:时戏大斤#t范戏强行开触是舌正常测出雕我信良同堂若豉建厝目坐下.空手91::rtokR再测irfHU”IB寻人悚有ITJTtfiMillsonjiansL2月B日10死田疝后一鼠有垢洋过猛特发布讦悔的士月去柒乜shakahu^TiE12月15日打包打戏骐』由测iiLA.艮存帏宣布即麻作上维芾刷iitF11在15d上主起<步布评甲*电子流1并邓训相关评审人的神审beDlzkzjig-L2月L5日如唳用甲人/育甲|此,可百检打电话沟而报/II梅安装包上传到也比市开均由黄原曲台号bi13ryL2月旨日点心半宾布的工丁•斯当目发和曾轮式12国则讯向学在阴发布坏皮避行上送前蹲位COfifAFiL2BL6B友和13为发拓讦榻测试由后一端胃法带正式环隔吊大厅去技包fhakahuvic12月15日14招克装笆上玲到正逢环1*的史舞的符魅binirFL2月L5日立粮正式环撬的大厅IB文厅以卷轿戏的下他页面be-Dtzkzng-L2月L5日3苗也空升r境至把正式群他bih3EL2月的日立意31晚府予号相冏哂市西可日工行沔::曲手正本导曲里证书过期时河注意安奉包与隹椁拜Ifl更匹理QQ游戏大厅研发环境搭建计划(2)开发设计文档开发工程师拿到架构师设计文档后,就可以将自己负责的部分拆分出来,然后提前对这部分的开发细节进行补充和完善,形成开发设计文档。开发设计文档主要用来提高软件开发效率,保证软件质量,并有利于后续产品客服文档的编写,也非常有利于后续的研发迭代和代码维护工作。前端开发、APP客户端开发、后台开发完善的内容和细节各不相同,但是内容主要集中在开发环境、开发语言、使用框架、对象属性方法、接口封装、数据结构设计、界面开发、编译发布等方面。⑶前端开发前端开发工程师通过使用JavaScript来编写和封装具有良好性能的前端交互组件,并通过CSS+XHTML输出Web操作界面。前端工程师经常不仅要考虑前端实现,很多时候也需要了解后台研发,从而能不断优化前端代码分层架构,让Web产品的稳定性和可用性不断提升。(4)APP客户端开发App客户端开发主要是指IOS、人门~「5~、微信小程序的开发。IOS开发推荐使用Xcode,需要运行在MacOS上;Android开发推荐使用Eclipse;微信小程序开发需要使用微信开发者工具。⑸后台开发后台开发主要是指的服务器端的程序开发,包括Web后台开发、组件开发两类。两者之间其实本质上一体的,web后台可以看作是组件的前端。Web后台解析了HTTP请求,然后通过层层转发给了后面分布式系统的多个组件并调用服务。因为互联网公司的server一般都是Linux,因此还会涉及到Shell脚本编写、Linux环境编程等内容,需要熟悉Linux/Unix下各种环境编程的API。(6)开发工程师自测开发工程师可以一边研发一边自测,完成所负责功能模块的开发后再进行完整功能模块的自测。开发自测和测试的重点不一样,是为了减少不必要成本,而不是要替代测试工程师的工作。因为代码是开发自己写的,自测可以发现的问题,就完全没必要让测试工程师去发现。而且发现问题马上就可以自己修改自己验证,减少了沟通和返工成本。8、测试阶段从需求详情文档经过评审,测试工作就开始了。(1)测试用例测试经理组织测试工程师,根据需求详情文档撰写测试用例。测试用例是软件测试质量稳定的保障,用于指导测试的实施、规划测试数据、设计测试脚本、评估测试结果、分析缺陷标准等。测试用例一般都详细记录测试工程师应该有的操作信息,这样可以帮助测试工程师参与测试。测试用例文档一般包括修订记录、测试用例、测试数据等内容。测试用例可以直接在项目管理系统TAPD中批量创建。TAPD可以快速编写并管理测试用例,制定测试计划并执行,然后利用Bug跟踪管理进行问题跟踪与解决。TAPD平台中的测试用例列表与详情页有很多常见模块可以归纳成测试用例库,然后不断优化完善,这样可以减少重复设计测试用例。相当于把测试工作也组件化,减少低效沟通提高效率。例如注册功能测试用例,每隔一段时间就更新一次,以后出现需要测试注册功能的时候测试工程师即可按照此规范进行测试,而无需针对这个功能重复编写测试用例。
注朋测试用例序号F1控件它称,功能描述.注册淘号蚓人动柞期望的谕出厢座宴由情况001通填项办案听空柱册k彳目埴小睡示傕月002用户名营书并注字符注册显示用户晶字符争8E提示馆总003两小输上密碑不Tt燧行注册K不再既物及号叫一枝贯木信息004涓码注书界法字舒”.叫K不赤眄了符心盯提齐h忌005邮的擀式不正确批出正扁的响羯显示.a部常地战格此材恸箕-瞅阻已辨牲班的用户,进行注册显示用户用已存在理不估息007蜴户席莉普褥长度都为t民大仙】.建行注对注册应动008用户半代胆力r节人他】-L^行注册显靠阳户老长度嗓皿提示信息00S密的性段为[显mi-世力注附裁示密码忙展设证提示信息009用户名和密联般都为【单小m,道行住妇注中]或力0E0用户名看度舌1号小值】黑行注册口示用户嘉物铝&6E程示倩总0⑷苗码长度为【最小曲】4,进行注W显示密码长度町证赖帝总网户名和密眸度在工・即值.&人网】上闱,蛙行注册拄册啊012桃受已在在用4的用户书的人小写曲馨珊根据而求百是近区分大小汽013tab搔陞是否证诙技建型正确响觇照层1■15注册功能的测试用例规范(部分)(2)功能体验测试功能测试就是对产品功能进行验证,根据功能测试用例逐项测试,检查产品功能是否达到用户要求。功能测试主要采用黑盒测试方法,把测试对象看作黑盒子,主要测试功能而不考虑软件内部结构及代码。一般从软件产品的界面、架构出发,按照需求编写出来的测试用例,输入数据在预期结果和实际结果之间进行评测,进而提出更加使产品达到用户使用的要求。黑盒测试试图发现以下类型的错误:功能错误或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止错误等。这部分测试除了测试工程师需要参与外,产品、交互、视觉设计师也需要深度参与,因为很多隐性信息都很难在需求文档中写得无一遗漏,但是产品设计师一看就能看出很多的问题,而这些问题测试工程师却难以判断,因为他们经常不知道产品设计师怎么想的。功能体验测试最好是与研发同步。Web测试提供测试环境,产品设计团队通过配置host即可访问测试环境,随时能看到开发进展情况。对客户端的开发则每天定时合并代码到trunk并提供dailybuild版本,产品设计团队及时下载体验,并在下班前将体验问题通过工作群告知研发人员,以便研发人员第2天及时改进。这样可以及时纠偏,减少研发憋大招。这个地方看似很小的工作习惯改变,但是会产生天壤之别的结果。所谓敏捷开发,也体现在这些协作细节里。(3)性能测试性能测试关注软件完成特定功能的响应速度、稳定性和运维成本消耗。主要是为了优化系统容量、可扩展性、系统稳定性、资源利用率等指标。性能测试一般采用压力测试的方法,通过给系统加载一定负荷的业务压力,让系统持续运行一段时间(一般为7x24小时),检测系统是否能稳定运行。目录裂TOC\o"1-5"\h\z前言 2P1第一章系统性能测1试概逑 2P1.1.1功能筲介 “1.12性能测试指标 ..3I-1系统结'构展沆程 4P承蜕导体结构 4P.工工月匕牛篁,夬 美健点1S违(KP) 41-1性能训试环境 W?第一章性能刚讯 6P2.11页期哇能测]试 5P2.1.1预期性能概述 5pZ.1.Z测]lit 15P2.2 用户并发测]试 51-1并发测试概述 5p测]试目的 『+J23 大■据里黄讯 7+J大数捱里则试概述 “测]试 4?4.1施芳强度副试眼迷 〕工4_2测]试目的 -」负载能力则记 Q负载测]试概述 Q则试目的 2工6则试方法及测试用例 Q2.7刎试指标刑期望 的2.7.2则试蓟据准省 9」3第三章则试过程及结果捅迷 - - . . .L则试捅逑 .2则试场泉 1仙」35则试结果标沱 1:」州试洁束标成一般依据以下席贝1|: 1:」执行每个场昙时需要记录以下相应的数据 1:」性能测试方案模板(大纲部分)性能测试主要步骤如下:A)罗列主要用户场景及相应负载量重点针对可能出现性能瓶颈的场景,逐项分解和预估负载量。为了让系统抗压能力更大一些,一般都会多预估一定比例的负载量,以防出现意外情况。B)识别稳定性的主要性能指标然后根据每个场景的负载量,分解每个后台服务、APP、web端所需关注的系统指标,比如响应时间、CPU、内存使用率等。C)单元性能测试与改进在准备好测试环境后,使用测试工具对每个接口按照合法输入格式进行压力测试,确保在目标负载量都不会导致出现问题。比较常用的压力测试工具是Loadrunner。如果系统出现响应延迟或崩溃的情况,则需要运维和研发快速迭代。然后再次测试,直到系统性能指标达标为止。D)客户端兼容性测试Web界面的兼容性测试;可以直接用Chrome内置开发工具即可完成。APP兼容性测试,最好借用第三方工具(例如Testin云测),提交APP后,Testin云测将会部署APP到数百款手机,然后自动输出兼容性稳定性报告。也可以根据测试工程师提供的测试用例,针对每款手机批量进行功能和体验测试。E)整体系统测试与改进当每个场景下的单元测试完成后,再针对整个系统进行完整的压力测试。同样,如果出现响应延迟或崩溃的情况,则需要运维和研发快速迭代,找到出问题的后台接口或前台模块进行优化,直到系统性能指标达标为止。(4)数据初始化运营数据初始化首先是数据库工程师根据产品和运营人员的需求,对基础数据进行完善和补充,以达到能用户能正常使用的状态。比较麻烦的是以往旧系统的数据迁移,由于旧系统和现有系统的字段,类型,日期格式,数字格式等差异,需要抽丝剥茧一层层把数据注入到对应的数据表里,特别是表间关系需要继续保留下来。然后是运营人员通过运营后台,手动修改部分有问题的数据。(5)产品内部测试测试工程师完成所有测试用例的测试工作,研发人员将所有必须完成的Bug修正修正完成,其他待修正bug完成转需求后,就可以启动产品内部测试了。内部测试首先可以针对产品相关的所有员工,包括产品、研发、运营、市场、运维等各个角色。这个过程一方面是为了收集产品缺陷反馈,同时也是让相关人员有参与产品改进的机会,让大家能荣辱与共。同事对于产品的容忍度比用户要高得多,就算产品做得很烂,他们都会坚持着把产品所有功能都用一遍,而真实用户很可能看到一个不好的体验点转身就走。因此产品经理一定要高度重视同事反馈,同事发现每个的缺陷,都一定会导致大量用户流失。员工反馈的问题如果是之前没有发现的缺陷,就需要尽快改进修正。如果对当前版本影响不大,就可以放到以后版本Bug转需求,并记录下反馈人信息和详细沟通结论。等员工完成内测后,产品经理可以将产品内部测试版发到核心用户群里,以有奖测试的形式刺激大家提交缺陷。如果线上反馈不够深入,可以由UER调研小组邀请用户当面沟通交流,找到更深入的缺陷。这些问题汇总提交到Bug列表中,可以马上修正的尽快修正,可以放下个版本的Bug转需求。9、发布上线阶段发布环境的搭建,包括预发布环境、生产环境、灰度发布环境的准备等工作。而正式上线的工作,则包括数据库上线、程序文件上线等工作。推荐腾讯云毫秒服务引擎,这是一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。毫秒服务引擎集RPC、名字发现服务、负载均衡、业务监控、灰度发布、容量管理、日志管理、key-value存储于一体,非常适合中小型互联网公司部署发布分布式应用。(1)发布环境准备预发布环境准备:预发布环境是跟生产环境配置一模一样的系统,只是往往只有一个测试节点,但是它后面调用的是正式生产环境的资源(例如DB、Cache、队列等)。预发布环境主要是要在正式发布前,做一次完整回归测试。测试人员可以通过地址参数、Cookie、请求头参数、VPN等工具,接入预发布环境进行系统整体回归测试。预发布环境下,最常见的Bug如下:生产环境代码已更新到最新版本了,但是数据库变更却忘了操作生产数据库。这个情况下,测试环境很可能都是正常的,但是预发布环境就可以很好的发现bug。跟开发环境不同,预发布环境不允许开发人员直接接触,以防因为开发人员提交代码的瑕疵影响预发布环境里的系统。因为这是运维人员保障上线质量的最后一道屏障,运维标准也基本等同于生产环境。正式生产环境准备:生产环境包括发布产品所需要的所有服务器资源,包括Web服务器、数据服务器、CDN服务等。灰度发布环境准备:每个项目一般都会部署到多台机器,所以一般会拿1-3台服务器看看是否可用,如果失败则只需要回滚这几台服务器,比较方便。灰度发布需要使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《智能物联系统的软件编写》教学课件-2025-2026学年浙教版(新教材)初中信息技术八年级下册
- 大学生实习工作小结
- 2025年人工智能伦理评估标准推广案例
- 2025年人工智能教育标准实施指南
- 仪表更换台账表
- 山西省晋中市2026年5月高三年级模拟高考测试(晋中三模)政治+答案
- 浙江省杭州市临安区2025-2026学年第二学期九年级期中学业水平测试数学试题卷
- 月嫂入门基础与实务
- 大棚喷淋安装协议书范本
- 2026年舞蹈培训派遣合同(1篇)
- 《AQ3067-2026化工和危险化学品重大生产安全事故隐患判定准则》解读
- YDT 5102-2024 通信线路工程技术规范
- 天津师范大学与韩国世翰大学入学综合素质题目
- 4.5.2 外墙板生产及质量控制(装配式混凝土建筑构件生产与管理)
- 中国蚕丝绸文化智慧树知到期末考试答案章节答案2024年浙江大学
- 《视听语言》课件-第一章 视听语言概述
- 2024纪检监察干部培训
- 中小学艾滋病防护知识
- Waters2695高效液相色谱仪操作规程
- 宽宽窄窄量量看
- 2023年十堰市郧阳区事业单位真题及答案
评论
0/150
提交评论