• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于軟件框架的軟件設(shè)計實踐教學(xué)方法研究

      2014-05-04 01:14:07葉鵬倪友聰
      計算機(jī)教育 2014年2期
      關(guān)鍵詞:軟件設(shè)計軟件工程實踐教學(xué)

      葉鵬 倪友聰

      摘要:軟件設(shè)計是本科階段軟件工程課程教學(xué)的重難點內(nèi)容,目前在教學(xué)實踐中,因缺乏軟件設(shè)計相關(guān)教學(xué)資源的支持,學(xué)生難以在有限教學(xué)課時內(nèi)理解抽象的理論并將其運用到軟件設(shè)計實踐中。文章提出一種軟件框架AF4JAVA,在此基礎(chǔ)上定義軟件設(shè)計實踐教學(xué)過程,形成一種軟件設(shè)計實踐教學(xué)方法。

      關(guān)鍵詞:軟件工程;軟件設(shè)計;軟件框架;實踐教學(xué)

      0、引言

      軟件設(shè)計是軟件需求分析與實現(xiàn)之間的溝通橋梁,是軟件質(zhì)量形成的重要階段,在軟件開發(fā)中具有重要作用。因此,在本科階段軟件工程課程教學(xué)中,軟件設(shè)計被作為重點內(nèi)容進(jìn)行講授。然而,軟件設(shè)計既需要理解模塊化、信息隱蔽和功能獨立等抽象概念,又要把握高內(nèi)聚、低耦合等設(shè)計原則,同時還要了解已有的軟件體系結(jié)構(gòu)風(fēng)格、設(shè)計模式和軟件框架等與工程實踐密切相關(guān)的設(shè)計知識。因而,軟件設(shè)計一直被認(rèn)為是軟件工程課程教學(xué)難點中的難點。由于缺乏與軟件設(shè)計相關(guān)的教學(xué)資源,學(xué)生往往難以在有限教學(xué)課時內(nèi)理解這些抽象的概念、原則和方法并將其應(yīng)用于實踐,影響了軟件工程課程的教學(xué)效果。

      近幾年在軟件工程教學(xué)研究工作中,國內(nèi)外高校主要通過引入CDIOm思想改進(jìn)傳統(tǒng)的軟件工程課程教學(xué),特別強(qiáng)調(diào)以項目驅(qū)動的方式培養(yǎng)和提高學(xué)生的軟件開發(fā)的實踐能力。這些研究都針對軟件工程教學(xué)改革進(jìn)行了有益的探索,但仍然缺乏有效的教學(xué)資源來幫助學(xué)生理解抽象的軟件設(shè)計理論知識,并切實培養(yǎng)和提高他們軟件設(shè)計的實踐能力。

      1、軟件框架AF4JAVA簡介

      軟件框架AF4JAVA是重要的教學(xué)資源,它幫助學(xué)生理解抽象的軟件設(shè)計理論知識,同時也為他們運用這些知識進(jìn)行軟件設(shè)計實踐起到指導(dǎo)作用。通過對Struts、Spring和Hibernate等JAVA開源框架進(jìn)行集成、封裝和抽象,構(gòu)建出AF4JAVA框架。AF4JAVA該框架中設(shè)計并實現(xiàn)了一組實現(xiàn)數(shù)據(jù)訪問、抽象的領(lǐng)域?qū)嶓w對象等功能軟件構(gòu)件,對學(xué)生隱蔽了使用JAVA開源框架的繁瑣細(xì)節(jié)。AF4JAVA框架本身不僅可以幫助學(xué)生更好地理解軟件體系結(jié)構(gòu)風(fēng)格、設(shè)計模型和軟件框架等知識,而且還能使學(xué)生利用它提供的可重用構(gòu)件,高效地進(jìn)行JAVA Web應(yīng)用軟件的設(shè)計。

      AF4JAVA框架被分為用戶界面層(UIlayer),領(lǐng)域?qū)樱―omain layer)和數(shù)據(jù)訪問層(Data Access layer)三層,如圖1所示。用戶界面層用于實現(xiàn)圖形用戶接口GUI,提供用戶與應(yīng)用程序之間的交互。領(lǐng)域?qū)臃庋b了業(yè)務(wù)邏輯和業(yè)務(wù)實體,并向uI層提供業(yè)務(wù)功能接口。數(shù)據(jù)訪問層則封裝了對數(shù)據(jù)庫的訪問功能,為領(lǐng)域?qū)犹峁?shù)據(jù)訪問接口。

      2.1 數(shù)據(jù)訪問層

      數(shù)據(jù)訪問層由IDataContext、DataConteXt、Configure和Mappingfile 4個構(gòu)件組成。圖2所示為軟件框架AF4JAVA中數(shù)據(jù)訪問層的示意圖。其中IDataContext接口定義了對象的增刪改查、事務(wù)管理等操作。DataContext類通過使用Hibernate框架中的構(gòu)件,實現(xiàn)IDataContext接口。Configure中包含數(shù)據(jù)庫連接的配置文件。Mappingfile是用于定義對象一關(guān)系映射的文件。DataContext的實例根據(jù)數(shù)據(jù)庫連接配置和對象一關(guān)系映射關(guān)系,完成對數(shù)據(jù)庫的訪問操作。

      2.2 領(lǐng)域?qū)?/p>

      領(lǐng)域?qū)又杏蠭Service、Service和Entity 3個構(gòu)件,如圖3所示。其中IService中定義了一組接口ISubsystem_1,ISubsytem 2,……,ISubsystem_N,用于封裝子系統(tǒng)功能,并為用戶界面層提供業(yè)務(wù)服務(wù)。Service中包含了一組業(yè)務(wù)類Subsystem 1,Subsystem 2,……,Subsystem_N,用于描述IService中定義的子系統(tǒng)功能接口,這些業(yè)務(wù)類可以通過訪問層中的IDataContext接口數(shù)據(jù)實現(xiàn)對數(shù)據(jù)的訪問。Entity中定義了實體對象及其之間的關(guān)系。Entity又由Entityobject、ErrInf0和業(yè)務(wù)實體類構(gòu)成,如圖4所示。其中EntiyObject抽象類聲明了用于數(shù)據(jù)校驗的抽象方法valid,Errlnfo類封裝了錯誤字段和錯誤信息,BusinessEntity 1,BusinessEntity 2,……,BusinessEntity N是一組業(yè)務(wù)實體類,用于封裝業(yè)務(wù)服務(wù)過程中需要處理的數(shù)據(jù),通過繼承EntityOb~iect類實現(xiàn)數(shù)據(jù)校驗的抽象方法。

      2.3 用戶界面層

      UI層包括View、ViewModel和ViewController構(gòu)件,如圖5所示。其中View構(gòu)件用于定義一組JSP頁面WebPage 1,WebPage2,……,WebPage N。ViewModel為渲染JSP頁面提供數(shù)據(jù)或者保存從JSP頁面獲取的數(shù)據(jù)。ViewControUer中定義了一組JSP頁面請求處理的動作Action 1,Action 2,……,Action N等。這些動作通過調(diào)用領(lǐng)域?qū)又械臉I(yè)務(wù)服務(wù)接口完成具體的業(yè)務(wù)處理過程。

      3、基于AF4JAVA框架的軟件設(shè)計實踐教學(xué)過程

      基于AF4JAVA框架開展軟件工程實踐教學(xué)的總體目標(biāo)是:首先通過對AF4JAVA框架的講解,使學(xué)生能理解抽象的軟件設(shè)計理論知識,了解如何使用該框架進(jìn)行設(shè)計工作。然后讓學(xué)生通過模擬真實開發(fā)場景,在AF4JAVA框架和與之相關(guān)的軟件設(shè)計相關(guān)文檔模板等教學(xué)資源的支持下,完成對給定的實踐項目的軟件設(shè)計方案,以達(dá)到培養(yǎng)和提高學(xué)生軟件設(shè)計的實踐能力。

      基于AF4JAVA框架的軟件工程實踐教學(xué)過程可分為初始階段、計劃階段、實施階段和評審階段4個階段。

      1)初始階段。

      該階段主要讓學(xué)生學(xué)習(xí)AF4JAVA框架,并明確軟件設(shè)計相關(guān)文檔的書寫要求。首先,教師在課堂教學(xué)中通過“用戶在線注冊”的簡單例子剖析基于AF4JAVA框架的軟件設(shè)計過程,使學(xué)生了解該框架的特點、內(nèi)容和用法。然后,將學(xué)生分成人數(shù)為4~5人的小組,并在組內(nèi)討論構(gòu)建AF4JAVA框架中使用的軟件體系結(jié)構(gòu)風(fēng)格、設(shè)計模式,以及遵循的設(shè)計原則等軟件設(shè)計理論知識。進(jìn)一步,講解基于AF4JAVA框架的UML設(shè)計模型、設(shè)計計劃書和設(shè)計規(guī)則約說明書等軟件設(shè)計相關(guān)文檔模板。最后,選定一個規(guī)模合適的實踐項目,給出其需求規(guī)格說明書,并要求學(xué)生分組討論該項目需求。endprint

      2)計劃階段。

      該階段主要是各個小組按照基于AF4JAVA框架的項目設(shè)計的工作計劃書模板,制訂實踐項目的設(shè)計計劃書。制訂計劃書過程主要步驟為:①按照項目需求規(guī)格說明書,將待開發(fā)軟件系統(tǒng)劃分成若干子系統(tǒng),確定這些子系統(tǒng)中用例的優(yōu)先級,并進(jìn)行排序。②將每個子系統(tǒng)的設(shè)計任務(wù)進(jìn)行分割,并將這些分割后的任務(wù)分配給小組成員,設(shè)定完成期限,估算完成每個子系統(tǒng)設(shè)計任務(wù)需要迭代的次數(shù),據(jù)此估算完成每個子系統(tǒng)設(shè)計需要的時間。③制訂小組討論會的計劃,要求在每次迭代完成時進(jìn)行必要的組內(nèi)評審和回顧,保證設(shè)計的質(zhì)量。

      3)實施階段。

      該階段中項目小組按照項目設(shè)計計劃書開展工作,建議采用迭代增量式的軟件設(shè)計過程,如圖6所示。下面對該過程中的每個步驟進(jìn)行介紹。

      步驟1(靜態(tài)結(jié)構(gòu)的設(shè)計):按照計劃書中任務(wù)分割和分配情況,利用基于AF4JAVA框架的UML設(shè)計模型中預(yù)定義的類和接口,小組成員使用UML類圖說明某一子系統(tǒng)的用戶界面層、領(lǐng)域?qū)釉O(shè)計和數(shù)據(jù)層中包含的類,以及3個層次間的接口設(shè)計。

      步驟2(動態(tài)行為的設(shè)計):小組成員使用UML活動圖、順序圖說明該子系統(tǒng)各層次內(nèi)部、層次之間的交互以及外部與子系統(tǒng)之間的交互。

      步驟3(設(shè)計規(guī)約的書寫):根據(jù)步驟l和步驟2得到的設(shè)計模型,按照AF4JAVA框架的設(shè)計規(guī)約說明書模板,書寫該待建子系統(tǒng)的設(shè)計規(guī)約說明。

      步驟4(組內(nèi)評審):小組成員通過討論會評審該次迭代的設(shè)計結(jié)果。評審的結(jié)果決定小組是否調(diào)整后續(xù)的迭代過程。同時在討論會上也要回顧此次迭代過程中好的和不好的做法,幫助提高后續(xù)設(shè)計工作的效率。

      重復(fù)步驟1~步驟4,直至完成整個項目的設(shè)計方案。

      4)評審階段。

      最后,以項目答辯的形式,各組匯報自己的設(shè)計工作完成情況。答辯時,必須提交項目設(shè)計的工作計劃書、設(shè)計說明文檔和答辯演示文稿。根據(jù)各組完成設(shè)計工作的表現(xiàn),教師進(jìn)行講評和最后總結(jié)。

      4、結(jié)語

      軟件框架AF4JAVA為學(xué)生提供了一種直觀的、有效的軟件設(shè)計的教學(xué)資源。實踐證明,基于AF4JAVA框架的軟件設(shè)計實踐教學(xué)過程,幫助了學(xué)生理解軟件設(shè)計的抽象概念,同時也使學(xué)生能更好地進(jìn)行軟件設(shè)計實踐,進(jìn)而改善軟件工程實踐教學(xué)的效果。下一步,我們將繼續(xù)完善該框架的內(nèi)容,優(yōu)化基于該框架的軟件設(shè)計實踐教學(xué)過程。endprint

      猜你喜歡
      軟件設(shè)計軟件工程實踐教學(xué)
      基于STC單片機(jī)的廚房智能安全管控系統(tǒng)的設(shè)計
      基于STM8S903K3的序列打螺絲夾具的軟件設(shè)計
      依托工作室的軟件工程實踐教學(xué)研究
      基于工程教育認(rèn)證的《軟件工程》課程教學(xué)質(zhì)量建設(shè)研究 
      關(guān)于提高軟件工程實踐教學(xué)質(zhì)量的幾點思考
      JCI標(biāo)準(zhǔn)下發(fā)送調(diào)配部軟件設(shè)計及應(yīng)用
      關(guān)于如何創(chuàng)新和完善計算機(jī)軟件工程管理的探討
      茶學(xué)專業(yè)校企合作實踐教學(xué)探索
      考試周刊(2016年79期)2016-10-13 23:35:16
      《電氣工程畢業(yè)設(shè)計》 課程的教學(xué)設(shè)計
      考試周刊(2016年79期)2016-10-13 23:26:02
      高職院校商務(wù)禮儀課程教學(xué)改革探索芻議
      华阴市| 招远市| 遂川县| 柏乡县| 平原县| 板桥市| 嵊州市| 瑞丽市| 长春市| 永川市| 和平区| 吉安市| 云龙县| 曲阳县| 汝阳县| 呼和浩特市| 澄迈县| 洪泽县| 泽普县| 右玉县| 武夷山市| 海口市| 清水河县| 新化县| 张掖市| 吉木乃县| 顺平县| 噶尔县| 红原县| 惠水县| 西宁市| 错那县| 罗平县| 白玉县| 华蓥市| 于都县| 沙河市| 东明县| 鹤壁市| 南阳市| 建湖县|