軟件工程畫圖題

目錄

1.大綱

2.數據流圖

3.程序流圖

4.流圖

5.ER圖

6.層次圖

7.結構圖

8.盒圖

9.狀態轉換圖

10.類圖

11.用例圖

12.活動圖

13.判定表和判定樹

14.基本路徑測試過程(白盒測試)

15.等價類劃分(黑盒測試)


1.大綱

(1).數據流圖

(2).程序流圖??

(3).流圖

(4).ER圖

(5).層次圖(H圖)

(6).結構圖

(7).盒圖

(8).狀態轉換圖

(9).類圖

(10).用例圖

(11).活動圖

(12).判定表和判定樹

(13).基本路徑測試過程(白盒測試)

(14).等價類劃分法(黑盒測試)

2.數據流圖

基礎知識:

練習題1:

某證券交易所為了方便提供證券交易服務,欲開發一證券交易平臺,該平臺的主要功能如下:

1) 開戶。根據客戶服務助理提交的開戶信息,進行開戶,并將客戶信息存入客戶記錄中,賬戶信息(余額等)存入賬戶記錄中。

2) 存款。客戶可以向其賬戶中存款,根據存款金額修改賬戶余額。

3) 取款。客戶可以從其賬戶中取款,根據取款金額修改賬戶余額。

4) 證券交易。客戶和經紀人均可以進行證券交易(客戶通過在線方式,經紀人通過電話),將交易信息存入交易記錄中。

5) 檢查交易。平臺從交易記錄中讀取交易信息,將交易明細返回給客戶。

步驟:

1) 先確定系統的源點和終點,構建頂層DFD。 ? ? ? ?

2) 對頂層DFD圖一級細化 ? ? ? ?

?3) 根據需要,逐層細化

(1).頂層圖

(2).一級細化圖

練習題2:

銀行計算機儲蓄系統的工作過程大致如下:儲戶填寫的存款單或取款單由業務員輸入系統,如果是存款則系統記錄存款人姓名、住址(或電話)、身份證號碼、存款類型、存款日期、到期日期、利率及密碼等信息,并打印出存單給儲戶;如果是取款而且存款時留有密碼,則系統首先核對儲戶密碼,若密碼正確或存款時未留密碼,則系統計算利息并打印出利息清單給儲戶。請用數據流圖描繪本系統的功能。

(1).頂層圖

(2).一級細化圖

(3).二級細化圖

3.程序流圖

基礎知識:

練習題1:

repeat:if x>0 then x1else x2 end if;s1if y>0 then y1if z>0 then z1else z2 end ifelse y2end ifuntil      

程序流圖:

練習題2:

START
IF p THENWHILE q DO fEND DOELSEBLOCKgnEND BLOCK
END IF
STOP

程序流圖:

4.流圖

一般都是根據程序流圖繪制流圖。

程序流圖可能是題目提供,也有可能是需要自已手繪的。

步驟是:

1.把程序流圖轉換成圈

2.合并單進單出的

3.合并

環形復雜度:判斷點數+1

5.ER圖

基礎知識:

例題1:

管理員有四個屬性,id,管理員名稱,管理員賬號,管理員密碼;角色有兩個屬性,角色id,角色名稱;權限有三個屬性,權限id,權限名稱,URL

ER圖:

6.層次圖

基礎知識:

層次圖的設計理念是:系統-子系統-模塊-功能

例題:

我們研究所計劃建設一個航天實驗教學管理系統,這個系統下設實驗儀器管理、實驗記錄管理、實驗報告管理。實驗儀器管理下面有增刪改查儀器,實驗記錄管理下面有增刪改查記錄,實驗報告管理下面有增刪改查報告。

層次圖:

7.結構圖

基礎知識:

結構圖的設計理想:系統-子系統-模塊-功能-具體功能

其實就是在層次上把功能細化

另外多了一個數據傳輸

例題:

我們研究所計劃建設一個航天實驗教學管理系統,這個系統下設實驗儀器管理、實驗記錄管理、實驗報告管理。實驗儀器管理下面有增刪改查儀器,實驗記錄管理下面有增刪改查記錄,實驗報告管理下面有增刪改查報告。

結構圖:

8.盒圖

基礎知識:

