軟件工程實驗四個實驗_第1頁
軟件工程實驗四個實驗_第2頁
軟件工程實驗四個實驗_第3頁
軟件工程實驗四個實驗_第4頁
軟件工程實驗四個實驗_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 武漢輕工大學 軟件工程實驗報告 院系: 數(shù)學和計算機學院班級: 軟件工程1504 姓名: 趙佳璐 學號: 1508100065 實驗一 結(jié)構(gòu)化分析實驗 1實驗?zāi)康模?通過此實驗了解結(jié)構(gòu)化分析的特點和步驟,以及結(jié)構(gòu)化分析所采用的基本圖形工具。 2.實驗內(nèi)容: 假設(shè)你在一所職業(yè)高中工作,負責該校信息系統(tǒng)的建設(shè)和維護。財務(wù)科長請你研究用學校擁有的pc機生成工資明細表和各種財務(wù)報表的可能性。 3.實驗要求: 1 問題定義:請在這個階段描述你需要解決的問題。包括用戶面臨的問題和預(yù)期的項目規(guī)模。最后生成一份問題定義報告書。 2 可行性研究:在這個階段產(chǎn)生處理工資事務(wù)的大致過程,畫出高層邏輯模型,并且畫出

2、相應(yīng)的數(shù)據(jù)流圖,建立數(shù)據(jù)字典。 3 對此系統(tǒng)進行成本效益分析。 4.實驗步驟: 4.1問題定義報告書 1.項目名稱:工資支付 2.問題描述: 該校一直由會計人工計算工資并編制財務(wù)報表,隨著學校規(guī)模擴大工作量也越來越大。目前每個月都需要兩名會計緊張工作半個月才能完成,不僅效率低而且成本高。今后學校規(guī)模將進一步擴大,人工計算工資的成本還會進一步提高。 3.項目目標: 1) 研究開發(fā)費用較低的新工資支付系統(tǒng)的可能性。 4項目規(guī)模: 1) 開發(fā)成本應(yīng)該不超過7.2萬元 5.初步設(shè)想: 1) 用學校自己的計算機系統(tǒng)生成工資明細表和財務(wù)報表 6. 可行性研究: 為了更全面地研究工資支付項目的可能性,建議進

3、行大約歷時兩周的可行性研究。這個研究的成本不超過4000元。 4.2可行性研究: 1. 處理工資事務(wù)的大致過程 : 1) 每月月末教師把他們當月實際授課時數(shù)登記在課時表上,由各系匯總后交給財務(wù)科,職工把他們當月完成承包任務(wù)的情況登記在任務(wù)表上,匯總后交給財務(wù)科。 2) 兩名會計根據(jù)這些原始數(shù)據(jù)計算每名教職工的工資,編制工資表、工資明細表和財務(wù)報表。然后,把記有每名教職工工資總額的工資表報送銀行。 3) 由銀行把錢打到每名教職工的工資存折上,同時把工資明細表發(fā)給每名教職工。 2高層邏輯模型: 會計D1:課時表和任務(wù)表1.1審核數(shù)據(jù)1.2加工事務(wù)數(shù)據(jù)事務(wù)數(shù)D:工資明細表事務(wù)數(shù)據(jù)2匯總數(shù)事務(wù)數(shù)D:財

4、務(wù)報表銀行 3.數(shù)據(jù)流圖: 教1.1登D:課時授課時1.2匯總D2:任務(wù)表承包任務(wù)完成情2.1計算工2.2編制表課時表任務(wù)D:工資D:工資明細表 D5:財務(wù)報表銀發(fā)工職分發(fā)工資明細職教師 4.數(shù)據(jù)字典: 1) 名字:授課情況登記表 別名: 描述:記錄每個教師的當月完成的課時及任務(wù)。 定義:授課情況登記表=教職工編號+姓名+職務(wù)+職稱+基本工資+生活補貼+書報費+交通費+洗理費 位置:輸出到打印機 2) 名字:教職工編號 別名: 描述:唯一的標識一個教職工 定義:教職工編號=8字符8 位置:授課情況登記表 3) 名字:每個人當月的實發(fā)工資數(shù) 別名: 描述:記錄每個教師當月應(yīng)發(fā)的工資數(shù) 定義:每個

