本發(fā)明實(shí)施例涉及計(jì)算機(jī)技術(shù),尤其涉及一種業(yè)務(wù)設(shè)計(jì)方法和系統(tǒng)。
背景技術(shù):
隨著社會(huì)的不斷發(fā)展和進(jìn)步,智能設(shè)備特別是機(jī)器人層出不窮并將無處不在。機(jī)器人市場(chǎng)前景好、需求量大,國(guó)家政策鼓勵(lì)服務(wù)機(jī)器人產(chǎn)業(yè)發(fā)展,但面臨業(yè)務(wù)領(lǐng)域或行業(yè)眾多而且場(chǎng)景多(例如移動(dòng)的,靜止的;家用的,公用的;高端的,低廉的等)。對(duì)于不同的業(yè)務(wù)領(lǐng)域、行業(yè)或場(chǎng)景,所需要實(shí)現(xiàn)的業(yè)務(wù)功能是不一樣的,而當(dāng)業(yè)務(wù)功能發(fā)生變化時(shí),都需要對(duì)軟件做較多的修改,從而需要投入較多人力和較長(zhǎng)時(shí)間的開發(fā)和測(cè)試才能上線。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種業(yè)務(wù)設(shè)計(jì)方法和系統(tǒng),以實(shí)現(xiàn)快速進(jìn)行業(yè)務(wù)設(shè)計(jì),從而減少人力成本和開發(fā)時(shí)間。
第一方面,本發(fā)明實(shí)施例提供了一種業(yè)務(wù)設(shè)計(jì)方法,包括:
確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件;
確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù);
根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī);
導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件。
另一方面,本發(fā)明實(shí)施例還提供了一種業(yè)務(wù)設(shè)計(jì)系統(tǒng),包括:
第一確定模塊,用于確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件;
第二確定模塊,用于確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù);
狀態(tài)機(jī)生成模塊,用于根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī);
導(dǎo)出模塊,用于導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件。
本發(fā)明實(shí)施例通過確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件,確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù),然后根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī),利用狀態(tài)機(jī)來描述業(yè)務(wù)流程,最后導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件,該配置文件可以用于軟件開發(fā),從而實(shí)現(xiàn)快速進(jìn)行業(yè)務(wù)設(shè)計(jì),減少人力成本和開發(fā)時(shí)間。
附圖說明
圖1是本發(fā)明實(shí)施例一中的業(yè)務(wù)設(shè)計(jì)方法的流程圖;
圖2是本發(fā)明實(shí)施例一中的示例性業(yè)務(wù)狀態(tài)及切換條件的示意圖;
圖3是本發(fā)明實(shí)施例二中的業(yè)務(wù)設(shè)計(jì)方法的流程圖;
圖4是本發(fā)明實(shí)施例三中的業(yè)務(wù)設(shè)計(jì)系統(tǒng)的結(jié)構(gòu)框圖;
圖5是本發(fā)明實(shí)施例四中的業(yè)務(wù)設(shè)計(jì)系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。可以理解的是,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
實(shí)施例一
圖1為本發(fā)明實(shí)施例一提供的一種業(yè)務(wù)設(shè)計(jì)方法的流程圖,本實(shí)施例可適用于快速完成業(yè)務(wù)開發(fā)和驗(yàn)證的情況,該方法可以由業(yè)務(wù)設(shè)計(jì)系統(tǒng)來執(zhí)行,該系統(tǒng)可以采用軟件和/或硬件的方式實(shí)現(xiàn),具體包括如下步驟:
s110、確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件。
s120、確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)。
這里的業(yè)務(wù)可以是指不同行業(yè)、不同領(lǐng)域中涉及到的業(yè)務(wù),例如銀行領(lǐng)域中的余額查詢、刷卡轉(zhuǎn)賬;醫(yī)療領(lǐng)域中的排隊(duì)掛號(hào)、預(yù)約體檢;酒店領(lǐng)域中的辦理入住、空房查詢等。每一種業(yè)務(wù)包含至少一個(gè)業(yè)務(wù)狀態(tài),每一種業(yè)務(wù)狀態(tài)可包含一種或多種不同的服務(wù)和數(shù)據(jù),這些狀態(tài)及狀態(tài)間的切換構(gòu)成了一套業(yè)務(wù)流程。
這里以銀行大堂服務(wù)機(jī)器人提供的查詢銀行卡余額業(yè)務(wù)為例來進(jìn)行說明,并且該類機(jī)器人內(nèi)安裝了為完成該業(yè)務(wù)所需的顯示器、觸摸屏、多合一銀行卡讀卡器、密碼鍵盤、憑條打印機(jī)及網(wǎng)絡(luò)等基礎(chǔ)設(shè)施。
用戶要進(jìn)行余額查詢,正常情況下需要進(jìn)行下列操作,即業(yè)務(wù)流程:
(1)通過語音交互或點(diǎn)觸觸摸屏,進(jìn)入余額查詢ui。
(2)根據(jù)語音或指示燈提示插入銀行卡。
(3)根據(jù)語音或指示燈提示輸入密碼。
(4)提交查詢余額交易請(qǐng)求。
(5)查詢余額結(jié)束后,如果能打印憑條且選擇了打印憑條,那么用戶取走憑條,取走銀行卡。
相應(yīng)地,機(jī)器人應(yīng)完成下列各項(xiàng):
(0)視頻監(jiān)控機(jī)器人前方指定區(qū)域。
(1)切換到查詢銀行卡余額業(yè)務(wù)ui。初始化讀卡器、密碼鍵盤等,若初始化失敗則告知后臺(tái),并應(yīng)提示用戶。
(2)讀卡器試圖讀取銀行卡中的信息,若成功,則提取其中部分信息,加工后呈現(xiàn)給用戶或保存起來以備后續(xù)步驟使用;否則告知后臺(tái),并應(yīng)提示用戶。
(3)密碼鍵盤試圖獲取用戶輸入的密碼,若成功,則提取其中部分信息,加工后呈現(xiàn)給用戶或保存起來以備后續(xù)步驟使用;否則告知后臺(tái),并應(yīng)提示用戶。
(4)將必要的終端信息、保存的銀行卡信息、密碼以及交易類型(查詢余額),打包為服務(wù)請(qǐng)求,發(fā)送給交易后臺(tái)并等待結(jié)果。得到結(jié)果后,呈現(xiàn)給用戶。
(5)查詢余額結(jié)束后,如果能打印憑條且選擇了打印憑條,那么用戶取走憑條,讀卡器彈出銀行卡并提示用戶取走銀行卡。
(6)ui切換到首頁。
在上述查詢余額的業(yè)務(wù)中,如圖2所示,除了最初和最終狀態(tài)外,還包括下列狀態(tài):
(1)業(yè)務(wù)開始狀態(tài)10。
在該狀態(tài),初始化該業(yè)務(wù)引用的所有服務(wù)(銀行卡讀卡器相關(guān)服務(wù)、密碼鍵盤相關(guān)服務(wù)、交易相關(guān)服務(wù)、憑條打印機(jī)相關(guān)服務(wù)),若其中出現(xiàn)對(duì)業(yè)務(wù)致命的異常,則切換到錯(cuò)誤狀態(tài),否則:若出現(xiàn)對(duì)業(yè)務(wù)非致命的異常(例如,憑條打印機(jī)初始化異常,如缺紙,導(dǎo)致不能打印憑條),則提示用戶選擇,若用戶選擇忽略該異常則該業(yè)務(wù)繼續(xù)進(jìn)行否則切換到業(yè)務(wù)結(jié)束狀態(tài),否則切換到待讀取銀行卡信息狀態(tài)。
(2)待讀取銀行卡信息狀態(tài)11。
在該狀態(tài),調(diào)用銀行卡讀卡器相關(guān)服務(wù),若出現(xiàn)異常則切換到錯(cuò)誤狀態(tài);若正確插入了有效的銀行卡且無異常則將讀取銀行卡信息并切換到待讀取銀行卡密碼狀態(tài);若插卡不正確或卡無效則退卡并提示用戶重新插卡或取消,若用戶選擇取消則切換到業(yè)務(wù)結(jié)束狀態(tài)。
(3)待讀取銀行卡密碼狀態(tài)12。
在該狀態(tài),調(diào)用密碼鍵盤相關(guān)服務(wù),若出現(xiàn)異常則切換到錯(cuò)誤狀態(tài);若正確輸入了密碼且無異常則將讀取密碼信息并切換到待獲取交易結(jié)果狀態(tài);若輸入的密碼不符和規(guī)則(如6位十進(jìn)制數(shù)字串)則提示用戶重新輸入或取消;若用戶選擇取消則切換到業(yè)務(wù)結(jié)束狀態(tài)。
(4)待獲取交易結(jié)果狀態(tài)13。
在該狀態(tài),調(diào)用交易服務(wù),打包相關(guān)數(shù)據(jù)(前述銀行卡信息中的一部分和密碼)為交易服務(wù)請(qǐng)求,發(fā)送給交易后臺(tái)并等待結(jié)果。若出現(xiàn)異常則切換到錯(cuò)誤狀態(tài);若無異常,則得到結(jié)果(成功,余額信息;失敗,交易出錯(cuò)原因)后,呈現(xiàn)給用戶;若超時(shí)或用戶選擇取消則切換到業(yè)務(wù)結(jié)束狀態(tài)。
(5)業(yè)務(wù)結(jié)束狀態(tài)14。
在該狀態(tài),若有需要打印的憑條則調(diào)用憑條打印服務(wù),打印憑條并提示用戶取走;若有需要退出的銀行卡則調(diào)用銀行卡讀卡器的退卡服務(wù),退出銀行卡并提示用戶取走。若超時(shí)或用戶選擇取消則切換到最終狀態(tài)。
(6)錯(cuò)誤狀態(tài)15。
在該狀態(tài),呈現(xiàn)錯(cuò)誤信息。若超時(shí)或用戶選擇取消則切換到最終狀態(tài)。s130、根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī)。在本發(fā)明實(shí)施例中,將業(yè)務(wù)用狀態(tài)機(jī)的方式表示,即根據(jù)業(yè)務(wù)的至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī),可以快速實(shí)現(xiàn)業(yè)務(wù)設(shè)計(jì),減少軟件設(shè)計(jì)成本。
s140、導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件。該配置文件可以用于實(shí)現(xiàn)軟件功能,通過讀取該配置文件來實(shí)現(xiàn)業(yè)務(wù)操作。
本發(fā)明實(shí)施例通過確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件,確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù),然后根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī),利用狀態(tài)機(jī)來描述業(yè)務(wù)流程,最后導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件,該配置文件可以用于軟件開發(fā),從而實(shí)現(xiàn)快速進(jìn)行業(yè)務(wù)設(shè)計(jì),減少人力成本和開發(fā)時(shí)間。
實(shí)施例二
圖3為本發(fā)明實(shí)施例二提供的一種業(yè)務(wù)設(shè)計(jì)方法的流程圖,實(shí)施例二在實(shí)施例一的基礎(chǔ)上進(jìn)行進(jìn)一步優(yōu)化,如圖3所示,本發(fā)明實(shí)施例二的方法具體包括:
s301、存儲(chǔ)用戶枚舉的服務(wù)供應(yīng)商已發(fā)布的所有可用的服務(wù)。
s301是一個(gè)預(yù)先執(zhí)行的操作,即將用戶枚舉的服務(wù)供應(yīng)商已發(fā)布的所有可用的服務(wù)存儲(chǔ)下來,以便進(jìn)行業(yè)務(wù)設(shè)計(jì)。
s302、確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件。
s303、確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)。
s304、根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī)。
這里需要說明的是,可以為用戶提供一種可視化操作界面,將存儲(chǔ)的全部服務(wù)顯示出來,顯示方式不做限定,例如圖形化的顯示,以便用戶可操作性地根據(jù)具體的業(yè)務(wù)流程來確定業(yè)務(wù)狀態(tài)、服務(wù)和數(shù)據(jù)以及切換條件,從而生成業(yè)務(wù)狀態(tài)機(jī)。
s305、測(cè)試所述業(yè)務(wù)狀態(tài)機(jī),以驗(yàn)證業(yè)務(wù)的正確性。
s306、根據(jù)修改后的業(yè)務(wù)狀態(tài)機(jī)重新進(jìn)行測(cè)試,直到業(yè)務(wù)正確為止。
業(yè)務(wù)狀態(tài)機(jī)生成之后,指定相關(guān)數(shù)據(jù)和事件模擬運(yùn)行該系統(tǒng)提供的狀態(tài)機(jī)模擬器驗(yàn)證其正確性。
s307、導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件。該配置文件可以用戶外部調(diào)用,從而實(shí)現(xiàn)業(yè)務(wù)功能。
本發(fā)明實(shí)施例通過預(yù)先存儲(chǔ)用戶枚舉的服務(wù)供應(yīng)商已發(fā)布的所有可用的服務(wù),以便進(jìn)行業(yè)務(wù)設(shè)計(jì),生成業(yè)務(wù)狀態(tài)機(jī)。此外,通過對(duì)生成的業(yè)務(wù)狀態(tài)機(jī)進(jìn)行測(cè)試,并在修改后繼續(xù)測(cè)試直到正確為止,以此來保證業(yè)務(wù)狀態(tài)機(jī)的正確性,提高了軟件設(shè)計(jì)效率。
實(shí)施例三
圖4為本發(fā)明實(shí)施例三提供的一種業(yè)務(wù)設(shè)計(jì)系統(tǒng)的結(jié)構(gòu)框圖,該業(yè)務(wù)設(shè)計(jì)系統(tǒng)用于快速完成業(yè)務(wù)開發(fā)和驗(yàn)證的情況,如圖4所示,本發(fā)明實(shí)施例的業(yè)務(wù)設(shè)計(jì)系統(tǒng)4包括:
第一確定模塊410,用于確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件;
第二確定模塊420,用于確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù);
狀態(tài)機(jī)生成模塊430,用于根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī);
導(dǎo)出模塊440,用于導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件。
本發(fā)明實(shí)施例通過確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件,確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù),然后根據(jù)所述至少一個(gè)狀態(tài)、切換條件以及每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)生成業(yè)務(wù)狀態(tài)機(jī),利用狀態(tài)機(jī)來描述業(yè)務(wù)流程,最后導(dǎo)出所述業(yè)務(wù)狀態(tài)機(jī)對(duì)應(yīng)的配置文件,該配置文件可以用于軟件開發(fā),從而實(shí)現(xiàn)快速進(jìn)行業(yè)務(wù)設(shè)計(jì),減少人力成本和開發(fā)時(shí)間。
實(shí)施例四
圖5為本發(fā)明實(shí)施例四提供的一種業(yè)務(wù)設(shè)計(jì)系統(tǒng)的結(jié)構(gòu)框圖,本實(shí)施例在實(shí)施例三的基礎(chǔ)上做出進(jìn)一步優(yōu)化,其中,與實(shí)施例三中相同的模塊將采用相同的附圖標(biāo)記。如圖5所示,本發(fā)明實(shí)施例的業(yè)務(wù)設(shè)計(jì)系統(tǒng)4包括第一確定模塊410、第二確定模塊420、狀態(tài)機(jī)生成模塊430和導(dǎo)出模塊440,還包括:
測(cè)試模塊450,用于對(duì)所述業(yè)務(wù)狀態(tài)機(jī)進(jìn)行測(cè)試,以驗(yàn)證業(yè)務(wù)的正確性;
測(cè)試模塊450還用于根據(jù)修改后的業(yè)務(wù)狀態(tài)機(jī)重新進(jìn)行測(cè)試,直到業(yè)務(wù)正確為止。
優(yōu)選的,系統(tǒng)4還包括:
存儲(chǔ)模塊400,用于存儲(chǔ)用戶枚舉的服務(wù)供應(yīng)商已發(fā)布的所有可用的服務(wù)。
優(yōu)選的,系統(tǒng)4還包括可視化操作界面(圖中未示出),用于圖形化地顯示狀態(tài)及服務(wù)和數(shù)據(jù),以供用戶通過該可視化操作界面,根據(jù)業(yè)務(wù)流程設(shè)計(jì)業(yè)務(wù)狀態(tài)、切換條件及服務(wù)和數(shù)據(jù);
相應(yīng)的,第一確定模塊410還用于通過所述可視化操作界面確定業(yè)務(wù)流程的至少一個(gè)業(yè)務(wù)狀態(tài)及各業(yè)務(wù)狀態(tài)間的切換條件;第二確定模塊420還用于通過所述可視化操作界面確定每個(gè)業(yè)務(wù)狀態(tài)所需的服務(wù)和數(shù)據(jù)。
本發(fā)明實(shí)施例提供的業(yè)務(wù)設(shè)計(jì)系統(tǒng)可執(zhí)行本發(fā)明任意實(shí)施例提供的業(yè)務(wù)設(shè)計(jì)方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會(huì)理解,本發(fā)明不限于這里所述的特定實(shí)施例,對(duì)本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會(huì)脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對(duì)本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。