本發(fā)明給出了一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,主要用于解決迭代式軟件擴(kuò)展開(kāi)發(fā)過(guò)程中系統(tǒng)穩(wěn)定和開(kāi)發(fā)效率的問(wèn)題,屬于信息化系統(tǒng)開(kāi)發(fā)技術(shù)領(lǐng)域。
背景技術(shù):
隨著計(jì)算機(jī)的高速發(fā)展,當(dāng)今社會(huì)也隨之日益信息化和無(wú)紙化,各個(gè)企事業(yè)單位的日常運(yùn)營(yíng)就愈發(fā)依賴(lài)信息系統(tǒng)的支持?,F(xiàn)有的信息系統(tǒng)通常是根據(jù)用戶(hù)指定的需求,在設(shè)計(jì)之初就指定并分析好全部的功能需求并建立好數(shù)據(jù)庫(kù)的,這就會(huì)在對(duì)整個(gè)信息系統(tǒng)的使用和開(kāi)發(fā)過(guò)程中產(chǎn)生一定的問(wèn)題,例如:(1)對(duì)信息系統(tǒng)進(jìn)行整體開(kāi)發(fā),開(kāi)發(fā)人員之間難免會(huì)因?yàn)榫幋a習(xí)慣等問(wèn)題產(chǎn)生相互影響,拖慢整體的開(kāi)發(fā)進(jìn)度;(2)針對(duì)信息系統(tǒng)的每一個(gè)功能測(cè)試時(shí),都需要運(yùn)行整個(gè)系統(tǒng),時(shí)間空間資源開(kāi)銷(xiāo)相對(duì)較大;(3)由于系統(tǒng)功能是在設(shè)計(jì)之初就指定好的,若在使用過(guò)程中產(chǎn)生了新的功能需求,該信息系統(tǒng)難以進(jìn)行功能擴(kuò)展;(4)若信息系統(tǒng)的某個(gè)功能出現(xiàn)了錯(cuò)誤,會(huì)對(duì)整個(gè)系統(tǒng)的使用都產(chǎn)生影響,一步出錯(cuò)整個(gè)信息系統(tǒng)都不能正常使用,系統(tǒng)的穩(wěn)定性較差;(5)版本交替困難,若想對(duì)信息系統(tǒng)進(jìn)行升級(jí),需要對(duì)舊版本中所有功能的交互方式進(jìn)行替換,費(fèi)時(shí)費(fèi)力還容易出錯(cuò)。
技術(shù)實(shí)現(xiàn)要素:
技術(shù)問(wèn)題:本發(fā)明的目的是提出一種基于模塊化信息系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)方法,該方法將模塊化的設(shè)計(jì)方式應(yīng)用到對(duì)信息系統(tǒng)的迭代式擴(kuò)展開(kāi)發(fā)之中,提出了一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法。該方法從具體的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程和規(guī)則狀況進(jìn)行需求分析,將其劃分成為多個(gè)互不干涉相互獨(dú)立的不同功能模塊,然后分別對(duì)其進(jìn)行設(shè)計(jì)與開(kāi)發(fā),并對(duì)各個(gè)不同模塊進(jìn)行迭代式擴(kuò)展處理,構(gòu)建了一個(gè)模塊化信息系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)方法,從而提高軟件的開(kāi)發(fā)效率。最終目的是實(shí)現(xiàn)一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法。
技術(shù)方案:本發(fā)明提出了一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,將模塊化的設(shè)計(jì)方式應(yīng)用到對(duì)信息系統(tǒng)的迭代式擴(kuò)展開(kāi)發(fā)之中,提出了一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法。該方法從具體的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程和規(guī)則狀況進(jìn)行需求分析,將其劃分成為多個(gè)相互獨(dú)立的不同模塊,然后分別對(duì)其進(jìn)行設(shè)計(jì)與開(kāi)發(fā),并對(duì)各個(gè)不同模塊進(jìn)行迭代式擴(kuò)展處理,構(gòu)建一個(gè)模塊化信息系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)方法。
本發(fā)明中提到的模塊化設(shè)計(jì)方式指的是,針對(duì)待開(kāi)發(fā)的信息系統(tǒng)的業(yè)務(wù)內(nèi)容、功能、流程、規(guī)則狀況進(jìn)行需求分析,根據(jù)需求將整個(gè)信息系統(tǒng)劃分為多個(gè)互不干擾相互獨(dú)立的不同功能模塊,交由多位軟件開(kāi)發(fā)人員在統(tǒng)一的平臺(tái)下并行地開(kāi)發(fā)各自的模塊,并將各個(gè)不同的功能模塊進(jìn)行封裝,對(duì)外顯示成為不同的接口,從而能夠使多個(gè)不同的功能模塊對(duì)同一個(gè)數(shù)據(jù)模塊進(jìn)行操作并且相互之間不產(chǎn)生影響。具體而言,就是根據(jù)每個(gè)待開(kāi)發(fā)的功能模塊所需的版本信息和已經(jīng)開(kāi)發(fā)的功能模塊的至少一個(gè)版本的源代碼,選擇所需要進(jìn)行操作的數(shù)據(jù)庫(kù)表的版本信息,以便實(shí)現(xiàn)業(yè)務(wù)流程與數(shù)據(jù)之間的分離。模塊化設(shè)計(jì)的方式在方便實(shí)現(xiàn)多個(gè)功能模塊之間的交互和動(dòng)態(tài)配置、部署的同時(shí),也能夠方便地實(shí)現(xiàn)對(duì)各個(gè)不同功能模塊進(jìn)行單獨(dú)的測(cè)試、處理和替換升級(jí)。
本發(fā)明中提到的迭代式擴(kuò)展開(kāi)發(fā)指的是,在正常使用現(xiàn)有信息系統(tǒng)的功能的同時(shí),可以不斷地對(duì)系統(tǒng)功能進(jìn)行擴(kuò)展,開(kāi)發(fā)新的業(yè)務(wù)流程模塊、新的功能界面、關(guān)聯(lián)新的數(shù)據(jù)庫(kù)表或者數(shù)據(jù)字段等等。將多個(gè)不同的功能模塊的源代碼按版本信息分別存儲(chǔ),調(diào)用不同的功能模塊版本,就可以在確保系統(tǒng)穩(wěn)定的同時(shí),只需要通過(guò)設(shè)定調(diào)用相應(yīng)的功能模塊的版本,便能夠方便地對(duì)新的業(yè)務(wù)流程和功能模塊進(jìn)行Beta測(cè)試和版本遷移。
通過(guò)上述分析可以看出,本發(fā)明提出了一種基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,即從實(shí)際的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程、規(guī)則狀況進(jìn)行需求分析,將一個(gè)完整的信息系統(tǒng)劃分為多個(gè)互不干擾相互獨(dú)立的不同功能模塊,對(duì)其進(jìn)行設(shè)計(jì)與開(kāi)發(fā),然后根據(jù)多個(gè)不同版本的功能模塊,選擇相應(yīng)的不同版本的數(shù)據(jù)庫(kù)表進(jìn)行操作與處理,實(shí)現(xiàn)業(yè)務(wù)流程與數(shù)據(jù)之間的分離。能夠在確保系統(tǒng)穩(wěn)定的同時(shí),方便地實(shí)現(xiàn)多個(gè)不同功能模塊之間的交互和動(dòng)態(tài)配置、部署,并且可以在指定調(diào)用不同的功能模塊版本的情況下,對(duì)各個(gè)不同功能模塊進(jìn)行迭代式擴(kuò)展處理,以實(shí)現(xiàn)對(duì)新的業(yè)務(wù)流程和功能模塊進(jìn)行Beta測(cè)試和版本遷移,構(gòu)建一個(gè)基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法。本發(fā)明可以實(shí)現(xiàn)多個(gè)業(yè)務(wù)系統(tǒng)模塊之間的交互,使得信息系統(tǒng)可以快捷升級(jí),實(shí)現(xiàn)信息系統(tǒng)的迭代式擴(kuò)展開(kāi)發(fā)。
該基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,其包含的主要步驟如下:
步驟(1)從所需要開(kāi)發(fā)的信息系統(tǒng)的實(shí)際業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程、規(guī)則狀況進(jìn)行需求分析,將其劃分成為多個(gè)互不干擾相互獨(dú)立的不同功能模塊,并交由多位軟件開(kāi)發(fā)人員在統(tǒng)一的開(kāi)發(fā)平臺(tái)下并行地開(kāi)發(fā)各自的模塊;
步驟(2)將多個(gè)不同的功能模塊分別封裝,對(duì)外只顯示其版本信息和接口,并將同一功能模塊的多個(gè)不同版本的源代碼按版本信息分別進(jìn)行存儲(chǔ);
步驟(3)為多個(gè)不同功能模塊的多個(gè)版本分別建立與相關(guān)數(shù)據(jù)庫(kù)表及字段的關(guān)聯(lián);
步驟(4)對(duì)多個(gè)已經(jīng)經(jīng)過(guò)測(cè)試的最新的穩(wěn)定版本的功能模塊,記錄下它們各自的版本信息,并拼接成穩(wěn)定的信息系統(tǒng)供用戶(hù)使用;
步驟(5)針對(duì)新產(chǎn)生的業(yè)務(wù)流程需求,開(kāi)發(fā)新的功能模塊,設(shè)計(jì)新的用戶(hù)界面,關(guān)聯(lián)新的數(shù)據(jù)庫(kù)表或者字段,分別對(duì)它們進(jìn)行單元測(cè)試并記錄下各自的版本信息;
步驟(6)對(duì)不同的用戶(hù)組設(shè)置不同的表現(xiàn)形式,即采用對(duì)不同的用戶(hù)組顯示不同功能模塊版本的方式,讓一部分用戶(hù)正常使用現(xiàn)有的穩(wěn)定的信息系統(tǒng),讓另一部分用戶(hù)進(jìn)行Beta測(cè)試,試用新開(kāi)發(fā)出來(lái)的業(yè)務(wù)流程、新的功能模塊界面、以及新關(guān)聯(lián)的數(shù)據(jù)庫(kù)表或者字段等等,其中同一功能模塊的數(shù)據(jù)可以寫(xiě)入到同一張數(shù)據(jù)庫(kù)表之中;
步驟(7)觀察步驟(6)中試用新版本的用戶(hù)Beta測(cè)試的情況決定是否用新版本替換舊版本。若總體運(yùn)轉(zhuǎn)情況良好,沒(méi)有什么嚴(yán)重的缺陷,則只需解決其中可能存在的部分問(wèn)題;若存在嚴(yán)重缺陷則重新開(kāi)發(fā),并將信息系統(tǒng)要調(diào)用的版本信息記錄回退至上一穩(wěn)定版本;
步驟(8)在備份舊版本功能模塊源代碼的前提下,修改所需更新的功能模塊接口,以新版本替代舊版本,關(guān)聯(lián)新的數(shù)據(jù)庫(kù)表或字段,修改功能模塊對(duì)應(yīng)操作的數(shù)據(jù)庫(kù)表版本,之后再將新的功能模塊版本面向所有用戶(hù)開(kāi)放;
步驟(9)在擴(kuò)展開(kāi)發(fā)過(guò)程中,如有新的業(yè)務(wù)需求產(chǎn)生,跳轉(zhuǎn)至步驟(5)。
有益效果:作為基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,本發(fā)明主要綜合了模塊化設(shè)計(jì)和迭代式擴(kuò)展兩大方面的開(kāi)發(fā)方式來(lái)對(duì)信息系統(tǒng)進(jìn)行程序設(shè)計(jì)與開(kāi)發(fā),它不同于以往的信息系統(tǒng)開(kāi)發(fā)方法,具有以下技術(shù)效果:
(1)本發(fā)明將模塊化設(shè)計(jì)的軟件開(kāi)發(fā)方式應(yīng)用到信息系統(tǒng)的開(kāi)發(fā)之中。從具體的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程和規(guī)則狀況進(jìn)行需求分析,將一個(gè)完整的信息系統(tǒng)劃分為多個(gè)互不干擾相互獨(dú)立的功能模塊,交由多位軟件開(kāi)發(fā)人員在統(tǒng)一的平臺(tái)下并行地開(kāi)發(fā)各自的模塊,實(shí)現(xiàn)了業(yè)務(wù)流程與數(shù)據(jù)之間的分離。
(2)模塊化的封裝和交互確保了信息系統(tǒng)的穩(wěn)定性。如果其中某個(gè)功能模塊內(nèi)部出現(xiàn)了故障,并不會(huì)影響到整個(gè)信息系統(tǒng)的正常運(yùn)行,其他的功能模塊由于與之相互獨(dú)立,仍能發(fā)揮各自的作用。
(3)能夠有效地提升代碼復(fù)用率和數(shù)據(jù)庫(kù)變更效率。每個(gè)功能模塊的源代碼可以有多個(gè)不同的版本,新的版本在實(shí)現(xiàn)新功能或新要求的同時(shí),可以復(fù)用相關(guān)功能模塊已經(jīng)實(shí)現(xiàn)了的功能。還可以根據(jù)功能模塊版本信息的不同關(guān)聯(lián)不同版本的數(shù)據(jù)庫(kù)表或字段。
(4)能夠在確保信息系統(tǒng)穩(wěn)定的情況下,對(duì)部分新模塊進(jìn)行Beta測(cè)試,以實(shí)現(xiàn)新舊版本的便捷遷移和迭代式擴(kuò)展開(kāi)發(fā)??梢圆捎冕槍?duì)不同的用戶(hù)組設(shè)置不同的表現(xiàn)形式,即對(duì)不同的用戶(hù)組顯示不同功能模塊版本的方式,讓一部分用戶(hù)正常使用現(xiàn)有的穩(wěn)定的信息系統(tǒng),讓另一部分用戶(hù)進(jìn)行Beta測(cè)試,試用新開(kāi)發(fā)出來(lái)的業(yè)務(wù)流程、新的功能模塊界面、以及新關(guān)聯(lián)的數(shù)據(jù)庫(kù)表或者字段等等。觀察這部分用戶(hù)Beta測(cè)試的結(jié)果,解決其中可能存在的部分問(wèn)題,之后再將新的功能模塊版本面向所有用戶(hù)開(kāi)放。由于可以每次只變更少量功能模塊,并且數(shù)據(jù)都存放在同一個(gè)后臺(tái)數(shù)據(jù)庫(kù)中,不需要對(duì)歷史數(shù)據(jù)進(jìn)行整體遷移,因此新舊版本的交替非常便利。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例的基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法簡(jiǎn)易流程圖。
圖2是本發(fā)明實(shí)施例的基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法詳細(xì)流程圖。
具體實(shí)施方式
以下結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)闡述。
本實(shí)施例的基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,如圖1所示,是本發(fā)明實(shí)施例的簡(jiǎn)易流程圖,即從具體的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程和規(guī)則狀況進(jìn)行需求分析,將其劃分成為多個(gè)相互獨(dú)立的不同功能模塊,對(duì)其進(jìn)行設(shè)計(jì)與開(kāi)發(fā),然后根據(jù)多個(gè)不同版本的功能模塊,選擇相應(yīng)的不同版本的數(shù)據(jù)庫(kù)表進(jìn)行操作與處理,實(shí)現(xiàn)業(yè)務(wù)流程與數(shù)據(jù)之間的分離。能夠在確保系統(tǒng)穩(wěn)定的同時(shí),方便實(shí)現(xiàn)多個(gè)功能模塊之間的交互和動(dòng)態(tài)配置、部署,并且可以在指定調(diào)用不同的功能模塊版本的情況下,對(duì)各個(gè)不同模塊進(jìn)行迭代式擴(kuò)展處理,以實(shí)現(xiàn)對(duì)新的業(yè)務(wù)流程和功能模塊進(jìn)行Beta測(cè)試和版本遷移,構(gòu)建一個(gè)基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法。下面對(duì)本發(fā)明中提出的方法進(jìn)行清晰、詳細(xì)的描述。
圖2是本發(fā)明實(shí)施例的基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法詳細(xì)流程圖。
本實(shí)施例的基于模塊化設(shè)計(jì)的信息系統(tǒng)迭代式擴(kuò)展開(kāi)發(fā)方法,綜合模塊化設(shè)計(jì)和迭代式擴(kuò)展來(lái)對(duì)信息系統(tǒng)進(jìn)行程序設(shè)計(jì)與開(kāi)發(fā),通過(guò)需求分析,將一個(gè)完整的信息系統(tǒng)劃分為多個(gè)互不干擾相互獨(dú)立的功能模塊理。
1.功能劃分開(kāi)發(fā)模塊:
從具體的業(yè)務(wù)內(nèi)容出發(fā),通過(guò)對(duì)業(yè)務(wù)的功能、流程和規(guī)則狀況進(jìn)行需求分析,將一個(gè)完整的信息系統(tǒng)劃分為多個(gè)互不干擾相互獨(dú)立的功能模塊,交由多位軟件開(kāi)發(fā)人員在統(tǒng)一的平臺(tái)下并行地開(kāi)發(fā)各自的模塊,并將多個(gè)不同的功能模塊分別封裝,對(duì)外只顯示其版本信息和接口。
2.關(guān)聯(lián)數(shù)據(jù)庫(kù)模塊:
為多個(gè)不同功能模塊的多個(gè)版本分別建立與數(shù)據(jù)庫(kù)表及字段的關(guān)聯(lián),修改功能模塊對(duì)應(yīng)操作的數(shù)據(jù)庫(kù)表版本,其中同一功能模塊的數(shù)據(jù)可以選擇寫(xiě)入到同一張數(shù)據(jù)庫(kù)表之中。
3.版本信息記錄模塊:
將同一功能模塊的多個(gè)不同版本的源代碼按版本信息分別進(jìn)行存儲(chǔ),記錄下各個(gè)不同版本的功能模塊源代碼和相應(yīng)的測(cè)試信息,根據(jù)程序員指定的功能模塊版本,并拼接成穩(wěn)定的信息系統(tǒng)供用戶(hù)使用。
4.系統(tǒng)權(quán)限分配模塊:
設(shè)置不同用戶(hù)組的系統(tǒng)權(quán)限,使不同的用戶(hù)可以獲取信息系統(tǒng)的不同表現(xiàn)形式,即采用對(duì)不同的用戶(hù)組顯示不同功能模塊版本的方式,讓一部分用戶(hù)正常使用現(xiàn)有的穩(wěn)定的信息系統(tǒng),讓另一部分用戶(hù)試用新版本。
5.系統(tǒng)版本遷移模塊:
根據(jù)試用新版本的用戶(hù)Beta測(cè)試的情況決定是否用新版本替換舊版本。在調(diào)試了部分可能存在的問(wèn)題和利用版本信息記錄模塊備份了舊版本功能模塊源代碼的前提下,調(diào)用功能劃分開(kāi)發(fā)模塊修改所需更新的功能模塊接口,以新版本替代舊版本,修改關(guān)聯(lián)數(shù)據(jù)庫(kù)模塊和系統(tǒng)權(quán)限分配模塊的相關(guān)內(nèi)容,即可實(shí)現(xiàn)版本的遷移。
本發(fā)明可以實(shí)現(xiàn)多個(gè)業(yè)務(wù)系統(tǒng)模塊之間的交互,使得信息系統(tǒng)可以快捷升級(jí),實(shí)現(xiàn)信息系統(tǒng)的迭代式擴(kuò)展開(kāi)發(fā),實(shí)現(xiàn)業(yè)務(wù)流程與數(shù)據(jù)之間的分離。
以上僅為說(shuō)明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動(dòng),均落入本發(fā)明保護(hù)范圍之內(nèi)。本發(fā)明未涉及的技術(shù)均可通過(guò)現(xiàn)有的技術(shù)加以實(shí)現(xiàn)。