5、人當月的實發(fā)工資數(shù)=課時費+崗位津貼-個人所得稅-住房公積金-保險費 位置:工資明細表 4) 名字:工資明細表 別名: 描述:記錄每個教職工每個月應(yīng)得的和應(yīng)扣除的費用 定義:工資明細表=每個人當月的實發(fā)工資數(shù)+課時費+崗位津貼+個人所得稅+住房公積金+保險費 位置:輸出到打印機 4.3成本效益分析: 1.低成本系統(tǒng): 解決方案: 把每月發(fā)一次工資改為每兩個月發(fā)一次工資,則人工計算工資的成本大約可減少一半,即每年可節(jié)省1.2萬元。除了已經(jīng)進行的可行性研究的費用外,不再需要新的投資。 優(yōu)缺點: 1) 違反常規(guī); 2) 教職工反對; 3) 不能解決根本問題,隨著學校規(guī)模擴大,人工處理工資事務(wù)的費用也

6、將成比例地增加。 2.中等成本系統(tǒng): 解決方案: 1) 建議基本上復制現(xiàn)有系統(tǒng)的功能:課時表和任務(wù)表交到處理工資事務(wù)的專用機房,操作員把這些數(shù)據(jù)通過終端送入計算機 2) 數(shù)據(jù)收集程序接收并校核這些事務(wù)數(shù)據(jù),把它們存儲在磁盤上。 3) 然后運行工資支付程序,這個程序從磁盤中讀取事務(wù)數(shù)據(jù),計算工資,打印出工資表、工資明細表和財務(wù)報表。 優(yōu)缺點: 1) 效率介于高成本系統(tǒng)與低成本系統(tǒng)之間,開發(fā)成本也是如此。 2) 仍然需要專門人員來操作管理系統(tǒng),每年仍要在這方面耗費人力,資力。從長久利益來看,效益不佳。 3.高成本系統(tǒng): 1) 建立一個中央數(shù)據(jù)庫,為開發(fā)完整的管理信息系統(tǒng)做好準備,并且把工資支 付系

7、統(tǒng)作為該系統(tǒng)的第一個子系統(tǒng)。 2) 這樣做開發(fā)成本大約將增加到12萬元,然而從工資支付這項應(yīng)用中獲得的經(jīng)濟效益并不變。 最佳方案: 綜合以上三個系統(tǒng)的優(yōu)缺點,中成本系統(tǒng)是最適合的。草擬開發(fā)計劃如下: 階段 需要用的時間(月) 可行性研究 0.5 需求分析 1.0 概要設(shè)計 0.5 詳細設(shè)計 1.0 實現(xiàn) 2.0 總計 5.0 實驗二 結(jié)構(gòu)化設(shè)計實驗 1.實驗?zāi)康模?能夠通過結(jié)構(gòu)化分析的結(jié)構(gòu)進行設(shè)計,了解設(shè)計過程中的模塊化原理。 2.實驗內(nèi)容: 在上一次實驗已經(jīng)用結(jié)構(gòu)化分析方法詳細地分析了這個工資支付系統(tǒng),請從結(jié)構(gòu)化分析所得到的結(jié)果(完整數(shù)據(jù)流圖),判斷為事務(wù)流或是變換流,采用模塊化的方法,設(shè)計

8、工資支付系統(tǒng)的結(jié)構(gòu)。最終生成一個工資支付軟件結(jié)構(gòu)。 3.實驗要求: 寫出設(shè)計過程、畫出工資支付軟件結(jié)構(gòu),用層次圖表現(xiàn) 4.實驗步驟: 4.1設(shè)計過程: 1. 供選擇的方案 1) 低成本系統(tǒng):把每月發(fā)一次工資改為每兩個月發(fā)一次工資,則人工 計算工資的成本大約可減少一半,即每年可節(jié)省1.2萬元。除了已經(jīng)進行的可行性研究的費用外,不再需要新的投資。 2) 中成本系統(tǒng): i. 建議基本上復制現(xiàn)有系統(tǒng)的功能:課時表和任務(wù)表交到處理工資事務(wù)的專用機房,操作員把這些數(shù)據(jù)通過終端送入計算機 ii. 數(shù)據(jù)收集程序接收并校核這些事務(wù)數(shù)據(jù),把它們存儲在磁盤上。 iii. 然后運行工資支付程序,這個程序從磁盤中讀取事

