當前位置:學問君>學習教育>畢業論文>

大型應用軟件設計課程設計與實踐

學問君 人氣:4.28K

大型應用軟件課程開設的一個最大特點是課程的教育是依託真實的項目爲背景,以項目的設計爲課程主要教學內容,下面是小編蒐集的一篇相關論文範,歡迎閱讀借鑑。

大型應用軟件設計課程設計與實踐

1.引言

隨着計算機行業的蓬勃發展,整個社會對於計算機應用型人才的需求也在逐年攀升,計算機專業的特點就是一門實踐應用型很強的學習專業教育。因此計算機專業的本科教育也需要從學術理論型人才培養向實踐型人才培養轉變,在理論學習的基礎上需要更加註重專業技能的培養,這是現今本科教育特別是三本高校教育在新時期背景下的一個發展趨勢。大型應用軟件設計是我校計算機科學與技術專業學生的一門專業選修課,選修開設針對大四的學生,課程學習的目的就是引導學生了解大型應用軟件的設計過程,逐步培養學生在實踐項目中的軟件研發的能力。

2.課程設計安排

大型應用軟件課程開設的一個最大特點是:課程的教育是依託真實的項目爲背景,以項目的設計爲課程主要教學內容,根據項目設計開發的各個階段,系統的將計算機專業的數據庫理論、面向對象程序設計方法、軟件工程和進階語言程序設計的相關知識融會貫通,真正讓學生做到從理論專業學習到實踐操作運用的飛躍。透過對本課程的學習,要求學生熟悉目前主流設計平臺的Web的開發與設計,UML的設計與建模,大型數據庫軟件Oracle11g的使用,B/S的設計方式和軟件設計的環節以及軟件的生命週期;軟件的測試與部署。

本課程開始主要的教學方法:本課是一門純實踐性的課程,首選在多媒體教室授課和機房教學,這樣教師可以在課堂上一邊講解基礎理論知識,一般在透過實際的若干演示,讓學生們可以立刻看到設計和操作出來的效果,這樣才能到達基本的學習效果,課程上教師需要精心設計示例,分解步驟,然後再由教師引導,學生們嚴格按照軟件研發的各個步驟,循序漸進地去做,讓每個學生都深入到軟件設計中,最終達到獨立設計的目的,不斷提高學生獨立設計、開發軟件的能力。

實驗課程必須選用具體的開發工具來實現,建議選用操作安裝方便、在Windows下功能強大的VS2010設計平臺和。NET來完成Web頁面的設計。無論學生在之前掌握的是Java語言,還是C++語言,的C#語言在語法習慣上與他們有很大相似性,可以由教師引導,讓學生自學掌握熟,VS2010的設計研發模式可以降低對學生用進階語言編程的要求,易學會,且上手快,學生容易實際操作,適合於短期的軟件設計課程的教學要求。

本課是程序設計類課程,必須透過編程驗證、設計來掌握所學內容,針對課程特點,建議學生的設計以"教務管理系統"爲項目背景。選擇"教務管理系統"主要有兩點原因,一是教務管理與同學的實際生活和學習息息相關,便於學生收集相關資料,容易瞭解需求,便於設計的時候得心應手,貼近實際;二是資訊管理系統涵蓋了目前大型應用軟件設計中對資訊的採集、錄入、修改、查詢和刪除等主要功能模組的設計,有助於學生系統的掌握好設計的相關功能操作,對於其今後開展類似的軟件設計起到舉一反三的效用。

本課程的教學設計主要是由教師引導,學生自己動手操作,教師爲學生提供相關的項目及實踐操作要求,講述要達到的課程成果,學生需要了解相關的基礎知識,明確設計原理、思路以及相關設計目標和實際操作步驟,自己動手獨立完成設計。下面是針對本門課題的特點設計的相關課時安排。

實驗課程設計內容和要求:(以下僅爲示例,學生可自由選擇項目)項目名稱:教務資訊管理系統項目開發工具:TFS、VS2010、。NET項目設計目標:教務管理系統包含以下十個子功能模組的設計,即:①課程庫和培養方案管理、②年級教學計劃管理、③課程管理、④選課模組管理、⑤考試管理、⑥成績管理、⑦學生學籍管理、⑧教師資訊管理、⑨教學場所管理、⑩系統模組管理。

