夏成嬌 張 瑾 翟付群 邵雅麗
[摘要]對某高校教材銷售系統(tǒng)開發(fā)過程的需求改進,詳細介紹軟件需求分析階段進一步改進系統(tǒng)必須具備的功能。采用數據流圖[1]、數據字典[1]描述軟件邏輯模型;根據實際情況指出此階段確定的系統(tǒng)功能存在的不足和缺點;進一步改進系統(tǒng)功能需求。軟件需求分析[2]是軟件工程中重要的一步,直接關系到后繼工程的進行以及最終的產品能否滿足用戶的需求,一次在整個工程中起著關鍵作用。
[關鍵詞]教材銷售[3] 需求分析 數據流圖 動態(tài)建模
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0920074-01
一、引言
需求分析的根本任務之一是確定軟件所必須具備的功能[1],準確回答“系統(tǒng)必須做什么”這個問題,而系統(tǒng)功能需求是指根據系統(tǒng)所能實現的功能要求,對于每一類功能或者有時對于每一個功能,需要弄清輸入、加工和輸出等需求。正確地定義系統(tǒng)功能需求是需求分析階段的基礎。也是保證軟件正確性的前提。
二、系統(tǒng)開發(fā)背景及教材銷售過程
為改進教材發(fā)放管理,此高校教務處利用計算機系統(tǒng)技術,開發(fā)一個教材銷售系統(tǒng),實現某高校的教材銷售的自動化,使高校的教務管理變得更加方便、快捷。
某高校教務處向學生銷售教材的過程如下:
學生找系辦公室的張秘書開一個購書單;憑購書單找教材科的王會計開購書發(fā)票;向李出納員交書費開領書單;學生拿著領書單到書庫找趙保管員領書。
三、系統(tǒng)功能需求
采用結構化分析方法,用數據流圖和數據字典描述軟件的邏輯模型。
(一)數據流圖
數據流圖是用來描繪軟件系統(tǒng)的邏輯模型的工具[2]。通過數據流圖描繪信息在系統(tǒng)中流動和加工處理的情況。采用“自頂向下,逐步分解”的思想,分層細化數據流圖,最終得到一組含有系統(tǒng)全部加工處理的分層數據流圖如下圖:
(二)數據字典。數據字典是關于數據信息的集合,主要描述數據流、數據存儲、數據元素的詳細內容以及加工邏輯[2]。數據字典的作用是為軟件分析、設計和維護過程提供數據描述和通信工具。
售書登記表在數據流圖中描述如下:
名稱:售書登記表;輸入數據流:各班領書情況;輸出數據流:按售書登記表審查購書單有效性;組成:系編號+年級號+{書號+書名+單價+數量+總價}+書費合計;描述:包含領書信息;組織方式:按系編號、班級號從小到大排列。
四、提出不足
根據教材存量表,若還有可賣教材,則會給開發(fā)票,后修改教材存量表(相應減少教材存量)若學生沒去交書費,則沒能領領書單,領書單未開,則不會修改售書登記,售出登記中就無該學生與他要買教材的信息,會出現兩個問題:
第一,則該學生還可以再去開發(fā)票,預定同一類教材,交兩次書費,開兩次領書單,領兩次書,此時售出登記中則會出現,該學生買過兩次書的登記記錄,對應于顯示情況,則無法避免給同一個班級開兩次發(fā)票的情況,達不到根據售出登記,審查購書單有效性的作用。
第二,由于給這個學生開了發(fā)票,教材存量表已做了相應修改,但售出登記中無該學生購買教材的登記,致使教材存量表與售出登記表出現不一致,即出現教材存量減少但實際尚未售出的“虛售”情況,由于至開發(fā)票階段并沒有登記任何該學生購買任何相關教材的信息,使無法查詢是由于哪個學生致使這種情況出現。
五、需求改進
基于以上問題,對數據流圖做改進如下:“1審查并開發(fā)票”作來源,“售書登記表”作去處,添加一個數據流,添加的數據流在數據字典中描述如下:
名稱:售書登記;描述:根據發(fā)票登記售書信息;來源:1審查并開發(fā)票;去處:售書登記表;組成:系編號+年級號+班級號+{書號+書名+單價+數量+總價}+書費合計+書費支付情況;流通量:10張/min。
此時售書登記表的組成也增加一項“書費支付情況”選項,若只開了發(fā)票未交書費,則該選項內容為未交;若收過書費,開了領書單,相應地修改該選項為實交金額,改進之后“售書登記表”在數據字典中描述如下:
名稱:售書登記表;輸入數據流:教材銷售情況,各班領書情況;輸出數據流:按班級號查詢教材銷售情況;組成:系編號+年級號+{書號+書名+單價+數量+總價}+書費合計+書費交付情況;描述:包含售書信息;組織方式:按系編號、年級號從小到大排序。
六、結束語
對該教材銷售系統(tǒng)功能需求改進不僅避免了同一班級購買兩次同一教材情況的出現,還保證了“售出登記表”與“教材存量表”的一致。進一步完善了用戶需求,也保證了整個系統(tǒng)設計的正確性與完善性。
參考文獻:
[1]CIU-軟件聯(lián)盟,系統(tǒng)分析師案例分析與論文指導,北京:人民郵電出版社,2007,307-309.
[2]張虹,軟件工程與軟件開發(fā)工具,北京:清華大學出版社,2004.
[3]Roger S.Pressman,《軟件工程實踐者的研究方法原書第6版》,機械工業(yè)出版社,2006.
[4]Stephen Withall,《軟件需求模式》,機械工業(yè)出版社,2008.
[5]Suzanne Robertson/James Robertson,《掌握需求過程(第2版)》,人民郵電出版社,2007.
作者簡介:
夏成嬌(1987-),女,漢族,山東蒙陰籍人,本科,研究方向:計算機信息安全。