出版社客戶管理系統(tǒng)介紹_第1頁
出版社客戶管理系統(tǒng)介紹_第2頁
出版社客戶管理系統(tǒng)介紹_第3頁
出版社客戶管理系統(tǒng)介紹_第4頁
出版社客戶管理系統(tǒng)介紹_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、(精編)出版社客戶管理系統(tǒng)介紹數(shù)學與計算機學院課程設計說明書課程名 稱:軟件工程課程設計_課程代碼:8404131 _題目:出版社客戶管理系統(tǒng) _年級專業(yè)/班:2009級軟件四班 _學生姓名: _學號:_開始時間:2011年05月27日完成時間:2011年06月12日課程設計成績:學習態(tài)度及平時成績(30)技術水平與實際能力(20)創(chuàng)新(5)說明書(計算書、圖紙、分析報告)撰寫質(zhì)量(45)總分(100)指導教師簽名: _ _年月日軟件工程課程設計任務書學院名稱:一數(shù)學與計算機學院課程代碼:8404131專業(yè):軟件工程年級:2009一、設計題目出版社客戶管理系統(tǒng)、主要內(nèi)容本課程是計算機軟件專業(yè)的

2、必修專業(yè)課程,通過理論講述和實際訓練,使學 生掌握軟件工程的基本原理和基本方法,學會用軟件工程學的概念、原理、方法 和技術開發(fā)和維護軟件。 .本課程設計要求學生運用軟件工程的思想,嚴格按照軟件生命周期各階段的 目的和任務,完成對系統(tǒng)的定義、設計、編碼、運行以及后期的維護。 .三、具體要求及應提交的材料1. 分析階段: 一個小型的出版社客戶管理系統(tǒng)系統(tǒng),需完成以下工作:(1) 在出版社客戶管理系統(tǒng)中增加 / 刪除一客戶;(2) 對某一客戶贈送樣書、發(fā)慰問信、發(fā)慰問禮品;( 3)找出某一批出售書名和編號的相應客戶; 。 導出系統(tǒng)的數(shù)據(jù)流程圖和實體關系圖( E-R) 2設計階段: 針對分析階段提出的

3、軟件要求,給出實現(xiàn)的方案和具體細節(jié)的說明。( 1)考慮該軟件基本功能成份, 該系統(tǒng)具有 3 個基本功能成分: 客戶管理, 系統(tǒng)設置,數(shù)據(jù)查詢。(2) 根據(jù)分析,導出系統(tǒng)的功能模塊圖。(3)設計數(shù)據(jù)庫。使用 Microsoft Access創(chuàng)建數(shù)據(jù)庫。確定數(shù)據(jù)庫中數(shù)據(jù)表 的組成。確定數(shù)據(jù)表中字段的構成、主鍵字段和有關字段的約束條件等。依靠數(shù) 據(jù)表中主鍵字段建立數(shù)據(jù)表之間的關系,并由此建立數(shù)據(jù)表之間的參照完整性約 束。 ( 4)根據(jù)功能確定軟件模塊組成及調(diào)用關系。 3編碼階段 建造模塊,在可視化編程環(huán)境下,按照軟件設計要求制作界面和完成對模塊 的編碼,由此使軟件設計具體化為軟件作品。 .4. 運行

4、維護 在軟件運行時,檢查軟件的不足或錯誤,并進行維護。5編寫課程設計報告( 1)設計題目( 2)任務要求( 3)系統(tǒng)總體方案( 4)各功能模塊和流程圖( 5)心得體會和參考資料 注:學生完成課程設計后,提交課程設計報告及相關電子文檔,要求將前述 全部內(nèi)容依先后順序寫成設計報告一份,要求文字通暢、字跡工整,文字不少于 5000 字,裝訂成冊。 .四、主要技術路線提示五、進度安排序號設計內(nèi)容天數(shù)1分析設計內(nèi)容,給出解決方案32創(chuàng)建數(shù)據(jù)庫及建表33可視化界面設計34對所建數(shù)據(jù)庫進行設計,整理設計思路, 編碼、測試,寫出課程設計報告35指導老師檢查設計結果并做成績評定2總 計14六、推薦參考資料(不少

5、于3篇)1張海藩軟件工程導論,清華大學出版社,20042陳明.實用軟件工程基礎,清華大學出版社,20033殷人昆.實用軟件工程,清華大學出版社,20034宋波.UML面向對象技術與實踐,科學出版社,2004指導教師 _簽名日期 2011年_5_月27 日系主任 _審核日期 2011年6月12 日1前言隨著生產(chǎn)規(guī)模的擴大、自動化技術的應用,以及市場經(jīng)濟體系的培育,使得我 國企業(yè)管理的性質(zhì)和環(huán)境都發(fā)生了巨大的變化。企業(yè)的組織機構更加龐大,管理 功能更為復雜,企業(yè)各部門之間的聯(lián)系越來越緊密,所采用的決策對經(jīng)濟的影響 越來越復雜,因而管理決策問題不僅數(shù)量多,而且復雜程度高,難度大。管理信 息系統(tǒng)在企業(yè)

