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