本發(fā)明屬于軟件開發(fā)領(lǐng)域,涉及一種業(yè)務(wù)軟件的自動(dòng)化生成方法,尤其是指適用于不同業(yè)務(wù)領(lǐng)域的軟件通用自動(dòng)化生成技術(shù)。
背景技術(shù):
1、傳統(tǒng)的軟件開發(fā)方式往往面臨著技術(shù)實(shí)現(xiàn)與業(yè)務(wù)需求不一致、難以快速響應(yīng)業(yè)務(wù)需求變化等諸多挑戰(zhàn)。在傳統(tǒng)的軟件開發(fā)過程中,軟件開發(fā)人員需要將業(yè)務(wù)人員用非結(jié)構(gòu)化自然語言表達(dá)的業(yè)務(wù)需求,人工轉(zhuǎn)換為結(jié)構(gòu)化的程序代碼。這一轉(zhuǎn)換過程不僅耗時(shí)費(fèi)力,而且容易引發(fā)需求理解偏差,導(dǎo)致開發(fā)的軟件產(chǎn)品無法滿足業(yè)務(wù)需求。此外,傳統(tǒng)的軟件開發(fā)流程對(duì)特定人員的依賴較大,容易因人員變動(dòng)而影響項(xiàng)目進(jìn)度和質(zhì)量。為了提升軟件開發(fā)效率和質(zhì)量,及時(shí)響應(yīng)業(yè)務(wù)變化需求,亟需一種自動(dòng)化開發(fā)方法來解決這些問題。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于提供一種業(yè)務(wù)軟件自動(dòng)化開發(fā)方法,通過業(yè)務(wù)模塊化、模塊模型化、模型結(jié)構(gòu)化、流程標(biāo)準(zhǔn)化和軟件開發(fā)自動(dòng)化手段,實(shí)現(xiàn)業(yè)務(wù)人員和軟件開發(fā)人員協(xié)同的快速、高質(zhì)量的軟件開發(fā),后續(xù)業(yè)務(wù)若有變更需求,可由業(yè)務(wù)人員主導(dǎo)實(shí)現(xiàn)軟件迭代,滿足不同行業(yè)業(yè)務(wù)軟件開發(fā)需求,提供更為靈活和高效的解決方案。該方法能夠適應(yīng)不同業(yè)務(wù)領(lǐng)域軟件開發(fā)需求,具備較強(qiáng)的通用性和靈活性,提供了一種適用于不同行業(yè)和領(lǐng)域的軟件通用自動(dòng)化開發(fā)技術(shù),其技術(shù)方案如下:
2、一種業(yè)務(wù)軟件自動(dòng)化生成方法,其特征在于,該方法包括如下步驟:
3、(1)根據(jù)業(yè)務(wù)軟件需求將業(yè)務(wù)軟件按照業(yè)務(wù)流程劃分為若干業(yè)務(wù)模塊,將所有的業(yè)務(wù)流程模塊視為數(shù)據(jù)處理過程,并將其抽象為輸入-輸出-處理節(jié)點(diǎn)的有序組合;
4、(2)查詢模板庫(kù)中是否有當(dāng)前業(yè)務(wù)模塊模板,若有,則跳轉(zhuǎn)步驟(5);若無,則順序執(zhí)行;
5、(3)將業(yè)務(wù)模塊抽象為數(shù)據(jù)、動(dòng)作、角色和用戶四個(gè)維度組成的daru模型;
6、(4)根據(jù)實(shí)際業(yè)務(wù)場(chǎng)景,按照“場(chǎng)景理解-抽象設(shè)計(jì)-具象實(shí)現(xiàn)-模板配置”(story-abstract-concrete-config,sac2)設(shè)計(jì)出基于daru模型的業(yè)務(wù)描述模板并納入模板庫(kù),作為軟件開發(fā)的基礎(chǔ);
7、(5)將業(yè)務(wù)軟件需求按照業(yè)務(wù)描述模板進(jìn)行填寫和配置,形成結(jié)構(gòu)化需求文檔;
8、(6)解析所述結(jié)構(gòu)化需求文檔,提取daru要素,自動(dòng)化組裝成daru表達(dá)式;
9、(7)基于所述解析的daru表達(dá)式,自動(dòng)生成軟件代碼,形成可執(zhí)行的業(yè)務(wù)軟件模塊;
10、(8)所有業(yè)務(wù)模塊重復(fù)步驟(2)~(7),生成對(duì)應(yīng)業(yè)務(wù)模塊軟件代碼,迭代生成業(yè)務(wù)軟件。
11、基于上述生成方法,本發(fā)明對(duì)應(yīng)公開一種業(yè)務(wù)軟件自動(dòng)化生成裝置,其特征為:
12、(1)業(yè)務(wù)模塊化部分:根據(jù)業(yè)務(wù)軟件需求將業(yè)務(wù)軟件按照業(yè)務(wù)流程劃分為若干業(yè)務(wù)模塊,將所有的業(yè)務(wù)流程模塊視為數(shù)據(jù)處理過程,并將其抽象為輸入-輸出-處理節(jié)點(diǎn)的有序組合;
13、(2)查詢模塊入庫(kù)情況部分:查詢模板庫(kù)中是否有當(dāng)前業(yè)務(wù)模塊模板,若有,則跳轉(zhuǎn)步驟(5);若無,則順序執(zhí)行;
14、(3)模塊模型化部分:將業(yè)務(wù)模塊抽象為數(shù)據(jù)、動(dòng)作、角色和用戶四個(gè)維度組成的daru模型;
15、(4)模型標(biāo)準(zhǔn)化部分:根據(jù)實(shí)際業(yè)務(wù)場(chǎng)景,按照“場(chǎng)景理解-抽象設(shè)計(jì)-具象實(shí)現(xiàn)-模板配置(story-abstract-concrete-config,sac2)”設(shè)計(jì)出基于daru模型的業(yè)務(wù)描述模板并納入模板庫(kù),作為軟件開發(fā)的基礎(chǔ);
16、(5)填寫業(yè)務(wù)描述模板部分:將業(yè)務(wù)軟件需求按照業(yè)務(wù)描述模板進(jìn)行填寫和配置,形成結(jié)構(gòu)化需求文檔;
17、(6)解析業(yè)務(wù)描述模板部分:解析所述結(jié)構(gòu)化需求文檔,提取daru要素,自動(dòng)化組裝成daru表達(dá)式;
18、(7)生成軟件代碼部分:基于所述解析的daru表達(dá)式,自動(dòng)生成軟件代碼,形成可執(zhí)行的業(yè)務(wù)軟件模塊;
19、(8)生成業(yè)務(wù)軟件部分:生成對(duì)應(yīng)業(yè)務(wù)模塊軟件代碼,迭代生成業(yè)務(wù)軟件。
20、本發(fā)明還公開了一種業(yè)務(wù)軟件自動(dòng)化生成系統(tǒng),用于執(zhí)行上述業(yè)務(wù)軟件自動(dòng)化生成方法。
21、可選地,所述業(yè)務(wù)軟件自動(dòng)化生成系統(tǒng)包括如下功能模塊:
22、(a)模板庫(kù)模塊,用于按照daru模型和sac2開發(fā)流程生成并存儲(chǔ)業(yè)務(wù)模塊的業(yè)務(wù)描述模板;
23、(b)交互模塊,用于接收用戶輸入的業(yè)務(wù)需求、填寫業(yè)務(wù)描述模版,并形成結(jié)構(gòu)化需求文檔;
24、(c)解析模塊,用于將結(jié)構(gòu)化需求文檔解析為daru要素;
25、(d)組裝模塊,用于將daru要素自動(dòng)化組裝成daru表達(dá)式,形成業(yè)務(wù)流程;
26、(e)生成模塊,用于將所述解析的daru表達(dá)式生成軟件代碼;
27、(f)部署模塊,用于動(dòng)態(tài)部署所生成的軟件代碼,以形成可執(zhí)行的業(yè)務(wù)軟件。
28、有益效果
29、通過采用daru模型和sac2標(biāo)準(zhǔn)化的開發(fā)流程,可以實(shí)現(xiàn)業(yè)務(wù)需求的快速、高效轉(zhuǎn)換,從而提高軟件開發(fā)的效率和質(zhì)量;業(yè)務(wù)描述模板和開發(fā)方法可根據(jù)業(yè)務(wù)需求和技術(shù)進(jìn)展情況適時(shí)更新,確保業(yè)務(wù)需求的準(zhǔn)確表達(dá)和高效實(shí)現(xiàn);通過快速迭代軟件版本,保證軟件產(chǎn)品與業(yè)務(wù)的高度適配,滿足不斷變化的業(yè)務(wù)需求;該業(yè)務(wù)軟件自動(dòng)化生成方法具有業(yè)務(wù)無關(guān)性,沒有特定行業(yè)和領(lǐng)域的限制,可基于特定的設(shè)計(jì)將業(yè)務(wù)需求的表達(dá)式和與業(yè)務(wù)無關(guān)的技術(shù)功能代碼一起自動(dòng)化地轉(zhuǎn)化為軟件實(shí)現(xiàn)。
30、具體地,該方法通過將業(yè)務(wù)軟件按照業(yè)務(wù)流程劃分為若干業(yè)務(wù)模塊,并將所有的業(yè)務(wù)流程模塊視為數(shù)據(jù)處理過程,抽象為輸入-輸出-處理節(jié)點(diǎn)的有序組合,從而實(shí)現(xiàn)業(yè)務(wù)需求的快速轉(zhuǎn)換,提高開發(fā)效率。將業(yè)務(wù)模塊抽象為數(shù)據(jù)、動(dòng)作、角色和用戶四個(gè)維度組成的daru模型,有助于清晰、準(zhǔn)確地表達(dá)業(yè)務(wù)需求,提升開發(fā)質(zhì)量。依據(jù)“場(chǎng)景理解-抽象設(shè)計(jì)-具象實(shí)現(xiàn)-模板配置”(sac2)流程設(shè)計(jì)業(yè)務(wù)描述模板,并納入模板庫(kù),這種標(biāo)準(zhǔn)化流程確保了業(yè)務(wù)需求的準(zhǔn)確表達(dá)和高效實(shí)現(xiàn)。通過業(yè)務(wù)描述模板進(jìn)行填寫和配置,形成結(jié)構(gòu)化需求文檔,進(jìn)一步保證了需求的準(zhǔn)確性和開發(fā)的一致性。解析結(jié)構(gòu)化需求文檔,提取daru要素,自動(dòng)化組裝成daru表達(dá)式,并基于此自動(dòng)生成軟件代碼,此技術(shù)手段減少了手動(dòng)編碼的工作量,降低了出錯(cuò)概率,提高了開發(fā)效率和軟件質(zhì)量。通過上述步驟生成的業(yè)務(wù)軟件模塊可以快速迭代,保證軟件產(chǎn)品與業(yè)務(wù)的高度適配,滿足不斷變化的業(yè)務(wù)需求。該業(yè)務(wù)軟件自動(dòng)化生成方法具有業(yè)務(wù)無關(guān)性,沒有特定行業(yè)和領(lǐng)域的限制,通過特定設(shè)計(jì)將業(yè)務(wù)需求的表達(dá)式和與業(yè)務(wù)無關(guān)的技術(shù)功能代碼一起自動(dòng)化地轉(zhuǎn)化為軟件實(shí)現(xiàn),適用于各類業(yè)務(wù)需求。
1.一種業(yè)務(wù)軟件自動(dòng)化生成方法,其特征在于,該方法包括如下步驟:
2.如權(quán)利要求1所述業(yè)務(wù)軟件自動(dòng)化生成方法,其特征在于,所述步驟(3)中daru模型具有正交完備性,其中,所述數(shù)據(jù)是節(jié)點(diǎn)的操作對(duì)象;所述動(dòng)作是對(duì)數(shù)據(jù)的增刪改查;所述角色是動(dòng)作的發(fā)起者,所述用戶是角色的承擔(dān)者,所述數(shù)據(jù)、動(dòng)作、角色組合的矩陣表是該節(jié)點(diǎn)不同角色的操作權(quán)限。
3.根據(jù)權(quán)利要求1所述業(yè)務(wù)軟件自動(dòng)化生成方法,其特征在于,所述步驟(4)中業(yè)務(wù)描述模板支持excel、word或思維導(dǎo)圖工具生成的文件格式。
4.一種業(yè)務(wù)軟件自動(dòng)化生成裝置,其特征為:
5.一種業(yè)務(wù)軟件自動(dòng)化生成系統(tǒng),其特征在于,用于執(zhí)行如權(quán)利要求1~3任一所述的業(yè)務(wù)軟件自動(dòng)化生成方法。