1. 什麼是領域
百度百科對領域的解釋:領域具體指一種特定的範圍或區域
領域一般指的是業務的問題域,領域是有邊界的,邊界內,規定了我們要做什麼,要做的範圍,軟體專案從開始到交付的過程中, 所有涵蓋的業務,每個業務模組或者方向都有自己的業務範圍和問題
- 比如做裝潢行業的公司進行軟體系統研發,那麼公司的業務的範圍都是跟裝潢相關的,大的領域就是裝潢領域
2. 什麼是子域
想一想面對複雜問題時,如何去解決的,會想到一個常用的方法,把一個複雜的問題,按照一定的關係,逐步分解,逐步的解決問題
做軟體工程也是這樣,面對一個複雜的領域,也需要對領域進行劃分,劃分出來的領域就叫做子域
核心思想就是將問題域逐步分解,降低業務理解和系統實現的複雜度
- 把複雜的領域,根據業務模組,業務方向等劃分,劃分為一個個小的,且能解決的子域,每個子域都有自己的業務範圍和邊界,以及需要解決的問題
- 子域也可以繼續劃分和細化
在領域逐步劃分成子域的過程中,子域可以根據自身重要性,功能屬性,商業價值等,劃分為三類子域,它們分別是:核心域、通用域和支撐域
核心域、通用域和支撐域 其實就是子域上的一個標籤屬性,識別核心域比較重要,通用域和支撐域 看起來就是依賴關係
為什麼要劃分核心域,通用域,支撐域
- 核心域、支撐域和通用域的主要目標是:透過領域劃分,區分出子域的功能屬性和重要性,從而公司可對不同子域採取不同的資源投入和建設策略,其關注度也會不一樣
- 劃分核心域:重要性很高,是系統成功失敗的關鍵指標,投入優質的資源,重點建設,一些系統的核心域可能包含很高的商業價值
- 劃分通用域:是為了更好的複用
- 劃分支撐域:支援其他子域的建設
3. 進行領域分析可能有用的方法(更偏向於B端)
領域和領域的劃分,都是屬於問題空間,更偏向於業務側,必須要掌握一定的業務知識,或者能全面的瞭解到業務
業務側存在很大的資訊差距,儘量取得領導的支援,多參與業務的討論和分析,多與產品溝通
-
很空的一個詞語 “商業模式”,就是要搞清楚,企業是怎麼賺錢的,途徑有哪些,使用者群體,給使用者提供的服務以及產品,成本結構是怎樣的,重要的合作伙伴,做這個專案準備投入多少資源等 可以使用商業模式畫布來整理
- 這裡存在很大的資訊差距,除非是高階的管理人員,或者外部諮詢師,不然很難了解全貌(需要一定的軟實力)
- 一般開發人員接觸的資訊比較少,儘量和產品或者leader溝通,獲取更多的資訊,這一步還是比較重要,至少知道公司大概是做啥的,主要業務是那些
-
瞭解專案的背景,願景和目標,為什麼要做,價值是什麼
-
這裡存在很大的資訊差距,除非是高階的管理人員,或者外部諮詢師,不然很難了解全貌(需要一定的軟實力)
-
瞭解專案的願景和目標,以及價值 ,提供方向,可以粗略的定位專案的範圍,以及那些是要做的,提供決策的依據
-
建設專案,需要大量的成本,那麼公司為什麼要做,肯定有必要的原由,能給公司帶來一定的價值,具體的價值是什麼
-
-
進行干係人的整理和分析,制定相應的訪談計劃,瞭解業務,以及獲取干係人的期望和目標
- 輸出干係人分析地圖,視覺化的展示干係人的資訊,關係,聯絡方式等
- 針對干係人制定訪談計劃,瞭解業務流程,以及現在的痛點和期望
- 輸出業務流程圖 ,也可以根據對干係人的瞭解,輸出角色卡片
-
根據業務流程圖,組織結構,專案資源,以及專案的願景和目標,評估要做的範圍和內容,大概會涉及到的模組和功能,以及評估時間
- 帶有泳道的業務流程圖,可以表達出大概的業務流轉情況,一起分析和篩選要做的內容,調整流程圖
- 根據業務流程和對業務的瞭解,對要做的內容,進行評估,需要那些功能,那些能力的支援,評估每個功能的時間
- 結合專案的資源,組織結構,評估出大概的時間,以及迭代計劃,領導比較關心這個
透過這幾個步驟,瞭解業務的全景,這樣就可以根據 組織結構,資源,業務模組,業務方向等劃分領域,根據商業模式和專案的願景與目標,以及價值,定位 核心的業務模組與方向,核心的業務模組與方向 就是核心域