通用的人員和組織結構模型

2022-04-01 15:11:13 字數 2981 閱讀 5373

感謝 martin fowler,很多想法來自他的《分析模式》(analysis patterns)

企業架構的出發點是業務,業務實現的關鍵是人,業務關係的理順靠組織架構。

在企業it整合的過程中,對於人員和組織機構資訊的整合是乙個重點。但是目前的解決方案中往往偏重於「系統使用者」的整合,而對組織架構沒有考慮或者考慮得很少,同時對於包含客戶、合作夥伴等在內的虛擬組織往往支援不夠。組織架構、崗位的設定等資訊往往牽扯到許可權,因此有必要**一種統一的人員和組織機構模型,既可以作為此類資料的統一資料來源,也可以為之後的統一許可權管理打下基礎。

企業的基本組成單位是人(person),包括員工、合作夥伴、經紀人/**人、外包人員、客戶等;為了人們之間更好的協作還會設立一些組織單元(unit),如部門、分公司、子公司、營業部、委員會、工作組、專案組等;在部門之中還會設定一些崗位(position)。

這些物件都是業務行為的主體(subject)。所謂主體,可以被託付給相應的責任,而責任體現了他們之間一種具有共性的關係。

這種共性的關係就是一種責任(accountbility)關係:委託者將責任託付給受託者。具體表現為很多形式,比如部門之間的上下級關係,人員和部門的從屬關係,企業和客戶的業務關係,企業和合作夥伴的協作關係等等。這種責任關係通常會有乙個期限(period),記錄期限資訊可以幫助我們記錄責任關係(如組織結構、人員歷任職務)的變化。

上述的責任關係太泛化了,而且缺少必要的約束。比如,組織的層級結構約束,所以需要引入知識級的模型物件。知識級體現定義和規則,操作級記錄實際發生的事情。

知識級的作用:

1. 管理複雜性,將複雜的業務規則放到知識級

2. 動靜分離:知識級處理相對固定的部分,操作級處理變化頻繁(相對知識級來說)的部分,即具體的配置。

3. 知識級約束操作級的行為。

在知識級引入主體型別subjecttype,就可以通過型別來約束主體(subject)的行為。其中最重要的約束就是委託關係(commission)的定義。委託關係約束了責任(accountbility)的規則,比如,有一類責任來自產品的層級關係,而另一類責任來自銷售的層級關係,就可以定義「產品層級」和「銷售層級」這兩個commission,來將accountbility區分成不同的型別。

顯然,委託關係是主體型別之間的many-to-many關係,因為還需要在委託關係上進一步進行定義,所以定義乙個關聯類:commission,關聯到主體型別之間的many-to-many關係上。

每乙個責任關係都應該由唯一的委託關係來定義,即委託關係是責任關係的型別。

引入知識級帶來的乙個工作就是:在設計階段就要考慮知識級的初始化。因為知識級的例項中隱藏了設計(知識)。

在初始化知識級物件的時候,我們很容易想到:組織單元(unit)是一種主體型別,其委託關係包括:下級組織單元(預設)。

但是如果再細分下去,可能會定義總公司,分公司,營業部,而對這些組織單元還需要定義其下級組織單元(預設)的委託關係。、下級組織單元(產品層級)、下級組織單元(銷售層級)

這樣做很容易引起模型的膨脹,使得初始化知識級變得非常痛苦。所以,引入主體型別之間的泛化關係(minxin)就顯得很有必要。允許主體型別之間的一種「多重繼承」,可以避免這樣的麻煩。

另外一種情況是兼職。隨著現代企業的發展,人員在企業中的定位可能是多面性的,兼職的情況越來越經常出現,但是大家都視為特殊情況而很少進行有效的處理。比如這樣一種情況:資訊中心總經理兼任cio兼任創新委員會成員。在不考慮兼職的時候,我們會建立資訊中心總經理的崗位,cio的崗位,創新委員會的組織單元。並使具體的人(person)與這些主體之間具有任命或小組成員這樣的關聯。一旦出現了兼職,就需要建立乙個復合的、繼承上述三者主體型別的一種「新」型別。這顯然很醜陋。

解決的辦法就是允許主體具有多種型別。考慮到大多數情況是沒有兼職的,所以在主體和主體型別之間建立兩個關聯:主要型別,所有型別。

責任模式在靈活性的同時缺少了約束規則。比如,對乙個嚴格的銷售關係層級序列:總公司-分公司-區域子公司-部門-銷售辦事處。這種層級序列實際上是對委託關係的約束。要表達這種約束,可能每個層級的組織機構都要定義兩種委託關係:上級-->自身,自身-->下級。這樣的實現比較笨拙。

為了簡化對層級關係的處理,可以定義乙個層級的委託關係(leveledcommission),該委託關係維護乙個主體型別的列表,並規定級別列表中上級類別的主體只能向下級類別的主體負責。

思考:在實際設計時,可能會根據需要構建委託關係的多個子類,處理各種約束規則,以便於模型的使用。

責任和權利總是對應的。通常,責任對應一系列的操作(operation)。對operation的細化(如對應的系統、地點、動作、資源等)通常在許可權管理的相關模型中進行。但是在通用組織機構模型中,需要專門提到的是崗位(position)。

如前所述,崗位position也是一種主體,人和崗位之間存在一種任命/聘用關係,崗位由組織單元(unit)設定。但同時,崗位也體現了對操作的聚合。通過將責任關聯到崗位而不是具體的人,就可以間接地把操作聚合到崗位。

在rbac(基於角色的訪問控制)模型中,角色的很重要的乙個**就是崗位。

模型的全貌:

特別要注意的是,這裡只是乙個邏輯模型,要實現該模型還需要具體的設計。

談談網際網路企業的人員,組織,管理和領導

隨著網際網路大熱和全民創業的大潮,網際網路企業特別是初創企業如雨後春筍一般遍布神州大地。就連一些大廠和傳統企業也加入其中,組建或者擴充自己的團隊。在這個過程中不免會涉及到對人員,組織,管理,領導方面的問題,今天和大家分享一下我的看法。要點 人員 組織管理和領導 康威定理說,communication...

技術人員談管理之公司組織結構漫談

一般將公司的組織結構分為3種型別 智慧型 專案型和矩陣型。大多數公司的租價都在某種程度上包含了這3中組織形式,但是通常會有一種結構佔主要地位。職能型結構是乙個層級結構,只能經理或負責專業部門的副總裁都對ceo負責,他們的人員都具有各自領域的專業技能。專案型組織也具有層次結構,但在這個結構下,不是職能...

UNIX入門 1 層次組織結構和邏輯組織結構

1.層次組織結構 unix系統主要包含unix核心 系統呼叫 shell使用者介面 系統命令和使用程式 以及應用程式等組成部分。unix核心 控制和協調硬體系統各部件之間的資料處理工作,負責系統記憶體管理 程序排程及i o資料通訊。系統核心提供的各種服務。庫函式 在系統呼叫基礎上,為簡化開發人員的程...