【正文】
28 基于 ASP 的家庭財(cái)務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 數(shù)據(jù)流程分析 數(shù)據(jù)流程分析采用數(shù)據(jù)流程圖中的頂層圖、一層圖和底層圖的描述方式來表達(dá)需求。頂層圖僅包含一個(gè)加工,它代表被開發(fā)系統(tǒng)。在 1 層數(shù)據(jù)流程圖中可以更清楚地看到系統(tǒng)中數(shù)據(jù)流的 流動(dòng)情況和系統(tǒng)主要功能。數(shù)據(jù)庫(kù)設(shè)計(jì)的過程要經(jīng)過以下幾個(gè)階段:需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)、應(yīng)用開發(fā)、使用維護(hù)等。 30 基于 ASP 的家庭財(cái)務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 2.賬簿 在家庭財(cái)務(wù)管理系統(tǒng)中,賬簿實(shí)體的屬性包括編號(hào)、日期、備注、金額等。 實(shí)體轉(zhuǎn)化為關(guān)系 數(shù)據(jù)的關(guān)系模型是眾多關(guān)系模式的集合,在進(jìn)行邏輯設(shè)計(jì)的時(shí)候就是將 ER圖中的實(shí)體、聯(lián)系轉(zhuǎn)換為相應(yīng)的關(guān)系模式。 一對(duì)一 聯(lián)系轉(zhuǎn)換為關(guān)系模式,將聯(lián)系與任意端實(shí)體所對(duì)應(yīng)的關(guān)系模式合并,加入另一端實(shí)體的碼和聯(lián)系的屬性。 綜上所述,對(duì)家庭財(cái)務(wù)管理系統(tǒng)的 ER 圖如圖 所示。 為了減少系統(tǒng)中的關(guān)系個(gè)數(shù),如果兩個(gè)關(guān)系模式具有相同的主碼,可以考慮將它們合并為一個(gè)關(guān)系模式。 聯(lián)系轉(zhuǎn)化為關(guān)系,根據(jù)聯(lián)系的類型不同分為三種情況: 多對(duì)多的聯(lián)系轉(zhuǎn)化為關(guān)系模式, 將聯(lián)系轉(zhuǎn)換成一個(gè)關(guān)系模式,該聯(lián)系相連的各實(shí)體的碼和聯(lián)系本身的屬性轉(zhuǎn)換為關(guān)系的屬性 。 4.子項(xiàng)目 在家庭財(cái)務(wù)管理系統(tǒng)中,子項(xiàng)目實(shí)體的屬性包括項(xiàng)目編號(hào)、項(xiàng)目名等。 ER 圖是概念數(shù)據(jù)模型的高層描述所使用的數(shù)據(jù)模型或模式圖,它為表述實(shí)體聯(lián)系模式圖形式的數(shù)據(jù)模型提供了圖形符號(hào) [12]。 圖 1 層數(shù)據(jù)流程圖 。根據(jù)圖書管理系統(tǒng)各種需求的分析,可以確定家庭財(cái)務(wù)管理系統(tǒng)的頂層數(shù)據(jù)流程圖如圖 所示。數(shù)據(jù)流程圖由外部實(shí)體、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)處理四部分組成,所對(duì)應(yīng)的基本符號(hào)如圖 所示 [18]。其具體要求的業(yè)務(wù)流程:家庭用戶首先進(jìn)入系統(tǒng),然后將在日常生活中的收入或者支出錄入到系統(tǒng)中,并且根據(jù)用戶的需求將平時(shí)的收入或者支出以報(bào)表的形式打印出來。 查詢速度:不超過 3 秒; 其它所有交互功能反應(yīng)速度:不超過 3 秒; 可靠性:平均故障間隔時(shí)間不低于 200 小時(shí)。 表 查看月度收支總報(bào)表 用例描述 : 項(xiàng)目 描述 用例名 查看月度收支總報(bào)表 簡(jiǎn)要說明 這個(gè)用例用于描述按月度查看收支的過程 前置條件 用戶已經(jīng)登陸,并進(jìn)入報(bào)表統(tǒng)計(jì)管理頁(yè)面 基本事件流 用戶按月度對(duì)報(bào)表進(jìn)行統(tǒng)計(jì)時(shí),本用例開始; 系統(tǒng)顯示報(bào)表,有打印要求可確定打印。 前置條件 用戶已經(jīng)登陸,并進(jìn)入 報(bào)表統(tǒng)計(jì)管理頁(yè)面 基本事件流 用戶按年度對(duì)報(bào)表進(jìn)行統(tǒng)計(jì)時(shí),本用例開始; 系統(tǒng)顯示報(bào)表,有打印要求可確定打印。 用戶確認(rèn)輸入信息,系統(tǒng)檢查信息有效性,有效,修改收支項(xiàng)目并保存,無效,提示重新修改或放棄修改。 表 編輯收支項(xiàng)目 用例描述 : : 項(xiàng)目 描述 用例名 編輯收支項(xiàng)目 簡(jiǎn)要說明 這個(gè)用例用于描述編輯收支項(xiàng)目的過程。 前置條件 用戶已經(jīng)登陸,并進(jìn)入收支管理頁(yè)面 基本事件流 當(dāng)用戶點(diǎn)擊 “刪除 ”按鈕時(shí),用例開始。 用例結(jié)束 替代事件流 系統(tǒng)檢查到在基本事件流第三步收支項(xiàng)目名稱不唯一時(shí)用例開始。 用例結(jié)束 后置條件 無 新增子項(xiàng)收支項(xiàng)目 用例描述如表 所示,可以對(duì) 家庭的收支項(xiàng)目 進(jìn)行添加等操作。 系統(tǒng)顯示新增父項(xiàng)收支項(xiàng)界面,用戶輸入收支項(xiàng)目名稱并選擇新增項(xiàng)類 型。 用例結(jié)束 后置條件 無 新增父項(xiàng)收支項(xiàng)目 用例描述如表 所示,可以對(duì) 家庭的收支項(xiàng)目 進(jìn)行添加等操作。 信息無誤用戶點(diǎn)擊確定返回。 第 三 章 家庭財(cái)務(wù)管理 系統(tǒng) 需求分析 21 圖 收支項(xiàng)目管理用例圖 具體的用例描述如下: 查看收支項(xiàng)目 用例描述如表 所示,可以對(duì) 家庭的收支項(xiàng)目 進(jìn)行查詢等操作。 表 查看賬簿記錄用例描述 用例名 查看賬簿記錄 簡(jiǎn)要說明 這個(gè)用例描述登錄到系統(tǒng)的所有用戶查看賬簿記錄的過程 前置條件 用戶已經(jīng)登陸到賬簿管理模塊,并點(diǎn)擊查看圖標(biāo) 基本事件流 用戶點(diǎn)擊賬簿管理頁(yè)面每個(gè)項(xiàng)目后的查看圖標(biāo),用例開始 系統(tǒng)從數(shù)據(jù)庫(kù)中調(diào)出待查看用戶的相 關(guān)信息 用戶查看有關(guān)信息 用戶點(diǎn)擊確認(rèn),用例結(jié)束 替代事件流 無 后置條件 無 編輯賬簿記錄 用例描述如表 所示,可以對(duì) 家庭的賬簿記錄 進(jìn)行編輯等操作。 圖 家庭成員管理用例圖 具體的用例描述如下: 查看家庭成員信息 用例描述如表 所示,可以對(duì) 家庭成員的信息 進(jìn)行查詢等操作。 根據(jù)家庭財(cái)務(wù)管理系統(tǒng)的實(shí)際需求情況,本文確定了家庭財(cái)務(wù)管理系統(tǒng)應(yīng)該具備的功能,它們是家庭成員管理、收支項(xiàng)目管理和帳薄管理、報(bào)表統(tǒng)計(jì)等。 收支項(xiàng)目管理:收支項(xiàng)目按范圍和使用方式可分為現(xiàn)金記賬,定期存款記賬,活期記賬,股票交易記賬,債權(quán)債務(wù)記賬等等。 從功能的角度來看,家庭財(cái)務(wù)管理系統(tǒng)應(yīng)具備如下管理模塊:收支記錄管理、財(cái)簿管理模塊、收支統(tǒng)計(jì)模塊等。 系統(tǒng)可以制定收入支出預(yù)算。包括成員管理、收入支出管理、報(bào)表生成等 系統(tǒng)界面更加美觀、人性化。 本章從系統(tǒng)需求分析、系統(tǒng)用例、性能需求分析等不同角度分析討論圖書管理系統(tǒng)的需求 。 第 二 章 相關(guān)理論及技術(shù)介紹 11 D a t a S e tD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nD a t a T a b l eD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nE x t e n d e d P r o p e r t i e sD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nD a t a T a b l e C o l l e c t i o nD a t a V i e wD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nC h i l d R e l a t i o n sD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nP a r e n t R e l a t i o n sP r i m a r y K e yD a t a R o wD a t a R o w C o l l e c t i o nD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nE x t e n d e d P r o p e r t i e sD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nC o n s t r a i n t sD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nD a t a C o l u m n C o l l e c t i o nD a t a C o l u m nD a t a R e l a t i o n C o l l e c i o nD a t a R e l a t i o n C o l l e c i o nE x t e n d e d P r o p e r t i e s 圖 DataSet 對(duì)象模型圖 本章小結(jié) 本章主要介紹了 .NET Framework , Visual Studio 2020, C, SQL SERVER 2020, , 等相關(guān)的理論和技術(shù) 。其中, SQL Server .NET 數(shù)據(jù)提供程序包含 sql DataAdapter 對(duì)象, OLE DB .NET 數(shù)據(jù)提供程序包含 oledb DataAdapter 對(duì)象, ODBC .NET 數(shù)據(jù)提供程序包含 odbc DataAdapter 對(duì)象, Oracle .NET 數(shù)據(jù)提供程序包含 oracle DataAdapter 對(duì)象 [18]。 Connection 對(duì)象,主要用于和數(shù)據(jù)庫(kù)的交互。每個(gè)功能都能得到同一結(jié)構(gòu)的支持,使用戶能夠使用身份驗(yàn)證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對(duì)應(yīng)用程序的配置進(jìn)行自定義。它和普通意義上的編程語(yǔ)言不一樣, ASP 允許使用 VBScript、 JavaScript 等腳本語(yǔ)言編寫 ASP 程序 [13]。但事實(shí)上,目前人們也樂于使用 C語(yǔ)言在 .NET 平臺(tái)上進(jìn)行應(yīng)用程序的開發(fā)。個(gè)人 PC 上的操作系統(tǒng)基本上都是 Windows 操作系統(tǒng),選擇和 Windows 同出一門的 SQL Server2020 進(jìn)行 Windows 應(yīng)用程序的開發(fā),其兼容性一定會(huì)很好。 SQL Server 2020 的安裝比較簡(jiǎn)單,不需要過多的配置。目前 SQL Server 2020 應(yīng)用比較廣泛 ,同 ORACLE、 SYBASE 相比, SQL Server 2020有著安裝簡(jiǎn)便、易于使用、功能強(qiáng)大、兼容性強(qiáng)的優(yōu)點(diǎn) [12]。事實(shí)上,運(yùn)行庫(kù)的基本原則是代碼的管理,以運(yùn)行庫(kù)為目標(biāo)的代碼稱為托管代碼,與此相對(duì)的是不以運(yùn)行庫(kù) 為目標(biāo)的代碼稱為非托管代碼。 .Net 框架可以為多種編程語(yǔ)言提供了統(tǒng)一的平臺(tái)和統(tǒng)一的 編程模型開發(fā)功能,比如, Visual J .Net, Visual C++ .Net, Visual C .Net, Visual Basic .Net 等。 (3).NET Framework 的代碼執(zhí)行環(huán)境安全性較高。 系統(tǒng)開發(fā)工具 .NET Framework .NET Framework 又叫 .Net 框架,它是由 Microsoft 推出的,用于快速進(jìn)行軟件開發(fā)的軟件平臺(tái)。 資源共享性、獨(dú)立性高,系統(tǒng)擴(kuò)展性好。 使用方法、維護(hù)和升級(jí)方式簡(jiǎn)單。 B/S 結(jié)構(gòu)可以由 web 服務(wù)器能夠解釋的腳 本語(yǔ)言如 asp、 php 或 jsp 等編寫,也可以由 vb、 vc 等語(yǔ)言寫成形式。只要電腦上有瀏覽器客、開通網(wǎng)絡(luò),就可以與服務(wù)器端發(fā)生交互 [6]。 B/S模式 B/S (Browser/Server)模式,又叫瀏覽器 /且服務(wù)器模式。假如某些處理客戶端無法處理,再提交給服務(wù)器。其中服務(wù)器是 C/S 模式的核心組成部分,服務(wù)器為客戶機(jī)提供網(wǎng)絡(luò)必須的資源,服務(wù)器負(fù)責(zé)處理數(shù)據(jù),客戶機(jī)負(fù)責(zé)和用戶交互,向后臺(tái)服務(wù)器發(fā)出請(qǐng)求。 第 二 章 相關(guān)理論及技術(shù)介紹 5 第二章 相關(guān)理論及技術(shù) 本課題所開發(fā)的 家庭財(cái)務(wù)管理系統(tǒng)是基于 B/S 的 WEB 系統(tǒng),可以通過網(wǎng)頁(yè)瀏覽器登錄系統(tǒng)并進(jìn)行管理和查詢等工作。 首先在分析了其基本需求的基礎(chǔ)上,給出了系統(tǒng)的體系結(jié)構(gòu)和詳細(xì)的數(shù)據(jù)庫(kù)設(shè)計(jì)流程;之后詳細(xì)介紹了 家庭財(cái)務(wù)管理系統(tǒng) 各模塊的功能、設(shè)計(jì)與實(shí)現(xiàn)。介紹了 家庭財(cái)務(wù)管理系統(tǒng) 開發(fā)過程中所用 到的理論及關(guān)鍵技術(shù),包括 Visual Studio 20 .NET Framework 、 、 等。 對(duì) 家庭財(cái)務(wù)管理系統(tǒng) 進(jìn)行測(cè)試及試用。這類的理財(cái)很多,但是大部分都是以營(yíng)利為目的,操作起來并不是很方便 。這確實(shí)是一種進(jìn)步 ,但這種進(jìn)步意義不大,僅僅是實(shí)現(xiàn)了記錄的計(jì)算機(jī)化。 課題的研究現(xiàn)狀 對(duì)于現(xiàn)代社會(huì)來說,通過紙和筆記錄來進(jìn)行財(cái)務(wù)管理已經(jīng)跟不上時(shí)代了,況且時(shí)間長(zhǎng)了容易忘。人工管理要依賴于管理者的超強(qiáng)的記憶力和耐心,并且需要耗費(fèi)管理者大量的時(shí)間和精力;人工管2 基于 ASP 的家庭財(cái)務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 理對(duì)財(cái)務(wù)管理的繁瑣、出錯(cuò)的概率、以及有限資源的節(jié) 省等等一系列的問題都很棘手?;诖朔N考慮,就有必要開發(fā)一個(gè)能夠進(jìn)行家庭財(cái)務(wù)管理的軟件來幫助大家來實(shí)現(xiàn)更有效的管理。 “十二 五 ”時(shí)期,我國(guó)國(guó)民的人均可支配收入將會(huì)日益增加,但是 目前家庭理財(cái)?shù)挠^念在大部分中小城市還不夠深入人心, “如何使人們?cè)谌粘I钪腥フ_、有效管理這些財(cái)富 ”將是我國(guó)國(guó)民面對(duì)的一個(gè)迫待解決的問題 [1]。 further based on. NET and VS 2020 platform, the use of C programming language, SQL SERVER 2020 datab