版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
銀行系統(tǒng)的分析與設(shè)計(jì)
--UML應(yīng)用案例
銀行系統(tǒng)的分析與設(shè)計(jì)
--UML應(yīng)用案例一、系統(tǒng)需求銀行是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),提供存款、取款、轉(zhuǎn)帳、信用卡、代理等多種業(yè)務(wù)。在銀行設(shè)立帳戶的人或機(jī)構(gòu)通常被稱為銀行的客戶。為了簡(jiǎn)化,本次系統(tǒng)分析只考慮存款、取款、轉(zhuǎn)帳等基本功能。一、系統(tǒng)需求銀行是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),提供存款、取款、根據(jù)上面對(duì)銀行系統(tǒng)的基本需求分析,可知這個(gè)簡(jiǎn)化的銀行系統(tǒng)至少應(yīng)該具有如下功能:1、一個(gè)銀行可以有多個(gè)帳戶;2、一個(gè)銀行可以有多個(gè)客戶;3、一個(gè)客戶可以持有多個(gè)帳戶;4、一個(gè)賬戶可以有多個(gè)持有者;5、可以開戶;6、可以注銷賬戶;7、可以取錢;8、可以存錢;9、在銀行內(nèi)帳戶轉(zhuǎn)帳;10、不同銀行的賬戶之間轉(zhuǎn)帳根據(jù)上面對(duì)銀行系統(tǒng)的基本需求分析,可知這個(gè)簡(jiǎn)化的銀行系統(tǒng)至少二、分析問題領(lǐng)域
(一)、識(shí)別參與者(角色)參與者代表與系統(tǒng)交互的人、硬件設(shè)備或另一系統(tǒng)。它存在于系統(tǒng)的外部。通過分析銀行系統(tǒng)的功能需求,可以識(shí)別出3個(gè)參與者:(1)Clerk(銀行職員):銀行的工作人員(2)CustomerActor(客戶):任何在銀行中開戶的個(gè)人或組織(3)BankActor(銀行):提供存、取等業(yè)務(wù)的銀行。客戶可在銀行中開戶或銷戶(關(guān)閉帳戶)。
二、分析問題領(lǐng)域
(一)、識(shí)別參與者(角色)參與者代表與系統(tǒng)(二)、識(shí)別用例用例:規(guī)定系統(tǒng)或部分系統(tǒng)的行為,描述系統(tǒng)所執(zhí)行的動(dòng)作序列集,并為執(zhí)行者產(chǎn)生一個(gè)可供觀察的結(jié)果。通過對(duì)需求的進(jìn)一步分析,可確定系統(tǒng)中有如下用例存在:(1)Login(登錄):驗(yàn)證用戶身份。(2)Depositfund(存款):存錢到帳戶。(二)、識(shí)別用例用例:規(guī)定系統(tǒng)或部分系統(tǒng)的行為,描述系統(tǒng)所執(zhí)(二)、識(shí)別用例(3)Withdrawfund(取款):從帳戶中取錢。(4)MaintainAccount(管理帳戶):創(chuàng)建帳戶(開戶)、刪除帳戶(銷戶)及修改帳戶信息。(5)Transferfund(轉(zhuǎn)帳)(6)Transferfundwithinabank(在銀行內(nèi)轉(zhuǎn)帳)(7)Transferfundbetweenbanks其中用例(5)是(6)和(7)的父用例。(二)、識(shí)別用例(3)Withdrawfund(取款):從三、靜態(tài)結(jié)構(gòu)模型進(jìn)一步分析系統(tǒng)需求,識(shí)別出類及類之間的關(guān)系,確定它們的靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為,是面向?qū)ο蠓治龅幕救蝿?wù)。系統(tǒng)的靜態(tài)結(jié)構(gòu)模型主要用類圖或?qū)ο髨D描述。靜態(tài)建模分三步:(1)定義類、(2)確定類的名字、屬性和操作(3)確定類與類之間的關(guān)系,建立類圖。三、靜態(tài)結(jié)構(gòu)模型進(jìn)一步分析系統(tǒng)需求,識(shí)別出類及類之間的關(guān)系,(一)、定義系統(tǒng)對(duì)象類定義過系統(tǒng)需求,就可以根據(jù)系統(tǒng)需求來識(shí)別系統(tǒng)中所存在的對(duì)象。系統(tǒng)對(duì)象的識(shí)別可以通過尋找系統(tǒng)域描述和需求描述中的名詞來進(jìn)行,從系統(tǒng)需求描述中可以找到的名詞有銀行(Bank)、帳戶(Account)、客戶(Customer)、資金(Funds),這些是對(duì)象圖中的候選對(duì)象。判斷是否應(yīng)該為這些候選對(duì)象創(chuàng)建類的方法是:是否有與該對(duì)象相關(guān)的身份和行為。如果有,則它是一個(gè)存在于模型中的對(duì)象,應(yīng)該為之創(chuàng)建類。資金沒有對(duì)象,也沒有與資金相關(guān)的行為。(一)、定義系統(tǒng)對(duì)象類定義過系統(tǒng)需求,就可以根據(jù)系統(tǒng)需求來識(shí)(一)、定義系統(tǒng)對(duì)象類從上述分析可知,系統(tǒng)至少具有3個(gè)重要的類:Bank、Account、Customer。在銀行中,對(duì)帳戶進(jìn)行存錢、取錢、轉(zhuǎn)帳操作,要保留業(yè)務(wù)記錄。因此在系統(tǒng)中還應(yīng)有代表這些業(yè)務(wù)記錄的對(duì)象存在:存(Deposit)、取(Withdraw)、轉(zhuǎn)帳(Transfer),這三個(gè)類都是一種業(yè)務(wù)記錄,故可抽象出父類:Transaction。接著需確定這些對(duì)象的屬性和行為。(一)、定義系統(tǒng)對(duì)象類從上述分析可知,系統(tǒng)至少具有3個(gè)重要的(1)類Bank的屬性和行為bankCode:Stringname:Stringaddress:StringPhone:StringFax:StringsetBankCode(code:String)setName(name:String)setAddress(address:String)setPhone(phone:String)setFax(fax:String))(設(shè)置私有屬性)(1)類Bank的屬性和行為bankCode:String(1)類Bank的屬性和行為getBankCode(code:String)getName(name:String)getAddress(address:String)getPhone(phone:String)getFax(fax:String))(訪問私有屬性)(1)類Bank的屬性和行為getBankCode(code(2)類Account的屬性和行為bank:Bankholder:Customer[]accountNo:StringcreateDate:Datebalance:float(私有屬性)getHolders():Customer[]newAccount(holder:Customer,balance:float):voidremAccount(accountNo:String):void(銷戶)Withdraw(holderName:String,holderID:String,accountNo:String,money:float):float(返回取戶余額)Deposit(holderName:String,holderID:String,accountNo:String,money:float):float(返回存款戶余額)(2)類Account的屬性和行為bank:Bank(2)類Account的屬性和行為transferOut(accountNo:String,bankCode:String,money:float):floattransferIn(accountNo:String,bankCode:String,money:float):floatnewBalance():float(計(jì)算新的帳戶余額)update():void(更新數(shù)據(jù)庫中的帳戶信息)save():void(將帳戶信息存儲(chǔ)到數(shù)據(jù)庫中)delete():void(從數(shù)據(jù)庫中刪除帳戶)(2)類Account的屬性和行為transferOut(a(2)類Account的屬性和行為closeAccount(accountNo:String):voidgetAccount(accountNo:String):Account(返回指定貼的帳戶信息)query(holderName:String,holderID:String,accountNo:String,money:float,isSaving:Boolean):Boolean(查詢存取帳戶是否存在,若是取款,還要查詢帳戶余額是否足夠)(2)類Account的屬性和行為closeAccount((3)類Customer的屬性和行為Name:StringcustomID:Stringaddress:Stringaccount:account[]getAccounts():Account[]Query(name:String,id:String):BooleannewCustomer(name:String,id:String,address:String,account:Account[]):void(創(chuàng)建客戶對(duì)象)save():void(將客戶信息存儲(chǔ)到數(shù)據(jù)庫中)update():void(更新DB中客戶信息)hasAccount():Boolean(判斷客戶是否還持有帳戶)delete():void(刪除DB中的客戶信息)(3)類Customer的屬性和行為Name:String(4)類Transaction的屬性和行為私有屬性:account:AccountcreateDate:Datefund:float(交易金額)newTransaction(account:Account,fund:float,date:Date):voidsave():void(將交易記錄存儲(chǔ)到數(shù)據(jù)庫中)(4)類Transaction的屬性和行為私有屬性:acco(5)類Deposit的屬性和行為繼承類Transaction,無私有屬性newDeposit(account:Account,fund:float,date:Date):void(創(chuàng)建存款交易記錄)save():void(將存款交易記錄存儲(chǔ)到DB中)(5)類Deposit的屬性和行為繼承類Transactio(6)類Withdraw的屬性和行為繼承類Transaction(同樣有account,createDate及交易金額fund屬性)。無私有屬性。newWithdraw(account:Account,fund:float,date:Date):void(創(chuàng)建新的取款交易記錄)save():void(將取款交易記錄存儲(chǔ)到DB中)(6)類Withdraw的屬性和行為繼承類Transacti(7)類Transfer的屬性和行為繼承類TransactiontransferAccountNo:StringtransferBank:BanknewTransfer(account:Account,transferAccountNo:String,transferBank:Bank,fund:float,date:Date):void(創(chuàng)建新的轉(zhuǎn)帳交易記錄,可是收帳戶或付帳戶)save():void(將轉(zhuǎn)帳交易記錄存儲(chǔ)到DB中)(7)類Transfer的屬性和行為繼承類Transacti(三)、建立類圖識(shí)別出系統(tǒng)中的類后,還要識(shí)別出類間的關(guān)系(關(guān)聯(lián)、聚合、組合、類屬、依賴、實(shí)現(xiàn)關(guān)系,前面已講過),然后就可以建立類圖了。在處理復(fù)雜問題時(shí),通常使用分類的方法來有效地降低問題的復(fù)雜性。在面向?qū)ο蠼<夹g(shù)中,也可以采用同樣的方法將客觀世界的實(shí)體映射為對(duì)象,并歸納成類。類、對(duì)象及它們之間的關(guān)系是面向?qū)ο蠹夹g(shù)中最基本的元素。類圖是面向?qū)ο笙到y(tǒng)最常用的圖,類圖描述了類集、接口集、協(xié)作及它們之間的關(guān)系。(三)、建立類圖識(shí)別出系統(tǒng)中的類后,還要識(shí)別出類間的關(guān)系(關(guān)銀行系統(tǒng)的分析與設(shè)計(jì)
--UML應(yīng)用案例
銀行系統(tǒng)的分析與設(shè)計(jì)
--UML應(yīng)用案例一、系統(tǒng)需求銀行是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),提供存款、取款、轉(zhuǎn)帳、信用卡、代理等多種業(yè)務(wù)。在銀行設(shè)立帳戶的人或機(jī)構(gòu)通常被稱為銀行的客戶。為了簡(jiǎn)化,本次系統(tǒng)分析只考慮存款、取款、轉(zhuǎn)帳等基本功能。一、系統(tǒng)需求銀行是與生活緊密相關(guān)的一個(gè)機(jī)構(gòu),提供存款、取款、根據(jù)上面對(duì)銀行系統(tǒng)的基本需求分析,可知這個(gè)簡(jiǎn)化的銀行系統(tǒng)至少應(yīng)該具有如下功能:1、一個(gè)銀行可以有多個(gè)帳戶;2、一個(gè)銀行可以有多個(gè)客戶;3、一個(gè)客戶可以持有多個(gè)帳戶;4、一個(gè)賬戶可以有多個(gè)持有者;5、可以開戶;6、可以注銷賬戶;7、可以取錢;8、可以存錢;9、在銀行內(nèi)帳戶轉(zhuǎn)帳;10、不同銀行的賬戶之間轉(zhuǎn)帳根據(jù)上面對(duì)銀行系統(tǒng)的基本需求分析,可知這個(gè)簡(jiǎn)化的銀行系統(tǒng)至少二、分析問題領(lǐng)域
(一)、識(shí)別參與者(角色)參與者代表與系統(tǒng)交互的人、硬件設(shè)備或另一系統(tǒng)。它存在于系統(tǒng)的外部。通過分析銀行系統(tǒng)的功能需求,可以識(shí)別出3個(gè)參與者:(1)Clerk(銀行職員):銀行的工作人員(2)CustomerActor(客戶):任何在銀行中開戶的個(gè)人或組織(3)BankActor(銀行):提供存、取等業(yè)務(wù)的銀行。客戶可在銀行中開戶或銷戶(關(guān)閉帳戶)。
二、分析問題領(lǐng)域
(一)、識(shí)別參與者(角色)參與者代表與系統(tǒng)(二)、識(shí)別用例用例:規(guī)定系統(tǒng)或部分系統(tǒng)的行為,描述系統(tǒng)所執(zhí)行的動(dòng)作序列集,并為執(zhí)行者產(chǎn)生一個(gè)可供觀察的結(jié)果。通過對(duì)需求的進(jìn)一步分析,可確定系統(tǒng)中有如下用例存在:(1)Login(登錄):驗(yàn)證用戶身份。(2)Depositfund(存款):存錢到帳戶。(二)、識(shí)別用例用例:規(guī)定系統(tǒng)或部分系統(tǒng)的行為,描述系統(tǒng)所執(zhí)(二)、識(shí)別用例(3)Withdrawfund(取款):從帳戶中取錢。(4)MaintainAccount(管理帳戶):創(chuàng)建帳戶(開戶)、刪除帳戶(銷戶)及修改帳戶信息。(5)Transferfund(轉(zhuǎn)帳)(6)Transferfundwithinabank(在銀行內(nèi)轉(zhuǎn)帳)(7)Transferfundbetweenbanks其中用例(5)是(6)和(7)的父用例。(二)、識(shí)別用例(3)Withdrawfund(取款):從三、靜態(tài)結(jié)構(gòu)模型進(jìn)一步分析系統(tǒng)需求,識(shí)別出類及類之間的關(guān)系,確定它們的靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為,是面向?qū)ο蠓治龅幕救蝿?wù)。系統(tǒng)的靜態(tài)結(jié)構(gòu)模型主要用類圖或?qū)ο髨D描述。靜態(tài)建模分三步:(1)定義類、(2)確定類的名字、屬性和操作(3)確定類與類之間的關(guān)系,建立類圖。三、靜態(tài)結(jié)構(gòu)模型進(jìn)一步分析系統(tǒng)需求,識(shí)別出類及類之間的關(guān)系,(一)、定義系統(tǒng)對(duì)象類定義過系統(tǒng)需求,就可以根據(jù)系統(tǒng)需求來識(shí)別系統(tǒng)中所存在的對(duì)象。系統(tǒng)對(duì)象的識(shí)別可以通過尋找系統(tǒng)域描述和需求描述中的名詞來進(jìn)行,從系統(tǒng)需求描述中可以找到的名詞有銀行(Bank)、帳戶(Account)、客戶(Customer)、資金(Funds),這些是對(duì)象圖中的候選對(duì)象。判斷是否應(yīng)該為這些候選對(duì)象創(chuàng)建類的方法是:是否有與該對(duì)象相關(guān)的身份和行為。如果有,則它是一個(gè)存在于模型中的對(duì)象,應(yīng)該為之創(chuàng)建類。資金沒有對(duì)象,也沒有與資金相關(guān)的行為。(一)、定義系統(tǒng)對(duì)象類定義過系統(tǒng)需求,就可以根據(jù)系統(tǒng)需求來識(shí)(一)、定義系統(tǒng)對(duì)象類從上述分析可知,系統(tǒng)至少具有3個(gè)重要的類:Bank、Account、Customer。在銀行中,對(duì)帳戶進(jìn)行存錢、取錢、轉(zhuǎn)帳操作,要保留業(yè)務(wù)記錄。因此在系統(tǒng)中還應(yīng)有代表這些業(yè)務(wù)記錄的對(duì)象存在:存(Deposit)、取(Withdraw)、轉(zhuǎn)帳(Transfer),這三個(gè)類都是一種業(yè)務(wù)記錄,故可抽象出父類:Transaction。接著需確定這些對(duì)象的屬性和行為。(一)、定義系統(tǒng)對(duì)象類從上述分析可知,系統(tǒng)至少具有3個(gè)重要的(1)類Bank的屬性和行為bankCode:Stringname:Stringaddress:StringPhone:StringFax:StringsetBankCode(code:String)setName(name:String)setAddress(address:String)setPhone(phone:String)setFax(fax:String))(設(shè)置私有屬性)(1)類Bank的屬性和行為bankCode:String(1)類Bank的屬性和行為getBankCode(code:String)getName(name:String)getAddress(address:String)getPhone(phone:String)getFax(fax:String))(訪問私有屬性)(1)類Bank的屬性和行為getBankCode(code(2)類Account的屬性和行為bank:Bankholder:Customer[]accountNo:StringcreateDate:Datebalance:float(私有屬性)getHolders():Customer[]newAccount(holder:Customer,balance:float):voidremAccount(accountNo:String):void(銷戶)Withdraw(holderName:String,holderID:String,accountNo:String,money:float):float(返回取戶余額)Deposit(holderName:String,holderID:String,accountNo:String,money:float):float(返回存款戶余額)(2)類Account的屬性和行為bank:Bank(2)類Account的屬性和行為transferOut(accountNo:String,bankCode:String,money:float):floattransferIn(accountNo:String,bankCode:String,money:float):floatnewBalance():float(計(jì)算新的帳戶余額)update():void(更新數(shù)據(jù)庫中的帳戶信息)save():void(將帳戶信息存儲(chǔ)到數(shù)據(jù)庫中)delete():void(從數(shù)據(jù)庫中刪除帳戶)(2)類Account的屬性和行為transferOut(a(2)類Account的屬性和行為closeAccount(accountNo:String):voidgetAccount(accountNo:String):Account(返回指定貼的帳戶信息)query(holderName:String,holderID:String,accountNo:String,money:float,isSaving:Boolean):Boolean(查詢存取帳戶是否存在,若是取款,還要查詢帳戶余額是否足夠)(2)類Account的屬性和行為closeAccount((3)類Customer的屬性和行為Name:StringcustomID:Stringaddress:Stringaccount:account[]getAccounts():Account[]Query(name:String,id:String):BooleannewCustomer(name:String,id:String,address:String,account:Account[]):void(創(chuàng)建客戶對(duì)象)save():void(將客戶信息存儲(chǔ)到數(shù)據(jù)庫中)update():void(更新DB中客戶信息)hasAccount():Boolean(判斷客戶是否還持有帳戶)delete():void(刪除DB中的客戶信息)(3)類Customer的屬性和行為Name:String(4)類Transaction的屬性和行為私有屬性:account:AccountcreateDate:Datefund:float(交易金額)newTransaction(account:Account,fund:float,date:Date):voidsave():void(將交易記錄存儲(chǔ)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 喪葬服務(wù)合同范本
- 演藝服務(wù)合同實(shí)戰(zhàn)技巧解析
- 臨時(shí)保安聘用合同
- 正規(guī)個(gè)人借款合同模板
- 終止合同協(xié)議書全文版
- 借款合同模板關(guān)聯(lián)企業(yè)間的借貸協(xié)議
- 物業(yè)服務(wù)合同范本標(biāo)準(zhǔn)
- 家庭服務(wù)員雇傭協(xié)議
- 錄播教室設(shè)備采購合同
- 農(nóng)家有機(jī)肥銷售合同
- 企業(yè)財(cái)務(wù)報(bào)表分析-以順豐控股股份有限公司為例
- 2024年高考英語新課標(biāo)1卷讀后續(xù)寫課件高考英語一輪復(fù)習(xí)作文專項(xiàng)
- 重慶江北國際機(jī)場(chǎng)有限公司招聘筆試題庫2024
- PANTONE國際色卡CMYK色值對(duì)照表3
- 精神康復(fù)中的心理危機(jī)干預(yù)策略考核試卷
- 第11講 地表形態(tài)與人類活動(dòng)(高考一輪復(fù)習(xí)課件)
- 地下水動(dòng)力學(xué)智慧樹知到期末考試答案章節(jié)答案2024年長安大學(xué)
- 中國綠色算力發(fā)展研究報(bào)告(2024年)
- 產(chǎn)能合作共建協(xié)議書
- 2024年執(zhí)業(yè)醫(yī)師考試-中醫(yī)師承及確有專長考核筆試考試歷年高頻考點(diǎn)試題摘選含答案
- 哈齊鐵路客運(yùn)專線無砟軌道測(cè)量監(jiān)理實(shí)施細(xì)則
評(píng)論
0/150
提交評(píng)論