9、務(wù)數(shù)據(jù),計算工資,打印出工資表、工資明細表和財務(wù)報表。 3) 高成本系統(tǒng):建立一個中央數(shù)據(jù)庫,為開發(fā)完整的管理信息系統(tǒng)做好準備,并且把工資支付系統(tǒng)作為該系統(tǒng)的第一個子系統(tǒng)。 2. 最佳方案 低成本系統(tǒng)存在的問題: 4) 違反常規(guī); 5) 教職工反對; 6) 不能解決根本問題,隨著學校規(guī)模擴大,人工處理工資事務(wù)的費用也將 成比例地增加。 高成本系統(tǒng): 開發(fā)成本大約將增加到12萬元,然而從工資支付這項應(yīng)用中獲得的經(jīng)濟效益并不變。 所以,中等成本系統(tǒng)是最佳方案,成本居于高成本與低成本之間,而效益不次于高成本系統(tǒng)。 3. 功能分解 1) 取數(shù)據(jù) a) 收集事務(wù)數(shù)據(jù) b) 審核事務(wù)數(shù)據(jù) 2) 計算工資

10、a) 計算正常工資 b) 計算超額工資 c) 更新年度報表 3) 打印表格 4.2工資支付軟件結(jié)構(gòu):計算教職工工取數(shù)計算工印表收集事務(wù)數(shù)審核事務(wù)數(shù)計算正常工計算超額課時更新年度數(shù)據(jù) 實驗三 軟件測試實驗(2學時) 一、 實驗?zāi)康模?了解軟件測試的基本概念,以及黑盒、白盒測試的基本過程。 二、 實驗內(nèi)容: 1. 設(shè)計測試下列函數(shù)的測試方案: 函數(shù)Search(somearray,size,value)的功能是,在一個整數(shù)數(shù)組somearray中搜索一個值為value的整數(shù),如果數(shù)組中有這個數(shù),則函數(shù)值等于該數(shù)的下標,否則函數(shù)值等于-1。數(shù)組的長度由參數(shù)size指定。假定數(shù)組第一個元素的下標為1。

11、 三、 實驗要求 1 采用黑盒測試的方法,寫出相應(yīng)的測試用例 2 用c語言實現(xiàn)此函數(shù),并且由此設(shè)計白盒測試方案(選做)。 四、 實驗步驟: 1. 采用黑盒測試的方法,寫出相應(yīng)的測試用例(假定數(shù)組中的值為:5,8,-56,235,-65,449) 1) 等價劃分: a) 有效輸入的等價類: ?一個正輸入:10 預(yù)期的輸出:-1 ?一個負輸入:-預(yù)期的輸出:3 b) 無效輸入的等價類: ?一個非數(shù)字輸入:S 輸出:錯誤無效輸入 ?一個浮點型輸入:23.1 預(yù)期的輸入:錯誤無效的輸入 ?若干個輸入: ' 預(yù)期的輸出:錯誤無效的輸入 ?空輸入: 預(yù)期的輸出:錯誤沒有輸入 ?數(shù)字和非數(shù)字符號的輸

12、入:5# 預(yù)期的輸出:錯誤無效的輸入 ?負號與最高位數(shù)字之間有輸入:- 56 預(yù)期的輸出:錯誤無效的輸入 c) 合法輸入的等價類: ?在計算機能表示的最小負整數(shù)和零之間的負整輸入:-100預(yù)期的輸出:-1 ?零 輸入:0 預(yù)期的輸出:-1 ?在零和計算機能表示的最大整數(shù)之間的正輸入:100預(yù)期的輸出:-1 d) 非法輸入的等價類: ?比計算機能表示的最大正整數(shù)還大的正整輸入:132767 預(yù)期的輸出:錯誤無效的輸入 ?比計算機能表示的最小負整數(shù)還小的負整輸入:-47561 預(yù)期的輸出:錯誤無效的輸入 2) 邊界值分析: ?使輸出剛好等于最小的輸入:5 預(yù)期的輸出:1 ?使輸出剛好等于最大的輸入

13、:4預(yù)期的輸出:6 ?使輸出不是數(shù)組的下標(這里為-輸入:500 預(yù)期的輸出:-1 2. 用c語言實現(xiàn)此函數(shù),并且由此設(shè)計白盒測試方案(選做)。 #include<stdio.h> int Search(int somearray,int size,int value) for(int i=1;i<=size;i+) if(sonearrayi=value) return i; return -1; void main() int size=6; int value; int arraysize=5,8,-56,235,-65,449; do printf(“請輸入一個整數(shù):

14、”); scanf(“%d”,&value); while(int(value)!=value); if(int(value)=value) Search(array,size+1,value); 開始輸入一個整數(shù)valuevalue是整數(shù)嗎?Search(soneArray,size+1,value)是否int i=1i<=size嗎sonearrayi=alu嗎return 是i+否結(jié)束否 1) 語句覆蓋: value=8,覆蓋路徑:abcdefgifghj 2) 判定覆蓋: Value=8.,覆蓋路徑:abcdefgifghj Value=8.5,覆蓋路徑:abckb Va

