李佳+趙玉萍
摘要:針對(duì)ASP.NET傳統(tǒng)教學(xué)中存在的一些問題,基于.Net框架,C#為主要編程語言,以銀行服務(wù)系統(tǒng)為例介紹UML建模在asp.net教學(xué)中的應(yīng)用,通過真實(shí)的案例教學(xué),培養(yǎng)學(xué)生對(duì)系統(tǒng)進(jìn)行需求分析和面向?qū)ο蠼5哪芰?,提高學(xué)生的實(shí)踐動(dòng)手能力。
關(guān)鍵詞: UML;建模;ASP.NET;教學(xué)
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)29-0101-02
1 概述
Asp.net是微軟公司推出的新一代腳本語言,具有廣泛的底層支持、運(yùn)行效率和安全性較高,基于面向?qū)ο蟮哪K化開發(fā)等特點(diǎn),大多數(shù)計(jì)算機(jī)類專業(yè)都把《asp.net程序設(shè)計(jì)》課程作為軟件開發(fā)技術(shù)的核心課程之一。但調(diào)查研究發(fā)現(xiàn),在教學(xué)中存在教學(xué)模式單一,學(xué)生積極性不高,開發(fā)結(jié)果與用戶實(shí)際需求不一致等問題。
針對(duì)以上問題,本文基于.Net框架,C#為主要編程語言,以銀行服務(wù)系統(tǒng)為例介紹UML建模在asp.net教學(xué)中的應(yīng)用,通過真實(shí)的案例教學(xué),培養(yǎng)學(xué)生圍繞項(xiàng)目進(jìn)行UML建模的能力,提高學(xué)生的邏輯思維能力和實(shí)踐動(dòng)手能力,加強(qiáng)師生間的交流。
2 項(xiàng)目驅(qū)動(dòng)教學(xué)
項(xiàng)目驅(qū)動(dòng)教學(xué)法[4]主張?jiān)谝欢ōh(huán)境下知識(shí)可以自主構(gòu)建獲得,師生共同圍繞完成一個(gè)完整的項(xiàng)目進(jìn)行教與學(xué),并且持續(xù)的有組織有系統(tǒng)的進(jìn)行交流,能夠使學(xué)生在知識(shí)、技能方面得以顯著提升。一方面教師能夠在教學(xué)過程中提高自身的編程能力。鞏固專業(yè)知識(shí),準(zhǔn)確地對(duì)學(xué)生加以指導(dǎo),課堂從傳統(tǒng)的以教師為中心轉(zhuǎn)變成以學(xué)生為核心。項(xiàng)目驅(qū)動(dòng)法打破了固有的以教材為核心的教學(xué)模式,以項(xiàng)目為依托,要求學(xué)生從過去的“以聽為主“變成“以動(dòng)手為主”,促進(jìn)學(xué)生的學(xué)習(xí)積極性。另一方面,學(xué)生通過項(xiàng)目的需求分析、項(xiàng)目架構(gòu)設(shè)計(jì)、界面設(shè)計(jì)、代碼實(shí)現(xiàn)、測(cè)試與部署等,充分發(fā)揮主觀能動(dòng)性,高效的掌握知識(shí)與開發(fā)技巧,增強(qiáng)實(shí)踐動(dòng)手能力和團(tuán)隊(duì)合作能力。
教學(xué)中選取銀行服務(wù)系統(tǒng)的實(shí)現(xiàn)為目標(biāo),根據(jù)教學(xué)大綱的要求,把需要學(xué)生掌握的知識(shí)點(diǎn)融入到項(xiàng)目中。系統(tǒng)需要完成的功能包括一個(gè)銀行可以多個(gè)賬戶和多個(gè)客戶,一個(gè)客戶可以有多個(gè)賬戶,客戶可以開戶、注銷賬戶、存取錢、在同一個(gè)銀行和不同銀行間進(jìn)行轉(zhuǎn)賬等。
3 統(tǒng)一建模語言UML
3.1 UML簡(jiǎn)述
Uml是用來對(duì)軟件系統(tǒng)進(jìn)行可視化建模的一種語言,為面向?qū)ο箝_發(fā)系統(tǒng)的產(chǎn)品進(jìn)行說明、可視化和編制文檔的一種標(biāo)準(zhǔn)語言。UML可以貫穿軟件開發(fā)周期中的每個(gè)階段,被OMG采納為業(yè)界標(biāo)準(zhǔn)。
Uml的建模機(jī)制包括靜態(tài)建模和動(dòng)態(tài)建模。UML中靜態(tài)建模用來描述系統(tǒng)的組織結(jié)構(gòu),動(dòng)態(tài)建模用來描述系統(tǒng)的行為和動(dòng)作。靜態(tài)建模中描述的組織和結(jié)構(gòu)是動(dòng)態(tài)建模的基礎(chǔ),而動(dòng)態(tài)建模中描述的行為和動(dòng)作則是靜態(tài)建模的深化。UML中通過用例圖、類圖、對(duì)象圖、包圖、組件圖和部署圖進(jìn)行靜態(tài)建模,通過順序圖、活動(dòng)圖、狀態(tài)圖、協(xié)作圖進(jìn)行動(dòng)態(tài)建模。
3.2 UML建模
通過用例圖來描述待開發(fā)系統(tǒng)的功能需求,驅(qū)動(dòng)需求分析之后各階段的開發(fā)工作。首先確定系統(tǒng)的參與者,經(jīng)過分析,得到三個(gè)參與者,即銀行職員、客戶、銀行。銀行職員負(fù)責(zé)創(chuàng)建、刪除、修改賬戶,客戶可以存取錢、不同賬戶之間轉(zhuǎn)賬、可以根據(jù)需要在銀行中設(shè)立或者關(guān)閉賬戶。系統(tǒng)的用例圖如圖1所示。
由于轉(zhuǎn)賬可以發(fā)生在同一銀行或者不同銀行間,不同銀行間的轉(zhuǎn)賬需要參與者銀行進(jìn)行交互,所以這里的“轉(zhuǎn)賬”用例用類屬關(guān)系進(jìn)行描述。
用例的實(shí)現(xiàn)可用活動(dòng)圖進(jìn)行描述。以“存款”為例,活動(dòng)圖如下所示。
客戶通過銀行職員存款到賬戶中,需要向職員提供存款單和交易現(xiàn)金等信息。首先系統(tǒng)提示銀行職員輸入客戶姓名、賬號(hào)、和需要存的金額等,銀行職員輸入相關(guān)信息并提交,系統(tǒng)確認(rèn)賬戶是否存在并有效,如果出錯(cuò),給出錯(cuò)誤提示信息,如果正確,系統(tǒng)建立存款事件記錄,并更新賬戶的相關(guān)信息。
系統(tǒng)部署圖如圖3所示,
銀行系統(tǒng)服務(wù)器為客戶提供存款、取款轉(zhuǎn)賬等服務(wù),為銀行職員提供賬戶信息維護(hù)服務(wù),銀行職員通過客戶端為客戶提供服務(wù),客戶端與數(shù)據(jù)庫服務(wù)器通過銀行局域網(wǎng)與銀行服務(wù)器連接。
4 實(shí)際應(yīng)用
要求系統(tǒng)采用B/S模式,開發(fā)環(huán)境采用VS.NET2012,數(shù)據(jù)庫采用SQL SERVER2012,運(yùn)行環(huán)境為企業(yè)內(nèi)部網(wǎng),開發(fā)架構(gòu)采用MVC方式,實(shí)現(xiàn)以控制層為中心,通過控制層與邏輯層、界面層進(jìn)行直接交互。程序中的統(tǒng)一資源定位符不會(huì)指向具體的某一個(gè)物理頁面,而是指向控制層的某個(gè)方法。MVC中最主要的部分是控制器的實(shí)現(xiàn),在控制器中定義了程序中涉及的主要邏輯,控制器接收到命令后根據(jù)預(yù)先定義好的邏輯執(zhí)行操作,并將最后的執(zhí)行結(jié)果以視圖的方式返回給客戶。學(xué)生除了對(duì)項(xiàng)目進(jìn)行需求分析、搭建模型、代碼編程、調(diào)試以外,還需要完成文檔的撰寫、項(xiàng)目總結(jié)及答辯等工作。
5 結(jié)論
本文圍繞UML建模在asp.net教學(xué)中的應(yīng)用展開討論,通過真實(shí)的案例教學(xué),開放式的教學(xué)模式,加強(qiáng)學(xué)生的UML建模的能力,在建模過程中增強(qiáng)學(xué)生的邏輯思維能力,提高軟件開發(fā)效率,激發(fā)學(xué)生的學(xué)習(xí)興趣??朔藗鹘y(tǒng)教學(xué)中以教師、教材為中心的局限性,使不同能力的學(xué)生都能得到鍛煉,對(duì)于學(xué)生自主學(xué)習(xí)習(xí)慣的形成奠定了良好的基礎(chǔ)。
參考文獻(xiàn):
[1] 屈遲文. 《Asp.net程序設(shè)計(jì)》中的項(xiàng)目教學(xué)探索 [J]. 廣西民族師范學(xué)院學(xué)報(bào),2016 (3):47-49.
[2] 閻琦, 等. UML建模在ASP.NET課程教學(xué)中的應(yīng)用 [J]. 信息技術(shù), 2016 (6):27-29.
[3] 李剛,王茜. 基于Web訪問數(shù)據(jù)庫的實(shí)現(xiàn)方案[J].計(jì)算機(jī)工程與應(yīng)用,2000,36(2):112-115.
[4] 楊亞菁. 以項(xiàng)目實(shí)踐為導(dǎo)向的ASP.NET課程層次化教學(xué)研究[J]. 軟件導(dǎo)刊,2016(1):186-187.
[5] 冀振燕. UML系統(tǒng)分析與設(shè)計(jì)教程[M]. 人民郵電出版社,2014.endprint