版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
互聯(lián)網(wǎng)產品研發(fā)流程概論I一、研究背景1、提高研發(fā)計劃性產品開發(fā)流程每個環(huán)節(jié)都涉及時間排期,這些時間管理要素可以有效控制項目時間表。2、提高研發(fā)效率通過明確開發(fā)團隊每個角色的職責和協(xié)作方式,讓每個成員只需嚴格按照規(guī)范做好自己的工作即可高效協(xié)作,降低溝通成本。3、^證產品質量通過確保每個環(huán)節(jié)的輸入輸出結果,讓最終產出的產品得到有效保證。4、及時發(fā)現(xiàn)問題通過各環(huán)節(jié)過程數(shù)據(jù),方便管理人員深入了解問題。|二、研發(fā)流程要點1、明確團隊角色責權利每個角色都有明確分工和職責,以及業(yè)績和晉升規(guī)則,從根本上保障團隊執(zhí)行力。2、明確項目管理工具通過項目管理工具將分解每個角色的工作任務,并形成高效信息流轉。除了產品經(jīng)理和項目經(jīng)理需要通觀全局外,其他每個角色只需及時關注自己負責的部分即可。3、明確^發(fā)流程最重要的是針對每個環(huán)節(jié)明確該環(huán)節(jié)的上下游關系,以及該環(huán)節(jié)作業(yè)的輸入和輸出內容。產品研發(fā)團隊研發(fā)團隊是產品研發(fā)管理的核心,建立強有力的產品研發(fā)核心團隊是成功的關鍵步驟。1、組建團隊產品研發(fā)核心團隊通常由產品經(jīng)理(1名)、研發(fā)經(jīng)理(1名)、研發(fā)人員(5-10名)組成。產品開發(fā)涉及的職責分配到各位成員身上。2、角色與分工(1)產品經(jīng)理產品經(jīng)理是產品管理職位,負責市場調查并根據(jù)用戶的需求,確定開發(fā)何種產品,選擇何種技術、商業(yè)模式等。并推動相應產品的開發(fā)組織,他還要根據(jù)產品的生命周期,協(xié)調研發(fā)、營銷、運營等,確定和組織實施相應的產品策略,以及其他一系列相關的產品管理活動。(2)研發(fā)經(jīng)理研發(fā)經(jīng)理是技術研發(fā)管理職位,負責了解項目的需求,系統(tǒng)分析,做相關的技術選型,制定開發(fā)計劃與開發(fā)規(guī)范。(3)產品設計師產品設計師是產品策劃職位,負責將客戶需求轉換為具體的產品形態(tài)。(4)架構師架構師是軟件系統(tǒng)和網(wǎng)絡系統(tǒng)的設計師,負責確認和評估產品需求、搭建軟件研發(fā)和網(wǎng)絡系統(tǒng)的核心構架、并掃清主要難點。架構師著眼于〃技術實現(xiàn)”,能對常見場景快速給出最恰當?shù)募夹g解決方案,并能評估團隊實現(xiàn)功能需求的代價。架構師分為軟件架構師和系統(tǒng)架構師兩類,分別專注于軟件開發(fā)和系統(tǒng)運維兩個階段的系統(tǒng)設計。⑸交互設計師交互設計師是功能設計職位,負責根據(jù)需求文檔設計交互原型。⑸視覺設計師視覺設計師是界面設計職位,負責根據(jù)需求文檔和交互設計文檔設計出產品視覺界面。(7)Web前端工程師Web前端工程師是界面研發(fā)職位,負責根據(jù)架構設計文檔和界面設計稿,使用Web技術(HTML/CSS/JavaScript等)進行Web產品界面開發(fā),并調用Server端接口實現(xiàn)Web應用。(8)APP開發(fā)工程師APP開發(fā)工程師是APP界面研發(fā)職位,負責根據(jù)需求文檔和界面設計稿開發(fā)出APP客戶端界面,并調用Server端接口實現(xiàn)APP應用。(9)測試工程師測試工程師是軟件質量的把關者,負責根據(jù)需求文檔編寫測試用例、執(zhí)行測試任務提交測試Bug、跟進Bug修正等。(10)運維工程師
運維工程師是產品發(fā)布職位,負責維護并確保整個服務的高可用性,同時不斷優(yōu)化系統(tǒng)架構、提升部署效率、優(yōu)化資源利用率提高整體ROI。三管理工具三管理工具推薦騰訊敏捷開發(fā)平臺TAPD,這是騰訊內部正在使用的敏捷產品研發(fā)平臺,微信、QQ、騰訊視頻等產品,都是通過TAPD進行產品技術項目研發(fā)管理。1.打開TAPD平臺首頁2.注冊系統(tǒng)帳號
2.注冊系統(tǒng)帳號工作功同從未如此輕用速空?HS出發(fā)生命同期,團力團塊欣臉爬,可鈔快錮工作功同從未如此輕用速空?HS出發(fā)生命同期,團力團塊欣臉爬,可鈔快錮3.借助企業(yè)微值配置權限無論折墻出脖型古亮更改成品4.支持需求研發(fā)全流程管理貫穿敏捷研發(fā)生命周期,幫助團隊敏捷迭代,小步快跑。通過迭代進行目標制定與計劃評審,完成工作分配,使用故事墻與燃盡圖進行研發(fā)過程跟蹤。迭代全程目標清晰,進度可控,研發(fā)過程敏捷迭代,小步快跑。支持Web版本、PAD版、手機版。五、主要流程環(huán)節(jié)產品研發(fā)流程分為以下階段:立項階段、設計階段、開發(fā)階段、測試階段、上線階段、磨合階段、運營階段、總結階段。1、立項階段立項階段從公司戰(zhàn)略分解開始,然后通過市場調研獲取客戶需求,然后梳理產品方向形成產品提案給產品委員會審批,審批通過后正式進入產品研發(fā)階段。(1)市場調研需求調研就是通過調研篩選典型客戶,并對這些客戶的需求細節(jié)進行匯總和梳理。
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聯(lián)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早期用戶畫像數(shù)據(jù)對新產品則需要先約定大致客戶群特征,然后針對這個群體做抽樣問卷調查。問卷設計一般都需要產品經(jīng)理完成,然后可以找專業(yè)調研公司去實施。QQMuw兒而4走QQMuw兒而4走SIN0TRUST新華德-為牌譏科技制作-騰訊QQ音樂用戶研究總報告2006年11自新華值國際惜息皆詢[北京)有跟公司
wwwsinatrustcn"京上港廣州造博新華信協(xié)助QQ音樂產品團隊進行用戶調研(2)客戶需求分析客戶需求分析就是將調研過程中涉及的需求信息,根據(jù)需求重要程度分級,優(yōu)先滿足客戶基礎需求,也就是我們常說的客戶痛點。目標用戶需求 滿足用戶需求目標用戶需求 滿足用戶需求的途徑用戶最關注視頻內容質量、更新速度.連接速度,因此對平臺的依賴性較差,用戶退出門解較低口高級需求騰訊視頻的需求層次分析V1.0(3)編寫產品提案立項階段主要是要輸出產品提案,提交給公司產品委員會決策。產品提案也就是“商業(yè)需求文檔”,簡稱BRD(BusinessRequirementDocument),是基于商業(yè)目標或價值所描述的商業(yè)需求。其核心用途是用于在投入研發(fā)之前,為企業(yè)高管層提供決策評估依據(jù)。其內容涉及產品概述、市場需求、競爭環(huán)境、重要性、成功要素、營銷策略、盈利預測等內容,一般比較短小精煉,不包含產品細節(jié)。
支付寶用戶事業(yè)部產品提案模版【產品提案名稱】提案人坤雪部門昭外產品概述?產品內容?*產品目版r市場需求時用戶外5戶的竹的氈什幺?港H用戶席戶素有田大白面市場規(guī)模各大用長潛為各大?競爭環(huán)境提供類似怖餡的服務.市場上的■領先者罡誰?它為什必能取得領先?有無挑顯著?若有的話,為什幺會構成挑戰(zhàn)?對史村寶的必要性?對上乜寶《或河里巴巴J的伊直拈什么?*是舍有益「照固或睚化支付寶r貨阿里巴巴下業(yè)務??t4、曲的玷;是否必對殳付寶1成眼里巴巴》育苗在的威脅?美鍵成功要素?產打戊功的工世性因素是什么?支付寶E或阿里巴巴)現(xiàn)有資源是不是其中重要因南*基于文忖寶f或E可里巴巴)的優(yōu)勢.我伯是否有創(chuàng)新手般使再上付寶《則里巴巴1產品旌潼光]-市場上的競爭酒.“眼穎而出r莉芝何寶《或網(wǎng)里巴巳)的美侵性不確定因果是什幺?制支討寶「或阿里巴巴〕的關侵性不利因廉加計幺??收購其血公司站否是一個好的進入方式?所需資源預估?電動產和所福人數(shù)?t卻略估計):*完成產品開牡戡的盟何?(粗略估計"?所需甚池主要赍源1t妞硬件、帶寬“一支付寶用戶事業(yè)部產品提案模板(4)提交產品決策委員會評審提案評審主要是判斷以下要點:與戰(zhàn)略關聯(lián)關系是否緊密?產品價值有多大?資源投入有多大?公司產品決策委員會根據(jù)提交的產品提案進行評估,評估流程如下圖所示:
2、產品設計產品設計分為輸出概念設計、輸出功能清單、輸出需求概要文檔、輸出需求詳情文檔等步驟。(1)產品概念設計?支?支付寶用戶價值一■■錢包里有什么??身驚證——身精騎征體系概念設計是非常關鍵的產品環(huán)節(jié),簡單明確的概念不僅讓客戶更容易理解,也讓產品研發(fā)過程思路清晰、少走彎路。而且,概念設計也是軟件架構師將產品概念轉化為技術對象化模型的關鍵環(huán)節(jié)。以支付寶產品為例,就是采用了“錢包”概念模型。錢包里有現(xiàn)金、銀行卡,也可以放身份證、名片、照片、小票、發(fā)票等。區(qū)分好需求層級,產品交互體驗的層次和用力程度自然就出來了。4現(xiàn)金——余款銀行卡——卡逋信用卡——快捷支付優(yōu)惠券一憂思春積分罰——積分寶會員卡——金時戶去哪里用?+花載場民,文力土自仃業(yè)為f生活端要..格用十用款.轉眼、堡“-福寶、口再-阿里巴巴,自作也牛(此推膽、處的而、盟慘、忖區(qū),?購買理由>的美?價廉支付寶錢包用戶產品模型(2)確定產品功能組合根據(jù)產品概念模型和需求優(yōu)先級,確認關鍵性的功能要點。PersonaADplicationOffneApphcatioApplication外觀;社區(qū)化應用(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發(fā)山總I上冗dvrcRM/,?■■?Bfn.z.nmj4F?am”QQ影音產品功能清單V1.0這些功能點后續(xù)都作為需求點加入項目管理系統(tǒng)TAP中,方便團隊所有成員溝通和完善這個功能清單。形成功能清單初稿后,產品經(jīng)理需要先在產品團隊中組織討論完善,然后再找運營團隊溝通完善,然后是找交互視覺團隊補充完善,最后再找研發(fā)項目經(jīng)理、研發(fā)、測試、運維等角色溝通完善。這個過程既是幫產品經(jīng)理完善的過程,也是形成團隊共識、激發(fā)團隊熱情的過程。(4)輸出需求概要文檔概要文檔明確某個功能模塊下的功能介紹,一般是多個功能點的描述。需求概要一般由產品經(jīng)理負責撰寫,不包含功能細節(jié)描述。為了方便與產品設計師們溝通需求,可以將主要功能界面草稿加入該文檔中,用原型草圖能更好地描述主要功能。3產品特性概覽,主姜功能。功能描述c狀態(tài)中P2Pp含人新版P2P^ .OPENhP開機啟動,支持F2P甲DELAW書簽功有加記住觀看具體位置產OPK產窗口尺寸#窗口尺寸自適應分辨率甲OPEN卡廣吉聲音控制中廣告聲音控制產OPEM控件整合"點播回搐.QQU、造完整安裝的兼容戶OPEW自幼登錄甲增加自動登錄選項產QFL2B緩存管理上用戶可以設置緩存路徑和大小平口FEW4特性概要描述1P2Pv更新P2P開發(fā)生的8月版本,主要特性包括(Fromwwj。:¥可配置延遲HTTP下載(主要用于廣告緩沖時間:4斐正直觀看節(jié)目,采用究P2P下載模式m亞分存儲與請求,對于順定義塊<12SK>,切分為1K為單位細分請求〈不分用戶與下載模式)pP2P采用順序下載為主。艮務器可動態(tài)配差)3P州優(yōu)先,HTTP輔動下載.【以前邏輯為端暢度優(yōu)先”《服務器可調節(jié)第略》3■4.2開機啟動.,騰訊視頻PC版播放模塊的需求概要文檔有了某個模塊的需求概要文檔后,研發(fā)項目經(jīng)理組織團隊溝通需求概要。產品經(jīng)理首先介紹需求概要然后由其他團隊成員提出自己關心的專業(yè)問題。會前產品經(jīng)理提前分享文檔,并收集準備大家的問題點。會后主架構師根據(jù)需求概要做架構設計框架,研發(fā)工程師也可以針對自己負責的模塊做技術預研。有經(jīng)驗的工程師,往往在這個階段就開始試著做個Demo,把主體功能流程跑通,這樣在正式進入研發(fā)時就會比較輕松,專注于細節(jié)完善和產品質量。
(5)輸出需求詳情文檔需求詳情文檔由產品設計師負責編寫。需求概要中的需求點,每個都需要單獨編寫需求詳情文檔,而不是把所有的需求詳情都寫在一個文檔里。這樣會導致需求詳情文檔非常長,內容龐雜,這個會導致后續(xù)很多問題。需求點最好都能拆分到1周內能完成研發(fā)測試比較好,這樣才能有效實現(xiàn)敏捷開發(fā)。騰訊視頻自動登錄需求文檔」修訂日際修訂內審修訂版本產修訂人卡200+5-3W創(chuàng)建文檔產VWTeresagao*212009-6-3^根據(jù)交互稿更新產Teresagat%12009-6-15卡根據(jù)討論,去掉提小登錄框,不用提取用9“登陸后您才能使用該功能”產“卻Teresagao*212009-7-15卡我的視頻tab處理調整一V4PTerssagaot11目錄JL+JL+JL+JL+J2+J2項目背曷具體說明客戶端QQ面板啟動桌面啟動網(wǎng)頁或其他方式啟動客戶端設置修改登錄說明視頻庫統(tǒng)計問題對歷史觀看的葡響■2項目背景一騰訊視頻PC版自動登錄需求文檔需求文檔并不是產品設計師一個人閉門造車就能寫出來的。產品設計師需要頻繁與交互、運營、視覺、用戶研究(UER)、架構師、測試經(jīng)理、開發(fā)、運維等人員溝通。溝通的過程更多是產品設計師學習和融合各個角色思考的過程,同時也讓各個角色的工作更加明確。一般需求文檔的編寫分成以下步驟:第1步:根據(jù)需求概要設計用戶操作流程圖。第2步:根據(jù)用戶操作流程拆分各個界面,繪制主界面草圖加入文檔,再分別描述每個界面的主要元素和功能點,再描述界面之間交互的邏輯,最后加上交互背后涉及的業(yè)務邏輯。第3步:找運營溝通需求,根據(jù)運營人員的建議補充營銷位、運營后臺工具等內容。第4步:找交互設計師溝通交互細節(jié),根據(jù)交互設計師的疑問補充界面中的交互邏輯。交互設計師完成交互設計稿后,將交互稿截圖并加入文檔,并完善交互邏輯說明。第5步:找視覺設計師溝通視覺細節(jié),提醒視覺設計師突出重點。視覺設計師完成設計稿后,將設計稿截圖并加入文檔,并完善視覺界面說明。第6步:找架構師溝通算法和技術邏輯,根據(jù)架構師提出的疑問完善業(yè)務邏輯。第7步:找測試經(jīng)理溝通測試用例,根據(jù)測試經(jīng)理提出的疑問完善功能細節(jié)。因為測試經(jīng)理需要寫測試用例,測試用例是以需求文檔為藍本,如果需求文檔不清楚必然會導致測試用例不完善,因此測試經(jīng)理往往對產品設計師的幫助很大,甚至會比產品設計師更了解產品細節(jié)。第8步:找UER做功能調研。UER將需求文檔轉化為調研文檔,然后通過產品體驗群、邀請客戶當面體驗等方式找出產品設計中的問題。然后UER反饋給產品經(jīng)理,產品設計師合并優(yōu)化成產品需求詳情文檔。有的公司UER調研也是由產品設計師承擔,但是專業(yè)性上有可能難以保障。第9步:找產品經(jīng)理、研發(fā)項目經(jīng)理、運維確認需求文檔,并初步確定排期。(6)需求評審如果之前編寫過程與每個角色都有了充分的溝通,需求評審就會變得很輕松愉快。否則,產品經(jīng)理和產品設計師將會陷入無止境的辯論中,往往動輒就讓整個團隊消耗了幾個小時還無法形成結論。因此,需求評審的關鍵就是產品設計師事先做好評審會的一切準備。提前準備好所有資料并提前發(fā)給團隊所有成員,并事先與所有角色都逐一確認過關鍵問題,而且得到了產品經(jīng)理和研發(fā)項目經(jīng)理的確認。在評審會上,先講總體,再講重要細節(jié),再講次重要細節(jié),并層層確認。對于會議上爭議較大的問題點,5分鐘后還沒結論的馬上記錄下來,會后再單獨討論。如果問題點太多,就說明產品設計師還沒考慮清楚,那就盡早結束會議,重新修改后再召開評審。這種情況會嚴重影響產品團隊的聲譽,因為耽誤的是所有人的時間。為了減少這種風險,需求評審一定要提前1-2周召開,而不要等到開發(fā)前夕才進行評審。3、交互設計交互設計主要是將產品經(jīng)理的功能設計,用原型圖和交互流程的形式展現(xiàn)出來,方便與用戶及團隊進行溝通。交互設計原型將產品經(jīng)理提供的產品原型草圖具象化,減少了需求不確定性,保證產品功能可用性。HCIDESIGNFLOW事方妁■催重加目大。蟲車進行■!!步攀任各會議輸出理論應用."閑晞思■東博?口便與眉目眼金第玻山量/八曷若茲時朗當4監(jiān)I二聚茶1交互做計離求,,或簫耒用尿天日您石《四用廣?修要需京曉由M衛(wèi)可討產品口岌王〉幽卻尸厲行品濯.了解劇目背*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)重點是給哪些角色看?涉及交互稿的角色很多,幾乎每個角色都需要,但是只要有專業(yè)細致的交互稿,也就能滿足所有角色的需求了,無需針對每個人提供不同的交互稿版本。產品經(jīng)理:產品經(jīng)理需要將交互稿截圖合并到需求文檔,提供給各個角色作為需求源。視覺設計師:需要以交互設計稿為基礎,設計出每個界面的PSD文檔。研發(fā)經(jīng)理:需要通過交互設計稿,判斷需要調配哪些角色參與,大概需要多少時間。架構師:需要通過交互設計稿,梳理出軟件架構設計,特別是功能流程設計與軟件架構和網(wǎng)絡架構設計緊密相關。Web前端開發(fā):需要通過交互設計稿,確認網(wǎng)頁界面是如何串聯(lián)起來的。這里不僅涉及功能流程設計,也包括交互細節(jié)。APP客戶端開發(fā):需要通過交互設計稿,確認APP軟件界面是如何串聯(lián)起來的。這里不僅涉及功能流程設計,也包括交互細節(jié)。后臺開發(fā):需要通過交互設計稿,確認采用哪種后臺調用方式,以及如何通過交互設計讓用戶在面對網(wǎng)絡延遲等情況時體驗更佳。測試:需要通過交互設計稿,編寫功能測試用例,以及每個交互體驗細節(jié)的測試用例。用戶研究:需要通過交互設計稿,訪談客戶,讓客戶更容易理解產品功能,從而獲得更有效的反饋。B)用戶場景是什么?確定是要做什么場景下的交互設計。具體包括用戶畫像、主要功能流程等。C)采用什么樣的形式?交互文檔大多都采用Axure進行設計,一般都采用線框稿的形式。使用Axure創(chuàng)建交互設計文檔D)要達到什么標準?一般衡量交互水平的指標,是整個功能操作流程的流量轉化率。以注冊登錄為例,可以通過抽樣監(jiān)測從進入注冊到登錄完成每個步驟進行數(shù)據(jù)跟蹤,然后得出轉化率數(shù)據(jù)值,然后再跟競品或類似產品進行對比,不斷提升這個轉化率。(2)功能交互設計功能交互設計主要是將軟件界面之間的跳轉關聯(lián)關系表達清楚。tKff^udifeOrmwa-as上兆百'1IM星.弧由唯址「3陶賽?m“衛(wèi)士吐自檢將3y線理的電的叟金也由.在毒、掇并隹加:易.品KbiHd*停苧日塞左因地交生用再-門祥山運的町52率雄也比饞,治包"墓久俗代一|小此能孫卓IEtKff^udifeOrmwa-as上兆百'1IM星.弧由唯址「3陶賽?m“衛(wèi)士吐自檢將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)交互細節(jié)設計交互細節(jié)涉及點非常多,不同公司、不同類型的產品都會有自己不同的交互設計風格和細節(jié)處理方式。為了保證產品交互細節(jié)上的統(tǒng)一和規(guī)范,互聯(lián)網(wǎng)公司一般都會制定自己的交互設計規(guī)范,以便指導設計師完成交互設計。網(wǎng)站產品交互摭范VE.W基礎交互期范VL&一、.目的“.它,吁盧品苴咒住牧的統(tǒng)一.'2,詞少不譴的溝通和開發(fā)成本,,二】內容(網(wǎng)站應用交互基礎(控件組件),?基附隹捫地范3你與■按里(CommandButtons}?愴展接三(ProgressiveDisclosureControls)受ij^CLinks更園至13(RadioButtoni)?翼選運:匚MMBoxes卜文豐恒;TextBoxes)*Tips提示(looltipsandtnfotips)a瓦簽(心也)v框:GroupBoxes)」至單(iVlenus}q*孤M明件規(guī)范!<圍災阻件期范髓證起蛆件規(guī)范*■何宓謔組件規(guī)范f對話國M-s的日BM僚土勒眄hlbcix)期范〃搜索組件期殍版快=H月住用規(guī)范f公司已有;1騰訊網(wǎng)站產品交互設計規(guī)范V1.0交互細節(jié)設計,一般涉及交互控件元素、交互文案、裝飾圖形等內容。每個看似很小的功能細節(jié),都往往需要花費大量精力去做細。為了節(jié)省成本,在這樣的功能開發(fā)出來后,都最好對象化模塊化,其他場景只需調用這個模塊即可快速創(chuàng)建類似的功能。上一頁百頁答非當前頁當前頁省略號尾頁將下1頁?一頁.3.4上一蟲-必選當前頁為第一頁時r上一頁按包置友n下一頁-必選當前頁為最后一頁時r下一頁按短置灰n首面特-必選尾頁符一口」選省昭號-視上一頁百頁答非當前頁當前頁省略號尾頁將下1頁?一頁.3.4上一蟲-必選當前頁為第一頁時r上一頁按包置友n下一頁-必選當前頁為最后一頁時r下一頁按短置灰n首面特-必選尾頁符一口」選省昭號-視情況出現(xiàn),,最察保留9千頁符,多于9個頁符時使用音暗號7+“尾頁符”的形式當前頁-彥選當前瓦為不可點擊狀態(tài)r并奏出顯示區(qū)另吁其f也頁碼的“當前克”狀態(tài)非當前頁必選翻哪域區(qū)可選頁碼輸入框4確支按鈕,如:到第確定網(wǎng)頁翻頁功能細節(jié)交互設計4、視覺設計(1)視覺設計需求分析視覺設計需求分析主要是明確視覺設計需要達到的目的。以Logo設計為例,最常見的需求要點是兩個:明確表義、吸引視線。因此在設計過程中,通過把競品和不同設計方案可以放到一起,從而找到最優(yōu)的設計方案。結果■色機醒白的顏色.從耳里凸出晌立體理存助手抓在用戶狗主意力.和輸人法眠系不上旭賓在■色機醒白的顏色.從耳里凸出晌立體理存助手抓在用戶狗主意力.和輸人法眠系不上旭賓在用過搏狗不知道這個是輸入溫加加保菖品,沒興.趣。票光,陵品、源砍魅黨很奇怪.息不是錯了。宇國P:根可眠是2/8聯(lián)福.不到pinyinP箝測晶口nnt逛組.喏:SiSttJg標取物宇也匕指代初莪急勤曬接漢字科頭五:得定是百度輸入法Logo設計需求調研(2)視覺概念設計視覺概念設計建立在視覺風格推導基礎上,用以描繪出產品視覺風格的基本方向。該步驟需要確定產品風格,為后續(xù)確定設計元素、明度、色調、質感等設計細節(jié)奠定基礎。
(3)主界面設計主視覺設計師拿到交互稿后,針對主要功能界面設計風格定位稿。=<00:00:^5/00:16:32火花對決精武風云那女受錯身盜夢三間主城戒備火龍對決火龍對決精武風云火龍對決火龍對決Thesenatorm或已百度影音播放器主界面HDTV.X264-DIMENSION庭百度常音播放列表 +fflii精武風云精武風云精武風云火龍對決=<00:00:^5/00:16:32火花對決精武風云那女受錯身盜夢三間主城戒備火龍對決火龍對決精武風云火龍對決火龍對決Thesenatorm或已百度影音播放器主界面HDTV.X264-DIMENSION庭百度常音播放列表 +fflii精武風云精武風云精武風云火龍對決(4)覺細節(jié)設計然后針對界面中的每個控件,都按照像素級標準進行繪制。每個空間的分層素材都需要通過PSD文檔進行保留,色塊區(qū)域的顏色值需要標注,按鈕的每個狀態(tài)都需要單獨設計,每個控件的尺寸也需要明確標注。交互設計中的每個細節(jié)設計狀態(tài),也都應該有對應的設計稿。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?■:*????????,
?????
*****騰訊視頻播放器內容庫視覺細節(jié)設計(5)視覺設計規(guī)范與交互設計類似,視覺設計涉及點也非常多。為了保證產品視覺細節(jié)上的統(tǒng)一和規(guī)范,互聯(lián)網(wǎng)公司一般都會制定自己的產品視覺設計規(guī)范,以便指導設計師完成視覺設計。,引言介培啜日若與人QQMusic?產品設計理念風格美髭學?V工基儂素系燒體志標準審徐志和標志宇的州自岳吉減?悔黑道,引言介培啜日若與人QQMusic?產品設計理念風格美髭學?V工基儂素系燒體志標準審徐志和標志宇的州自岳吉減?悔黑道?VI誨用系統(tǒng)界面翟計加a主要界面球果更羽面空享超對主孱面理用界面』甜】㈱■S,QQMusic;;QQ音樂視覺設計規(guī)范5、架構設計架構設計是架構師對各個子系統(tǒng)關系的抽象模型,用于指導大型系統(tǒng)的開發(fā)和運維。架構設計主要包括三項工作:系統(tǒng)架構設計、軟件架構設計、網(wǎng)絡架構設計三個部分。系統(tǒng)架構設計一般都會采用MVC(Model-View-Controller)模型,將業(yè)務邏輯模型、軟件界面、控制器邏輯層進行分層處理,然后通過控制器邏輯層確保業(yè)務邏輯層和軟件界面層的同步。MVC模型的好處是在優(yōu)化界面及用戶交互的同時,無需重新編寫業(yè)務邏輯。同時也有助于管理復雜的應用程序,可以在不依賴業(yè)務邏輯的情況下專注于視圖設計,不同開發(fā)人員可以同時開發(fā)界面、控制器邏輯和業(yè)務邏輯,同時也讓測試變得更加容易。(1)系統(tǒng)架構設計如果整個系統(tǒng)研發(fā)是從零開始的,架構設計則需要從概況圖開始梳理,然后再補充各個模塊的架構圖。這部分一般由首席架構師牽頭,屬于整個產品技術架構的總綱。系統(tǒng)架構概況盤平臺個人北吊平臺公共鹿者播 語喜安介認證四f,汴俾.4活助手—海寶:咫B新行蛆出出應國平臺言作伙驟入收糧臺收割安全轆處理平自客戶宿愿平臺信ffi
產品賺盤平臺個人北吊平臺公共鹿者播 語喜安介認證四f,汴俾.4活助手—海寶:咫B新行蛆出出應國平臺言作伙驟入收糧臺收割安全轆處理平自客戶宿愿平臺信ffi
產品賺前戶信息督中心
帳勞之諱
支價消HAPI銀行接人通忖網(wǎng)美支付寶平臺系統(tǒng)架構概況圖一般而言,子系統(tǒng)名稱都會與產品概念保持一致。子系統(tǒng)不論是應用前臺還是后臺,通過公共服務層、業(yè)務邏輯層、基礎業(yè)務邏輯層關聯(lián)到一起。這種對象化的架構設計方法,會讓整個團隊使用同一種語言在溝通,相互理解起來更容易,有利于提高協(xié)作效率。分戶日余顫日終子系統(tǒng)科目匯總分戶賬戶[內)外部分戶歷史日余額內部分尸歷史日余頷支付寶財會系統(tǒng)架構圖(2)軟件架構設計軟件架構設計一般采用分層架構設計模型。軟件首先分為兩個大層次:前端和后臺。前端應用負責提供與用戶交互的軟件,分成Web應用,PC客戶端應用、移動APP應用等場景;后臺負責實現(xiàn)所有業(yè)務相關的操作和服務,分成接口層、業(yè)務邏輯層、基礎邏輯層。軟件架構設計時,需要主要做到以下幾點:支持模塊化、高內聚、低耦合、可伸縮性,同時也要防止過度設計。已上線軟件如果要新增某個功能,則需要針對該功能進行軟件架構設計,并最終形成軟件架構設計圖。
曲Coo)(io(uiii]GcIQQFtscndScrv1ct.SccoraicndScrvlct覘木惇的bindCr?ateMailBodyTpl數(shù)損嬋c.砌11FtIandSeivlet騰訊視頻郵件推薦功能軟件架構設計圖然后針對這個軟件架構圖進行細化,先明確系統(tǒng)涉及的所有基礎邏輯層模塊(對象),以及該模塊的輸入和輸出項,并明確模塊內部的基本處TU.ingij,所有奸友缶息的卜匚血'曲Coo)(io(uiii]GcIQQFtscndScrv1ct.SccoraicndScrvlct覘木惇的bindCr?ateMailBodyTpl數(shù)損嬋c.砌11FtIandSeivlet騰訊視頻郵件推薦功能軟件架構設計圖然后針對這個軟件架構圖進行細化,先明確系統(tǒng)涉及的所有基礎邏輯層模塊(對象),以及該模塊的輸入和輸出項,并明確模塊內部的基本處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友!理邏輯。這些模塊有的有可能已經(jīng)存在,則無需再開發(fā),單獨標注出來即可;還沒有開發(fā)的模塊,則可以交給軟件項目經(jīng)理指派給工程師開發(fā)。Tancent騰訊Tancent騰訊概要設計說明書下表要1騰訊視頻郵件推薦子模塊功能和處理流程表卡模職務虧模職名梆輸入地理渣程輸出 Gqvrcmdl*21L用戶點擊“推薦”按鈕〃2.用戶和推薦界面的互動信息+3.姮回傳的response^1顯示推薦界面Q.判斷用戶輸入,信急的合法性1.判斷用戶操作是否成功產工用戶操作是否『合法的提示“2.用閂桌作是否成功的提示#工.:.對服務器的request請求產qV_rcniL"Qistlajiagm.用戶點擊“推薦氣按鈕產’生成登錄界面,裝收.用戶登錄信息產跳轉到推薦界面產砂gv_rcniJ_3^胸,.根據(jù)必息首戰(zhàn)對應的所有好友的用工和nick+-,.將裝些信息整理成合適的網(wǎng)頁輸曲所有好友信息的<html代碼產qv_rcni[]_4^我IS氯Y腐皿1.根據(jù)胤口道找對應的最近好友的yjX和nick+J.宿這些信息整理成合適的網(wǎng)而輸出c最近好云信息的btml代碼產qvrcmtlS*21網(wǎng)由request請求產1.判斷?JUESt是否合法"包含操作是否成一功的xtrM然后明確界面上可以直接調用的各個業(yè)務邏輯層模塊(對象)名稱,以及對應接口、屬性、方法。
表3.2.QQVideo視頻郵件推薦模塊和功能交叉引用表」推薦好友交互界面好左條件檢查發(fā)送郵件數(shù)目檢查郵件發(fā)送畝計數(shù)據(jù)記錄U(取所有好友信息)*甲甲U(取最近好友信息),P甲PuG理界面顯示)0U(好友數(shù)目)Q度會盥到m典d$題xkL)-Pu(好友雙向關系》卡11卡11卡甲U(傳遞數(shù)據(jù))戶11爐11爐.U(查詢數(shù)據(jù)庫)爐U卡U卡U(登錄提示)PCmglailB皿加甲U(生成郵件體正文)*對于還未開發(fā)的接口,如果涉及到數(shù)據(jù)調用,則需要梳理相關的數(shù)據(jù)結構,并確定算法?!?.數(shù)據(jù)結構和算法設計4,5.1.用戶推薦視頻基礎信息表JL理也樂飆正,本表用于記錄用戶推薦視頻的相關信息”為其他模塊提供基礎數(shù)據(jù)。v字段名 類型 空否 其他 說明否。主鍵」用戶的皿號1maduius可p用戶推薦的好友90號1可一?用戶推薦的視頻編號。w可(數(shù)認:0)用戶推薦的次數(shù)(以一段周期為單位,例如天)產講可(數(shù)認:0)卡爐用戶推薦的時間(一段周期的開始時間)一w否爐記錄創(chuàng)建時間戶timestamp可p記錄最近修改時間戶loc^皿血X?州可(數(shù)認:0)為數(shù)據(jù)遷移設置,上面介紹的只是最基礎的軟件架構設計流程,為了保證軟件的柔性可用,經(jīng)常還會RPC服務組件(讓網(wǎng)絡分布式應用開發(fā)變得更容易)、消息中間件(將模塊之間的交互異步化)等方案。⑶網(wǎng)絡架構設計A)運維架構架構設計需要保證每個環(huán)節(jié)都能快速迭代配置尤其是在服務器CPU、內存、存儲、帶寬幾個方面需要做到高可用性。以新零售個性化推薦動態(tài)Feed為例,我們梳理下整個網(wǎng)絡結構設計的流程。首先需要根據(jù)業(yè)務數(shù)據(jù)分析網(wǎng)絡系統(tǒng)需求。一般Feed信息流前3頁訪問量往往占了90%以上,因此在做緩存設計的時候,我們完全可以在緩存數(shù)據(jù)中只保存每個用戶最近的100條數(shù)據(jù)其他的需要用戶下拉再從數(shù)據(jù)庫中實時生成。然后需要從技術上解決高并發(fā)和高性能的問題。因為Feed性能壓力主要集中在查詢請求量上,而且一條Feed數(shù)據(jù)經(jīng)常是數(shù)百甚至上百萬人訪問,因此Feed很適合采用緩存系統(tǒng)。當訪問壓力不大時,采用單層緩存數(shù)據(jù)就可以了。如果日均訪問量達到了百萬人次而且峰值非常明顯,則最好采用雙層緩存機制以增加系統(tǒng)擴容的靈活性。當寫入Feed量很小但是訪問量暴增時,只需擴容L1層服務即可;寫入量暴增,則對L2層服務快速擴容。緩存擴容主要是提升QPS、帶寬瓶頸以及緩存數(shù)據(jù)庫生為上備性能。多級雙機房緩存系統(tǒng)idcl idc2L1擴容T增加吞吐量T小加訪砰帶寬idcl地來的詰求生為上備性能。多級雙機房緩存系統(tǒng)idcl idc2L1擴容T增加吞吐量T小加訪砰帶寬idcl地來的詰求idc2端來的清求Mas帕「獷容,增加容量,降低穿透率SlaveGroupMasterGrojpLIGrojpLIGroupLlGroup每個Group 價,內部H日stiLlGroup如果希望降低研發(fā)成本,也可以考慮購買騰訊云個性化推薦服務,這些中間處理過程就全部交給云服務去處理,這樣可以集中力量解決業(yè)務層問題。Feed中除了文本數(shù)據(jù)外,還會有大量圖片甚至視頻數(shù)據(jù),此時可以采用該CDN做文件緩存。LocalCache+分布式緩存,這是常見CDN緩存策略。此時比較經(jīng)濟的選擇,是購買CDN云服務,發(fā)布Feed時,把這些圖片和視頻數(shù)據(jù)先Post到服務器,然后再同步到CDN云服務中去。然后是數(shù)據(jù)庫的分布式架構。網(wǎng)絡架構師拿到軟件架構師的數(shù)據(jù)結構后,首先對Feed數(shù)據(jù)區(qū)分冷熱數(shù)據(jù)。Feed數(shù)據(jù)冷熱一般都非常明顯,可以按時間維度拆分做分表(例如每天Feed數(shù)據(jù)是獨立一張分表)進行冷熱數(shù)據(jù)分離,并對冷熱數(shù)據(jù)采用不同的存儲方案降低成本。Feed數(shù)據(jù)還有快速檢索的需求,因此需要通過建立索引提高檢索速度。
Feed存儲架構-MySQL二級索引
offsetscount內容content?按照UI二級索引
offsetscount內容content,每個用戶每個月一條記錄■每條記■錄表示這個.用戶這個月發(fā)表了多少條撇博一級索引按照ID分庫分表每天建立一張表為什么不需要我照UPHash?B)服務撥測系統(tǒng)一級索引按照ID分庫分表每天建立一張表為什么不需要我照UPHash?此時,就需要有效的服務追蹤系統(tǒng)。對新零售企業(yè)而言,最經(jīng)濟有效的辦法是采用騰訊云撥測系統(tǒng)。通過部署抽樣接口到云撥測系統(tǒng),特別是在高峰時段進行監(jiān)測,即可通過手機短信或郵件監(jiān)控服務異常。0日志統(tǒng)^系統(tǒng)日志統(tǒng)計系統(tǒng)建議直接采用騰訊云日志服務。日志服務CLS三”.鼻總■:CloudlogSerui憂I娓供一站式器口信盟鋁瞪夷吉赤,它無畫牝注IT瑞音后吉:弗辛五分獨書引電多挾,,I阿至=ME卡〕?件£三存話到白云內若審基討出好于于全啟植后左仃而;匕古眼若,邪即忌輕松建決業(yè)起內看計.括行監(jiān)拄,和全*if己占i己更.大太曜任白志運鞋116.甲甫FF遇此外,還要考慮全鏈路壓測、服務器登錄安全性、運維權限分配、流量峰后降級預案、共享Docker集群資源等問題,確保系統(tǒng)可用性、安全性、單位成本。6、創(chuàng)建版本計劃當架構設計完成并評審后,研發(fā)項目經(jīng)理開始對需求和架構進行切分,形成版本計劃。版本主要作用是用來明確研發(fā)節(jié)奏,方便團隊協(xié)作,特別是方便測試和產品發(fā)布。一般產品研發(fā)節(jié)奏都是按每周1個小版本,以便安排和協(xié)作。但是因為APP有發(fā)布周期和推廣成本的考慮,因此會每隔幾周發(fā)布一個大版本。每個版本都包括若干需求點,因此自然就明確了測試范疇,這樣測試范圍就不會無限制蔓延,可以讓產品節(jié)奏非常明確,形成快速迭代和敏捷開發(fā)的研發(fā)風格。版本落地到代碼管理層面上關鍵就是代碼管理系繳一般都選用Git)中的Trunk版本。首先項目經(jīng)理需要在Git中創(chuàng)建Trunk版本,并為每個研發(fā)人員創(chuàng)建分支版本。研發(fā)人員在分支版本中測試沒有問題的版本代碼,將由架構師或項目經(jīng)理合并到Trunk版本中,這個版本經(jīng)過編譯后進行功能和系統(tǒng)測試,沒問題后再同步到運維發(fā)布系統(tǒng)中發(fā)布。7、^發(fā)階段(1)^發(fā)測試環(huán)境準備主要是部署Web、APP開發(fā)測試環(huán)境,以及部署需求管理系統(tǒng)、代碼管理系統(tǒng)Git等。青任人日均0,在言并代碼?看評有萊匐1內河早.境試一為國三田利試像楚音1離到所聲口左人員冏代碼cMTin-臺并代碼,得止像西stiakahuariEL2月L5日2塘降連校測出壞1S的全裝包,并作安裝、克廟、升強等基本中船刑試shakahJijariKL2RL5S賞迎包文件統(tǒng)一采用小寫字后氤名m則M其本腳后對代碼忖在計siblashATitL2月L5日j國代嗎支以總hensheriE國月比日4用匾證省端綠代碼siblflshariE13月15日物件打包>c-nztiEriEL2月L5日注烹版本專1文件名要班毫由開發(fā)人員右測國環(huán)攜的全桁電削玄不相試,坦改bq;fi構正式科愜的戴搦導人刊試科也willsamiajmL2月L5日提首備份到TI孔杯的也搪構節(jié)豉句展交洽曲皿沙小四j上佶g制試房源匹圭BL2月也日由宅必項知危,全部衛(wèi)正版AME埔江e+交玷劃上忙到理戊開風/t亞筮年占3hah:ahuari£思月14日T恥餐刑沮并度就相be-ckzh.aanfL2月|L5日不鴕技加”三不營前丁舌的裾罰受源推荏修茂刃圖過壞審K在刑世耳1且別比,EWuttfabmmi12月比日:時戲大斤#t范戲強行開觸是舌正常測出雕我信良同堂若豉建厝目坐下.空手91::rtokR再測irfHU”IB尋人悚有ITJTtfiMillsonjiansL2月B日10死田疝后一鼠有垢洋過猛特發(fā)布訐悔的士月去柒乜shakahu^TiE12月15日打包打戲騏』由測iiLA.艮存幃宣布即麻作上維芾刷iitF11在15d上主起<步布評甲*電子流1并鄧訓相關評審人的神審beDlzkzjig-L2月L5日如唳用甲人/育甲|此,可百檢打電話溝而報/II梅安裝包上傳到也比市開均由黃原曲臺號bi13ryL2月旨日點心半賓布的工丁?斯當目發(fā)和曾輪式12國則訊向學在陰發(fā)布壞皮避行上送前蹲位COfifAFiL2BL6B友和13為發(fā)拓訐榻測試由后一端胃法帶正式環(huán)隔吊大廳去技包fhakahuvic12月15日14招克裝笆上玲到正逢環(huán)1*的史舞的符魅binirFL2月L5日立糧正式環(huán)撬的大廳IB文廳以卷轎戲的下他頁面be-Dtzkzng-L2月L5日3苗也空升r境至把正式群他bih3EL2月的日立意31晚府予號相冏哂市西可日工行沔::曲手正本導曲里證書過期時河注意安奉包與隹槨拜Ifl更匹理QQ游戲大廳研發(fā)環(huán)境搭建計劃(2)開發(fā)設計文檔開發(fā)工程師拿到架構師設計文檔后,就可以將自己負責的部分拆分出來,然后提前對這部分的開發(fā)細節(jié)進行補充和完善,形成開發(fā)設計文檔。開發(fā)設計文檔主要用來提高軟件開發(fā)效率,保證軟件質量,并有利于后續(xù)產品客服文檔的編寫,也非常有利于后續(xù)的研發(fā)迭代和代碼維護工作。前端開發(fā)、APP客戶端開發(fā)、后臺開發(fā)完善的內容和細節(jié)各不相同,但是內容主要集中在開發(fā)環(huán)境、開發(fā)語言、使用框架、對象屬性方法、接口封裝、數(shù)據(jù)結構設計、界面開發(fā)、編譯發(fā)布等方面。⑶前端開發(fā)前端開發(fā)工程師通過使用JavaScript來編寫和封裝具有良好性能的前端交互組件,并通過CSS+XHTML輸出Web操作界面。前端工程師經(jīng)常不僅要考慮前端實現(xiàn),很多時候也需要了解后臺研發(fā),從而能不斷優(yōu)化前端代碼分層架構,讓Web產品的穩(wěn)定性和可用性不斷提升。(4)APP客戶端開發(fā)App客戶端開發(fā)主要是指IOS、人門~「5~、微信小程序的開發(fā)。IOS開發(fā)推薦使用Xcode,需要運行在MacOS上;Android開發(fā)推薦使用Eclipse;微信小程序開發(fā)需要使用微信開發(fā)者工具。⑸后臺開發(fā)后臺開發(fā)主要是指的服務器端的程序開發(fā),包括Web后臺開發(fā)、組件開發(fā)兩類。兩者之間其實本質上一體的,web后臺可以看作是組件的前端。Web后臺解析了HTTP請求,然后通過層層轉發(fā)給了后面分布式系統(tǒng)的多個組件并調用服務。因為互聯(lián)網(wǎng)公司的server一般都是Linux,因此還會涉及到Shell腳本編寫、Linux環(huán)境編程等內容,需要熟悉Linux/Unix下各種環(huán)境編程的API。(6)開發(fā)工程師自測開發(fā)工程師可以一邊研發(fā)一邊自測,完成所負責功能模塊的開發(fā)后再進行完整功能模塊的自測。開發(fā)自測和測試的重點不一樣,是為了減少不必要成本,而不是要替代測試工程師的工作。因為代碼是開發(fā)自己寫的,自測可以發(fā)現(xiàn)的問題,就完全沒必要讓測試工程師去發(fā)現(xiàn)。而且發(fā)現(xiàn)問題馬上就可以自己修改自己驗證,減少了溝通和返工成本。8、測試階段從需求詳情文檔經(jīng)過評審,測試工作就開始了。(1)測試用例測試經(jīng)理組織測試工程師,根據(jù)需求詳情文檔撰寫測試用例。測試用例是軟件測試質量穩(wěn)定的保障,用于指導測試的實施、規(guī)劃測試數(shù)據(jù)、設計測試腳本、評估測試結果、分析缺陷標準等。測試用例一般都詳細記錄測試工程師應該有的操作信息,這樣可以幫助測試工程師參與測試。測試用例文檔一般包括修訂記錄、測試用例、測試數(shù)據(jù)等內容。測試用例可以直接在項目管理系統(tǒng)TAPD中批量創(chuàng)建。TAPD可以快速編寫并管理測試用例,制定測試計劃并執(zhí)行,然后利用Bug跟蹤管理進行問題跟蹤與解決。TAPD平臺中的測試用例列表與詳情頁有很多常見模塊可以歸納成測試用例庫,然后不斷優(yōu)化完善,這樣可以減少重復設計測試用例。相當于把測試工作也組件化,減少低效溝通提高效率。例如注冊功能測試用例,每隔一段時間就更新一次,以后出現(xiàn)需要測試注冊功能的時候測試工程師即可按照此規(guī)范進行測試,而無需針對這個功能重復編寫測試用例。
注朋測試用例序號F1控件它稱,功能描述.注冊淘號蚓人動柞期望的諭出廂座宴由情況001通填項辦案聽空柱冊k彳目埴小睡示傕月002用戶名營書并注字符注冊顯示用戶晶字符爭8E提示館總003兩小輸上密碑不Tt燧行注冊K不再既物及號叫一枝貫木信息004涓碼注書界法字舒”.叫K不赤眄了符心盯提齊h忌005郵的搟式不正確批出正扁的響羯顯示.a部常地戰(zhàn)格此材慟箕-瞅阻已辨牲班的用戶,進行注冊顯示用戶用已存在理不估息007蜴戶席莉普褥長度都為t民大仙】.建行注對注冊應動008用戶半代膽力r節(jié)人他】-L^行注冊顯靠陽戶老長度嗓皿提示信息00S密的性段為[顯mi-世力注附裁示密碼忙展設證提示信息009用戶名和密聯(lián)般都為【單小m,道行住婦注中]或力0E0用戶名看度舌1號小值】黑行注冊口示用戶嘉物鋁&6E程示倩總0⑷苗碼長度為【最小曲】4,進行注W顯示密碼長度町證賴帝總網(wǎng)戶名和密眸度在工?即值.&人網(wǎng)】上闈,蛙行注冊拄冊啊012桃受已在在用4的用戶書的人小寫曲馨珊根據(jù)而求百是近區(qū)分大小汽013tab搔陞是否證詼技建型正確響覘照層1■15注冊功能的測試用例規(guī)范(部分)(2)功能體驗測試功能測試就是對產品功能進行驗證,根據(jù)功能測試用例逐項測試,檢查產品功能是否達到用戶要求。功能測試主要采用黑盒測試方法,把測試對象看作黑盒子,主要測試功能而不考慮軟件內部結構及代碼。一般從軟件產品的界面、架構出發(fā),按照需求編寫出來的測試用例,輸入數(shù)據(jù)在預期結果和實際結果之間進行評測,進而提出更加使產品達到用戶使用的要求。黑盒測試試圖發(fā)現(xiàn)以下類型的錯誤:功能錯誤或遺漏、界面錯誤、數(shù)據(jù)結構或外部數(shù)據(jù)庫訪問錯誤、性能錯誤、初始化和終止錯誤等。這部分測試除了測試工程師需要參與外,產品、交互、視覺設計師也需要深度參與,因為很多隱性信息都很難在需求文檔中寫得無一遺漏,但是產品設計師一看就能看出很多的問題,而這些問題測試工程師卻難以判斷,因為他們經(jīng)常不知道產品設計師怎么想的。功能體驗測試最好是與研發(fā)同步。Web測試提供測試環(huán)境,產品設計團隊通過配置host即可訪問測試環(huán)境,隨時能看到開發(fā)進展情況。對客戶端的開發(fā)則每天定時合并代碼到trunk并提供dailybuild版本,產品設計團隊及時下載體驗,并在下班前將體驗問題通過工作群告知研發(fā)人員,以便研發(fā)人員第2天及時改進。這樣可以及時糾偏,減少研發(fā)憋大招。這個地方看似很小的工作習慣改變,但是會產生天壤之別的結果。所謂敏捷開發(fā),也體現(xiàn)在這些協(xié)作細節(jié)里。(3)性能測試性能測試關注軟件完成特定功能的響應速度、穩(wěn)定性和運維成本消耗。主要是為了優(yōu)化系統(tǒng)容量、可擴展性、系統(tǒng)穩(wěn)定性、資源利用率等指標。性能測試一般采用壓力測試的方法,通過給系統(tǒng)加載一定負荷的業(yè)務壓力,讓系統(tǒng)持續(xù)運行一段時間(一般為7x24小時),檢測系統(tǒng)是否能穩(wěn)定運行。目錄裂TOC\o"1-5"\h\z前言 2P1第一章系統(tǒng)性能測1試概逑 2P1.1.1功能筲介 “1.12性能測試指標 ..3I-1系統(tǒng)結'構展沆程 4P承蛻導體結構 4P.工工月匕牛篁,夬 美健點1S違(KP) 41-1性能訓試環(huán)境 W?第一章性能剛訊 6P2.11頁期哇能測]試 5P2.1.1預期性能概述 5pZ.1.Z測]lit 15P2.2 用戶并發(fā)測]試 51-1并發(fā)測試概述 5p測]試目的 『+J23 大■據(jù)里黃訊 7+J大數(shù)捱里則試概述 “測]試 4?4.1施芳強度副試眼迷 〕工4_2測]試目的 -」負載能力則記 Q負載測]試概述 Q則試目的 2工6則試方法及測試用例 Q2.7刎試指標刑期望 的2.7.2則試薊據(jù)準省 9」3第三章則試過程及結果捅迷 - - . . .L則試捅逑 .2則試場泉 1仙」35則試結果標沱 1:」州試潔束標成一般依據(jù)以下席貝1|: 1:」執(zhí)行每個場曇時需要記錄以下相應的數(shù)據(jù) 1:」性能測試方案模板(大綱部分)性能測試主要步驟如下:A)羅列主要用戶場景及相應負載量重點針對可能出現(xiàn)性能瓶頸的場景,逐項分解和預估負載量。為了讓系統(tǒng)抗壓能力更大一些,一般都會多預估一定比例的負載量,以防出現(xiàn)意外情況。B)識別穩(wěn)定性的主要性能指標然后根據(jù)每個場景的負載量,分解每個后臺服務、APP、web端所需關注的系統(tǒng)指標,比如響應時間、CPU、內存使用率等。C)單元性能測試與改進在準備好測試環(huán)境后,使用測試工具對每個接口按照合法輸入格式進行壓力測試,確保在目標負載量都不會導致出現(xiàn)問題。比較常用的壓力測試工具是Loadrunner。如果系統(tǒng)出現(xiàn)響應延遲或崩潰的情況,則需要運維和研發(fā)快速迭代。然后再次測試,直到系統(tǒng)性能指標達標為止。D)客戶端兼容性測試Web界面的兼容性測試;可以直接用Chrome內置開發(fā)工具即可完成。APP兼容性測試,最好借用第三方工具(例如Testin云測),提交APP后,Testin云測將會部署APP到數(shù)百款手機,然后自動輸出兼容性穩(wěn)定性報告。也可以根據(jù)測試工程師提供的測試用例,針對每款手機批量進行功能和體驗測試。E)整體系統(tǒng)測試與改進當每個場景下的單元測試完成后,再針對整個系統(tǒng)進行完整的壓力測試。同樣,如果出現(xiàn)響應延遲或崩潰的情況,則需要運維和研發(fā)快速迭代,找到出問題的后臺接口或前臺模塊進行優(yōu)化,直到系統(tǒng)性能指標達標為止。(4)數(shù)據(jù)初始化運營數(shù)據(jù)初始化首先是數(shù)據(jù)庫工程師根據(jù)產品和運營人員的需求,對基礎數(shù)據(jù)進行完善和補充,以達到能用戶能正常使用的狀態(tài)。比較麻煩的是以往舊系統(tǒng)的數(shù)據(jù)遷移,由于舊系統(tǒng)和現(xiàn)有系統(tǒng)的字段,類型,日期格式,數(shù)字格式等差異,需要抽絲剝繭一層層把數(shù)據(jù)注入到對應的數(shù)據(jù)表里,特別是表間關系需要繼續(xù)保留下來。然后是運營人員通過運營后臺,手動修改部分有問題的數(shù)據(jù)。(5)產品內部測試測試工程師完成所有測試用例的測試工作,研發(fā)人員將所有必須完成的Bug修正修正完成,其他待修正bug完成轉需求后,就可以啟動產品內部測試了。內部測試首先可以針對產品相關的所有員工,包括產品、研發(fā)、運營、市場、運維等各個角色。這個過程一方面是為了收集產品缺陷反饋,同時也是讓相關人員有參與產品改進的機會,讓大家能榮辱與共。同事對于產品的容忍度比用戶要高得多,就算產品做得很爛,他們都會堅持著把產品所有功能都用一遍,而真實用戶很可能看到一個不好的體驗點轉身就走。因此產品經(jīng)理一定要高度重視同事反饋,同事發(fā)現(xiàn)每個的缺陷,都一定會導致大量用戶流失。員工反饋的問題如果是之前沒有發(fā)現(xiàn)的缺陷,就需要盡快改進修正。如果對當前版本影響不大,就可以放到以后版本Bug轉需求,并記錄下反饋人信息和詳細溝通結論。等員工完成內測后,產品經(jīng)理可以將產品內部測試版發(fā)到核心用戶群里,以有獎測試的形式刺激大家提交缺陷。如果線上反饋不夠深入,可以由UER調研小組邀請用戶當面溝通交流,找到更深入的缺陷。這些問題匯總提交到Bug列表中,可以馬上修正的盡快修正,可以放下個版本的Bug轉需求。9、發(fā)布上線階段發(fā)布環(huán)境的搭建,包括預發(fā)布環(huán)境、生產環(huán)境、灰度發(fā)布環(huán)境的準備等工作。而正式上線的工作,則包括數(shù)據(jù)庫上線、程序文件上線等工作。推薦騰訊云毫秒服務引擎,這是一個開源框架,適用于在廉價機器組成的集群上開發(fā)和運營分布式后臺服務。毫秒服務引擎集RPC、名字發(fā)現(xiàn)服務、負載均衡、業(yè)務監(jiān)控、灰度發(fā)布、容量管理、日志管理、key-value存儲于一體,非常適合中小型互聯(lián)網(wǎng)公司部署發(fā)布分布式應用。(1)發(fā)布環(huán)境準備預發(fā)布環(huán)境準備:預發(fā)布環(huán)境是跟生產環(huán)境配置一模一樣的系統(tǒng),只是往往只有一個測試節(jié)點,但是它后面調用的是正式生產環(huán)境的資源(例如DB、Cache、隊列等)。預發(fā)布環(huán)境主要是要在正式發(fā)布前,做一次完整回歸測試。測試人員可以通過地址參數(shù)、Cookie、請求頭參數(shù)、VPN等工具,接入預發(fā)布環(huán)境進行系統(tǒng)整體回歸測試。預發(fā)布環(huán)境下,最常見的Bug如下:生產環(huán)境代碼已更新到最新版本了,但是數(shù)據(jù)庫變更卻忘了操作生產數(shù)據(jù)庫。這個情況下,測試環(huán)境很可能都是正常的,但是預發(fā)布環(huán)境就可以很好的發(fā)現(xiàn)bug。跟開發(fā)環(huán)境不同,預發(fā)布環(huán)境不允許開發(fā)人員直接接觸,以防因為開發(fā)人員提交代碼的瑕疵影響預發(fā)布環(huán)境里的系統(tǒng)。因為這是運維人員保障上線質量的最后一道屏障,運維標準也基本等同于生產環(huán)境。正式生產環(huán)境準備:生產環(huán)境包括發(fā)布產品所需要的所有服務器資源,包括Web服務器、數(shù)據(jù)服務器、CDN服務等?;叶劝l(fā)布環(huán)境準備:每個項目一般都會部署到多臺機器,所以一般會拿1-3臺服務器看看是否可用,如果失敗則只需要回滾這幾臺服務器,比較方便?;叶劝l(fā)布需要使
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 艾滋病預防知識調查報告
- 特應性皮炎治療指南2024
- 膽道蛔蟲病護理查房
- 小班防疫安全消息
- 大班科學活動找種子
- 青春期畢業(yè)晚會
- 別說我小教案及反思
- 化學反應速率與限度說課稿
- 紅綠燈說課稿中班
- 汽車4S店元旦活動
- 《肉牛養(yǎng)殖項目商業(yè)計劃書》
- 新概念英語二冊超詳教案講義筆記Lesson 51 Reward for Virtue 對美德的獎賞
- 掛籃驗收記錄表
- PDCA之麻醉單書寫合格
- 用于鎮(zhèn)痛的鎮(zhèn)痛藥篩選模型
- 繪本故事:睡睡鎮(zhèn)
- 市政道路工程施工全流程圖
- 猜猜哪是左哪是右課件
- 單層門式輕鋼結構廠房施工組織設計
- 融資租賃租金計算模板
- DL5168-2023年110KV-750KV架空輸電線路施工質量檢驗及評定規(guī)程
評論
0/150
提交評論