建築規范規定了臥室的窗子至少要30英寸高,20英寸長,這樣一來,在發生火災時,人員 就可以通過;公交車上的黃色座椅為老有病殘專座;還有教育孩子時經常說的給孩子自由, 但是對於涉及安全等一定要干預。這些都是生活中的需要遵守的原則。那做架構時,是不是 也需要遵守一些原則?這些原則有什麼用?存在哪些原則呢?原則這個概念,我認為還是比 較難理解的,看了TOGAF的文檔後還是很模糊,以下我就把我個人現在對架構原則的理解和大 家分享一下。
什麼是原則
原則:說話或行事所依據的通用規則和指導方針,是做某件事或解決某個問提或在某個領 域裡不能離開的禁止性規定。原則如憲法,我們必須遵守,如我們建設中國有特色的社會主 義,比須堅持黨的領導,堅持走社會主義道路,堅持民主集中制,堅持改革開放四項基本原 則。
約束:必須使用Delphi、使用SQL Server。
約束受特定環境影響,可能有多種方案,但是基於特定的環境下我挑選出一些方案。而架 構原則創造環境,像一把傘,影響著業務架構、信息架構、應用架構和技術架構,是比約束 更高層的約定,它要求容易理解、一致、穩定、完整。
約束必須在架構原則范圍內。企業現有網絡環境以太網速度為10M,則約束就為網絡速度 為10M。如果企業架構中要求以太網的連接速度必須達到 100M,從而可以讓視頻或聲音的數 據流可以很好的傳輸,考慮架構原則時,約束的作用力就沒有架構原則強,此時就需要去除 這個約束,提高以太網速度來滿足架構。(如有不同觀點請指正)
架構約束可以作為IT架構決策的依據,驅動架構定義,可以一開始通過頭腦風暴來收集, 後續還可以通過開發過程中增加。
我理解的一些示例
架構原則
基於標准方法來做架構,如使用TOGAF架構方法
說不清的不做
沒人上層持久推動的不做
達不成一致意見的不做
業務原則
業務持續性(對業務發展有長遠計劃,不能只考慮近期實現范圍)
業務通用性(業務是否可以作為一個公用業務架構)
業務一致性
合法
數據原則
數據價值性>數據正確性>數據完整性
數據積累分析需要規范化數據
數據是安全的
應用原則
技術獨立性,不綁定到特定廠商
易用
模塊化設計
技術原則
響應變化
可擴展
TOGAF示例
下面為TOGAF的一個示例,更多示例參考TOGAF Architecture Principles。我理解還不是 很透徹,所以就不翻譯了:)
Principle 9:Data is an AssetStatement:Data is an asset that has value to the enterprise and is managed accordingly.Rationale:Datais a valuable corporate resource; it has real, measurablevalue. Insimple terms, the purpose of data is to aiddecision-making. Accurate,timely data is critical to accurate, timelydecisions. Most corporateassets are carefully managed, anddata is no exception. Data is thefoundation of our decision-making, sowe must also carefully manage datato ensure that we knowwhere it is, can rely upon its accuracy, and canobtain it when andwhere we need it.Implications:
This is one of three closely-related principles regarding data:data is an asset; data is shared; and data is easilyaccessible. Theimplication is that there is an education task to ensure that allorganizations within the enterprise understandthe relationship betweenvalue of data, sharing of data, and accessibility to data.
Stewards must have the authority and means to manage the data for which they are accountable.
We must make the cultural transition from "data ownership" thinking to "data stewardship" thinking.
The role of data steward is critical because obsolete, incorrect,or inconsistent data could be passed to enterprise personnelandadversely affect decisions across the enterprise.
Part of the role of data steward, who manages the data, is toensuredata quality. Procedures must be developed and used toprevent andcorrect errors in the information and to improve thoseprocesses thatproduce flawed information. Data quality willneed to be measured andsteps taken to improve data quality - it isprobable that policy andprocedures will need to be developedfor this as well.
A forum with comprehensive enterprise-wide representation should decide on process changes suggested by the steward.
Since data is an asset of value to the entire enterprise, datastewards accountable for properly managing the data must beassigned atthe enterprise level.