例題1:

START
IF p THENWHILE q DO fEND DOELSEBLOCKgnEND BLOCK
END IF
STOP

盒圖

例題2:

repeat:if x>0 then x1else x2 end if;s1if y>0 then y1if z>0 then z1else z2 end ifelse y2end ifuntil      

盒圖:

9.狀態轉換圖

基礎知識點:

原理:

1.從實心起點出發

2.畫出各個狀態

3.狀態轉移方式

例題1:

復印機的工作過程大致如下:未接到復印命令時處于閑置狀態,一旦接到復印命令則進入復印狀態,完成一個復印命令規定的工作后又回到閑置狀態,等待下一個復印命令;如果執行復印命令時發現沒紙,則進入缺紙狀態,發出警告,等待裝紙,裝滿紙后進入閑置狀態,準備接收復印命令;如果復印時發生卡紙故障,則進入卡紙狀態,發出警告,等待維修人員來排除故障,故障排除后回到閑置狀態。試用狀態轉換圖描繪復印機的行為。

狀態轉換圖:

10.類圖

基礎知識:

例題1:

?一個年級有5-10個班級,一個班級有20-40名同學,每個班級有一名班主任,每個班級可能有一名副班主任。

類圖:

例題2:

汽車和自行車都是交通工具,一輛自行車只能歸一個人擁有,但一輛汽車可以歸一個人或者兩個人擁有。一個人可能沒有自行車或汽車,也可能擁有多輛自行車或汽車。每個人都具有年齡和名字。每輛汽車都有自己的顏色和商標。 要求:提取這個問題涉及的類,定義各個類之間的關系,并畫出類圖。

類圖:

11.用例圖

基礎知識點:

思路:

1.確定參與者

2.找到與參與者有關的名詞和動詞組合

例題1:

系統的借閱者為學生和教師,系統為借閱者提供查詢圖書、借閱圖書、歸還圖書的服務。學生最多可借閱5本,教師最多可借閱20本。在借閱和歸還圖書時,要先“驗證借閱者的身份”。歸還圖書時,如果超期,要進行罰款。如果教師想借閱的書已被借空,教師還可以通過預約圖書的服務預約該書,預約后可優先借閱該書。 ? ? 畫出用例圖。

用例圖:

注意:拓展是從被拓展的指向主體

例題2:

1、在每個學期選課開始之前,系統管理員需要對系統中的教師信息、課程信息和學生信息進行維護;學期結束后,將本學期成績歸檔到學籍檔案系統。

2、學生登錄系統后會得到一份本學期將要開設的課程目錄。每門課包含的信息有開課系別、教師、上課時間、教室、容納的學生數量和學生選擇課程的先決條件。

3、當學生選擇了一門課程后,系統需要訪問學籍檔案系統,查詢是否符合選課的先決條件,如果不符合,系統給出提示信息。

4、每個學期有一段時間讓學生可以改變計劃,學生可以在這段時間內訪問聯機系統以增選課程或退選課程。

5、教師可以訪問在線系統,查看自己將要講授哪些課程和每門課程有哪些學生報名,課程考試結束后可以提交成績,系統可以生成帶有成績分析統計結果的成績單供教師打印輸出。

用例圖:

12.活動圖

基礎知識點:

例題1:

下訂單的活動圖

13.判定表和判定樹

基礎知識點:

例題1:

超市中如果某產品的銷量好并且庫存低,則繼續銷售并增加該產品的進貨;如果該產品銷量好,但庫存量不低,則繼續銷售,若該產品銷量不好,但庫存量低,則該產品下架。若該產品銷售不好,且庫存量不低,如果有空貨架則繼續銷售,如果沒有空貨架,則該產品下架。

1.判定表

2.合并后的判定表

3.判定樹

14.基本路徑測試過程(白盒測試)

基礎知識點:

什么是白盒測試:白盒測試頁叫結構測試,是從程序的邏輯結構出發,進行路徑判斷,和覆蓋判斷。

白盒測試技術:語句覆蓋、條件覆蓋、判斷覆蓋

語句覆蓋:走完所有的語句就可以(環型復雜度為幾寫幾)

條件覆蓋:語句覆蓋+走完所有條件