6、生產(chǎn)、管理中的應用越來越廣泛和重要,一套好的管理信息系統(tǒng)直 接影響到企業(yè)的生存和發(fā)展。云南 999 電池股份有限公司管理信息系統(tǒng)(簡稱 MDMIS,就是針對云南999電池股份有限公司的管理實際開發(fā)的軟件系統(tǒng),以期 對該公司的生產(chǎn)、管理等活動進行科學、高效的管理。 .MDMIS是 一個完整的企業(yè)管理信息系統(tǒng),由多個模塊有機結合而成,包括原輔 材料管理、產(chǎn)成品管理、工資管理、固定資產(chǎn)管理、人事檔案管理、技術檔案管 理、用戶與市場管理、財務管理、成本核算、內(nèi)部銀行微機管理等十多個軟件模 塊。本說明書介紹的是MDMI鋪的產(chǎn)品管理子系統(tǒng)的開發(fā)過程。 為了解決各種客戶和各地客戶的矛盾,出版社的信息化網(wǎng)絡化

7、管理是勢在必 行。因此出版社的客戶管理系統(tǒng)就不可缺少了。2需求分析出版社管理系統(tǒng)是一個龐大的任務,傳統(tǒng)方式會造成巨大的人力和物力資源浪費。我們需要設計一個讓工作人員使用的計算軟件的系統(tǒng),減少工作量,實現(xiàn)出版社 客戶管理的高效化,進行相應的查找、修改、刪除等功能。2 . 1功能分析1.待開發(fā)軟件的功能需求產(chǎn)成品管理信息系統(tǒng)必須能夠完成對公司產(chǎn)成品入庫、出庫數(shù)據(jù)的錄入、更新、 統(tǒng)計、查詢、打印等工作,進行高效、準確的管理。產(chǎn)生以下信息:(1)產(chǎn)品庫存表:隨時(定期/不定期)報告產(chǎn)品庫存情況;(2)產(chǎn)品生產(chǎn)完成情況表:按要求定期/不定期報告產(chǎn)品生產(chǎn)情況;(3)產(chǎn)品出庫情況表:按要求定期/不定期報告產(chǎn)

8、品出庫情況;(4)產(chǎn)品生產(chǎn)、銷售、庫存情況表:按要求報告一定時期內(nèi)產(chǎn)品生產(chǎn)、銷售 和當前庫存情況;以上四表,滿足了企業(yè)生產(chǎn)、銷售、對帳等各方面管理的需要。2 .待開發(fā)軟件的功能按照用戶需求,圖2.1產(chǎn)成品管理系統(tǒng)層次方框圖結合系統(tǒng)需求,對圖1所示的系統(tǒng)功能解釋如下:維護入庫:提供對產(chǎn)成品入庫數(shù)據(jù)的維護(記錄的錄入、歸檔前的數(shù)據(jù)編輯) 功能。維護出庫:提供對產(chǎn)成品出庫數(shù)據(jù)的維護。數(shù)據(jù)歸檔:實現(xiàn)入庫、出庫記錄的數(shù)據(jù)歸檔。要滿足以上功能,我們設計出了產(chǎn)品管理系統(tǒng)的結構。見圖1。統(tǒng)計入庫情況:提供對產(chǎn)成品信息的各種查詢、統(tǒng)計,以及對錯錄產(chǎn)品入庫單 的維護功能,當用戶輸入正確的密碼后,系統(tǒng)允許用戶維護錯

9、錄或數(shù)據(jù)歸檔前未 發(fā)現(xiàn)的錯誤記錄。統(tǒng)計出庫情況:提供對產(chǎn)成品銷售信息的各種查詢、統(tǒng)計,以及對錯錄產(chǎn)品出 廠記錄的維護功能。定期打印入庫情況:顯示/打印任一時期,任一生產(chǎn)階段的各生產(chǎn)車間以及全 公司的產(chǎn)成品生產(chǎn)情況。還可以按用戶要求定期打印反映整個企業(yè)生產(chǎn)的匯總、 明細報表。其中明細報表反映了各生產(chǎn)車間的生產(chǎn)完成情況,匯總報表反映了全 公司的生產(chǎn)完成情況。-定期打印出庫(銷售)情況:對任一時期、任一階段各種產(chǎn)成品的出庫情況進 行報表顯示或打印,以匯總、明細報表反映公司的產(chǎn)成品銷售情況。-顯示/打印庫存情況:統(tǒng)計顯示/打印出截止打印時刻為止的全公司和各產(chǎn)成品 車間的各種產(chǎn)成品的庫存情況。報表分為匯

10、總和明細兩表,以滿足不同的統(tǒng)計和 查詢要求。打印月末倉庫情況:完成全公司和各車間的各種產(chǎn)成品的上月結存數(shù)、本月生產(chǎn)數(shù)、本月出庫數(shù)、本月結存數(shù)的統(tǒng)計、匯總,生成月末結帳表,為生產(chǎn)部門、 物資管理部門、財務部門等相關業(yè)務部門提供考核、對帳、記帳等方面的產(chǎn)成品 信息。-月末處理:提供了對各種產(chǎn)成品數(shù)據(jù)的轉移功能。完成了下月統(tǒng)計、記帳的初 始化工作(如提供上月結存數(shù))。同時,通過分析,我們給出了成品管理系統(tǒng)的頂層數(shù)據(jù)流圖。見圖2。圖2.2產(chǎn)成品管理系統(tǒng)頂層數(shù)據(jù)流圖2.2方案分析設計該系統(tǒng)需要解決的主要問題是對出版社客戶的管理,需要及時的與服務器 進行通信、保持信息及時的動態(tài)更新。該方案主要用 C語言設

11、計實現(xiàn),使用C語言可以在設計時按照結構圖逐次的設計模塊, 并且 C 語言使用起來簡單一點。 該方 案采用瀑布模型建立,因為這個系統(tǒng)的規(guī)模不是很大,采用瀑布模型能更快捷、安 全的進行開發(fā)。 .技術可行性:前面做了詳細的需求分析,大致把握了該教室管理系統(tǒng)的功能及用戶的需 求,另外在該系統(tǒng)之前已有類似的管理系統(tǒng),比如圖書管理系統(tǒng),機票管理系統(tǒng)等在技術方 面開發(fā)人員可以借鑒,所以技術上是可行的。 .經(jīng)濟可行性:軟件的開發(fā),不但要考慮到當前技術的可行性,還要考慮到軟件開發(fā)的成 本/效益,所謂經(jīng)濟可行性,換句話說,也就是說通過成本/效益分析,總結整個軟件的開發(fā)經(jīng)費,以及軟件開發(fā)成功以后,可能給學校帶來的經(jīng)

12、濟效益,把兩者進行權衡,再作認真仔 細的估計,總結整個系統(tǒng)在經(jīng)濟上是否可行。本系統(tǒng)的開發(fā)成本主要包 括計算機軟硬件配置 成本;效益主要包括學校在多媒體教室管理上節(jié)省的人力資源,以及學校信息化建設的要求, 總的來說經(jīng)濟上也是可行的。 .操作可行性分析:雖然該系統(tǒng)是在控制臺上運行的,用戶界面不是很好,但開發(fā)人員作 了大量的提示語句。操作人員不需要 太多的計算機專業(yè)知識,只要懂得計算機的基本操作, 并且對本系統(tǒng)有基本的了解,按照提示語句就可以了,而且本系統(tǒng)會提供給使用者詳盡的使 用說明,也可以對使用者進行短 期的操作培訓,所以,從操作上來講,該教室管理系統(tǒng)是完 全可行的。 .3概要設計本軟件將輔助管

13、理人員完成全公司產(chǎn)成品入庫、出庫、庫存等方面的管理,可 以進行查詢、統(tǒng)計、打印報表等工作,提高公司對產(chǎn)成品的管理效率。在分析階 段,我們已經(jīng)提出了系統(tǒng)的結構、頂層數(shù)據(jù)流圖和數(shù)據(jù)字典。本節(jié)我們將對系統(tǒng) 的硬件環(huán)境作簡要介紹,并對待開發(fā)系統(tǒng)作概要設計。 .3.1數(shù)據(jù)結構3.2邏輯結構與物理結構邏輯結構設計1) 數(shù)據(jù)庫 Sale-Management-name Tablet義如表 3.1 所示。字怒名稱類型字段名名欷類型索引index(unsigned)int單位地址Add comchar 80namechar 20單位郵編Pastcode 0char 10sex單位電話Tel 0char 20單位