項目設計的功能模組以小組爲單位,每一個小組由7-10名學生自由組成,共同完成項目的設計與開發,功能模組的大小與複雜程度可根據各個小組的實際情況自行決定相關設計方案。

 3.實踐教學內容設計

針對大型應用軟件設計課程是一項純實踐性的課程的特點,本文主要着重介紹關於應用軟件設計中需求分析階段和概要設計階段中關於UML建模的部分。

3.1教務管理系統需求分析

教務管理系統是整個學校管理系統的一個重點,根據學校教育的實際情況,從業務角度來分析,將教務管理系統按照功能模組劃分成以下十個功能模組:課程庫和培養方案管理、年級教學計劃管理、課程管理、選課模組管理、考試管理、成績管理、學生學籍管理、教師資訊管理、教學場所管理、系統模組管理。

3.2系統建模

在本節中,將以選課模組爲例進行UML建模。首先進行靜態建模,以用例圖來規範化地描述學生選課模組的功能,幫助我們更好地瞭解系統需求,以類圖來描述選課模組的結構化設計,從系統實施的角度描述整個系統;其次進行動態建模,以活動圖來描述學生選課模組中整個交互過程。

3.2.1靜態建模

選課模組用例分析

建立用例圖首先要確定系統的邊界和角色。角色是指在系統外部和系統進行交互的某類人,也可以是某個系統。可以根據每個角色感受到的功能來描述系統的完整功能。

依據學校的實際業務情況,在教務管理系統的學生選課模組中,其功能包括了三部分:第一部分包括學生選課設定,學生選課數據查詢,學生選課數據統計,學生選課門數統計,學生名冊的打印,初始化選課課程,設定停開課程,這些功能屬於教務處使用;第二部分包括綜合選課、分級課選課、公共選修課選課、大學體育選課、重修課選課、查詢選課結果、查詢個人課表、退課,這些功能屬於已經註冊的學生使用;第三部分公共課表查詢包括按專業、教師、教室、時間查詢,這些功能屬於所有用戶(包括教務處、各個學院的教學祕書、教師、學生、匿名用戶)使用。

分析該模組可以得到的角色有:教務處、各個學院的教學祕書、教師、學生、匿名用戶。經過對選課模組中這些人員的角色進行分析整理後得到頂層用例圖,如圖3-2所示。

對頂層用例圖進行細化,得到二級用例圖中的選課設定,如圖3-3所示:透過用例圖規範化的描述,可以進一步明確了系統的功能,使用戶和開發者雙方可以從高層次把握系統的主要功能,爲後續的設計打下堅實的基礎。也爲系統開發編碼階段提供清晰的有關角色、權限的指導。

選課模組類圖分析

在建立系統的靜態模型中,進一步工作是確立系統的類圖。

類反映的是一種面向對象方法看待物理世界的觀點,它是面向對象的標誌。建立類圖的過程,實際上是對現實世界的一個抽象過程,它將現實世界中與問題有關的各種對象及其相互之間的'各種關係進行適當的抽象和分門別類的描述。UML的最終目標是識別出所有必須的類來,確定類的屬性和操作,分析這些類之間的關係,從而透過編程語言來實現這些類,並最終實現整個系統。

對類的識別,通常的方法是從用例中來識別。用例圖實際上就是一種對系統描述的形式,因此,可以根據用例圖來識別類。根據選課模組的用例圖,可以發現此模組主要包含學生基本資訊、選課課程、選課設定這三個實體類。學生基本資訊類屬性有學號、姓名、年級、專業等;選課課程是指在課程安排模組進行了定課程、定時間、定地點、定教師、定教材後的一個特定課程,其主鍵是教學班ID,它是專門用於選課的實體類;選課設定類包含了可選門數、選課時間等設定資訊。

選課模組包含學生基本資訊、選課課程、選課設定這三個實體類。一個學生可以選多門課程,一個課程也可以被多個學生選,因此學生基本資訊與選課課程之間是多對多的關聯關係,於是產生了一個選課結果的關聯類,教學班ID與學號作聯合主鍵;選課設定是針對學生選課的,一個學生必定受一條選課設定條件的約束,一個選課設定可以約束多個學生,因此學生基本資訊與選課設定是多對一的關聯關係。

