如何在產(chǎn)品設(shè)計中運用MVC模式?
產(chǎn)品經(jīng)理們?nèi)绻驹谟贸绦騿T的思維去思考需求并完成PRD文檔,運用MVC模式進(jìn)行產(chǎn)品設(shè)計,那么程序員就能夠更好地理解需求,那些不必要的撕逼也會減少許多。
每一位程序猿心中都有一個理想,那就是有一天不再需要coding,每一位產(chǎn)品狗心中也有一個理想,那就是自己會coding多好。產(chǎn)品經(jīng)理和程序猿難道就是這樣矛盾的兩個群體?
據(jù)不完全統(tǒng)計,產(chǎn)品經(jīng)理與程序猿的撕逼案例中,引起撕逼的原因有:
頻繁改需求、需求不明確、邏輯不清晰、無法實現(xiàn)。。。。。等等。
但是問題的根本原因還是產(chǎn)品經(jīng)理和程序員的思維方式不同,如果產(chǎn)品經(jīng)理們用程序員的思維去思考需求并完成PRD文檔,應(yīng)該會讓程序員們更好的理解吧。
MVC簡介
今天給大家談?wù)劤绦蜷_發(fā)中的MVC(Model-View-Controller)模式如何體現(xiàn)在產(chǎn)品設(shè)計中。
MVC模式作為軟件工程的經(jīng)典架構(gòu)模式,已經(jīng)被廣泛應(yīng)用到實際軟件開發(fā)中,現(xiàn)在主流的開發(fā)框架(如Spring、Struts2等)都是采用了MVC的設(shè)計思想。簡要介紹一下MVC模式:
模型(Model):模型代表業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)規(guī)則,是應(yīng)用程序的主體;
視圖(View):視圖表示用戶看到并與之交互的頁面;
控制器(Controller):控制器接受用戶的輸入,并調(diào)用模型和視圖去完成用戶的需求。
產(chǎn)品層面的對比
這些內(nèi)容似乎太抽象,在產(chǎn)品層面如何體現(xiàn)呢?
下面就按照我們分析需求、設(shè)計產(chǎn)品時需要考慮的點,介紹產(chǎn)品層面的MVC模式:
產(chǎn)品Model:同樣是業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)規(guī)則,舉個栗子:注冊表單的設(shè)計,產(chǎn)品經(jīng)理考慮注冊需要哪些字段,這些字段中哪些是必填項,每項的最大輸入長度,是否允許輸入字母和數(shù)字等,這些就是數(shù)據(jù)和規(guī)則,即模型層;
產(chǎn)品View:用戶看到并與之交互的界面,產(chǎn)品在這一層需要考慮界面的布局,比如按鈕的擺放位置、如何突出重點內(nèi)容、如何讓用戶更少的思考和點擊,這些是視圖層需要考慮的;
產(chǎn)品Controller:控制層調(diào)用模型和視圖完成用戶的需求,還用注冊的例子,用戶輸入需要填寫的字段,點擊注冊按鈕,如果注冊成功跳轉(zhuǎn)哪個頁面,如果不成功給用戶什么提示,都需要調(diào)用模型中的數(shù)據(jù)和規(guī)則在視圖中展示給用戶,這就是控制層。
MVC在你的PRD中如何體現(xiàn)
每個產(chǎn)品經(jīng)理的日常工作是離不開PRD的,PRD文檔的質(zhì)量直接影響整個團(tuán)隊的工作效率。每個公司的PRD文檔規(guī)范都不一樣,但是在PRD中需要展現(xiàn)的內(nèi)容幾乎是差不多的。
Model:產(chǎn)品涉及的數(shù)據(jù)(或者字段)以及對應(yīng)的業(yè)務(wù)規(guī)則,比如在PRD中描述訂單模塊時,訂單的所有狀態(tài)需要全部羅列,每個狀態(tài)下用戶可以進(jìn)行什么操作,每一步操作需要展示的數(shù)據(jù)及來源,這些是PRD中的model。
View:在PRD中,View很容易就會想到頁面原型,低保真或高保真都可以。這一層需要考慮產(chǎn)品在各種情況下頁面的展示,比如同樣一個頁面在正常情況、無網(wǎng)環(huán)境的展示,界面要始終保持友好。
Controller:PRD中的控制層即交互和流程,這是許多產(chǎn)品經(jīng)理容易忽視的內(nèi)容。PRD中有數(shù)據(jù)和原型是不夠的,必須加上詳細(xì)的流程圖,才能將數(shù)據(jù)和原型頁面貫穿始終。流程圖也分以下幾類:業(yè)務(wù)流程圖、任務(wù)流程圖和邏輯流程圖,這三者是遞進(jìn)關(guān)系,后一個對前一個流程在邏輯上進(jìn)行細(xì)化。對于比較復(fù)雜的模塊,建議PRD中都加入這三種流程圖。
產(chǎn)品的MVC模式,不是什么新內(nèi)容,只是將日常工作的內(nèi)容進(jìn)行了總結(jié)和提煉,并結(jié)合程序猿熟悉的模式進(jìn)行對比講解,產(chǎn)品經(jīng)理就是需要站在不同人群的角度思考問題,希望這篇文章能夠給部分產(chǎn)品經(jīng)理以幫助~
本文由 @悠閑小生 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
說的沒錯,我是一個app開發(fā)者,還有一位交互設(shè)計的小伙。我們在溝通中,我總是感覺兩人的思維模式有不同,導(dǎo)致最后的設(shè)計方案和軟件開發(fā)工程有很大的出入。
謝謝認(rèn)可~
以后會有文章更詳細(xì)