一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng),通過預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為多個子項目,其中,將功能相同或相關的業(yè)務放在同一個子項目里;對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子項目,并打包生成對應的產(chǎn)品;在對產(chǎn)品進行功能分析的基礎上,劃分出多個功能對應的子項目,通過子項目的組合生成不同的客戶定制的產(chǎn)品,實現(xiàn)了子項目多次使用,達到源代碼的重用,避免了寫多套代碼,并且在發(fā)現(xiàn)問題可以針對性修改子項目,避免當前的修改對其它項目造成了影響,大大提高了開發(fā)效率,能批量開發(fā)。
【專利說明】一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng)
【技術領域】
[0001] 本發(fā)明涉及軟件開發(fā)領域,尤其涉及的是一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng)。
【背景技術】
[0002] 隨著經(jīng)濟的不斷發(fā)展,各種應用程序不斷被開發(fā)出來。在程序開發(fā)過程中,程序員 通常都會把所有項目的文件放在一起,這樣可以方便平常的代碼編寫。但當項目涉及內容 越來越多,并且要按不同地區(qū)形成不同版本,那么現(xiàn)有的這種開發(fā)方式往往會多做很多工 作,因為現(xiàn)有方式中很多文件的耦合性太高,如果要拆分開,將會改動很多文件,導致在分 版本時造成很多麻煩。出現(xiàn)這種情況的原因通常是由于前期的準備工作沒有做好,沒有考 慮到項目在以后的擴展性,從而導致后續(xù)的軟件產(chǎn)品開發(fā),特別是同一項目多版本的產(chǎn)品 開發(fā)效率低,開發(fā)麻煩,成本高,不能批量開發(fā)等問題。
[0003] 因此,現(xiàn)有技術還有待于改進和發(fā)展。
【發(fā)明內容】
[0004] 本發(fā)明要解決的技術問題在于,針對現(xiàn)有技術的上述缺陷,提供一種產(chǎn)品的模塊 化開發(fā)方法及系統(tǒng),旨在解決現(xiàn)有技術中產(chǎn)品開發(fā)效率低、不能批量化開發(fā)的問題。
[0005] 本發(fā)明解決技術問題所采用的技術方案如下: 一種產(chǎn)品的模塊化開發(fā)方法,其中,包括以下步驟: A、預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為多個子項目,其中,將 功能相同或相關的業(yè)務放在同一個子項目里; B、對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子項目,并打包生成 對應的產(chǎn)品。
[0006] 所述的產(chǎn)品的模塊化開發(fā)方法,其中,所述步驟A具體包括: A1、預先對項目需求進行功能分析,根據(jù)所述項目需求將所述項目劃分為多個子項 目; A2、使用Eclipse作為Java開發(fā)工具,編寫用于實現(xiàn)各個子項目的功能的JAVA代碼; A3、通過MAVEN插件對項目內容進行配置,生成對應的子項目。
[0007] 所述的產(chǎn)品的模塊化開發(fā)方法,其中,所述步驟A還包括: A4、在每個子項目里設置對應的用戶體系信息,所述用戶體系信息包括外部系統(tǒng)唯一 標識、外部系統(tǒng)用戶標識、外部系統(tǒng)昵稱及該子項目的內部唯一標識。
[0008] 所述的產(chǎn)品的模塊化開發(fā)方法,其中,所述項目內容包括項目名稱、子項目名稱、 版本和開發(fā)項目的包名。
[0009] 所述的產(chǎn)品的模塊化開發(fā)方法,其中,所述步驟B具體包括: B1、分析客戶定制產(chǎn)品的需求,根據(jù)客戶定制產(chǎn)品的需求找到對應的子項目; B2、通過MAVEN插件的pom. xml文件添加客戶定制產(chǎn)品對應的子項目,并打包生成對應 的客戶定制產(chǎn)品。
[0010] 一種產(chǎn)品的模塊化開發(fā)系統(tǒng),其中,包括: 子項目劃分模塊,用于預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為 多個子項目,其中,將功能相同或相關的業(yè)務放在同一個子項目里; 產(chǎn)品生成模塊,用于對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子 項目,并打包生成對應的產(chǎn)品。
[0011] 所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其中,所述子項目劃分模塊包括: 需求分析單元,用于預先對項目需求進行功能分析,根據(jù)所述項目需求將所述項目劃 分為多個子項目; 代碼編寫單元,用于使用Eclipse作為Java開發(fā)工具,編寫用于實現(xiàn)各個子項目的功 能的JAVA代碼; 子項目生成單元,用于通過MAVEN插件對項目內容進行配置,生成對應的子項目。
[0012] 所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其中,所述子項目劃分模塊包括: 用戶體系設置單元,用于在每個子項目里設置對應的用戶體系信息,所述用戶體系信 息包括外部系統(tǒng)唯一標識、外部系統(tǒng)用戶標識、外部系統(tǒng)昵稱及該子項目的內部唯一標識。
[0013] 所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其中,所述項目內容包括項目名稱、子項目名稱、 版本和開發(fā)項目的包名。
[0014] 所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其中,所述產(chǎn)品生成模塊包括: 定制產(chǎn)品分析單元,用于分析客戶定制產(chǎn)品的需求,根據(jù)客戶定制產(chǎn)品的需求找到對 應的子項目; 定制產(chǎn)品生成單元,用于通過MAVEN插件的pom. xml文件添加客戶定制產(chǎn)品對應的子 項目,并打包生成對應的客戶定制產(chǎn)品。
[0015] 本發(fā)明所提供的一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng),有效地解決了現(xiàn)有技術中產(chǎn) 品開發(fā)效率低、不能批量化開發(fā)的問題,通過預先對產(chǎn)品對應項目的項目需求進行分析,將 所述項目劃分為多個子項目,其中,將功能相同或相關的業(yè)務放在同一個子項目里;對客戶 的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子項目,并打包生成對應的產(chǎn)品;在 對產(chǎn)品進行功能分析的基礎上,劃分出多個功能對應的子項目,通過子項目的組合生成不 同的客戶定制的產(chǎn)品,進行批量開發(fā),以滿足市場的不同需求,這是相似性原理在產(chǎn)品功能 和結構上的應用,是一種實現(xiàn)標準化與多樣化的有機結合及多品種、小批量與效率的有效 統(tǒng)一的標準化方法,特別是對同一項目多版本的開發(fā)有明顯的高效率,由于將多個功能生 成對應的子項目,開發(fā)者可以不理會其他子項目,只專注于本子項目就可以,這會減少程序 員在開發(fā)過程中,由于項目需求的要求把其它子項目的內容也改了,并且在部署項目時可 以達到按需發(fā)布的要求,可以很好的控制各版本的發(fā)布,成本較低。
【專利附圖】
【附圖說明】
[0016] 圖1為本發(fā)明提供的產(chǎn)品的模塊化開發(fā)方法較佳實施例的流程圖。
[0017] 圖2為本發(fā)明提供的產(chǎn)品的模塊化開發(fā)方法應用實施例的示意圖。
[0018]圖3為本發(fā)明提供的產(chǎn)品的模塊化開發(fā)系統(tǒng)較佳實施例的結構框圖。
【具體實施方式】
[0019] 本發(fā)明提供一種產(chǎn)品的模塊化開發(fā)方法及系統(tǒng),為使本發(fā)明的目的、技術方案及 優(yōu)點更加清楚、明確,以下參照附圖并舉實施例對本發(fā)明進一步詳細說明。應當理解,此處 所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0020] 請參閱圖1,圖1為本發(fā)明提供的產(chǎn)品的模塊化開發(fā)方法較佳實施例的流程圖,如 圖1所示,所述產(chǎn)品的模塊化開發(fā)方法包括以下步驟: 步驟S100、預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為多個子項目, 其中,將功能相同或相關的業(yè)務放在同一個子項目里; 步驟S200、對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子項目,并打 包生成對應的產(chǎn)品。
[0021] 以下結合具體的實施例對上述步驟進行詳細的描述。
[0022] 在步驟S100中,預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為多 個子項目,其中,將功能相同或相關的業(yè)務放在同一個子項目里。具體來說,在產(chǎn)品開發(fā) 前,需要對產(chǎn)品對應的項目的項目需求進行分析,從而將相關的業(yè)務放在同一個子項目里, 并把各個子項目盡可能的解耦,使得各子項目的關聯(lián)性達到最低。譬如在開發(fā)一個圖書管 理系統(tǒng)時,可以把需求暫時定為以下內容:學生可以登錄圖書管理系統(tǒng)進行借書、還書、查 詢等操作;教師可以登錄圖片管理系統(tǒng)進行借書、還書、查詢書籍、查詢學生借書情況、管理 學生等操作;管理員擁有教師的所有功能,并具有管理整個系統(tǒng)的權限,如添加書籍、查詢 整個圖書管理系統(tǒng)的借閱統(tǒng)計等。在進行子項目開發(fā)時(也就是模塊化開發(fā)時),可把上述 需求劃分為以下幾個子項目:用戶登錄、借還書、查詢圖書、查詢學生借書情況、學生教師管 理、書籍管理、報表管理。劃分規(guī)則便是將功能相同或相關的業(yè)務放在同一個子項目里。
[0023] 進一步地,所述步驟S100具體包括: S110、預先對項目需求進行功能分析,根據(jù)所述項目需求將所述項目劃分為多個子項 目; S120、使用Eclipse作為Java開發(fā)工具,編寫用于實現(xiàn)各個子項目的功能的JAVA代 碼; S130、通過MAVEN插件對項目內容進行配置,生成對應的子項目。
[0024] 具體來說,在編寫用于實現(xiàn)各個子項目的功能的JAVA代碼時,可以使用MAVEN 插件,把子項目按項目需求(具體來說是按照不同的功能)區(qū)分開,從而減少子項目間的 依賴。若為公共的基礎方法,可把方法抽取出來,作為公共的子項目,供其他子項目調 用。使用Ec 1 ipse作Java開發(fā)工具時,可以在MAVEN插件創(chuàng)建項目進行以下操作,先選 擇New Project再選擇Maven,再選擇Maven Pro ject ;在新項目的Artifact Id選擇 "maven-archetype-quickstart" ;最后對項目內容進行配置,從而創(chuàng)建對應的子項目。其 中,Eclipse是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。就其本身而言,它只是一 個框架和一組服務,用于通過插件組件構建開發(fā)環(huán)境。Maven是基于項目對象模型(Ρ0Μ), 可以通過一小段描述信息來管理項目的構建,報告和文檔的軟件項目管理工具。在實際應 用時,所述項目內容包括項目名稱、子項目名稱、版本和開發(fā)項目的包名。
[0025] 以圖書管理系統(tǒng)為例,可把項目劃分成以下幾個子項目,生成的子項目與對應的 功能關系,如表1所不: 表1
【權利要求】
1. 一種產(chǎn)品的模塊化開發(fā)方法,其特征在于,包括以下步驟: A、預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為多個子項目,其中,將 功能相同或相關的業(yè)務放在同一個子項目里; B、對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子項目,并打包生成 對應的產(chǎn)品。
2.根據(jù)權利要求1所述的產(chǎn)品的模塊化開發(fā)方法,其特征在于,所述步驟A具體包括: A1、預先對項目需求進行功能分析,根據(jù)所述項目需求將所述項目劃分為多個子項 目; A2、使用Eclipse作為Java開發(fā)工具,編寫用于實現(xiàn)各個子項目的功能的JAVA代碼; A3、通過MAVEN插件對項目內容進行配置,生成對應的子項目。
3.根據(jù)權利要求2所述的產(chǎn)品的模塊化開發(fā)方法,其特征在于,所述步驟A還包括: A4、在每個子項目里設置對應的用戶體系信息,所述用戶體系信息包括外部系統(tǒng)唯一 標識、外部系統(tǒng)用戶標識、外部系統(tǒng)昵稱及該子項目的內部唯一標識。
4.根據(jù)權利要求2所述的產(chǎn)品的模塊化開發(fā)方法,其特征在于,所述項目內容包括項 目名稱、子項目名稱、版本和開發(fā)項目的包名。
5.根據(jù)權利要求1所述的產(chǎn)品的模塊化開發(fā)方法,其特征在于,所述步驟B具體包括: B1、分析客戶定制產(chǎn)品的需求,根據(jù)客戶定制產(chǎn)品的需求找到對應的子項目; B2、通過MAVEN插件的pom. xml文件添加客戶定制產(chǎn)品對應的子項目,并打包生成對應 的客戶定制產(chǎn)品。
6. 一種產(chǎn)品的模塊化開發(fā)系統(tǒng),其特征在于,包括: 子項目劃分模塊,用于預先對產(chǎn)品對應項目的項目需求進行分析,將所述項目劃分為 多個子項目,其中,將功能相同或相關的業(yè)務放在同一個子項目里; 產(chǎn)品生成模塊,用于對客戶的產(chǎn)品需求進行分析,根據(jù)客戶的產(chǎn)品需求選擇對應的子 項目,并打包生成對應的產(chǎn)品。
7.根據(jù)權利要求6所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其特征在于,所述子項目劃分模塊 包括: 需求分析單元,用于預先對項目需求進行功能分析,根據(jù)所述項目需求將所述項目劃 分為多個子項目; 代碼編寫單元,用于使用Eclipse作為Java開發(fā)工具,編寫用于實現(xiàn)各個子項目的功 能的JAVA代碼; 子項目生成單元,用于通過MAVEN插件對項目內容進行配置,生成對應的子項目。
8.根據(jù)權利要求7所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其特征在于,所述子項目劃分模塊 包括: 用戶體系設置單元,用于在每個子項目里設置對應的用戶體系信息,所述用戶體系信 息包括外部系統(tǒng)唯一標識、外部系統(tǒng)用戶標識、外部系統(tǒng)昵稱及該子項目的內部唯一標識。
9.根據(jù)權利要求7所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其特征在于,所述項目內容包括項 目名稱、子項目名稱、版本和開發(fā)項目的包名。
10.根據(jù)權利要求6所述的產(chǎn)品的模塊化開發(fā)系統(tǒng),其特征在于,所述產(chǎn)品生成模塊包 括: 定制產(chǎn)品分析單元,用于分析客戶定制產(chǎn)品的需求,根據(jù)客戶定制產(chǎn)品的需求找到對 應的子項目; 定制產(chǎn)品生成單元,用于通過MAVEN插件的pom. xml文件添加客戶定制產(chǎn)品對應的子 項目,并打包生成對應的客戶定制產(chǎn)品。
【文檔編號】G06F9/44GK104142825SQ201410322543
【公開日】2014年11月12日 申請日期:2014年7月8日 優(yōu)先權日:2014年7月8日
【發(fā)明者】陳熾昌, 莫劍斌, 崔勇, 闞長鑫, 黃勝慶 申請人:北京彩云動力教育科技有限公司