14、companychar 80單位傳真Fax 0char 20職位Jobchar 40手機Tel mwchar 14部門departmentchar 70電子郵件E-mailchar 30訂單數(shù)愛Oder Numint備注Conmentchar 500表 3.1 數(shù)據(jù)庫 Sale-Management-name Tab定義2)配置文件:保留上次程序運行結束后的相關狀態(tài)如表3.2所示數(shù)韜庫記錄索引IndexNunriiUINT數(shù)據(jù)庫記錄總數(shù)RecordTotahInt表3.2上次運行結束后的相關狀態(tài)3)全局變量如表3.3所示。字段名名稱類型記錄總數(shù)RecordTotahInt瀏覽J J幀序敢組Br

15、owse:Int Broesemax焦點記錄FicusRecard:Int內(nèi)存記錄緩沖E.E.RecordBuffer Name Add二Name Add RecordBuffer maxStructfInt Index;Char Name20;Char Company80;CharTelnum40;Name Add;放據(jù)i i己錄素引計扌IndexNum:Ul NT表3.3全局變量物理結構設計數(shù)據(jù)庫Sale-Management-nameB勺文件物理結構:采用順序介機構記錄文件數(shù)據(jù)結構與程序的關系*初始化模塊(M1.1):我們將會設置全局變量15;*刷新基本資料模塊(M1.2):利用全局變量

