銀杏葉落盡,只留下淡黃的記憶,浸潤著北國的風(fēng)光。
這個世上,說喜歡你的人很多,能陪你到最后的至多只有一個。
這個世上,嚷嚷著要旅行追求詩和遠(yuǎn)方的人很多,能做到的少之又少。
同樣,說起閱讀,很多人都把它寫在了愛好一欄。倘若你要讓其拿出幾個得意的作品,能拿出來的很少。
把寫作當(dāng)成生活一部分,堅(jiān)持下來的更是寥寥無幾。
任歲月荏苒,任世事滄桑。
我亦微笑,我亦無悔。歲月靜好,念你如初。
一、"緣起"
上周的專欄——后臺系統(tǒng)產(chǎn)品設(shè)計(jì)之《用戶權(quán)限系統(tǒng)》,發(fā)布后,有很多小伙伴分享轉(zhuǎn)發(fā)文章,在此一并謝謝,也有小伙伴加我微信好友,交流一些用戶角色權(quán)限這塊的內(nèi)容。比如收到鵝廠的小伙伴來信:
涉及to b用戶權(quán)限角色管理這塊跟to c最大的差異化是什么呢?
正如圖片中內(nèi)容一樣,當(dāng)時在現(xiàn)場,沒能來得及回復(fù),后來也只是簡單回復(fù)了下,今天在這里詳細(xì)說說吧。
權(quán)限設(shè)計(jì)在B端的各類后臺管理系統(tǒng)里比較常見。一般的場景是不同類型的人員需要在一個系統(tǒng)里協(xié)同完成某項(xiàng)業(yè)務(wù)操作,他們分別具有不同的權(quán)限,操作不同的資源。
在C端產(chǎn)品里,也能夠看到權(quán)限的設(shè)計(jì)的存在,相對B端的各類后臺管理系統(tǒng)來講的話,要簡單一些。
比如,微信群里,有兩個角色,群主和普通成員,分別有不同的權(quán)限。
普通成員:添加群成員,一般發(fā)言等
群主:群聊邀請確認(rèn),刪除群成員,設(shè)置群公告,群主管理權(quán)轉(zhuǎn)讓。
群主不僅有普通成員所有的權(quán)限,還有一些特殊權(quán)限,這些權(quán)限是普通成員所沒有的。下圖是根據(jù)微信的權(quán)限例子畫的一個簡單權(quán)限結(jié)構(gòu)模型。
二、理論
對系統(tǒng)來說,不論是群主還是普通成員,他們都是用戶,但各自的權(quán)限不相同,但軟件設(shè)計(jì)不可能根據(jù)不同的類型的用戶單獨(dú)去配置功能。如果后期增加了某一功能,豈不是需要分別對不同類型的用戶配置相應(yīng)功能。不管這個操作后期是不是讓電腦來操作完成,都達(dá)不到功能靈活配置的需要。
權(quán)限控制本質(zhì)是用戶與資源的的配置,但是我們不可能為每個用戶都要去配置權(quán)限。引入了角色對象,是為了將用戶與權(quán)限隔離開,降低兩者之間的耦合度,也就是兩者之間的關(guān)系。通過角色來控制用戶的權(quán)限分配,做到弱化用戶與權(quán)限之間關(guān)聯(lián)。比如,某個角色因需求的變化引起權(quán)限的增加或減少,我們只需要控制需求變動對用戶角色的影響即可。
微信群的例子里面,群主與用戶面向的資源有重疊的部分,也有差異的部分。不管是重疊的部分也好,還是差異的部分也罷,他們對權(quán)限都是通過功能的有無控制來實(shí)現(xiàn)。
比如說,當(dāng)群成員較少的時候,群內(nèi)每個人都可以改群名稱,他們都有這個功能。
但群成員的刪除,只有群主有,群成員無。這里未涉及到不同用戶角色擁有同一個功能,但操作的資源的廣度不一樣。所以說,這里權(quán)限設(shè)計(jì)通過功能的控制已經(jīng)滿足系統(tǒng)設(shè)計(jì)的需要。
三、后臺權(quán)限設(shè)計(jì)
但在一些較為復(fù)雜的B端后臺管理系統(tǒng)例子里面,僅僅從功能上考慮是不夠的,還要考慮到數(shù)據(jù)范圍的控制。
舉例說,某公司內(nèi)部管理系統(tǒng)軟件的權(quán)限設(shè)計(jì),根據(jù)業(yè)務(wù)類型劃分,使用產(chǎn)品的用戶角色有:
管理員。主要負(fù)責(zé)系統(tǒng)不同角色人員的管理。
財務(wù)。主要負(fù)責(zé)財務(wù)的成本管理與結(jié)算。比如下圖中的受理工號1。
營運(yùn)。主要負(fù)責(zé)操作中心配送業(yè)務(wù)。比如下圖中的受理工號2。
質(zhì)控。主要負(fù)責(zé)質(zhì)控考核,配送履約數(shù)據(jù)分析。比如下圖中的受理工號3。
按照上面業(yè)務(wù)類型的劃分,他們抽象的功能劃分結(jié)構(gòu)是這樣的:
接著深入思考一下,在一個部門里,有不同級別的職位,不同的職級的人功能權(quán)限相同,但操作的數(shù)據(jù)范圍是不一樣的。比如說,操作中心山東片區(qū)的的某一個總監(jiān),能查閱到公司在整個山東地區(qū)的配送數(shù)據(jù),他下屬帶的一個的城市經(jīng)理經(jīng)理,負(fù)責(zé)魯東地區(qū)業(yè)務(wù),那么他就只能看到魯東的業(yè)務(wù)數(shù)據(jù),他上級的總監(jiān),不僅能查閱到魯東地區(qū)的業(yè)務(wù)數(shù)據(jù),還能查到其它地區(qū)的業(yè)務(wù)數(shù)據(jù)??偙O(jiān),副總監(jiān),城市經(jīng)理都有查閱數(shù)據(jù)功能,但職位不同,所能夠查看的數(shù)據(jù)范圍也就不一樣。
不在一個部門里,同樣會需要這樣的考量。財務(wù)中心的財務(wù)總監(jiān),因?yàn)樨攧?wù)結(jié)算,可能需要查看所有地區(qū)的業(yè)務(wù)數(shù)據(jù),他就需要有查看操作中心負(fù)責(zé)的所有地區(qū)的業(yè)務(wù)數(shù)據(jù)。產(chǎn)生這種需求是由公司的職能結(jié)構(gòu)決定的。
上圖是個人對權(quán)限設(shè)計(jì)的總結(jié),把系統(tǒng)看作一個完整的資源,不同角色處于不同位置,占據(jù)的資源不同。其中把握的核心點(diǎn)就是,從兩個方向解構(gòu):
先橫向做功能分解,再縱向做數(shù)據(jù)分解。數(shù)據(jù)分解是對功能分解的補(bǔ)充,不是真正意義上的另一個維度的分解。
橫向以業(yè)務(wù)類型或業(yè)務(wù)模塊劃分來從功能上分解。
縱向上以職級或組織架構(gòu)來進(jìn)行數(shù)據(jù)劃分,是對功能權(quán)限進(jìn)行補(bǔ)充。
填寫下面表單即可預(yù)約申請免費(fèi)試聽!怕錢不夠?可先就業(yè)掙錢后再付學(xué)費(fèi)! 怕學(xué)不會?助教全程陪讀,隨時解惑!擔(dān)心就業(yè)?一地學(xué)習(xí),可推薦就業(yè)!
?2007-2022/ m.mwtacok.cn 北京漫動者數(shù)字科技有限公司 備案號: 京ICP備12034770號 監(jiān)督電話:010-53672995 郵箱:bjaaa@aaaedu.cc