這篇文章有點(diǎn)偏向于APP系統(tǒng)架構(gòu)方面的設(shè)計(jì),很贊。by
舉個(gè)例子來(lái)說(shuō)明為什么說(shuō)業(yè)務(wù)建模過(guò)程最為關(guān)鍵、也最為復(fù)雜:
那么這個(gè)時(shí)候,你應(yīng)該怎么去做呢?讓我來(lái)試著描繪一種可能成功的做法。
詳細(xì)的與每個(gè)干系人(Stakeholder)進(jìn)行溝通,識(shí)別出每個(gè)人的一些行為特性,例如:
1、你一般什么時(shí)候會(huì)去哪兒找哪些物品做哪些事情,什么時(shí)候又還原回去?(流程)
2、這些物品有些什么保管的要求?(功能需求)
3、你希望去哪里去取最方便?(非功能需求)
4、有別人和你一起用這些物品嗎?(權(quán)限要求)
5、 大致預(yù)算在什么范圍,等等(限制條件)
1、對(duì)收集的信息展開(kāi)分析。保留有用的,去除相同的和無(wú)意義的需求。(需求過(guò)濾)
2、對(duì)物品進(jìn)行逐一的分析,整理歸類。確定物品分作哪些類別,例如,衣服類,鞋類,餐具類,清潔劑類,工具類,小家具類等。(分類&抽象)
3、確定每個(gè)類別的行為特性,尺寸大小,放置要求等。例如,衣服類物品要求存放于封閉、干燥的環(huán)境,拿取方便、好查找,部分衣服要求掛放,需要足夠的空間;鞋類要求每雙鞋都單獨(dú)放置,存放時(shí)能具備一定的空氣流動(dòng)性,要方便查找和拿?。徊途哳?,要求單獨(dú)存放,最好放在與水池較近的地方,要求能封閉放置,能在需要的時(shí)候進(jìn)行通風(fēng)干燥處理,儲(chǔ)物構(gòu)造的材料要求防水;清潔劑類,沒(méi)有特別要求,只需要和衣服類,餐具類分開(kāi)存放即可;工具類,……(抽象&分析)
形成初步的設(shè)計(jì)方案。設(shè)計(jì)思路為,配置兩個(gè)不同的儲(chǔ)物柜解決儲(chǔ)物的問(wèn)題。一、在靠近廚房的角落設(shè)計(jì)一個(gè)三欄式的壁掛組合儲(chǔ)物柜,采用防火,防腐蝕的UV板材。設(shè)計(jì)為掛式的原因是,節(jié)省房屋的空間,利于時(shí)常打開(kāi)柜門(mén)通風(fēng);大人拿取方便,也防止小孩子隨意拿取玩耍而摔破;三欄結(jié)構(gòu)可以分開(kāi)放置餐具類、清潔劑類物品和工具類物品,空間設(shè)計(jì)更為合理。二、在靠近臥室的角落放置一個(gè)落地的多功能儲(chǔ)物柜。儲(chǔ)物柜設(shè)計(jì)為三層的實(shí)木結(jié)構(gòu),下層主要放置鞋類,其后面板和內(nèi)隔檔板采用鏤空設(shè)計(jì),內(nèi)置4個(gè)隔層,總體高度約占柜體的1/4。鏤空和隔層設(shè)計(jì)主要起到通風(fēng)干燥和分類放置便于取放的作用;中間層為抽屜式設(shè)計(jì),主要放置可以摺疊放置的衣物;而一些需要掛置的衣服則掛放在上層。在儲(chǔ)物柜的頂上還可以放置一些小家具,例如摺疊的凳子,卷席等。另外,采用全實(shí)木材料還以防止甲醛等有害物質(zhì)的侵害。(建模過(guò)程)
形成結(jié)論后,召集相關(guān)干系人商議、評(píng)估方案。一般依據(jù)業(yè)務(wù)程度,可以采用簡(jiǎn)單的評(píng)審(團(tuán)隊(duì)內(nèi)部小范圍的評(píng)審)或復(fù)雜(有客戶、用戶或者專家參與)的評(píng)審方式。
一旦方案得到大家的認(rèn)可,則可以進(jìn)入實(shí)施過(guò)程了,這時(shí)可以再推舉一個(gè)人作為實(shí)施的負(fù)責(zé)協(xié)調(diào)人,由他來(lái)控制預(yù)算,制定行動(dòng)計(jì)劃,確定需求的優(yōu)先級(jí)別,落實(shí)方案的執(zhí)行。
其實(shí),這么多年來(lái)我們?cè)谧鲂枨蠓治龊徒r(shí),也是有一定的規(guī)律可遵循的,我用一句話來(lái)概括就是:從業(yè)務(wù)對(duì)象入手,識(shí)別業(yè)務(wù)對(duì)象的行為,抽象APP,從而構(gòu)造系統(tǒng)模型。
下面用網(wǎng)上訂票的例子來(lái)詳細(xì)說(shuō)明我們的做法:
假設(shè),我們已經(jīng)知道了用戶的業(yè)務(wù)流程。
第一步:用戶通過(guò)瀏覽器登錄web網(wǎng)站,瀏覽和查詢需要的信息。
第二步:選擇票,填寫(xiě)訂單信息,確認(rèn)個(gè)人的信息,以方便取票時(shí)核對(duì)。
第三步:通過(guò)網(wǎng)站提供的支付方式,在線完成支付。
第四步:系統(tǒng)生成電子票號(hào),并短信通知訂票人,告知用戶出票相關(guān)的信息和兌票方法。
具體參見(jiàn)下圖:
所以,第一步我們分析業(yè)務(wù)中包含了哪些業(yè)務(wù)對(duì)象。
訂票過(guò)程的所有活動(dòng)都是圍繞這四個(gè)對(duì)象來(lái)開(kāi)展的,少了任何一個(gè)對(duì)象,這個(gè)流程都是不完整的。
那么在識(shí)別BO的時(shí)候,我總結(jié)了幾個(gè)簡(jiǎn)單的標(biāo)準(zhǔn):
1、該業(yè)務(wù)對(duì)象是否有一定的明確業(yè)務(wù)含義,如果少了這個(gè)BO業(yè)務(wù)流程將不完整。
2、業(yè)務(wù)流程中一定有一個(gè)或多個(gè)環(huán)節(jié)是有這個(gè)BO參與的。
3、大多數(shù)BO往往是可以映射到現(xiàn)實(shí)生活中的某一類物體的。例如,人,賬單,公司,電話,系統(tǒng),卡,存折,車輛,身份證等等。
另外,我們?cè)谂袛嗍欠袼械臉I(yè)務(wù)對(duì)象都被識(shí)別時(shí),也有一個(gè)很簡(jiǎn)單的判斷標(biāo)準(zhǔn):業(yè)務(wù)流程中可能涉及的數(shù)據(jù)內(nèi)容都與已經(jīng)識(shí)別的業(yè)務(wù)對(duì)象能緊密關(guān)聯(lián)上。
在確定BO后,需要分析和識(shí)別所有與業(yè)務(wù)對(duì)象相關(guān)的行為。
BO本身是有意義的,這些意義可以被細(xì)化為一些屬性。我理解,屬性就是說(shuō)明和識(shí)別BO某一方面的一些具體標(biāo)識(shí)或參數(shù)。
識(shí)別業(yè)務(wù)對(duì)象屬性時(shí),最重要是能分清楚哪些屬性是與目前工作范圍相關(guān)的。例如,用戶有很多屬性,但高矮胖瘦這些與我們正在分析的電子商務(wù)系統(tǒng)毫無(wú)關(guān)系,所以,找到BO屬性并準(zhǔn)確過(guò)濾才是這個(gè)過(guò)程的關(guān)鍵行為。
(在正式的團(tuán)隊(duì)協(xié)作過(guò)程中,必須要對(duì)每個(gè)BO,BO的屬性和BO的行為進(jìn)行統(tǒng)一編號(hào)標(biāo)識(shí)。)
我們?cè)谧R(shí)別BO的行為時(shí),可以分為三個(gè)層次:
1、從業(yè)務(wù)流程中識(shí)別。從流程中只能識(shí)別一部分BO的行為,這一部分行為往往被稱之為業(yè)務(wù)行為;也是BO最容易確定的一類行為,只要流程定義清楚了,這類行為就已經(jīng)被確定了。例如,在上面的例子中,用戶在流程中有登錄和注冊(cè)行為;針對(duì)訂單對(duì)象,有填寫(xiě)訂單,提交訂單行為;賬單對(duì)象有支付行為等。
2、從分析BO的完整性來(lái)識(shí)別。例如,用戶有登錄,就一定有注銷行為;訂單能新增,一定可以修改和查詢;賬單能支付,也可以退款。
3、從外部的需要來(lái)識(shí)別。例如,電子票本身是沒(méi)有核對(duì)識(shí)別需要的,但考慮到安全性,一些運(yùn)營(yíng)商還是考慮了將電子票號(hào)進(jìn)行了加密處理,票號(hào)本身含有身份識(shí)別信息。一旦電子票號(hào)遺失,只要有身份證信息,則電子票仍能使用。
通過(guò)三個(gè)層次的分析,一般能識(shí)別出絕大部分的BO行為,當(dāng)然,還需要對(duì)這些識(shí)別的行為進(jìn)行統(tǒng)一的描述。描述的內(nèi)容包括行為名稱,行為說(shuō)明,涉及的BO屬性和變化。例如,
有人說(shuō)是購(gòu)物車的行為;有人反問(wèn),為何這個(gè)行為主要出現(xiàn)在商品的單頁(yè)上?
建立APP的過(guò)程是明確系統(tǒng)范圍的過(guò)程,同時(shí)也是生成系統(tǒng)模型的過(guò)程。
建立APP有兩種視角:
1、一種是以BO為視角,聚合BO的行為,以管理BO的功能組成一個(gè)APP;例如,我們將針對(duì)訂單的所有行為,組合成為一個(gè)APP,稱為訂單管理。
2、另外一種是以業(yè)務(wù)為視角,聚合一個(gè)流程的所有環(huán)節(jié),以實(shí)現(xiàn)流程的功能組成一個(gè)APP。例如,我們將針對(duì)打折票的預(yù)定流程中的所有行為環(huán)節(jié),組合成為一個(gè)APP,稱為折扣票預(yù)定APP。
具體參見(jiàn)下圖:
但不管怎么組織APP的構(gòu)成,在BO層面看,都是一樣的:系統(tǒng)都是由操作BO的一堆行為構(gòu)成的。
這里需要引入兩個(gè)重要設(shè)計(jì)分析過(guò)程:一個(gè)是用戶體驗(yàn)設(shè)計(jì),一個(gè)是非功能設(shè)計(jì)。
用戶體驗(yàn)設(shè)計(jì)(UserExperience)是以用戶為中心的設(shè)計(jì),是一種經(jīng)驗(yàn)與創(chuàng)造相結(jié)合的設(shè)計(jì)過(guò)程,主要目的是提升用戶的操作舒適感,增強(qiáng)在同類產(chǎn)品中的競(jìng)爭(zhēng)力。在web2.0時(shí)代,用戶體驗(yàn)設(shè)計(jì)將不再局限于展現(xiàn)流程和完成數(shù)據(jù)操作方面,還承載了不同角色之間的信息多元化交互的設(shè)計(jì)需要,以用戶為核心將不再是簡(jiǎn)單的信息提供(推送)而已。
已經(jīng)被我們熟知的拆分方法有很多,可沒(méi)有一個(gè)標(biāo)準(zhǔn)去衡量一定要拆分為多少層級(jí)才合適,這往往需要視系統(tǒng)的復(fù)雜程度和設(shè)計(jì)需要而定。
聯(lián)系客服