亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        軟件構造課程設計及其課程群

        2015-04-27 01:12:12李勁華
        實驗室研究與探索 2015年10期
        關鍵詞:數(shù)據(jù)結構課程設計編程

        李勁華, 陳 宇

        (青島大學信息工程學院,山東 青島 266071)

        ?

        軟件構造課程設計及其課程群

        李勁華, 陳 宇

        (青島大學信息工程學院,山東 青島 266071)

        計算機課程設置中缺乏將分散在各個課程中的軟件開發(fā)理論、技術與工具綜合應用的實踐課程,是造成難以培養(yǎng)具有開發(fā)一定規(guī)模軟件能力的因素。對此,設置了一門獨立的軟件開發(fā)綜合實驗課——軟件構造課程設計,強化軟件技術集成及開發(fā)能力。通過整合相關課程的內(nèi)容,設計了一個面向軟件開發(fā)技術、培養(yǎng)工程技術人才的軟件構造課程群。該課程群涵蓋了計算機課程體系中的編程基礎、系統(tǒng)軟件、軟件過程的課程,以及新增的軟件構造課程設計。給出了軟件構造課程設計的教學設計、軟件構造課程群的構成,以及針對不同人才類型的課程群的教學實施方案。比較并分析了相關的教學研究。

        課程群; 軟件構造; 綜合課程設計; 實踐教學; 工程技術型人才

        0 引 言

        隨著計算機與網(wǎng)絡通信日益廣泛的應用,出現(xiàn)了各種形態(tài)的應用軟件,如傳統(tǒng)的桌面軟件、基于瀏覽器-服務器的Web應用、以及移動應用等。單一的計算機程序設計語言、軟件技術和工具已經(jīng)不能滿足日常應用軟件的研制。開發(fā)一個實用的應用程序必須要掌握程序設計基礎、軟件開發(fā)技術(如面向對象、框架與API應用、設計模式、軟件設計)、數(shù)據(jù)庫系統(tǒng)、網(wǎng)絡與Web知識以及開發(fā)流程等。僅就計算機語言方面,編寫一個應用程序除了通用編程語言(如C、C++、C#、Java),通常還要使用數(shù)據(jù)庫編程語言SQL,或者Web語言(HTML、JavaScript等)。而且,一個應用軟件的開發(fā)不單單是設計算法、逐句地編寫代碼,還包括問題理解與分析、接口設計、框架選擇、API查詢與使用、代碼管理、軟件測試等活動。

        另一方面,國家的經(jīng)濟建設和社會發(fā)展,國際化、全球化和多元化的趨勢,對我國的高等教育、特別是工科教育提出了新的、更高的要求。高等工科教育必須回歸教育本質,著力培養(yǎng)面向世界、面向工程、面向應用的具有創(chuàng)新意識和創(chuàng)新能力的工程技術人員。計算機及其軟件作為一個基礎性的工具,與各個學科、各個應用領域的結合與滲透更加密切、更加深入,社會需要越來越多的應用軟件開發(fā)、維護和管理工程師。要求他們掌握現(xiàn)代軟件開發(fā)的各種技術、方法和工具,能綜合運用計算機原理、軟件技術以及應用領域的知識,開發(fā)解決實際問題、滿足社會需要的各種類型的應用軟件。

        在高等教育體系中,軟件開發(fā)人才主要由計算機科學與技術及其相關專業(yè)培養(yǎng),軟件開發(fā)也是機電、自動化、通信等大多工科學生應該掌握的基本能力。傳統(tǒng)的計算機本科教育在課程體系、課程內(nèi)容、教學方法和手段方面的更新速度比不上專業(yè)技術的發(fā)展。其教學重原理輕技術,重理論輕實踐,重知識輕系統(tǒng),已經(jīng)呈現(xiàn)出各種弊端。特別是計算機軟件教育無法滿足對作為軟件工程師的需求,成為我國經(jīng)濟發(fā)展的一個瓶頸。

        為解決我國目前的高等教育問題以及社會亟需的工程技術人才,國家提出了多項教改舉措,包括成立國家示范性軟件學院、設置軟件工程一級學科、啟動卓越工程師培育計劃、啟動高等教育質量工程、鼓勵開展校企合作等。

        本文針對培養(yǎng)軟件工程師的目標,總結了我們在課程體系方面的教學改革工作。以典型的計算機科學的專業(yè)課程為例,分析其在培養(yǎng)軟件開發(fā)工程師方面的不足。指出目前課程體系的主要問題,是缺乏培養(yǎng)學生綜合運用學習的計算機專業(yè)知識和軟件開發(fā)技術、構造實際運行的計算機軟件的集成能力。提出以軟件相關的專業(yè)課程為基礎的課程群,以及一門綜合實踐課程——軟件構造課程設計,實現(xiàn)培養(yǎng)工程技術人員產(chǎn)品開發(fā)能力的教學目的,為進一步通過軟件工程的實習實訓等實踐課程,培養(yǎng)學生的團隊合作、組織計劃、項目管理、規(guī)范過程等職業(yè),成為軟件工程師奠定扎實的技術基礎。

        1 問題分析

        現(xiàn)代軟件開發(fā)方法,包括極限編程等敏捷軟件開發(fā),突出的特點是每個程序員都具有高超的軟件開發(fā)能力。他們熟練掌握多種類型的編程語言、框架與中間件、設計模式,熟練掌握軟件設計與測試技術,熟悉軟件開發(fā)的調(diào)試、測試、代碼管理等方法和工具,特別是擁有把實際問題轉換成可實際運行軟件的分析、設計和構造的綜合技術能力,同時還要善于和同行、和用戶進行溝通。

        傳統(tǒng)計算機學科的教學體系包含了計算機系統(tǒng)及軟件開發(fā)知識的課程,如高級語言程序設計、數(shù)據(jù)結構與算法、數(shù)據(jù)庫、計算機網(wǎng)絡、操作系統(tǒng)、編譯原理等。這些課程包含了與軟件開發(fā)相關的許多重要的基本原理和技術方法,但是設置和講授他們的主要目的,甚至有些課程的唯一目的是為了理解計算機系統(tǒng)、研制計算機及其系統(tǒng)軟件。作為基礎課程的“高級語言程序設計”不是以培養(yǎng)學生系統(tǒng)地開發(fā)軟件為主要教學目的。學習編程的一個重要目的是為了更好地理解計算機系統(tǒng)、理解操作系統(tǒng)、編譯器或者數(shù)據(jù)庫的原理,研發(fā)操作系統(tǒng)、編譯系統(tǒng)或者數(shù)據(jù)庫管理系統(tǒng)DBMS。而且,這些課程基本上都是以講授原理為主。學習完成這些偏重理論的課程,并不能提升學生用編程解決問題的能力。

        有些專業(yè)在這些課程之后學習“軟件工程”,課程內(nèi)容包括軟件過程、產(chǎn)品工程、工程管理、組織計劃、標準規(guī)范等廣泛的內(nèi)容。編程程序不是本課程的重點。

        除了理論教學,計算機學科的教學體系中還配置了實踐教學,包括課程實驗、課程設計、專業(yè)實習和畢業(yè)設計。

        課程實驗的目的是加深理解理論課中講解的抽象概念、原理和方法。課程實驗的類型主要是觀察、驗證、操作以及少量的設計和應用。由于課時限制,無法在實驗課上實施涵蓋問題分析、系統(tǒng)設計直至實現(xiàn)產(chǎn)品開發(fā)過程或技術應用。例如,數(shù)據(jù)結構的實驗大多是確定了數(shù)據(jù)結構和算法的問題,讓學生編程實現(xiàn)一種數(shù)據(jù)結構及其操作;或者使用確定的數(shù)據(jù)結構解決一個小問題。

        獨立的課程設計可以彌補課程實驗的不足。它利用較為充足的時間實施具有綜合性、設計性的實踐課程,解決較為復雜的問題。在計算機學科的課程體系中[1-4],通常包括“操作系統(tǒng)課程設計”、“數(shù)據(jù)庫課程設計”、“計算機網(wǎng)絡課程設計”等。這些課程的目的主要是為某一門課程服務,培養(yǎng)學生綜合運用一門課程的主要知識。即使是“軟件工程課程設計”,其重點是用戶需求分析、軟件設計、團隊合作、組織計劃等產(chǎn)品工程,如要再培養(yǎng)學生綜合運用軟件開發(fā)的技術和工具,或者簡單地分析應用領域的知識和業(yè)務流程,已經(jīng)超出了該課程的范圍。

        實習實訓與畢業(yè)設計從更廣闊的場景,綜合運用所學的多種知識、各種技能和多種能力,完整地體現(xiàn)團隊合作完成一個軟件系統(tǒng)的全部開發(fā)過程——包括開發(fā)技術、產(chǎn)品工程以及團隊合作、項目計劃與控制等一些非技術性因素。由于學生還未掌握如何綜合運用各種專業(yè)技術開發(fā)產(chǎn)品,在這些綜合實踐過程,經(jīng)常會因為個人開發(fā)技術的能力不足而導致整個項目難以完成。從而達不到教學目的。

        在培養(yǎng)解決實際問題、具有團隊合作精神的軟件工程師方面,目前與課程體系存在缺陷。學生在完成編程基礎以及數(shù)據(jù)庫、操作系統(tǒng)、編譯原理等系統(tǒng)軟件課程后,缺乏綜合運用散落在這些課程中的軟件知識完成產(chǎn)品開發(fā)的能力,達不到到高級程序員(技術人員)的水平。另一方面,“軟件工程”課程試圖解決大中型軟件開發(fā)中的團隊合作、開發(fā)流程、項目組織與管理等方面的問題,很少包含軟件構造的內(nèi)容。該課程的實驗也是為了理解和掌握相關的知識。實驗通常包含系統(tǒng)分析、設計或者項目管理活動,很少包含編碼實測試等現(xiàn)的工作。

        綜上分析,我們在計算機專業(yè)核心課程后增加一門獨立的綜合實踐課——“軟件構造課程設計”。通過它整合軟件開發(fā)的編程語言、軟件設計、開發(fā)技術、軟件測試與代碼管理等技能、方法和工具,首先培養(yǎng)學生成為能獨立地集成技術、產(chǎn)品開發(fā)的高級程序員,再通過后續(xù)課程(包含軟件工程綜合課程設計和實習)成為優(yōu)秀的軟件工程師。

        2 課程群及其綜合課程設計

        2.1 “軟件構造技術”課程群

        計算機學科除了計算機科學與技術,還有網(wǎng)絡工程、軟件工程、信息安全、物聯(lián)網(wǎng)等專業(yè)方向。它們都設置了與軟件開發(fā)技術相關的學科基礎核心課程:高級語言程序設計、面向對象程序設計、數(shù)據(jù)庫、操作系統(tǒng)、計算機網(wǎng)絡、編譯原理、軟件工程,以及一些選修課如Web應用開發(fā)、軟件測試、設計模式、算法設計與分析。這些課程包含了開發(fā)軟件的基本原理、方法、技術和流程,對培養(yǎng)學生——無論是計算機專業(yè)的、還是應用計算的——通過程序設計解決問題的能力,都有明顯的直接作用。但是,每門課程相對完整獨立,不是針對軟件開發(fā)技術而專門設置的。除了程序設計的兩門課程,其它課程的內(nèi)容偏重概念和原理。目前的課程體系中還沒有“軟件開發(fā)”或類似的課程。

        可以運用課程群的教學方式,更好地實現(xiàn)培養(yǎng)獨立地運用程序設計解決問題的能力的目標。圍繞上述的計算機核心課程,增設一門綜合實踐課“軟件構造課程設計”,形成“軟件構造技術”課程群。如圖1所示。

        圖1 基于專業(yè)核心課程的軟件構造課程群

        新增“軟件構造課程設計”的目的是整合分散在核心課程的軟件開發(fā)原理、流程、技術和工具,通過集中的實踐教學,培養(yǎng)學生的技術集成能力、提升獨立地開發(fā)軟件能力。課程群建設及新增課程的基本原則是:

        (1) 相關性。針對培養(yǎng)目標,基于軟件開發(fā)技術的多門課程設計實踐課程。

        (2) 穩(wěn)定性。只增加一門綜合實踐課,不改變其它課程設置。

        (3) 靈活性。針對不同的人才類型可調(diào)整課程的授課內(nèi)容、組織和授課方式。

        (4) 集成性。提升產(chǎn)品開發(fā)、工具應用的技術集成能力,采用簡約的軟件開發(fā)流程——平滑編程與測試(實現(xiàn)),整合分析、設計與實現(xiàn)(開發(fā))的活動。

        (5) 及時性。盡早培養(yǎng)學生的技術集成與應用能力,盡早多練、熟能生巧,逐步走向專業(yè)化。

        (6) 技術性。盡量減少組織計劃、團隊管理及成員間的協(xié)商、交流、制約等非技術因素。

        2.2 “軟件構造課程設計”的設計

        軟件開發(fā)者要具備綜合運用多種程序開發(fā)理論、軟件技術和工具,課程群中的課程涵蓋了不同方面、不同層次的開發(fā)知識和技能:

        (1) 高級語言程序設計。計算思維、用編程解決問題,代碼調(diào)試。

        (2) 面向對象程序設計。代碼復用,面向對象編程范式,軟件測試,IDE。

        (3) 數(shù)據(jù)結構。數(shù)據(jù)結構與算法基礎,IDE等基礎。

        (4) 數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫基礎,SQL語句編程。

        (5) 計算機網(wǎng)絡。網(wǎng)絡編程、Web應用的開發(fā)。

        (6) 軟件工程。軟件產(chǎn)品工程,軟件開發(fā)的基本原則、軟件設計、測試、代碼管理。

        然而,開發(fā)一個軟件產(chǎn)品需要系統(tǒng)地集成相關的知識、技能和工具,整合貫穿各個階段的多個活動。針對培養(yǎng)目標和當前課程體系的不足,增設“軟件構造課程設計”目的就是整合、增補、加強散落在上述課程中與軟件開發(fā)技術相關的知識,主要包含:

        (1) 軟件構造的一般原則。模塊、信息隱藏、代碼重用、抽象,增量、迭代開發(fā)。

        (2) 軟件構造的常用技巧。契約式設計、防御式編程、異常處理、配置式編程、表驅動構造技術、分布式程序設計。

        (3) 軟件設計。軟件設計語言如UML、E-R圖、程序結構圖,軟件架構(如B/S)、框架(如MVC)與接口APIs的應用,類的設計,用戶交互設計,數(shù)據(jù)庫設計。

        (4) 軟件構造工作要素。編碼及其規(guī)范、工具使用(如IDE、SVN)、單元測試技巧(如JUnit)、性能優(yōu)化。

        (5) 軟件構造活動。部分簡單的設計,編碼和調(diào)試,單元測試。

        “操作系統(tǒng)原理”的主要內(nèi)容不屬于開發(fā)應用軟件的必要知識而不是“軟件構造課程群”的核心課程。傳統(tǒng)“軟件工程”課程的內(nèi)容龐大、復雜,包含軟件工程的基本理論、開發(fā)方法、過程模型以及工程管理、標準規(guī)范、職業(yè)道德等,不同的專業(yè)方向可以選學不同的內(nèi)容,有些專業(yè)甚至可以不設。有關軟件的設計、測試和代碼配置等知識可以在新增的“軟件構造課程設計”簡單講解,通過開發(fā)實踐掌握。

        課程群中每門課程含實驗,還可以設置相應的課程設計。在計算機學科的課程體系中,新增課程屬于技術開發(fā)系列,是學科的必修課。而后續(xù)的“軟件工程課程設計”屬于工程系列,作為學科的選修課。

        2.3 課程群的教學實施

        借鑒不同的人才教育分類法以及我校定位,把軟件人才劃分成學術型和工程技術型。針對不同類型、不同專業(yè)方向的學生,對課程群制定了不同的教學方案。

        2.3.1 課程群核心專業(yè)課程的教學實施

        實施軟件構造課程群的基本原則是,對工程技術類學生,簡化每門課程中的基礎理論、形式化方法、證明等方面的內(nèi)容;學習專業(yè)課程的目的是為了理解計算機系統(tǒng)的原理、掌握相關技術;加強技術實現(xiàn)和應用方法的內(nèi)容。

        受篇幅所限,下面以計算機學科經(jīng)典的數(shù)據(jù)結構和算法課程為例,說明針對不同類型人才的教學。

        表1 專業(yè)核心課程與培養(yǎng)類型的關系

        表2 數(shù)據(jù)結構和算法課程與培養(yǎng)類型的關系

        傳統(tǒng)的高等教育的目標是培養(yǎng)學術型人才,這兩門課的教學主要是通過研究經(jīng)典數(shù)據(jù)結構、算法策略及偽代碼實現(xiàn),理解如何設計數(shù)據(jù)結構和算法,通過復雜度分析選擇數(shù)據(jù)結構和算法,鍛煉其邏輯思維能力和想象力,進而設計新的算法。

        對工程技術類型的學生,在產(chǎn)品開發(fā)中如何使用這些數(shù)據(jù)結構/算法比研究它們的結構、性質,甚至用偽代碼或C語言去實現(xiàn)更重要。有關算法的基本內(nèi)容,如復雜性分析、基礎算法可以通過數(shù)據(jù)結構來傳授。更多復雜的算法、理論知識可以作為選修課。而且,現(xiàn)代編程語言如C#、Java、Python等都提供了實現(xiàn)基本數(shù)據(jù)結構及其算法的類庫,學生可以通過閱讀類庫代碼學習如何用具體的開發(fā)語言實現(xiàn)數(shù)據(jù)結構和算法,同時擴大編程語言知識、提高編程水平。

        在工程技術類教學中,可以對不同專業(yè)方向將這兩個課程合并。例如,在“軟件工程-服務外包”專業(yè)中,我們在Java方向的技術體系中選用了“Java數(shù)據(jù)結構”教材。在“生物技術(基因組學與生物信息學)”專業(yè)跨組學的創(chuàng)新實驗班中,針對“軟件開發(fā)與信息分析”方向開設了“數(shù)據(jù)結構與算法基礎”的課程,用python實現(xiàn)數(shù)據(jù)結構及基本算法。

        2.3.2 軟件構造課程設計的教學實施

        新增的“軟件構造課程設計”安排在學完專業(yè)核心課程之后的5學期開設。課程采用適合計算機軟件開發(fā)的案例教學——項目驅動方式,要求每個學生獨立地完成一個可運行軟件的開發(fā)工作,編寫代碼2 000行左右,工作量4人/周(其中課堂集中教學2人/周)。提供了下列三個教學安排:

        方式一:正常教學,共18周,每周4學時。

        方式二:實訓方式,共2周,每周40學時。

        方式三:小學期制,共4周,每周20學時。

        為使學生在教學時間內(nèi)完成任務、突出軟件構造的綜合訓練,任課教師要提供軟件開發(fā)案例包,包含較為詳細的系統(tǒng)功能描述,或者有系統(tǒng)設計、主要代碼結構,最好提供一個完整的系統(tǒng)實現(xiàn),以便每個學生能動手操作、完成實現(xiàn)一個可以運行的軟件。

        提供的課程開發(fā)案例要滿足下面的基本要求:

        不涉及太多的應用領域的知識,使用簡單常見的應用架構,簡化、集成的開發(fā)過程(要求規(guī)范的過程和管理,突出增量、迭代的基本原理,重點在部件級軟件設計、編碼-集成和測試),不要求復雜的軟件實現(xiàn)、但要集成2種技術(如GUI開發(fā)、用戶交互、數(shù)據(jù)庫開發(fā)、Web應用開發(fā)、多線程/并發(fā)程序設計等),結果是可運行的、具有一定功能的軟件(不追求完整性、穩(wěn)定性、性能等質量屬性)。

        案例例子:游戲類——連連看,俄羅斯方塊等,撲克類游戲;簡化的典型應用(模擬)系統(tǒng)——如圖書管理、課堂管理、畢業(yè)設計管理、家庭安保、家庭保健、電梯控制系統(tǒng)、智能家居服務、ATM終端。

        學生實踐的重點:軟件設計技術,軟件構造技術,軟件測試(特別是編碼測試與框架xunit),版本控制,代碼復用——APIs、庫、框架等,工具的熟練使用與環(huán)境搭建,開發(fā)活動的集成(增量、迭代,設計與實現(xiàn)的平滑,編程與測試的平滑融合),功能驗證(測試、設計審查、代碼分析、代碼走查)等。

        3 結 語

        今后,我們將依據(jù)“計劃-執(zhí)行-檢查-行動”的質量管理框架,不斷改進“軟件構造課程群”的設計與實施。主要工作包括:

        (1) 改進課程群。調(diào)整群中的課程設置、每門課的教學內(nèi)容和教學方法。對單個核心課程實行分類教學,側重原理及其應用。重構“軟件工程”課程的內(nèi)容,以適應不同專業(yè)方向。增補其它相關技術課程,如Web應用開發(fā)基礎。

        (2) 完善“軟件構造課程設計”及其案例。完善課程群及其綜合課程設計的案例要求和規(guī)范,針對不同專業(yè)方向,在信息安全、電子商務、移動計算、數(shù)據(jù)挖掘、嵌入式軟件、網(wǎng)絡工程等領域開發(fā)合適的案例庫。特別是,開發(fā)能在不同課程中共享的綜合案例。

        (3) 建設技術開發(fā)系列課。分別以C/C++,C#和Java為基礎,在數(shù)據(jù)結構、計算機網(wǎng)絡、Web開發(fā)、軟件構造等課程中,采用相同的編程語言,形成軟件構造課程群的技術系列課程。如在“數(shù)據(jù)結構”課程中,講授的設計、算法部分與編程語言無關,而在應用、實現(xiàn)的實驗課可分別采用不同的編程語言。

        [1] 王志英,蔣宗禮,楊 波,等. 計算機科學與技術專業(yè)實踐教學體系與規(guī)范研究[J].中國大學教育,2009(2):42-44.

        [2] Curriculum of computer science and technology disciplines of China universities[M]. Beijing: Tsinghua University Press, 2009.

        [3] Yanmin Chen, Xizhong Lou, Jingwen Zhan, “Research on teaching reform of computer basic course in colleges and universities,”[C]//Proc 3rd International Conference on Teaching and Computational Science(WTCS '09), Shenzhen, China, Dec 2009:231-236.

        [4] Duanyang Zhao, Qingxiang Xu and Wuheng Zuo, “Research and Practice in the Curriculum System for Majors in Software Engineering,”[C]//Proc 2010 2nd International Workshop on Education Technology and Computer Science, Wuhan, China, Mar 2010:417-420.

        [5] 夏建國. 基于人才分類理論審視技術本科教育人才培養(yǎng)目標[J].中國高教研究,2007(5):5-7.

        [6] 李慧仙. 論高校課程群建設[J].江蘇高教, 2006(6):73-75.

        [7] 王 寧,王 珊. 數(shù)據(jù)管理課程群的構建和實施方案研究[J].中國大學教學, 2010(6): 62-65.

        [8] 萬 臣,謝 芳, 胡 泉. 計算機專業(yè)程序設計課程群的建設與研究[J].合肥工業(yè)大學學報(社會科學版),2009(2):23(1),33-36.

        [9] Zhixiao Wang and Fanrong Meng. Core basic course group construction in computer major,[C]//Proc 6th International Conference on Computer Science and Education(ICCSE '11), SuperStar Virgo, Singapore, Aug, 2011: 577-579.

        [10] Christopher Connolly, Gabriele Meiselwitz, “Integrating software engineering in computer programming education,[C]//Proc. 10th ACM conference on SIG-information technology education(SIGITE '09), Fairfax, USA, Oct, 2009: 50-54.

        [11] 劉 超. 關于“軟件工程”課程體系的基本架構及課程系列設置的探討[J].計算機教育,2009(21):22-26.

        [12] 駱 斌,臧斌宇,丁二玉. 軟件工程專業(yè)教育知識體系的分析、重構與求精[J]. 計算機教育,2010(23):2-8.

        [13] 駱 斌. 軟件工程與計算(《卷一:軟件開發(fā)的編程基礎》,《卷二:軟件開發(fā)的技術基礎》,《卷三:團隊與軟件開發(fā)實踐》)[M].北京:機械工業(yè)出版社,2012.

        [14] Bourque P, Fairley R E,etal. Guide to the Software Engineering Body of Knowledge[ED]. Version 3.0,Chapter 3,Computer Society, 2014; www.swebok.org

        [15] Charlie McDowell, Linda Werner, Heather E. Bullock,etal. Pair programming improves student retention, confidence, and program quality[J]. Communications of the ACM, 2006,49(8):90-95.

        Course Design of Software Construct and Its Related Course Group

        LIJin-hua,CHENYu

        (College of Information Engineering, Qingdao University, Qingdao 266071, China)

        It lacks a comprehensive practice course that integrates the software development theories, techniques and tools, which are scattered across different courses in computer science curriculum. That is one of the reasons that we failed to educate students with the competence of developing large-scale software applications. A separate software comprehensive experimental course named software constructs course design is setup, for the purpose of strengthening the competence of software integration and development. The practice course is designed for support a course group covering courses of programming foundation, data structures and algorithms, and software process. The paper describes constitution of the course group, curriculum design of the practice course, and different teaching implementation plans aiming at different types of students. Related teaching researches are comparatively analyzed.

        course group; software construction; comprehensive course design; practice teaching; engineering talents

        2015-01-05

        李勁華(1963-),男,湖南長沙人,博士,教授,系主任,從事計算機科學、軟件工程、項目管理、軟件工程學科教學。

        Tel.:13969678995,0532-85952324;E-mail:lijh@qdu.edu.cn

        TP 311

        A

        1006-7167(2015)10-0084-05

        猜你喜歡
        數(shù)據(jù)結構課程設計編程
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        龍鳳元素系列課程設計
        少兒美術(2019年1期)2019-12-14 08:01:34
        “翻轉課堂”教學模式的探討——以《數(shù)據(jù)結構》課程教學為例
        高職高專數(shù)據(jù)結構教學改革探討
        中國市場(2016年45期)2016-05-17 05:15:48
        基于Articulate Storyline的微課程設計與開發(fā)
        中小學電教(2016年3期)2016-03-01 03:40:53
        TRIZ理論在“數(shù)據(jù)結構”多媒體教學中的應用
        基于自動化系統(tǒng)的PLC課程設計
        亚洲专区一区二区在线观看| 亚洲av午夜福利精品一区| 99热爱久久99热爱九九热爱| 国产女精品视频网站免费| 国产永久免费高清在线观看视频| 超碰青青草手机在线免费观看| 日韩在线 | 中文| 亚洲日本中文字幕天天更新| 中文字幕AⅤ人妻一区二区| 中文字幕久久熟女人妻av免费| 精品一区中文字幕在线观看| 野花社区视频在线观看| 中日韩欧美在线观看| 日韩成精品视频在线观看| av免费播放网站在线| 性大毛片视频| 男人j进女人p免费视频| 国产av午夜精品一区二区入口| 无码人妻丰满熟妇区免费| 熟妇的荡欲色综合亚洲| 亚洲是图一区二区视频| 亚洲最大不卡av网站| 97人伦影院a级毛片| 97久久超碰国产精品2021| 精品国产日韩无 影视| 好看的日韩精品视频在线| 国产乱子伦农村xxxx| 亞洲綜合一區二區三區無碼| 一区二区三区日本在线| 亚洲性色av一区二区三区| 亚洲熟妇丰满大屁股熟妇| 国产高清天干天天视频| 全亚洲高清视频在线观看| 亚洲av日韩精品久久久久久久| 亚洲第一看片| 日韩精品视频中文字幕播放| 国产精品亚洲色婷婷99久久精品| 精品久久久久久久中文字幕| 久草视频华人在线观看| 国产毛片视频一区二区| 精品人妻人人做人人爽|