Skip to main content

功能 與 使用情境

討論方向時,發現大家經常會把 #功能 跟 #使用方法 (其實就是 #政策) 混在一起談,特別是在設計階段的時候。

  • #能做什麼:指的是功能上的實踐,系統設計時要想到所有排列組合的維度。
  • #要怎麼用?指的是使用場景的選擇,其實就是從排列組合上,找到領域需要的最短路徑。這是政策與制度面的問題。

舉幾個例子:權限系統、Slide 、網路架構、Static Web Engine - Blog Engine


一、權限系統

權限結構不外乎 人 (群)、能或不能做什麼

至於是否提供權限的樣板,這屬於使用策略,策略看業務方向是怎樣,如果是企業級客戶,需要高度彈性的客製化,小型用戶,通常用樣板就可以。

樣板,就是種經驗法則。大部分的公司都有一些常見的角色,像是 Admin、R&D、Finance、Sales、Marketing ... etc. 這是給一班性的組織使用,通常可以滿足 八成的需求。

但大型企業,除了會有樣板常見的角色,很常會有各種延伸甚至是自行創造特殊的角色,像是 #技術傳教士 是一種角色 ...

設計要具備所有的排列組合,簡言之:Schema 要能 cover 全部的 Dimension,列舉所有的項目,找出 n * m * q 到底是幾個維度,這些維度裡各有什麼。設計功能要做到這樣的 #彈性 ,Dimension 則是擴充性,以後可能變成 n * m * q * r * i * c * k ... 這麼多維度。

然後經驗法則,樣板 => 這是 Domain 領域的東西,越有經驗的人(使用很多人的),越能知道要先提供什麼樣板。

整天都在看權限,連續看幾年,看來看去,就這樣。至於技術的實踐 Patterns,常見的就兩種:#RBAC (Role-Base Access Control) 和 #ABAC (Attribute-Base Access Control),這兩種設計目的都一樣,只是使用上的思維有些差異。前者是圈選的概念,也就是數學上集合論的東西,後者則是打破圈的概念,只有選的邏輯,是 Mesh (網狀) 結構,使用上彈性更高,但管理複雜度更難。


二、簡報工具

powerpoint 有很多功能,可以很細緻,也可以很奔放。注意我用的形容詞,這些其實就是一種使用上的策略。

使用 slide 有經驗的人,通常不會用樣板,而是會自己設計樣板,創造自己的風格。

但是一個不常做簡報,最快的方法就是直接使用樣板,可以快速產生簡報內容。

第三種:使用樣板簡報,改成自己風格的人。


三、網路架構:懶得寫了,看葉佩雯:https://rickhw.github.io/2016/02/21/AWS/Study-Notes-VPC/

--

第四個例子: Static Web Engine - Blog Engine

一樣是個樣板概念,可以簡單快速,也可以非常細緻,

K8s 官網,與很多人在用的靜態 Blog 是同一套: #Hugo

K8s 官網是個完整的 portal site, 包含 blog / landing page / news / documentation / .... etc.

所以要做到這樣,設計需要有足夠的維度 (Dimension),然後維度創造出各種層次的使用情境 (templates),hugo 官方 template 提供了各種層次的 樣板,所以 hugo 很複雜 ... 跟 hexo 是完全不同等級的 static web engine ...

葉佩雯:https://rickhw.github.io/2020/01/20/Blog/Hello-Hugo/


#抽象化思維 #吃完咖哩飯開始畫虎爛


原始資料