一般的,類圖描述了系統在執行時所有數據必須滿足的通用特徵,在類圖中每個實體類在數據庫中都有相應的表,實體類的屬性對應數據庫表中的字段。因此透過類圖的建立,可以爲數據庫實施階段提供清晰的指導。

3.2.2動態建模

在建立好系統的靜態模型後,需要分析和設計系統的動態結構,建立相應的動態模型,從而更好地理解用例的行爲。在UML中可以透過行爲圖(包括狀態圖和活動圖)和交互圖(包括順序圖和協作圖)來實現動態建模。對於某些複雜的實時系統,系統狀態變化較多,可以透過狀態圖來描述類的對象所有可能的狀態以及事件發生時狀態的轉移條件。

合作圖與順序圖相似,順序圖主要強調的是交互的時間順序,合作圖主要強調的是交互的語境和交互對象的整體組織。順序圖按時間布圖,合作圖按空間布圖,它們之間是等價的,可以互換。活動圖可以細化用例,描述系統功能性行爲,並且描述用例之間的順序依賴關係;也可以理解和建模業務過程和工作流,處理多線程應用;甚至可以用於描述複雜的計算型算法。爲了清楚的表達需求,這裏用活動圖來對選課流程進行更詳細的描述。

4.結束語

在教學設計中,應該明確一點,教學內容的設計要由重知識傳播向重學生髮展轉變,應由重教師教學內容選擇向重學生學習方法指導轉變,教師要想在教學方法上有新的突破,就充分理解和把握教學目標和要求然後在結合課程特點和專業重點在課堂設計上多下功夫和心思,使學生們能夠對所學的課程提高興趣和積極性,有助於學生課上能夠集中精力投入學習中去。

1.問題引入環節

問題引入,這類似於情景設計,軟件的知識點往往是一個問題,當然,問題的理解要想深刻一點,問題不能僅僅是"引入"一下就完事,我們需要"問題驅動式"軟件教學,把解決問題貫徹始終。

2.師生互動環節

師生互動環節對於課程學習是很重要的,在上課時由教師提問,學生回答,然後大家針對問題和答案在各抒己見,提出自己的觀點看法,不斷完善補充,最終老師在梳理總結,針對一些理解偏差大的教師要及時糾正,這是很好的課堂交流方式。這種訓練,極其重要而有效,極易激發學生的學習興趣、學習積極性和參與性,有助於學生髮散性思考和不斷探索,整個教學過程由教師根據教學目標和課程內容精心設計,成爲一環扣一環,使學生能輕鬆地一小步一小步達到預定目標,讓學生愉快的學習。

3.課堂實驗環節

在課堂實驗中,由教師提出實驗的目的,然後針對老師設定的實驗問題,學生們在分小組討論,最終將每個同學的答案在彙總梳理,這樣能培養學生解決問題的能力和團隊合作精神。課堂實驗課上,由學生獨立完成實驗內容,老師在一旁引導和監督,還能及時瞭解和掌握學生的實際操作能力,針對學生在實際操作中存在的問題和不足,能夠及時的給予學生相關指導,這也是一種將理論知識應用於實踐的培養方式,可以不斷提高學生的實踐操作能力。在這種學以致用的驅動下,學生對課堂的知識會有更加深刻的體會理解,更容易將所學的知識融會貫通、舉一反三、靈活的運用;老師則,幫助學生可以儘快。

 參考文獻:

[1]軟件工程導論,張海藩,清華大學出版社,2003.

[2]軟件工程,齊志平、譚慶平、寧洪,高等教育出版社,1997.

[3]軟件統一開發過程,GradyBooch,機械工業出版社,2002[4]UML基礎、案例與應用,JosephSchmuller着,李虎、王美英、萬里威譯,華中理工大學出版社,1999.

[5]UML基礎與Rose建模案例,吳建、鄭潮、汪傑着,人民郵電出版社,2004.

[5]UML技術手冊,SinanSiAlhir,機械工業出版社,2002[7]VisualStudio2005TeamSysterm軟件測試專家教程,TomArnold,清華大學出版社,2008.

[8]C#2005&3.0進階編程,ChristianNagel,清華大學出版社,2007.

[9]Oracle11g權威指南,谷長勇、王濱、陳杰等,電子工業出版社,2008.

[10]Oracle數據庫管理與應用系統開發,劉榮華、漲楊、聶頌、鄒晨,人民郵電出版社,2005.