上篇:架構漫談(三):如何作好架構之識別問題安全
前一篇已經講了如何識別問題。在識別出是誰的問題以後,會發現,在大部分狀況下,問題都迎刃而解,不須要作額外的動做。不少時候問題的產生都是由於溝通的誤解,或者主觀上有不少沒必要要的利益訴求致使的。可是總還有一部分確實是有問題的,須要作調整,那麼就必需要有所動做,作相應的調整。這個調整就是架構的切分。架構
切分就是利益的調整blog
咱們要很是的清楚,全部的切分調整,都是對相關人的利益的調整。爲何這麼說呢,由於維護本身的利益,是每一個人的本性,是在骨子裏面的,咱們不能逃避這一點。咱們以第一篇文章裏面的例子爲例來作解釋。事務
咱們已經知道,隨着社會的發展,分工是必然的,爲何呢? 這個背後的動力就是每一個人本身的利益。每一個人都但願可以把本身的利益最大化,好比:生活的更溫馨,更輕鬆,更安全,佔用並享有更多的東西。可是每一個人的能力和時間都很是的有限,不可能什麼都懂,因此天然須要舍掉一些本身不擅長的東西,用本身擅長的東西去換取別人擅長的東西。資源
對比一我的幹全部的事情,結果就是你們都可以獲得更多,固然也產生了一個互相依賴的社會,互相誰都離不開誰。這就是天然而然而產生的架構切分,背後的原動力就是人們對本身利益的渴望。人們對本身利益的渴望也是推進社會物質發展的原動力。get
在這個模式下,比較有意思的是,每一個人必需要舍掉本身的東西,纔可以獲得更多的東西。有些人不肯意和別人進行交換,不想去依賴於別人,這些人的生活就很明顯的差不少,也辛苦不少,天然而然的就被社會淘汰了。若是須要在這個社會上立足,判斷標準就變成了:如何給這個社會提供更好更有質量的服務。提供的更好更多的服務,天然就可以換取更多更好的生活必需品。實際上這就是咱們作人的道理。數學
爲何須要切分?效率
當人們認識到要主動的去切分一個系統的時候,毫無疑問,咱們不能忘掉利益這個原動力。全部的切分決策都不可以違背這一點,這是大方向。結合前一篇「識別問題」,一旦肯定了問題的主體,那麼系統的利益相關人(用現代管理學語言叫:stakeholder)就肯定了下來。所發現的問題,會有幾種狀況:擴展
切分的原則軟件
狀況1是切分的緣由,狀況2是切分不合理而致使的新的問題,最終仍是要回到狀況1。對於狀況1,本質上都是時間上的負載。由於每一個人的時間是有限的,怎麼在有限的時間內作出更多的事情?那麼只有把時間上連續的動做,切分紅時間上能夠並行的動做,在空間上橫向擴展。因此切分就要有幾個原則:
必須在連續時間內發生的一個活動,不能切分。好比孕婦懷孕,必需要10月懷胎,不可以切成10我的一個月完成。
切分出來的部分的負責人,對這個部分的權利和義務必須是對等的。比方說媽媽10月懷胎,媽媽有權利處置小孩的出生和撫養,一樣也對小孩的出生和撫養負責。爲何必須是這樣呢? 由於若是權利和義務是不對等的話,會傷害每一個個體的利益,分出來執行的效率會比沒有分出來還要低,實際上也損害了總體的利益,這違背了提高總體利益的初衷。
切分出來的部分,不該該超出一個天然人的負載。固然對於每一個人的能力不一樣,負載能力也不同,須要不斷的根據實際狀況調整,這實際上就是運營。
切分是內部活動,內部無任怎麼切,對整個系統的外部應該是透明的。若是由於切分致使整個系統解決的問題發生了變化,那麼這個變化不屬於架構的活動。固然不少時候當咱們把問題分析的比較清楚的時候,整個系統的邊界會進一步的完善,這就會造成螺旋式的進化。但這不屬於架構所應該解決的問題。進化的發生,也會致使新的架構的切分。
原則2是確保咱們不能違反人性,由於維護本身的利益,是每一個人的本性。只有權利和義務對等才能作到這一點。從原則2的也能夠推理,全部的架構分拆,都應該是造成樹狀的結果,不該該變成有向圖,更不該該是無向圖。不少人一談架構,必談分層,可是基本上都沒意識到,是由於把一個總體分拆爲了一棵樹,由於有了樹,纔有層。
從某種意義上來講,談架構就是談分層,彷佛也沒有錯,可是仍是知道爲何比較好。從根節點下來,深度相同的是同一層。這個是數學概念,我就不展開了,感興趣能夠去複習一下數學。
一樣咱們看一個組織架構,也能夠作一個粗略的判斷,若是一個企業的組織架構出現了「圖」,比方說多線彙報,必定是對stakeholder的利益分析出現了問題,這就會致使問題2的發生。問題2一旦出現,咱們必須立刻要意識到,若是這個問題持續時間長,會極大的下降企業的運做效率,對相關stakeholder的利益都是很是不利的,一樣對於企業的利益也是不利的。必須快速調整相關stakeholder的職責,使得企業的組織架構成爲一個完美的樹狀,而且使得樹的層數達到儘量的低。只有平衡樹能夠比較好的達到這個效果。
固然若是某個節點的能力很強,也能夠達到減少樹的高度的結果。技術的提高,也是能夠提高每一個節點的能力,下降樹的層數。不少管理學都在討論如何下降組織架構的層數,使得管理可以扁平化,緣由就在於此,這裏就不展開討論了。從這裏也基本能夠得出一個結論,一個好的組織的領導,必定也是一個很好的架構師。
切分與建模
實際上切分的過程就是建模的過程,每次對大問題的切分都會生成不少小問題,每一個小問題就造成了不一樣的概念。這也是系列第二篇文章嘗試表達的。這些不一樣的概念大部分時候人們自發的已經建好了,架構師更多的是要去理解這些概念,識別概念背後所表明的的人的利益。好比人類社會按照家庭進行延續,造成了家族,因爲共享一片土地資源,慢慢造成了村莊,村莊聯合體,不一樣地域結合,造成了國家。因爲利益分配的緣由,造成了政權。每次政權的更迭,都是利益從新分配的動力所決定的。
一樣對於一個企業也是同樣的,一開始一我的幹全部的事情。當業務量逐漸變大,就超過了一我的可以處理的容量,這些內容就會被分解出來,開始招聘人進來,把他們組合在一塊兒,幫助處理企業的事務。整個企業的事務,就按照原則2,分出來了不少新的概念:營銷,售前,售中,售後,財務,HR等等。企業的創始人的工做就變成了如何組合這些不一樣的概念完成企業的工做。若是業務再繼續增大,這些分出來的部分還要繼續分拆,仍然要按照原則2纔可以讓各方達到利益最大化。若是某個技術的提高,提升了某個角色的生產力,使得某個角色能夠同時在承擔更多的工做,就會致使職責的合併,下降樹的層數。
切分的輸出和組織架構
架構切分的輸出實際上就是一個系統的模型,對於一個總體問題,有多少的相關方,每一個相關方須要承擔哪些權利和義務,不一樣的相關方是如何結合起來完成系統的總體任務的。有的時候是從上往下切(企業),有的時候是從下往上合併,有的時候二者皆有之(人類社會的發展)。而切分的結果最終都會體如今組織架構上,由於咱們切分的實際上就是人的利益。
從這方面也能夠看出,任何架構調整都會涉及到組織架構,千萬不可輕視。一樣,若是對於stakeholder的利益分析不夠透徹,也會致使架構沒法落地,由於沒有人願意去損壞本身的利益。一旦強制去執行,人心就開始潰散。這個也不必定是壞事,只要知足原則2就可以很好的創建一個新的次序和新的利益關係,保持組織的良性發展,長久來看是對全部人的利益都有益的,雖然短時間內有對某些既得利益者會有損害。
總結一下