15、lue=10,覆蓋路徑:abcdefgifk 實驗四 面向?qū)ο蠓治觯?學時) 實驗?zāi)康模?通過采用面向?qū)ο蟮姆椒▽栴}進行分析,建立系統(tǒng)的對象模型和功能模型。動態(tài)模型為選作內(nèi)容。 實驗內(nèi)容: 某醫(yī)生開了一家牙科診所。他有一個牙科助手、一個牙科保健員和一個接待員。醫(yī)生需要一個軟件系統(tǒng)來管理預(yù)約。 當病人打電話預(yù)約時,接待員將查閱預(yù)約登記表,如果病人申請的就診時間與已定下的預(yù)約時間沖突,則接待員建議一個就診時間以安排病人盡早得到診治。如果病人同意建議的就診時間,接待員將輸入約定時間和病人的名字。系統(tǒng)將核實病人的名字并提供紀錄的病人數(shù)據(jù),數(shù)據(jù)包括病人的病歷號等。在每次治療或清洗后,助手或保健員將標記

16、相應(yīng)的預(yù)約診治已經(jīng)完成,如果有必要,安排病人下一次再來。 系統(tǒng)能夠按病人姓名和日期進行查詢,能夠顯示記錄的病人數(shù)據(jù)和預(yù)約信息。接待員可以取消預(yù)約,可以打印出前兩天預(yù)約尚未接診的病人清單。系統(tǒng)可以從病人記錄中獲知病人的電話號碼。接待員還可以打印出關(guān)于所有病人的每天和每周的工作安排。 實驗要求: 1 建立牙科診所管理系統(tǒng)的對象模型 2 用數(shù)據(jù)流圖建立牙科診所管理系統(tǒng)的功能模型。 3 寫出牙科診所管理系統(tǒng)的腳本(選作)。 4 畫出牙科診所管理系統(tǒng)狀態(tài)圖(選作)。 實驗步驟: 1. 建立牙科診所管理系統(tǒng)的對象模型 +打電話預(yù)約() : void+是否接受建議() : bool-姓名 : string病

17、人+接聽電話() : void+查閱預(yù)約登記表() : bool+建議就診時間() : object+預(yù)約登記() : void+取消預(yù)約() : bool+打印預(yù)約尚未接診的病人清單() : void+打印工作安排() : void-姓名 : string接待員-姓名 : string-預(yù)約時間 : object-病歷號 : int預(yù)約登記表11*1+核實病人名字() : bool+提供病人數(shù)據(jù)() : int+查詢預(yù)約信息() : void+顯示信息() : void-病歷號 : int-病人姓名 : string-預(yù)約日期 : object-病人聯(lián)系方式 : string診所管理系統(tǒng)*標

18、記預(yù)約診治已完() : boo安排病人下次會() : voi姓 : strin牙科助標記預(yù)約診治已完() : boo安排病人下次會() : voi姓 : strin牙科保健OR* 2. 用數(shù)據(jù)流圖建立牙科診所管理系統(tǒng)的功能模型。 預(yù)約2.2建議就診時間3同意就診時間病人D1:預(yù)約登記表1預(yù)約信息2.1接收預(yù)約信息接待員 預(yù)約信息就診時間就診時間4輸入約定時間和病人姓名預(yù)約系統(tǒng)5.1核實病人姓名5.2提供病人數(shù)據(jù)D1:預(yù)約登記表牙科助手牙科保健員預(yù)約系統(tǒng)D1:預(yù)約登記表6.1標記預(yù)約診治已完成6.2安排病人下次會診 3. 寫出牙科診所管理系統(tǒng)的腳本(選作)。 4. 畫出牙科診所管理系統(tǒng)狀態(tài)圖(選作)。 預(yù)約管理系統(tǒng)的正常情況腳本 ? 系統(tǒng)請接待員輸入病人預(yù)約信息 ? 系統(tǒng)查詢該病人是否已預(yù)約過 ? 如果預(yù)約過,且時間沖突,提示接待員建議一個合適的時間 ? 病人接受建議的時間or如果沒有預(yù)約過,系統(tǒng)提

溫馨提示

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

評論

0/150

提交評論