葉小艷+吳海燕+楊文凌+楊宗曉
摘要:需求分析是軟件開發(fā)一個關鍵環(huán)節(jié),需求業(yè)務模型是對搜集來的需求和信息進行合理的歸納與分析后形成的流程,建模過程相對比較抽象。利用“快速開發(fā)平臺”構建一種可視化的需求業(yè)務建模的方法,可以簡單、直觀、快捷地定義業(yè)務系統(tǒng)操作流程,不僅提升了開發(fā)過程對需求的響應速度,也提高了企業(yè)應用的開發(fā)速度,降低了企業(yè)的開發(fā)成本。
關鍵詞:需求分析;需求業(yè)務模型;快速開發(fā)平臺;建模
1概述
需求分析是軟件系統(tǒng)設計與開發(fā)之前對用戶需求所作的調(diào)查與分析,在此基礎上對系統(tǒng)的操作流程,就是需求業(yè)務模型。通俗地講,需求業(yè)務模型就是描述系統(tǒng)在何時、何地、由何角色、按什么業(yè)務規(guī)則去做,以及做的步驟或流程。它將是系統(tǒng)設計、系統(tǒng)完善和系統(tǒng)維護的依據(jù)。因此,需求業(yè)務模型的建立是保證系統(tǒng)質(zhì)量的關鍵。
傳統(tǒng)的需求業(yè)務建模主要是通過一設一計來實現(xiàn)。即需求從用戶到系統(tǒng)分析員再到程序員,才得以實現(xiàn),但這個過程容易“失真”,必須不斷反饋與校正,開發(fā)過程對需求顯得“響應遲鈍”,時效性較差。為了提高軟件開發(fā)的效率,隨著快速開發(fā)技術的發(fā)展,目前多家公司推出了快速開發(fā)平臺(也稱快速開發(fā)工具)。
快速開發(fā)平臺,簡單地講,就是以某種編程語言或者某幾種編程語言為基礎,開發(fā)出一個軟件,這個軟件并不是最終的軟件產(chǎn)品,而是一個二次開發(fā)的軟件框架。用戶在該軟件上進行各式各樣的軟件產(chǎn)品的開發(fā),不需要編寫大量的代碼,而只需要進行一些簡單的配置,或者是寫極少量的代碼便可以完成一個業(yè)務系統(tǒng)的開發(fā)工作。快速開發(fā)平臺的主要特點就是以模型來代替程序設計語言。市面上快速平臺較多,其中較好的如北京思維加速的Justep、上海華丹的CHARISMAN、上海普元的EOS、珠海同望的V3等。本研究主要應用的快速平臺為同望V3開發(fā)平臺。該平臺提出了業(yè)務模型驅(qū)動的思想,采用配置化組裝的模式,能夠?qū)Σ煌蛻魝€性化需求快速響應。其最大特點就是可視化。在可視化模式下完成軟件系統(tǒng)的建模、設計以及開發(fā),就如同在OFFICE編輯文件一樣,體現(xiàn)了軟件開發(fā)的直觀、快捷。
V3開發(fā)平臺主要是應用了“軟件復用”和“組件技術”兩種關鍵技術。軟件復用是將已有軟件的各種有關知識用于建立新的軟件,以縮減軟件開發(fā)和維護的花費。組件技術就是利用一些編程的方法,將一些不便于用戶去直接操作的細節(jié)進行了封裝,同時實現(xiàn)了各種業(yè)務邏輯。在實際開發(fā)過程中,每個組件會提供一些標準的應用接口,使用者可以調(diào)整其參數(shù),同時軟件開發(fā)者將被需求的功能組件有機地結合在一起,快速開發(fā)出一個符合實際需要的應用程序。因此V3平臺上構建業(yè)務模型,可以做到“可見即可得”,對于開發(fā)者來說,實現(xiàn)邊設計、邊開發(fā)、邊改進,對于客戶來說,可以便捷地進行軟件系統(tǒng)決策性操作和控制。這使得開發(fā)與客戶的溝通更加流暢,既縮短軟件開發(fā)的周期,又節(jié)約項目成本。
2需求分析建模的方法
需求分析建模是建立信息系統(tǒng)模型的一個過程,目的在于將復雜問題簡單化,將數(shù)據(jù)制作成流程圖。信息系統(tǒng)的功能主要有菜單級功能、頁面級功能、按鈕級功能。如圖1所示。菜單級功能是指對應web信息系統(tǒng)的導航鏈接,主要是將系統(tǒng)的內(nèi)容劃分為不同模塊;頁面級功能指的是在web頁面中通常擁有不同的區(qū)域,各個區(qū)域?qū)煌愋偷墓δ?;按鈕級功能即一個功能按鈕對應著用戶的一個具體操作。
根據(jù)信息系統(tǒng)功能設計,信息系統(tǒng)需求模型系統(tǒng)主要是研究ERP系統(tǒng)的每個功能模塊,再細化到每個頁面及按鈕的功能。
首先,將用戶的原始需求根據(jù)模型套人選擇,分別從功能模塊開始選擇,根據(jù)原始需求關鍵詞選擇需要的功能模塊;其次,在各個功能模塊內(nèi)細化。客戶提出的需求關鍵詞選擇需要的頁面(如:庫存管理模塊中需要物料管理頁面),并在每個頁面里勾選需要并符合系統(tǒng)的字段或表字段,勾選的表字段形成數(shù)據(jù)庫設計的表結構;最后,根據(jù)頁面功能和原始需求關鍵詞選擇符合各頁面的按鈕功能。完成各個模塊的勾選后,對應每個頁面的需求推薦符合用戶需求的界面。
對于推薦的界面,以庫存管理模塊為例分析研究適合各種類型的界面。由于不同類型的公司的庫存管理模塊的功能是不一樣的,例如:生產(chǎn)制造型的公司,會有很多類型的物料,管理的方式不一樣,界面就有很大的改變。因此需根據(jù)不同公司類型的項目,再匹配不同類型公司設計了不同的界面,形成模板庫。
3快速開發(fā)平臺上需求分析建模方法
在快速開發(fā)平臺上進行需求分析建模的方法如圖2所示。
3.1選擇模版庫
進入系統(tǒng)后,用戶選擇需要的模塊,這里的模塊按照ERP系統(tǒng)的主要功能分為:銷售管理、訂單管理、項目管理、生產(chǎn)管理、庫存管理和財務管理等。用戶選擇模塊后,將提供多個文本框(由用戶自定義添加),每個文本框限定10個字,用戶需在文本框中填寫系統(tǒng)的特點。系統(tǒng)自動通過文本框中的文字與模板圖片所包含的屬性進行匹配,然后按照匹配的最優(yōu)相似度來提供給用戶相應的模板圖片。
3.2文字與模板圖片匹配
系統(tǒng)進入一個模塊后,模塊中各種模板圖片,一個模版圖片存在著多個屬性(這些屬性以字段的形式存人在數(shù)據(jù)庫中)。而這個匹配的過程是通過用戶在文本框中輸入的詞句,先將一個文本框中的詞句的單個字符一個個提取出來,然后將這些單個的字符與這個模塊內(nèi)的所有模板圖片的屬性在數(shù)據(jù)庫中進行模糊查詢匹配。若匹配不成功,則比例為0,再運用公式((當前這個字符長度一1)/當前匹配屬性的長度)得出比例將這些比例存到數(shù)組a中。若匹配成功,則將每個字符前(后)的組成字符串(即將所有的2個字符與各屬性進行模糊查詢匹配)。隨后則進行字符串長度是否相同的判斷。若相同,則比例為100%;若不相同,則按照2個字符的形式進行3個字符的模糊查詢匹配。以此類推,直到這個文本框的詞句以整體的形式模糊查詢匹配得出比例后結束這些循環(huán),再將所有得出的比例相加得出最終比例。最后運用公式(最終比例/(該圖片屬性個數(shù)x字符個數(shù)))得出圖片相似度。這個相似度,按照調(diào)查的形式給出一個范圍的相似度比例讓系統(tǒng)進行判斷,當在這個比例中則跳出相應的模板圖片提供給用戶。
4快速開發(fā)平臺需求分析模型實現(xiàn)
以“庫存管理模塊”為例,操作實現(xiàn)過程圖3所示。
根據(jù)需求分析,信息系統(tǒng)庫存管理模塊有物料管理、出入庫業(yè)務、庫存維護、業(yè)務查詢、庫位管理、盤點還有報表等功能。每個子功能根據(jù)分析案例得出不同的界面屬性。根據(jù)原始需求選擇模板界面與對應的模板件套。如果模板件套的內(nèi)容不夠完整,還可以根據(jù)界面填寫對應的件套內(nèi)容,技術開發(fā)人員可以根據(jù)所選的模板界面和模板件套進行系統(tǒng)開發(fā)。
關于物料主文件,可以選擇單層結構(列表形式)或者多層結構(樹表形式)的界面,然后按照模板填寫對應的件套。
物料主文件編輯界面可以選擇固定編碼界面或者可變編碼界面,而固定編碼界面還可以選擇批量編碼或者單個編碼界面。如圖6、圖7所示。
如要選擇庫位管理:庫位管理根據(jù)界面展現(xiàn)形式分為列表形式和左樹右表形式,可以根據(jù)庫位的數(shù)量選擇,庫位分類的可以選擇多層結構的左樹右表形式。如圖8所示。
5結束語
在快速開發(fā)平臺上構建需求分析建模技術可以實現(xiàn)以下三個目標。一是能夠適當降低軟件開發(fā)的成本;二是能夠改善傳統(tǒng)需求分析建模的弊端,增加軟件開發(fā)過程的靈活性;三是能夠適當提高信息系統(tǒng)開發(fā)的效率和質(zhì)量。本文僅對一個信息系統(tǒng)的庫存模塊的需求模型做了研究,如果要將一個ERP系統(tǒng)需求完整展現(xiàn),還需要做大量的屬性匹配、建立大量的模版庫,這也是后期需要完成的工作,如果完整開發(fā),對于軟件開發(fā)起到非常積極的作用。endprint