軟體產品的四維立體分解法

2021-08-29 10:46:09 字數 1242 閱讀 7838

最近為公司做一些架構方面的整理工作,記得以前給新人寫過一篇ppt,關於軟體的認識方法,其中對軟體的劃分方法值得借鑑,於是整理出本文。

剛開始的時候,做了一些桌面型的應用delphi(c++builder)+interbase,vb+access,這種單純而直接的應用開發歲月沒持續多久,還沒等我用上傳說中最牛叉的power builder,cs,bs,三層,n層架構就接踵而至,作為可憐的開發人員,學完這個學那個,真實的需求根本沒有,完全是技術驅動的學習。

二維的軟體劃分,可以用於大多數專案的開發,對於小公司特別有效,但對於一些大的專案或者產品的開發,總顯得那麼捉襟見肘。

這是因為在大的團隊,隨著產品開發的時間累計,不斷有避免重複(現在流行的叫做dry),加強建設產品公用部分,節省人力的需求,這時候,往往會成立單獨的平台組,系統組,將團隊的核心知識固化在一些可復用的軟體模組中,將這些軟體模組包裝成為平台,框架,構件等。

在這個時候,對軟體的認識和劃分,需要擺脫二維軟體單純的平面思想,進行三維立體的劃分:

三維軟體的劃分方法,相比於二維,主要增加了乙個邏輯軸,該軸的一般體現了軟體的平台,框架,構件等思想;我個人一般將該維的層次劃分為

外部library

技術平台與框架

業務平台與框架

業務實現

相信不同的公司,不同的人對這塊的劃分都有不同的認識,但是,引入了第三維,軟體變成乙個立體的,可觸控的東西。

三維的軟體劃分,是乙個單純的技術路線的劃分,考慮到軟體開發的實際情況,總覺得缺少點什麼,對了!時間,就是時間。

時間在軟體的開發中,毫無疑問是非常重要的,靜態的看乙個軟體是不現實的,我們站在時間軸上去看軟體,軟體才是乙個有生命力的,活生生的。

開發乙個軟體產品的時候,即便我們能夠按照三維的思路將目標產品進行分解,或者對現有產品劃分,但如果沒有考慮到版本因素,這樣的產品開發無疑是不具有可行性。

好的架構師,需要對產品的版本特徵規劃胸有成竹,對於產品的開發具有很好的節奏感,這就構成了軟體的第四維。

軟體開發的四維

在軟體開發,有四個維度是值得關注的。1 人員 人是軟體開發中最重要的因素。用人必須先信任人,培養人,給他乙個發展的空間,讓他看到乙個希望,讓他感到工作的工程是乙個自身價值公升值的過程。任何關注提高生產性的組織都必須先有一套良好的人員激勵,團隊合作,員工選擇以及培訓的機制。2 過程 軟體開發的過程基本...

軟體產品的定義

1 軟體是什麼?網際網路是什麼?軟體就是為人提供資訊化服務的創新的虛擬產品。資訊從 來?資訊從客戶那裡來,從銷售人員 市場人員收集中來。它是由創新的人 叫做程式設計師 通過計算機程式語言設計和編碼做出來的。因此,程式設計師和非程式設計師之間的溝通和信任難免就會變得困難,因為非程式設計師他們不了解這個...

軟體產品經理的職責

做為一名新進產品經理,甚至一名資深pm,你可能都或多或少對這個職位產生某種迷惑。到底什麼是產品經理?這個職位的主要職責是什麼?在it產業的不同領域,甚至在同一領域的不同公司,這個職位的定義似乎都有不同。本文嘗試根據自己多年的產品經理經驗,給出產品經理的主要職責。雖然在不同的公司,產品經理的角色和職責...