16、3、4的基本信息,有可能訪問 數(shù)據(jù)庫;律刷新詳細資料模塊(M1.3):訪問數(shù)據(jù)庫和全局變量3、4的詳細信息;*關閉系統(tǒng)模塊(M1.4):將全局變量1、5保存至配置文件中;+ 系統(tǒng)功能模塊(M1.5):利用鼠標和鍵盤操作事件;+ 信息添加模塊(M2.1):設置全局變量1、2、4和5;律 信息刪除模塊(M2.2):利用全局變量3和4,設置全局變量1、2和4;*信息修改模塊(M2.3):訪問數(shù)據(jù)庫和全局變量3;卜查詢模塊(M2.4):查詢客戶基本信息;卜客戶權益分配模塊(M2.5):利用全局變量4中的相應數(shù)據(jù);卜客戶類型分配模(M2.6):利用全局變量4、5中的相應數(shù)據(jù);卜接受訂單模塊(M3.1):

17、利用全局變量1中的數(shù)據(jù);卜訂單審核模塊(M3.2):利用全局變量1和5中的信息;卜撤銷訂單模塊(M3.3):完成用戶撤銷訂單的功能;卜修改訂單模塊(M3.4):完成客戶對已交訂單的修改;卜查詢訂單模塊(M3.5):完成查詢客戶訂單的功能;卜發(fā)貨單模塊(M4.1):由公司像生產(chǎn)商發(fā)出訂貨單;卜收款模塊(M4.2):公司向客戶發(fā)出收款請求并收款;卜綜合查詢模塊(M4.3):完成客戶對整個過程的查詢;卜報表生成功能(M5.1):當前記錄生成報表;卜打印功能(M6):利用全局變量2、3和4;卜導入導出模塊(M7):完成對數(shù)據(jù)的導入和導出;卜幫助模塊(M8):為用戶提供隨時的操作幫助;卜密碼管理模塊(M

18、9):完成對用戶密碼的管理;卜身份驗證模塊(M10);完成對用戶身份的驗證,以便分配相應的功能;3.3功能模塊劃分331結構框圖身份驗證消息循環(huán)退岀重新驗證過 通 不失敗正常退出銷售與收款訂單管理綜合查詢收款發(fā)出貨單 查詢訂單 修改訂單撤銷訂單 審核訂單 接收訂單權益分配 客戶類型 信息查詢 信息修改 信息添加3.4結構框圖332程序流圖開始1LDo c:ase結束333模塊功能分析及外部設計模塊編號模塊名稱備注模塊編號模塊名稱備注N1.1初始化模按初始化系統(tǒng)1接受訂單模塊N1.2刷新基本邂料模塊M3. 2訂單審核模塊Ml.Ml. 3 3刷新詳細資料模塊1H3. 3蛾網(wǎng)訂單模塊Hl. 4 1關