判斷覆蓋:語句覆蓋+走完所有判斷

其他的也是一樣的就是語句覆蓋+完成對應的東西

例題1:

設計下列偽碼程序的語句覆蓋測試用例。

START
INPUT(A,B,C)
IF A>5THEN X=10ELSE X=1
END IF
IF B>10THEN Y=20ELSE Y=2
END IF
IF C>15THEN Z=30ELSE Z=3
END IF
PRINT(X,,Y.2)
STOP

結果:

15.等價類劃分(黑盒測試)

基礎知識點:

例題1:

某城市的電話號碼由三部分組成,這三部分的名稱與內容分別是: ? ? ?

? 地區碼:空白或三位數字 ? ? ?

? 前 ? ?綴:非0或1開頭的三位數字 ? ?

? 后 ? ?綴:四位數字 ? ? ?

假設被測程序能接受一切符合上述規定的電話號碼,拒絕所有不符合規定的號碼。請用等價類劃分法對其進行測試。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/910537.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/910537.shtml
英文地址,請注明出處:http://en.pswp.cn/news/910537.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

H7-TOOL自制Flash讀寫保護算法系列,為華大電子CIU32F003制作使能和解除算法,支持在線燒錄和脫機燒錄使用2025-06-20

說明: 很多IC廠家僅發布了內部Flash算法文件,并沒有提供讀寫保護算法文件,也就是選項字節算法文件,需要我們制作。 實際上當前已經發布的TOOL版本,已經自制很多了,比如已經支持的兆易創新大部分型號&…

go channel用法

