- 相關(guān)推薦
大型應用軟件設計課程設計與實(shí)踐
大型應用軟件課程開(kāi)設的一個(gè)最大特點(diǎn)是課程的教育是依托真實(shí)的項目為背景,以項目的設計為課程主要教學(xué)內容,下面是小編搜集的一篇相關(guān)論文范,歡迎閱讀借鑒。
1.引言
隨著(zhù)計算機行業(yè)的蓬勃發(fā)展,整個(gè)社會(huì )對于計算機應用型人才的需求也在逐年攀升,計算機專(zhuān)業(yè)的特點(diǎn)就是一門(mén)實(shí)踐應用型很強的學(xué)習專(zhuān)業(yè)教育。因此計算機專(zhuān)業(yè)的本科教育也需要從學(xué)術(shù)理論型人才培養向實(shí)踐型人才培養轉變,在理論學(xué)習的基礎上需要更加注重專(zhuān)業(yè)技能的培養,這是現今本科教育特別是三本高校教育在新時(shí)期背景下的一個(gè)發(fā)展趨勢。大型應用軟件設計是我校計算機科學(xué)與技術(shù)專(zhuān)業(yè)學(xué)生的一門(mén)專(zhuān)業(yè)選修課,選修開(kāi)設針對大四的學(xué)生,課程學(xué)習的目的就是引導學(xué)生了解大型應用軟件的設計過(guò)程,逐步培養學(xué)生在實(shí)踐項目中的軟件研發(fā)的能力。
2.課程設計安排
大型應用軟件課程開(kāi)設的一個(gè)最大特點(diǎn)是:課程的教育是依托真實(shí)的項目為背景,以項目的設計為課程主要教學(xué)內容,根據項目設計開(kāi)發(fā)的各個(gè)階段,系統的將計算機專(zhuān)業(yè)的數據庫理論、面向對象程序設計方法、軟件工程和高級語(yǔ)言程序設計的相關(guān)知識融會(huì )貫通,真正讓學(xué)生做到從理論專(zhuān)業(yè)學(xué)習到實(shí)踐操作運用的飛躍。通過(guò)對本課程的學(xué)習,要求學(xué)生熟悉目前主流設計平臺ASP.NET的Web的開(kāi)發(fā)與設計,UML的設計與建模,大型數據庫軟件Oracle11g的使用,B/S的設計方式和軟件設計的環(huán)節以及軟件的生命周期;軟件的測試與部署。
本課程開(kāi)始主要的教學(xué)方法:本課是一門(mén)純實(shí)踐性的課程,首選在多媒體教室授課和機房教學(xué),這樣教師可以在課堂上一邊講解基礎理論知識,一般在通過(guò)實(shí)際的若干演示,讓學(xué)生們可以立刻看到設計和操作出來(lái)的效果,這樣才能到達基本的學(xué)習效果,課程上教師需要精心設計示例,分解步驟,然后再由教師引導,學(xué)生們嚴格按照軟件研發(fā)的各個(gè)步驟,循序漸進(jìn)地去做,讓每個(gè)學(xué)生都深入到軟件設計中,最終達到獨立設計的目的,不斷提高學(xué)生獨立設計、開(kāi)發(fā)軟件的能力。
實(shí)驗課程必須選用具體的開(kāi)發(fā)工具來(lái)實(shí)現,建議選用操作安裝方便、在Windows下功能強大的VS2010設計平臺和。NET來(lái)完成Web頁(yè)面的設計。無(wú)論學(xué)生在之前掌握的是Java語(yǔ)言,還是C++語(yǔ)言,ASP.NET的C#語(yǔ)言在語(yǔ)法習慣上與他們有很大相似性,可以由教師引導,讓學(xué)生自學(xué)掌握熟,VS2010的設計研發(fā)模式可以降低對學(xué)生用高級語(yǔ)言編程的要求,易學(xué)會(huì ),且上手快,學(xué)生容易實(shí)際操作,適合于短期的軟件設計課程的教學(xué)要求。
本課是程序設計類(lèi)課程,必須通過(guò)編程驗證、設計來(lái)掌握所學(xué)內容,針對課程特點(diǎn),建議學(xué)生的設計以"教務(wù)管理系統"為項目背景。選擇"教務(wù)管理系統"主要有兩點(diǎn)原因,一是教務(wù)管理與同學(xué)的實(shí)際生活和學(xué)習息息相關(guān),便于學(xué)生收集相關(guān)資料,容易了解需求,便于設計的時(shí)候得心應手,貼近實(shí)際;二是信息管理系統涵蓋了目前大型應用軟件設計中對信息的采集、錄入、修改、查詢(xún)和刪除等主要功能模塊的設計,有助于學(xué)生系統的掌握好設計的相關(guān)功能操作,對于其今后開(kāi)展類(lèi)似的軟件設計起到舉一反三的效用。
本課程的教學(xué)設計主要是由教師引導,學(xué)生自己動(dòng)手操作,教師為學(xué)生提供相關(guān)的項目及實(shí)踐操作要求,講述要達到的課程成果,學(xué)生需要了解相關(guān)的基礎知識,明確設計原理、思路以及相關(guān)設計目標和實(shí)際操作步驟,自己動(dòng)手獨立完成設計。下面是針對本門(mén)課題的特點(diǎn)設計的相關(guān)課時(shí)安排。
實(shí)驗課程設計內容和要求:(以下僅為示例,學(xué)生可自由選擇項目)項目名稱(chēng):教務(wù)信息管理系統項目開(kāi)發(fā)工具:TFS、VS2010、。NET項目設計目標:教務(wù)管理系統包含以下十個(gè)子功能模塊的設計,即:①課程庫和培養方案管理、②年級教學(xué)計劃管理、③課程管理、④選課模塊管理、⑤考試管理、⑥成績(jì)管理、⑦學(xué)生學(xué)籍管理、⑧教師信息管理、⑨教學(xué)場(chǎng)所管理、⑩系統模塊管理。
項目設計的功能模塊以小組為單位,每一個(gè)小組由7-10名學(xué)生自由組成,共同完成項目的設計與開(kāi)發(fā),功能模塊的大小與復雜程度可根據各個(gè)小組的實(shí)際情況自行決定相關(guān)設計方案。
3.實(shí)踐教學(xué)內容設計
針對大型應用軟件設計課程是一項純實(shí)踐性的課程的特點(diǎn),本文主要著(zhù)重介紹關(guān)于應用軟件設計中需求分析階段和概要設計階段中關(guān)于UML建模的部分。
3.1教務(wù)管理系統需求分析
教務(wù)管理系統是整個(gè)學(xué)校管理系統的一個(gè)重點(diǎn),根據學(xué)校教育的實(shí)際情況,從業(yè)務(wù)角度來(lái)分析,將教務(wù)管理系統按照功能模塊劃分成以下十個(gè)功能模塊:課程庫和培養方案管理、年級教學(xué)計劃管理、課程管理、選課模塊管理、考試管理、成績(jì)管理、學(xué)生學(xué)籍管理、教師信息管理、教學(xué)場(chǎng)所管理、系統模塊管理。
3.2系統建模
在本節中,將以選課模塊為例進(jìn)行UML建模。首先進(jìn)行靜態(tài)建模,以用例圖來(lái)規范化地描述學(xué)生選課模塊的功能,幫助我們更好地了解系統需求,以類(lèi)圖來(lái)描述選課模塊的結構化設計,從系統實(shí)施的角度描述整個(gè)系統;其次進(jìn)行動(dòng)態(tài)建模,以活動(dòng)圖來(lái)描述學(xué)生選課模塊中整個(gè)交互過(guò)程。
3.2.1靜態(tài)建模
3.2.1.1選課模塊用例分析
建立用例圖首先要確定系統的邊界和角色。角色是指在系統外部和系統進(jìn)行交互的某類(lèi)人,也可以是某個(gè)系統?梢愿鶕總(gè)角色感受到的功能來(lái)描述系統的完整功能。
依據學(xué)校的實(shí)際業(yè)務(wù)情況,在教務(wù)管理系統的學(xué)生選課模塊中,其功能包括了三部分:第一部分包括學(xué)生選課設置,學(xué)生選課數據查詢(xún),學(xué)生選課數據統計,學(xué)生選課門(mén)數統計,學(xué)生名冊的打印,初始化選課課程,設置停開(kāi)課程,這些功能屬于教務(wù)處使用;第二部分包括綜合選課、分級課選課、公共選修課選課、大學(xué)體育選課、重修課選課、查詢(xún)選課結果、查詢(xún)個(gè)人課表、退課,這些功能屬于已經(jīng)注冊的學(xué)生使用;第三部分公共課表查詢(xún)包括按專(zhuān)業(yè)、教師、教室、時(shí)間查詢(xún),這些功能屬于所有用戶(hù)(包括教務(wù)處、各個(gè)學(xué)院的教學(xué)秘書(shū)、教師、學(xué)生、匿名用戶(hù))使用。
分析該模塊可以得到的角色有:教務(wù)處、各個(gè)學(xué)院的教學(xué)秘書(shū)、教師、學(xué)生、匿名用戶(hù)。經(jīng)過(guò)對選課模塊中這些人員的角色進(jìn)行分析整理后得到頂層用例圖,如圖3-2所示。
對頂層用例圖進(jìn)行細化,得到二級用例圖中的選課設置,如圖3-3所示:通過(guò)用例圖規范化的描述,可以進(jìn)一步明確了系統的功能,使用戶(hù)和開(kāi)發(fā)者雙方可以從高層次把握系統的主要功能,為后續的設計打下堅實(shí)的基礎。也為系統開(kāi)發(fā)編碼階段提供清晰的有關(guān)角色、權限的指導。
3.2.1.2選課模塊類(lèi)圖分析
在建立系統的靜態(tài)模型中,進(jìn)一步工作是確立系統的類(lèi)圖。
類(lèi)反映的是一種面向對象方法看待物理世界的觀(guān)點(diǎn),它是面向對象的標志。建立類(lèi)圖的過(guò)程,實(shí)際上是對現實(shí)世界的一個(gè)抽象過(guò)程,它將現實(shí)世界中與問(wèn)題有關(guān)的各種對象及其相互之間的各種關(guān)系進(jìn)行適當的抽象和分門(mén)別類(lèi)的描述。UML的最終目標是識別出所有必須的類(lèi)來(lái),確定類(lèi)的屬性和操作,分析這些類(lèi)之間的關(guān)系,從而通過(guò)編程語(yǔ)言來(lái)實(shí)現這些類(lèi),并最終實(shí)現整個(gè)系統。
對類(lèi)的識別,通常的方法是從用例中來(lái)識別。用例圖實(shí)際上就是一種對系統描述的形式,因此,可以根據用例圖來(lái)識別類(lèi)。根據選課模塊的用例圖,可以發(fā)現此模塊主要包含學(xué)生基本信息、選課課程、選課設置這三個(gè)實(shí)體類(lèi)。學(xué)生基本信息類(lèi)屬性有學(xué)號、姓名、年級、專(zhuān)業(yè)等;選課課程是指在課程安排模塊進(jìn)行了定課程、定時(shí)間、定地點(diǎn)、定教師、定教材后的一個(gè)特定課程,其主鍵是教學(xué)班ID,它是專(zhuān)門(mén)用于選課的實(shí)體類(lèi);選課設置類(lèi)包含了可選門(mén)數、選課時(shí)間等設置信息。
選課模塊包含學(xué)生基本信息、選課課程、選課設置這三個(gè)實(shí)體類(lèi)。一個(gè)學(xué)生可以選多門(mén)課程,一個(gè)課程也可以被多個(gè)學(xué)生選,因此學(xué)生基本信息與選課課程之間是多對多的關(guān)聯(lián)關(guān)系,于是產(chǎn)生了一個(gè)選課結果的關(guān)聯(lián)類(lèi),教學(xué)班ID與學(xué)號作聯(lián)合主鍵;選課設置是針對學(xué)生選課的,一個(gè)學(xué)生必定受一條選課設置條件的約束,一個(gè)選課設置可以約束多個(gè)學(xué)生,因此學(xué)生基本信息與選課設置是多對一的關(guān)聯(lián)關(guān)系。
一般的,類(lèi)圖描述了系統在運行時(shí)所有數據必須滿(mǎn)足的通用特征,在類(lèi)圖中每個(gè)實(shí)體類(lèi)在數據庫中都有相應的表,實(shí)體類(lèi)的屬性對應數據庫表中的字段。因此通過(guò)類(lèi)圖的建立,可以為數據庫實(shí)施階段提供清晰的指導。
3.2.2動(dòng)態(tài)建模
在建立好系統的靜態(tài)模型后,需要分析和設計系統的動(dòng)態(tài)結構,建立相應的動(dòng)態(tài)模型,從而更好地理解用例的行為。在UML中可以通過(guò)行為圖(包括狀態(tài)圖和活動(dòng)圖)和交互圖(包括順序圖和協(xié)作圖)來(lái)實(shí)現動(dòng)態(tài)建模。對于某些復雜的實(shí)時(shí)系統,系統狀態(tài)變化較多,可以通過(guò)狀態(tài)圖來(lái)描述類(lèi)的對象所有可能的狀態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉移條件。
合作圖與順序圖相似,順序圖主要強調的是交互的時(shí)間順序,合作圖主要強調的是交互的語(yǔ)境和交互對象的整體組織。順序圖按時(shí)間布圖,合作圖按空間布圖,它們之間是等價(jià)的,可以互換;顒(dòng)圖可以細化用例,描述系統功能性行為,并且描述用例之間的順序依賴(lài)關(guān)系;也可以理解和建模業(yè)務(wù)過(guò)程和工作流,處理多線(xiàn)程應用;甚至可以用于描述復雜的計算型算法。為了清楚的表達需求,這里用活動(dòng)圖來(lái)對選課流程進(jìn)行更詳細的描述。
4.結束語(yǔ)
在教學(xué)設計中,應該明確一點(diǎn),教學(xué)內容的設計要由重知識傳播向重學(xué)生發(fā)展轉變,應由重教師教學(xué)內容選擇向重學(xué)生學(xué)習方法指導轉變,教師要想在教學(xué)方法上有新的突破,就充分理解和把握教學(xué)目標和要求然后在結合課程特點(diǎn)和專(zhuān)業(yè)重點(diǎn)在課堂設計上多下功夫和心思,使學(xué)生們能夠對所學(xué)的課程提高興趣和積極性,有助于學(xué)生課上能夠集中精力投入學(xué)習中去。
1.問(wèn)題引入環(huán)節
問(wèn)題引入,這類(lèi)似于情景設計,軟件的知識點(diǎn)往往是一個(gè)問(wèn)題,當然,問(wèn)題的理解要想深刻一點(diǎn),問(wèn)題不能僅僅是"引入"一下就完事,我們需要"問(wèn)題驅動(dòng)式"軟件教學(xué),把解決問(wèn)題貫徹始終。
2.師生互動(dòng)環(huán)節
師生互動(dòng)環(huán)節對于課程學(xué)習是很重要的,在上課時(shí)由教師提問(wèn),學(xué)生回答,然后大家針對問(wèn)題和答案在各抒己見(jiàn),提出自己的觀(guān)點(diǎn)看法,不斷完善補充,最終老師在梳理總結,針對一些理解偏差大的教師要及時(shí)糾正,這是很好的課堂交流方式。這種訓練,極其重要而有效,極易激發(fā)學(xué)生的學(xué)習興趣、學(xué)習積極性和參與性,有助于學(xué)生發(fā)散性思考和不斷探索,整個(gè)教學(xué)過(guò)程由教師根據教學(xué)目標和課程內容精心設計,成為一環(huán)扣一環(huán),使學(xué)生能輕松地一小步一小步達到預定目標,讓學(xué)生愉快的學(xué)習。
3.課堂實(shí)驗環(huán)節
在課堂實(shí)驗中,由教師提出實(shí)驗的目的,然后針對老師設置的實(shí)驗問(wèn)題,學(xué)生們在分小組討論,最終將每個(gè)同學(xué)的答案在匯總梳理,這樣能培養學(xué)生解決問(wèn)題的能力和團隊合作精神。課堂實(shí)驗課上,由學(xué)生獨立完成實(shí)驗內容,老師在一旁引導和監督,還能及時(shí)了解和掌握學(xué)生的實(shí)際操作能力,針對學(xué)生在實(shí)際操作中存在的問(wèn)題和不足,能夠及時(shí)的給予學(xué)生相關(guān)指導,這也是一種將理論知識應用于實(shí)踐的培養方式,可以不斷提高學(xué)生的實(shí)踐操作能力。在這種學(xué)以致用的驅動(dòng)下,學(xué)生對課堂的知識會(huì )有更加深刻的體會(huì )理解,更容易將所學(xué)的知識融會(huì )貫通、舉一反三、靈活的運用;老師則,幫助學(xué)生可以盡快。
參考文獻:
[1]軟件工程導論,張海藩,清華大學(xué)出版社,2003.
[2]軟件工程,齊志平、譚慶平、寧洪,高等教育出版社,1997.
[3]軟件統一開(kāi)發(fā)過(guò)程,GradyBooch,機械工業(yè)出版社,2002[4]UML基礎、案例與應用,JosephSchmuller著(zhù),李虎、王美英、萬(wàn)里威譯,華中理工大學(xué)出版社,1999.
[5]UML基礎與Rose建模案例,吳建、鄭潮、汪杰著(zhù),人民郵電出版社,2004.
[5]UML技術(shù)手冊,SinanSiAlhir,機械工業(yè)出版社,2002[7]VisualStudio2005TeamSysterm軟件測試專(zhuān)家教程,TomArnold,清華大學(xué)出版社,2008.
[8]C#2005&.NET3.0高級編程,ChristianNagel,清華大學(xué)出版社,2007.
[9]Oracle11g權威指南,谷長(cháng)勇、王濱、陳杰等,電子工業(yè)出版社,2008.
[10]Oracle數據庫管理與應用系統開(kāi)發(fā),劉榮華、漲楊、聶頌、鄒晨,人民郵電出版社,2005.
【大型應用軟件設計課程設計與實(shí)踐】相關(guān)文章:
CAD在國內大型企業(yè)中的應用與發(fā)展07-28
全面預算管理的應用實(shí)踐10-19
工程保險在大型水利工程項目中的應用09-13
《地理信息系統原理及應用》多媒體教學(xué)軟件設計和實(shí)現09-04
本量利分析的實(shí)踐應用05-19
森林防火監控中心的軟件設計08-20
大型建設集團應用施工總承包管理模式的探索09-14
虹吸濾池全自控運行應用實(shí)踐05-10