
你們有沒有碰到過這么一種情況?在小組進行頭腦風(fēng)暴時,有人講出一個不錯的想法,它就會在腦子里揮之不去,剛想到點別的,還沒深入,就又回到了這個想法。知道的越多,思維越受束縛。創(chuàng)新難,難在不容易走出思維的牢房和知識的邊界。以前大家都用帶鍵盤的諾基亞手機,習(xí)慣了手機有按鍵,研發(fā)一款新手機時,有幾家手機廠商能夠想到將鍵盤刪除,改成觸屏手機?現(xiàn)在大家習(xí)慣了觸屏手機,在下一代個人通信設(shè)備中,會是以什么樣的方式進行人機交互?前端開發(fā),也是一個道理。
最近開始了新任務(wù),要設(shè)計開發(fā)一個庫存管理系統(tǒng)。我從來沒有接觸過這個領(lǐng)域,對庫存管理的商業(yè)運作完全不了解,這時如果自己空想去造一個軟件出來,不可能會符合要求,就像不懂佛跳墻的廚師硬要自己做一道,不知道要放哪些主料,哪些佐料,要用什么火候等,做出來的可能不是佛跳墻,而是東北亂燉。作為一個剛?cè)腴T的程序員,最直接的反應(yīng)是,我去找找現(xiàn)有的軟件,看看他們是怎么做的,參考參考,再自己設(shè)計。這種方式能夠讓我們在最短的時間內(nèi),知道做出來的軟件是什么樣的,卻也同時極大限制了自己的設(shè)計。我們的大腦總是會不自覺的引導(dǎo)我們?nèi)プ鱿鄬唵蔚氖?/strong>。因為有了參考,在之后設(shè)計的過程中,會傾向于去回憶別人的做法,去模仿別人的做法,因為有模版參照,最省時省力,最終設(shè)計出來的產(chǎn)品,也就不會有很大的突破,和別人的差不多,并且不一定適合公司的商業(yè)運作場景。那具體要怎么做呢?
一切軟件設(shè)計,都應(yīng)該從商業(yè)角度入手,從用戶角度去思考和設(shè)計。
軟件設(shè)計的流程
軟件設(shè)計,大體可以分為一下三個步驟:
- 理清業(yè)務(wù)邏輯
- 思考用戶日程
- 參考現(xiàn)有軟件,補不足
理清業(yè)務(wù)邏輯
在著手設(shè)計之前,先要弄清楚,這個軟件是 給誰 在什么樣的場景 下使用。
- 了解使用軟件的商業(yè)運作過程,理清商業(yè)運作的主線。
- 在考慮在這個過程中,有哪些特殊情況。
- 在整個流程中思考,哪些部分要使用到軟件,哪些部分能用軟件優(yōu)化?
拿庫存管理軟件為例,其中一條主線大概是:采購員下單,庫存管理員在物件到庫時,清點,存庫。這個過程中的特殊情況有:清點貨物時,貨物和下單的不符、貨物有損傷等,盡量將這些細節(jié)都考慮全。軟件在這個過程中,可以幫忙下單,可以有掃碼器,掃碼識別貨物同步信息。如果貨物出問題了,可以通過軟件記錄并通知采購員,讓采購員與供貨商進一步聯(lián)系,重新發(fā)貨等。
這只是一個簡化的例子,真實場景還有很多別的要考慮的,也有其他用軟件處理的方式。
思考用戶日程
第一點主要從業(yè)務(wù)角度入手,這里側(cè)重從用戶角度思考。主要考慮:
- 每個用戶,每天在什么時間都做什么事情?
- 用戶使用軟件的頻率是什么樣的?
- 軟件怎么幫助用戶更好,更快的完成任務(wù)?
這點似乎和第一點有些重疊,但因為思考的角度不同,有助于將業(yè)務(wù)邏輯和用戶使用場景思考的更加全面。繼續(xù)上面的例子,假設(shè)庫存管理員每兩個小時才有一批新的貨物要入庫,一天還有很多別的時間,他們可能會要清點整個倉庫的貨品等,將這個用戶其他可能進行的活動都考慮進去。那軟件怎么幫助這個用戶呢?比如說要存庫,軟件可以顯示地圖,讓管理員知道該存哪,更厲害點的,可以有倉庫的室內(nèi)導(dǎo)航。
對每個場景,每個用戶都這一系列的思考,并將軟件使用融入其中,整個流程下來,軟件的設(shè)計基本差不多了。
參考現(xiàn)有軟件,補不足
都說要站在巨人的肩膀上,有了初版自己的設(shè)計,就能去和別人的設(shè)計相比較。
哪些功能他們有,我們沒有?并不是將自己沒有的全加上,而是考慮業(yè)務(wù)邏輯,猜測他們的業(yè)務(wù)邏輯是什么樣的?我們需要這部分的功能嗎?
哪些功能我們有,他們沒有?考慮是否需要做出相對應(yīng)的修改?
另外一個可以借鑒的地方,對方的界面設(shè)計。特別對新手來說,怎么去排版,這個表格怎么排比較好?那個按鈕放哪里更合適?不清楚時,可以參考優(yōu)秀軟件,想想為什么對方這么做?我們也這么設(shè)計合適嗎?
小結(jié)
做個小總結(jié),我們?nèi)菀妆蛔约嚎吹竭^的應(yīng)用,軟件影響思維的邊界,所以在開始做一個新的領(lǐng)域的軟件時,第一步不應(yīng)該是直接參考別人的軟件,而是思考業(yè)務(wù)邏輯,用戶的使用場景。最后再去參考對比別人的軟件。
所見即所縛,你知道的,都將成為你迸發(fā)創(chuàng)意的阻力。