介紹 channel 在 Go 中是一種專門用來在 goroutine 之間傳遞數據的類型安全的管道。 你可以把它理解成: 多個 goroutine 之間的**“傳話筒”**,誰往通道里塞東西,另一個 goroutine 就能接收到。 Go 語言采用 CSP(Communicatin…

openLayers切換基于高德、天地圖切換矢量、影像、地形圖層

1、需要先加載好地圖,具體點此鏈接 openLayers添加天地圖WMTS、XYZ瓦片服務圖層、高德地圖XYZ瓦片服務圖層-CSDN博客文章瀏覽閱讀31次。本文介紹了基于OpenLayers的地圖交互功能實現,主要包括以下內容: 地圖初始化:支持天地圖XYZ…

springMVC-15 異常處理

異常處理-基本介紹 基本介紹 1.Spring MVC通過HandlerExceptionResolver處理程序的異常,包括Handler映射、數據綁定以及目標方法執行時發生的異常。 2.主要處理Handler中用ExceptionHandler注解定義的方法。 3.ExceptionHandlerMethodResolver內部若找不到Excepti…

視頻匯聚EasyCVR平臺v3.7.2發布:新增全局搜索、播放器默認解碼方式等4大功能

EasyCVR視頻匯聚平臺帶著全新的v3.7.2版本重磅登場!此次升級,絕非簡單的功能堆砌,而是從用戶體驗、操作效率以及系統性能等多維度進行的深度優化與革新,旨在為大家帶來更加強大、穩定且高效的視頻監控管理體驗。 一、全局功能搜索…

三、kubectl使用詳解

三、kubectl使用詳解 文章目錄 三、kubectl使用詳解1、常用基礎命令1.1 Kubectl命令格式1.2 查詢一個資源1.3 創建一個資源1.4 修改一個資源1.5 刪除一個資源1.6 其他 2、K8s隔離機制Namespace(命名空間作用及使用)2.1 什么是命名空間2.2 命名空間主要作…

JVM內存模型詳解

JVM內存模型詳解 Java虛擬機(JVM)內存模型是理解Java程序運行機制的核心,它定義了程序運行時數據的組織方式和訪問規則。與Java內存模型(JMM)關注并發不同,JVM內存模型主要描述運行時數據區的結構和功能。 一、JVM內存模型概述 JVM內存模型將運行時數…

《對話式 AI 白皮書》共創者招募

在 AI Agent 技術不斷演變的當下,共創一本不斷演變的對話式 AI 白皮書,共同探索人機對話的新紀元。無論你是開發者、技術專家、生態伙伴還是創業者,都期待你的加入。 項目地址:https://github.com/RTE-Dev/book_era_convoai/ 在…

Flux功能介紹,完整使用示例,與Mono對比

以下是關于Reactor框架中Flux與Mono的功能介紹、使用示例及對比分析: Flux功能介紹 核心定義 Flux是Reactor庫中的核心接口,表示一個異步的、包含零到多個元素的序列(類似流式數據處理)[3][4][7]。它可以處理無限長度的數據流&am…

Git使用基本指南

一、Git 基礎配置 首先需要配置用戶信息,讓 Git 知道你是誰: git config --global user.name "你的名字" git config --global user.email "你的郵箱example.com" 如果需要查看配置信息,可以使用: git co…

【入門】【例17.3】 內功逼毒

| 時間限制:C/C 1000MS,其他語言 2000MS 內存限制:C/C 64MB,其他語言 128MB 難度:中等 分數:100 OI排行榜得分:12(0.1分數2難度) 出題人:root | 描述 黃蓉中了毒,在 t 時…

蘋果芯片macOS安裝版Homebrew(親測)

在Linux服務器上安裝一個軟件常用yum,apt、dnf命令,同樣macOS可以使用brew命令來安裝軟件。 brew會自動幫你下載、解壓、安裝和配置,更重要的是:它還會自動處理好軟件之間的依賴關系,它將所有軟件都安裝在獨立的統一目…

uniapp+vue3做小程序,獲取容器高度

小程序獲能用createSelectorQuery,如果是子組件,后面可以額外加一個參數in來指定獲取dom的范圍。小程序里面可以直接.in(this),但是vue3沒有this了,那就只能通過getCurrentInstance去獲取當前實例代替this ,注意這里需…

【網工】華為配置專題進階篇①

目錄 ■浮動路由和BFD配置 ▲浮動路由 基本配置示例 ▲BFD ▲驗證命令 ▲測試連通性 ■路由綜合實驗RIP OSPF BGP ■浮動路由和BFD配置 ▲浮動路由 浮動路由:設置preference 浮動路由是一種備份路由機制,當主路由失效時,浮動路由會…

DeepLegal AI:智能法律文檔審查與合規助手+MVP

1. 商業價值與市場機會 DeepLegal AI旨在革新法律行業中耗時且資源密集型的文檔審查和合規流程。該應用將利用DeepSeek先進的語言模型能力,為律師事務所、企業法務部門和合規團隊提供一個高效、準確且經濟的解決方案。 市場機會: 法律科技市場正經歷爆…

使用 Rust 編寫簡單計算器

在編程語言的世界中,Rust 以其安全性和高性能而聞名。今天,我們將通過一個簡單的項目來探索 Rust 的魅力 —— 編寫一個簡單的命令行計算器。這個計算器將支持基本的算術運算(加、減、乘、除),并且可以通過用戶輸入進行…

清華大學:《AI賦能教育 :高考志愿填報工具使用指南》下載

志愿填報的認知革命已經到來 “分數出來了,但不知道能上什么學校……” “喜歡這個專業,但不知道就業前景怎么樣?” “到底是選熱門專業還是選興趣愛好?” 這些讓百萬家庭徹夜難眠的問題,你是否正在經歷? …

【科技公司的管理】

如何打造高效、人性化的目標驅動型公司?——OKR管理法績效薪酬體系全指南 你希望公司目標清晰、員工高效、多勞多得,同時避免馬斯克式的“冷血管理”,兼顧員工生活需求。以下是系統性解決方案,涵蓋目標設定(OKR&#x…

小白成長之路--nginx基礎配置(一)

文章目錄 一、概述1.1 Nginx 特點1.2 Nginx 作用1.3Nginx工作原理 二、Nginx服務搭建2.1安裝2.2 目錄結構2.3 配置文件作用2.4 nginx,conf配置文件詳解2.5 核心命令2.6 Nginx信號三.Nginx3.1啟動 總結 一、概述 Nginx 是開源、高性能、高可靠的 Web服務器 和反向代理服務器&am…

從最基礎的float布局開始學前端

前端學習其實不難&#xff0c;我們先從float布局講起&#xff0c;寫一個最簡單的導航欄&#xff1a;Logo在左&#xff0c;導航鏈接在右。下面是示例代碼&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"…