19、閉系統(tǒng)模塊關閉并推出系統(tǒng)H3.4修改訂單模塊Ml. 5系統(tǒng)功能模塊恥.5查詢訂單模塊N2.1信息襦加模塊H4.1發(fā)貨單模塊12.2信息刪除模塊K4. 2收款模塊也3 3信息倏改模塊H4. 3綜合查詢模塊M2. 4查詢模塊H5報衰生成功能N2.5客戶楓益分配模塊M6扌兀卩功能M2.M2. 6 6客戶類型分配模塊17導入導出模塊密碼管理模塊13幫助模換110身份驗證模塊用戶驗證身份表4模塊設計功能分配系統(tǒng)控制功能+初始化模塊(M1.1);+刷新基本資料模塊(M1.2);+刷新詳細資料模塊(M1.3);*關閉系統(tǒng)模塊(M1.4);*系統(tǒng)功能模塊(M1.5); 客戶關系管理功能:*信息添加模塊(M2.

20、1);+信息刪除模塊(M2.2);+信息修改模塊(M2.3);律刷新基本資料模塊(M1.2);*刷新詳細資料模塊(M1.3);*查詢模塊(M2.4);*客戶權益分配模塊(M2.5);+客戶類型分配模(M2.6);訂單管理功能:+接受訂單模塊(M3.1);*訂單審核模塊(M3.2);+ 撤銷訂單模塊(M3.3);+ 修改訂單模塊(M3.4);律刷新基本資料模塊(M1.2);律刷新詳細資料模塊(M1.3);+ 查詢訂單模塊(M3.5);銷售與收款功能:+發(fā)貨單模塊(M4.1);+收款模塊(M4.2);+ 綜合查詢模塊(M4.3);+刷新基本資料模塊(M1.2);+刷新詳細資料模塊(M1.3);報表

21、生成功能:*報表生成功能(M5);打印功能:+ 打印功能(M6);導入導出功能:+ 導入導出模塊(M7);幫助功能:+幫助模塊(M8);密碼管理功能:+ 密碼管理模塊(M9);身份驗證功能:*身份驗證模塊(M10);/存放用戶的操作選項3.4 抽象數(shù)據(jù)類定義void input();/信息錄入void output();/信息輸出void amend();/信息修改void Delete();/修改操作void menu();/菜單void search();/查找函數(shù)4詳細設計4.1 數(shù)據(jù)類型定義struct memberint date; / char id15;/char name11;

22、 / int phonenumber15; / ;日期客戶編號客戶姓名最多 5 個漢字電話號碼 最多 5 個漢字4.2主要模塊內(nèi)部設計void main( )int choice;printf(請選擇: );scanf(%d,&choice); /switch(choice)default:exit(0); /case 1:input(); /break ;case 2:output(); /break ;case 3:amend(); /break;case 4:sta(); /break;輸入要執(zhí)行功能的對應數(shù)字調(diào)用結束函數(shù)調(diào)用輸入函數(shù)調(diào)用輸出函數(shù)調(diào)用修改函數(shù)調(diào)用統(tǒng)計函數(shù)printf(nn

23、); menu( );4.2.1 模塊 1 設計 模塊算法void input() / 輸入函數(shù)int i=0;char ch=kk;FILE *fp;fp=fopen(D:WORKERINFOR-1.rec,ab+);menu( ); while(1) nn);while(i=99) printf( 掛號信息已錄滿 !n); fclose(fp); 流程圖儲存字符丫丫/ /N保證成功打開文422模塊2設計void output() /輸出函數(shù)int i=0;char ch; /FILE *fp;fp=fope n(D:WORKERINFOR-1.rec,rb);

24、while(!fp)/件一fp=fope n(D:WORKERINFOR-1.rec,rb);/ 保 證成功 打開文件printf(-n); .printf( 客戶編號 客戶姓名 日期 電話號碼 客戶費用 n); printf(.n); -while(fread(&numi,sizeof(numi),1,fp)=1)if(strcmp(, ) / 避免因刪除了某條記錄而造 成的最后一條記錄重復操作一次 .printf( %s %s %d %dn,numi.id,,numi.date,numi.phonenumber,numi.fee);

25、 .i+;doprintf( 返回主菜單( Y/N):);getchar(); / 跳過回車符 ch=getchar();if(ch=y|ch=Y) break;else exit(0);while(1);4.2.3 模塊 3 設計void sta() / 統(tǒng)計函數(shù)int i=0,count=0;/ count 統(tǒng)計人數(shù)char ch; / 接受回車符 float feesum=0; / numbersum 表示本日客戶費用 FILE *fp; fp=fopen(D:WORKERINFOR-1.rec,rb); while(!fp)fp=fopen(D:WORKERINFOR-1.rec,rb

26、); .while(fread(&numi,sizeof(numi),1,fp)=1)if(strcmp(,) / 避免因刪除了某條記錄而造成的 最后一條記錄重復操作一次 .nfeesum=feesum+numi.fee;count+;i+;printf( 本日總的客戶費用: %d 總人數(shù): %dn,feesum,count); doprintf( 返回主菜單( Y/N):);getchar(); / 跳過回車符 ch=getchar();if(ch=y|ch=Y) break;else exit(0);while(1);void amend() / 修

27、改函數(shù)int i=0,choose; / 存放修改項char NAME11;FILE *fp;fp=fopen(D:WORKERINFOR-1.rec,rb+);while(!fp) / 保證成功打開文件 fp=fopen(D:WORKERINFOR-1.rec,rb+);printf( 輸入將要修改的客戶編號: ); scanf(%s,&NAME);while(fread(&numi,sizeof(numi),1,fp)=1)if(!strcmp(,NAME) printf( 修 改 選 項 : 1、客戶編號2、客戶姓名3、日期4、電話號碼10、費用n請選擇:); scan

28、f(%d,&choose);switch(choose)case 1: printf( 客 戶 編 號: );scanf(%s,&numi.id);break;case 2: printf( 客 戶 姓 名: );scanf(%s,&);break;case 3: printf( 日 期: );scanf(%f,&numi.date);break;case 4: printf( 電 話 號 碼: );scanf(%d,&numi.phonenumber);break;case 5: printf( 客 戶 費 用: );scanf(%f,&numi.fee);break; d

29、efault: printf( 輸入錯誤! n); break;fseek(fp,-68L,1);fwrite(&nu mi,sizeof( nu mi),1,fp);printf(n該掛號信息修改成功! ! n);break;i+;fclose(fp);5實現(xiàn)與調(diào)試分析5.1實現(xiàn)環(huán)境硬件:裝有 Windows XP的微型計算機。軟件:Microsoft Visual C+6.0 。5.2語言選擇C語言5.3調(diào)試分析一個好的程序員不應該把所有的判斷交給編譯器和調(diào)試器,應該在程序 中自己加以程序保護和錯誤定位,具體措施包括:對于所有有返回值的函數(shù),都應該檢查返回值,除非你確信這個函 數(shù)調(diào)用絕對不

30、會出錯,或者不關心它是否出錯。 一些函數(shù)返回錯誤,需要用其他函數(shù)獲得錯誤的具體信息。例如 accept返回INVALID_SOCKET 表示accept失敗,為 了查 明 具體 的失敗原因,應 該立刻用 WSAGetLastError獲得錯誤碼,并 針對性的解決問題。有些函數(shù)通過異常機制拋出錯誤,應該用TRY-CATCH語句來檢查 錯誤*程序員對于能處理的錯誤,應該自己在底層處理,對于不能處理的, 應該報告給用戶讓他們決定怎么處理。如果程序出了異常, 卻不 對返回值和其他機制返回的錯誤信息進行判斷,只能 是加大了找錯 誤的難度。*另外:VC中要編制程序不應該一開始就寫cpp/h文件,而應該首

31、先創(chuàng)建一個合適的工程。因為只有這樣,VC才能選擇合適的編譯、 連接 選項。對于加入到工程中的cpp文件,應該檢查是否在第一 行顯式的 包含stdafx.h 頭文件,這是Microsoft Visual Studio 為了 加快編譯 速度而設置的預編譯頭文件。在這個#“elude stdafx.h 行前面的所有代碼將被忽略,所以其他頭文件應該在這一行后面被 包含。對于.c文件,由于不能包含stdafx.h ,因此可以通過 Project settings 把它的預編譯頭設置為 不使用”,方法是: 彈出 Project sett in gs對話框*選擇C/C+ Category 選擇 Precom

32、pilation Header選擇不使用預編譯頭。6測試分析測試結果測試1:名稱:系統(tǒng)操作登錄測試目的:測試系統(tǒng)操作界面。內(nèi)容:帳號口令輸入、合理性檢查、合法性檢查,系統(tǒng)操作界面 顯示控制輸入 數(shù)據(jù):(賬號)admin (密 碼)123456預期輸出結果:用戶界面(提供功能選擇);測試結果測試2 :名稱:1號功能測試目的:測試系統(tǒng)1號功能。內(nèi)容:輸入功能鍵1,客戶信息輸入輸入數(shù)據(jù):1( 1號功能選項)預期輸出結果:按一定的格式完整的輸入所有客戶基本信息;測試結果測試3 :名稱:2號功能測試目的:測試系統(tǒng)2號功能。內(nèi)容:輸入功能鍵 2,系統(tǒng)界面的 顯示 輸入數(shù)據(jù): 2( 2號功能 選項), 5(

33、課程編 號) 預期 輸出 結果 :5: 顯示 輸入 客戶 信息 ;測試 結果 測試 4 :名稱 :3 號功能 測試 目的 :測 試系 統(tǒng) 3 號功能 。內(nèi)容:輸入功能鍵 3,輸入學號和 課程編號,記錄保存 輸入數(shù)據(jù): 3( 3號功能 選項)修改信息預期 輸出 結果 :修 改 指定 用戶 信息 ;6.1 測試用例|請選擇: 1 客戶 編 號: 01 客戶姓名: a 日 期 : 111 電話號碼: 123 該信息已錄完,請錄入下一個客戶信息!客戶 編 號: 02 客戶姓名: b 日 期 : 111 電話號碼: 124 該信息已錄完,請錄入下一個客戶信息!客戶 編 號: kk |6.2測試結果請選擇

34、: 1 客戶 編 號: 1 客戶姓名: 1 日 期 : 111電話號碼: 111客戶費用: 11該掛號信息已錄完,請錄入下一個客戶信息 | 請選擇:2客戶編號 客戶姓名 日期 電話號碼01 a 111 12302 b 111 124 返回主菜單( Y/N):y!請選擇: 3 輸入將要查找的客戶編號: 01 客戶編號 客戶姓名 日期 電話號碼01 a 111 123 請選擇: 4輸入將要修改的客戶編號: 01 修改選項:1 、客戶編號 2 、客戶姓名 3 、日期 4 、電話號碼 請選擇:2客 戶 姓 名: c該信息修改成功!|請選擇: 5 輸入將要刪除的客戶編號: 02該信息刪除成功!6.3性能

35、分析故障處理要求 :對于該學生選課系統(tǒng),用戶提出的故障可能有:軟件無法安裝或者軟件停止運行 以及此時應該采取什么措施恢復數(shù)據(jù)。 .當軟件無法安裝時,可以查看幫助手冊,安裝相關軟件或者修復受損文件。 當軟件停止運行時,強行關機重啟后,可以根據(jù)系統(tǒng)的自動備份或者在操作之前 的手工備份來恢復數(shù)據(jù),保證系統(tǒng)數(shù)據(jù)的正確性。 .安全性要求 :因為學生選課系統(tǒng)關系到學校及學生的重要成績信息,所以對于學校而言對安全 保密性的要求非常嚴格,此系統(tǒng)是面向所有的在校學生及老師,大多數(shù)人都不是 專業(yè)的計算機操作人員,因此對該系統(tǒng)使用的方便性要求也較高 .可擴充性要求 : 任何軟件都有缺陷,對于學生選課系統(tǒng)但學校的需求

36、發(fā)生變化時,增加一個新的 功能模塊,要求系統(tǒng)能夠很好地對其進行擴充,既可補充性。 .可維護性要求 : 當操作系統(tǒng)平臺發(fā)生變化或者支持軟件學生信息管理系統(tǒng)發(fā)生變化時,為了適應 這些變化必需對系統(tǒng)進行維護,即要求有可維護性。 .7 用戶手冊管理員登陸 : 1. 輸入客戶信息 2. 顯示客戶 3. 修改客戶信息 4. 統(tǒng)計本日費用總結由于是第一次開發(fā)一個完整的程序,所以許多工作都在摸索著進行,在我們的貴 老師的幫助下,我與我們組的成員的共同努力下, 完成了程序規(guī)定的功能要求。本系統(tǒng)采用當前流行的面向對象的開發(fā)工具一 VB來完成整個系統(tǒng)的設計,在數(shù)據(jù) 庫的設計上利用了 SQL的便利性和實用性。本系統(tǒng)具

37、有相當?shù)膶嵱霉δ?。在查詢方面,系統(tǒng)實現(xiàn)了多條件任意字段的模糊查 詢,同時在分類查詢上實現(xiàn)了動態(tài)生成。系統(tǒng)在設計過程中不可避免地遇到了各 種各樣的問題,由于整個系統(tǒng)完全都是由個人設計的,有關 VB許多細節(jié)問題都要 靠自己去摸索,加之本人水平有限,并沒有完全地理解VB和SQL的強大功能,而且還存在著許多不足之處。由于時間關系,系統(tǒng)功能實現(xiàn)不夠完善,使用不是很方便。參考文獻1張海藩.軟件工程導論.北京: 清華大學出版社,20042陳明實用軟件工程基礎. 北京:清華大學出版社,20033殷人昆. 實用軟件工程 .北京: 清華大學出版社,2003/ EWM.cpp : 定義控制臺應用程序的入口點/*#i

38、nclude stdafx.hint _tmain(int argc, _TCHAR* argv)return 0;*/#include#include#include#includestruct member char date9;/ 日期char id15;/ 客戶編號charname11;/ 客戶姓名最多 5 個漢字int phonenumber; / 電話號碼;typedef struct member member;membernum100; / 定義了一個 100個元素的結構體數(shù)組 (最多 100個)/ 存放用戶的操作選項#define InputNum 20int count1=

39、0,count2=0;/*函數(shù)聲明*void input();/信息錄入void output();/信息輸出void amend();/信息修改void Delete();/修改操作void menu();/菜單void search();/查找函數(shù)/*主函數(shù) *決*void main( )int choice;menu( );while(1)printf(請 選 擇 :);scanf(%d,&choice); / 輸入要執(zhí)行功能的對應數(shù)字 switch(choice) default: exit(0); / 調(diào)用結束函數(shù)case 1:input(); / 調(diào)用輸入函數(shù)break ;case

40、 2: output(); / 調(diào)用輸出函數(shù)break ;case3:search();break;case 4: amend();/調(diào)用修改函數(shù)break;case 5: Delete();/調(diào)用刪除函數(shù)break;printf(nn);menu( );/* 功能函數(shù) * void menu() / 菜單函數(shù)出版社客戶管理系統(tǒng).|n);printf(printf(|n);printf(1.客戶信息錄入|n);printf(2.客戶信息瀏覽|n);printf(3.查找客戶信息|n);printf(4.客戶信息修改|n);printf(5.刪除用戶|n);printf(0.退出|n);prin

41、tf(INFOR-1.rec,ab+);號:);|n);void input() / 輸入函數(shù) int i=0;char ch=kk;FILE *fp; fp=fopen(D:WORKERwhile(i=99) printf( 信fclose(fp);int i=0;char ch; / 儲存FILE *fp; fp=fopen(D:WORKERwhile(!fp)fp=fopen(D:WORKERprintf( 客戶編號 客printf( -fwrite(&numi,sizeof(numi),1,fp);count1=i;printf( 該 信 息 已錄完,請錄入下一個客戶信息! nn);息

42、已錄滿 !n);void output() / 輸出函數(shù)字符 Y/NINFOR-1.rec,rb);/ 保證成功打開文件 .INFOR-1.rec,rb);/printf(%d,sizeof(member);printf(-n);戶姓名 日期 電話號碼 n);n);while(fread(&numi,單(丫丫/ /N):););/ 跳過回車符break;sizeof(numi),1,fp)=1)if(strcmp(, ) / 避免因刪除了某條記錄而造成的最后一條記錄重復操 作一次 /coutnumi.idnumi.date numi.phonenumber;.printf(%s %s %s %dn,numi.id,,numi.date,numi.pho nenumber); i+;doprintf( 返 回 主 菜getchar();ch=getchar();if(ch=y|ch=Y)else exit(0);while(1);int i=0; /存放修改void

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論