時間:2022-05-29 06:17:29
序論:寫作是一種深度的自我表達。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內心深處的真相,好投稿為您帶來了一篇計算機軟件基礎論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創作。
摘要:計算機軟件開發行業的發展得益于當前信息技術的快速發展和信息受眾不斷增加,當然計算機軟件開發也需要遵循特定的規律,依照其基礎架構原理來進行操作,才能夠保證計算機軟件開發朝著有效性的方向發展。且計算機軟件設計的過程,就是在邏輯關系的引導下,實現軟件內容的重新確定,進而形成對應的基礎架構,這是軟件運行的前提和基礎,甚至會影響到后期軟件系統的維護和管理工作。由此積極探討計算機軟件開發的基礎架構原理,是很有必要的。文章由此入手,積極探究計算機軟件開發的概況,進而分析計算機軟件開發的基礎架構原理。
關鍵詞:計算機軟件開發 基礎架構原理 信息技術
計算機軟件設計的過程,就是在邏輯關系的引導下,實現軟件內容的重新確定,進而形成對應的基礎架構,這是軟件運行的前提和基礎,甚至會影響到后期軟件系統的維護和管理工作。由此積極探討計算機軟件開發的基礎架構原理,是很有必要的。
1 計算機軟件開發的概況
1.1 計算機軟件開發的概況
計算機性能的不斷提升,使得人機交互效益得到不斷展現,越來越多的行業開始嘗試以計算機軟件開發的方式,實現自身運營模式的信息化轉變,由此以對應需求為基礎的軟件開發行業得到了快速的發展。計算機軟件開發具備以下的特點:持續性特點,就是軟件開發是一個循環往復的完善過程,在計算機邏輯基礎上,計算機軟件的缺陷是一直存在的,只有不斷的采取措施去修正,才能夠更好的發揮計算機軟件的性能;針對性比較強,往往都是針對于某一行業或者領域而開展的計算機軟件開發工作,其開發工作的目的性更強,對于效益的追求也是更加強烈的。
1.2 計算機軟件開發基礎架構的重要性分析
當前計算機軟件開發過程中,使用量比較多的基礎架構,就是三層結構體系,其分別可以歸結為:其一,表示層;其二,邏輯層;其三,數據層。在上述三個層次的基礎上,可以使得軟件的人機交互界面展現出良好的性能,使得邏輯關系和計算機語言之間得以分離,這樣在后期維護和修改的時候,單獨的對人機交互模式進行調整,就可以使得軟件開發的節奏變得更加快捷。由此可見選擇合理的計算機軟件開發基礎架構,對于軟件性能的最大化發揮,對于軟件后期的維護和管理工作質量提升而言,都是有很大幫助的。
2 計算機軟件開發的基礎架構原理分析
2.1 從計算機軟件開發基礎架構需求的角度來看
無論是開發設計怎樣的軟件,都需要在明確開發目的的基礎上進行,也就是需要對于軟件的需求進行全面分析。不同的企業,歸屬的領域不同,所需要展現的功能也是很有差異性的,此時企業都會提出對應的軟件開發需求。在此過程中,計算機軟件開發者與信息企業之間會展開大量的協商工作,對于軟件的功能進行分析,結合企業業務運行特點,實現計算機軟件開發方案的敲定。為了做好需求分析方面的工作,需要特別注意以下幾個方面的工作:建立完善的軟件企業與需求企業之間的溝通機制,保證在軟件需求分析的過程中,能夠充分的了解企業組織的業務特點和規律,保證軟件開發需求能夠更加明確。
2.2 從計算機軟件開發基礎架構編寫的角度來看
計算機軟件開發基礎架構需求分析結果得出之后,就需要進行實際的軟件編寫工作,從當前的實際情況來看,多數使用的是C語言,這種語言的特點為:語言結構結構比較好,編寫操作比較快捷,是當前程序員使用頻率比較多的語言模式。在實際的軟件編寫的過程中,會依照對應的功能劃分,實現不同模塊的敲定,保證不同模塊都能夠發揮自己的功能,此時需要建立對應的函數模式,使用這樣的主函數對于各個模塊進行調節和改善,這樣可以保證結構能夠更好的維護。當前一個計算機軟件的開發工作,都是有多個程序員來共同完成的,這樣可以盡可能的保證軟件編寫工作的高效性。
2.3 從計算機軟件開發基礎架構測試的角度來看
在計算機軟件開發基礎架構編寫工作完成之后,就需要對于軟件的不同功能實現測試,實現對于軟件測試階段的管理和控制,是保證軟件性能發揮的關鍵所在,這也是將對應計算機軟件投入使用之前必然要進行的工作。在此過程中,需要關注以下幾個方面的內容:其一,輸入特定的參數,對于軟件的運行情況進行記錄,驗差運行情況與理論情況之間差異性;其二,使用白盒子和黑盒子的方式去進行測試,同樣對于軟件測試的效果進行記錄,由此實現實際計算機軟件開發工作的順利開展;其三,除了測試工作之外,還應該做好計算機軟件開發基礎架構的維護和管理工作,定期對于軟件的性能發揮進行檢查,并且推出全新的版本,進而實現軟件自身的修復,這樣可以使得其自身的性能得到全面提升。
3 計算機軟件開發基礎架構選擇的基本原則
計算機軟件開發基礎架構的選擇,關系到計算機軟件效能的發揮,牽涉到各行各業信息化的快速發展和進步。在選擇計算機軟件開發基礎架構的時候,需要關注以下幾個方面的內容:其一,樹立軟件設計目標意識,在需求分析的基礎上,對于不同的基礎框架進行選擇;其二,使用先進的邏輯語言和編程技術,對于計算機軟件架構進行合理的編寫和操作,由此才能夠保證基礎架構開發工作的高效性;其三,依照軟件目標功能和結構選擇之間的關系分析,選擇合適的結構,進而使得軟件開發行為朝著有目的性的方向發展和進步;其四,注重計算機軟件開發團隊的塑造,處理好不同模板開發之間的關系,保證計算機軟件基礎結構選擇得更加科學和合理。
4結語
綜上所述,計算機軟件開發過程并不簡單,其中不僅僅涉及到專業領域的知識,還關注到計算機軟件基礎結構的原理,處理好這兩者之間的關系,才能夠保證計算機軟件開發的基礎架構工作朝著更加高效的方向發展和進步。從當前計算機軟件開發基礎架構原理的運用實踐來看,其基礎架構選擇還存在很多不合理的情況,此時就需要采取對應的措施來改善和調整,相信隨著在此方面實踐經驗的積累,計算機軟件開發的基礎架構將會展現出更加大的效能。
摘 要 計算機軟件基礎是一門實踐性強的課程,為增強教學效果,增強學生的編程能力,強調以學生為本,提高學生的學習興趣;實驗教學應盡早介入教學過程,讓學生邊學邊用;建立多層次實驗教學內容,發掘學生實驗潛能;建立多樣化實驗教學方式,方便學生自學。把實驗教學做好做實,既能鞏固理論知識的學習,又能切實提高學生的編程能力。
關鍵詞 計算機軟件基礎;實驗教學;編程能力
計算機軟件基礎是我國高等院校電類非計算機專業本科生的一門基礎課,為相關專業學生打下利用計算機語言編寫程序的基礎,為后續專業課的課程設計、實踐環節以及最后的畢業設計做準備,其重要性不言而喻。然而在實際教學過程中,由于多方面的原因,使得本課程教學效果不佳,學生普遍編程能力不強,甚至影響了后續部分課程的學習。要提高學生的動手能力,關鍵還是要多練。本文在肯定理論教學重要性的前提下,著重就計算機軟件基礎課程的實驗教學部分進行分析,對實驗教學環節的介入、實驗內容的優化以及實驗教學方式等提出一些探討性的做法。
1 堅持“以學生為本”
計算機軟件基礎教學如何實現教學目標,其關鍵的一點就是以誰為出發點,是以教為主,還是以學為主,還是實現教學互動,教學互長,教學互推。從目前的現實狀況來看,以教為主的弊病還很明顯,迫切需要改變,實現以學生為本,實現教學互動。
以“教”為主的模式已經成為制約學生創造性、積極性發揮的重要因素 計算機基礎課程從本質來看應該是一門實操性課程,其涵蓋的內容廣泛且繁雜,而且實驗性強是該課程的基本特點,甚至可以說離開了實驗操作,也就實現不了其課程目的。然而從目前的課程安排狀況來看,以書本理論知識教學為主仍是該課程教學的主流,計算機軟件基礎教學都側重書本理論學習,而忽視了學生實驗環節。實踐證明,這種教學方式就跟學游泳不下泳池,學騎車而沒有自行車一樣,學生在學習計算機軟件基礎知識時,絕大部分是事倍功半,導致學用脫節,無法學以致用。更有甚者,有些學生直到課程結束連最簡單的程序編寫都掌握不了,這既給教師教學造成很大的困惑,也徹底地打擊了學生的自信和學習該門課程的積極性,更遑論實現知識創新,成為軟件人才了,這與教學初衷顯然是不符的。
原因是在現有的教學模式中,課程實驗環節的設置和實驗環節介入的時間發生了問題。從實際情況來看,實驗環節介入越早,實驗安排越多,教學效果也越好。而部分采用邊教學邊實驗,教學與實驗融為一體的教學方式,其實現的教學效果更是明顯。因此,改變現有的以教為主的教學模式,從理論和實踐上探索該門課的一些新的教學方法,已經成為計算機軟件教學題中之義,不斷創新教學方式,才有可能從根本上改變現有的學習費力不討好、效果欠佳的狀況。
深入淺出地解析理論知識是增強學生學習興趣的重要途徑 “學生是教學活動的主體,教學活動要以學生為中心而展開”,這已經成為現代教學理念的主流觀點。從學生學習的心理來看,一方面由于計算機軟件課程是基礎課程,學生對學習開始階段接觸的軟件知識有一定的好奇感,求知欲也相對比較強烈。同時,由于是剛進校門的低年級學生,對大學環境還不是特別了解,仍然具備認真學習的態度,因此,好好學習知識的想法也比較明顯。另一方面是由于目前大學生數量急劇增加,社會就業壓力明顯,學生普遍有學習好專業課,實現良好就業的外在動力。因此,可以說,學生在開始階段的學習興趣是比較濃厚的。但由于語言、算法、數據結構等知識,是進行程序設計所必須具備的基礎知識,而低年級學生在這方面基本沒有知識儲備,對其學習方法也并不適應,而原有的知識結構又很難同化現有課程知識,導致難以自學和分析、解決問題,引發學生學習的挫敗感,一旦處理不得當,就會使學生學習提不起興趣,缺少主動參與的積極思維活動、創造性思維活動,更有甚者還會使學生抵觸學習,削減學生本身己經調動起來的積極性,影響后續課程的開展。
教育心理學的研究也表明[1]:學生在沒有精神壓力和心理負擔并且情緒飽滿、心情舒暢的情況下,大腦皮層最容易形成興奮中心,思維也最活躍,此時的實踐能力最強。因此,如何使學生保持這種狀態就成為教師應該考慮的重點問題之一。單就理論教學而言,如何使理論變得通俗易懂,接近生活,易于學生理解,這是計算機軟件基礎課程理論教學的關鍵。從實踐來看,在授課過程中,教師通過深入淺出地講解,設置理論問題情境,解答學生在實驗中產生的疑問,肯定和鼓勵學生的想法等方式,都能比較充分地調動學生的積極性和主動性,使學生更加容易融入教學環節中,也便于學生深入理解理論知識。比如說針對學生提出的一些設想,經常正面地肯定,能使學生更加信任自己,更加愿意去創新,從而與學生實現良好互動。
同時,在課后對學生進行必要的關心,用人格魅力引導學生參與教學,也不失為一種好的方式。比如,通過課后深入學生,與學生建立亦師亦友的關系,與學生打成一片,學生往往會因喜歡教師而喜歡該教師教授的課程,實現良好的教學效果;而相反,教師冷冰冰的態度往往也會成為影響教學效果的一個重要因素。
2 盡早引入實驗教學環節
實踐證明,計算機軟件基礎的教學,引入實驗教學環節越早,教學的效果往往越好。因此,計算機軟件基礎課程教學要想在培養軟件人才、促進軟件產業發展方面有所突破,盡早引入實驗教學環節是一條必由之路。
現有的實驗課程安排作用并不明顯 計算機軟件基礎是計算機軟件的核心課程,其主要內容包括數據結構、操作系統、數據庫系統概論,教學目的是讓學生掌握數據結構的相關算法,理解操作系統的基本概念,熟悉數據庫的基本操作,從而具備初步的軟件編程能力。同時,從目前的教學安排來看,該課程安排了一定數量的常規上機實驗練習,以便提高學生的軟件素質[1]。
但現有的課程安排還存在一定的問題,突出表現在:
一是學生上機練習的題目規模較小;
二是上機內容以章節為主,有的章節有上機內容,有的沒有,導致上機實驗沒有連貫性和系統性;
三是上機安排的內容發揮作用不充分。
從實踐來看,培養學生的軟件素質必須適當結合電子信息類專業的特點,這對于培養應用型人才的作用至關重要。但從目前上機安排的內容來看,主要是從計算機專業的角度提升學生的軟件素質,而并沒有與電子信息類專業特點充分結合,其結果就是導致學生對硬件有較好的掌握,而對信源編碼等通信軟件知識知之甚少,影響課程設計的整體進度。由此可見,目前安排的實驗課程其作用甚微,難以達到為學生打下軟件知識基礎的教學目的。
盡早引入實驗教學,利于學生在操作中學習,達到學以致用的目的 從現有的教學來看,學生對計算機軟件基礎課程學習的困難點主要在于:課程理論知識比較枯燥難懂,上機操作能力不足,導致學生學習興趣降低,影響了教學效果。比如說在C語言教學中,C語言程序設計作為學習計算機其他課程如數據結構、JAVA語言程序設計等課程的先修課,對于培養學生的計算機技能具有至關重要的作用,因此,提高這門課程的教學質量意義也十分重大。
但是,這門課程首先要講授C語言的特點、運算符和表達式等內容,而這部分內容恰恰又相對比較枯燥,學生難以提起學習興趣,而這部分內容通常是安排三周學完,對于初學者來說要在這么短的時間內理解這些理論并不容易。于是等到這部分理論教完開始接觸程序設計時,部分學生已經遠遠落后于教師的進度,導致沒有繼續學習下去的動力,有些學生就此掉隊。
同時也有研究表明[2],部分教授在教授這門課程時,調整了講課順序,提前給學生講授程序設計的內容,安排學生提前實驗,讓學生親身體驗計算機如何運行C語言程序,而等到學生對C語言程序有一定了解后再講授運算符和表達式等內容。由于之前學生對C語言有了切身的體會和感受,再學習其他理論時,往往能將這些理論與實驗知識結合,加深對運算符和表達式等理論的理解,也提高了學習C語言的興趣,作用都相當明顯。
由此可見,針對計算機軟件基礎課程的內容特點,盡早安排學生上機實驗,讓學生體會學以致用、現學現用、現用現學的樂趣,對培養學生興趣和創新能力、提升教學質量有著不可替代的作用。
3 建立多層次實驗教學內容,發掘學生實驗潛能
學生的素質和潛能并不完全一樣,孔子時代就已經講究因材施教,實驗教學中也必須根據學生的實際情況,適當地分層次安排實驗教學內容,建立多層次實驗教學內容體系,從而更好地提升學生的學習興趣,激發學生潛能,實現教學目的。可以分為基礎性實驗、應用性實驗和創新性實驗。
基礎性實驗要求精 基礎性實驗是課程的統一安排,目的是驗證和鞏固課堂知識,針對群體為所有學生。要充分發揮這部分實驗內容的作用,主要在于求精。
首先要精選實驗內容,針對每個知識點,都要精推細敲,并在每個實驗內容中設置開放性思考題,要求學生認真思考做答,不求數量,但求質量。
其次要精講實驗內容。針對學生實驗內容的答案,要進行深入的講解分析,肯定學生做得好的地方,指出其不足,并指導如何修改完善,務求每個實驗內容都講透,并通過實驗內容夯實學生對每個知識點的理解。
最后,引導學生運用發散性思維進行解題,提升學生對知識點的認識水平,如引導學生運用多種方法解題。
基礎性實驗是學生對知識點的深入掌握,也是開展應用性實驗的必要準備。
應用性實驗要求實 應用性實驗是課程的適當補充,是學生對課堂知識的具體運用,旨在培養學生應用知識的能力,針對的群體是大部分學生。其主要任務就是培養學生解決實際問題的能力,具體方法是由教師選擇合適的項目,讓學生自愿分組,在規定的時間內按計劃完成。
在應用性實驗教學中,項目的選擇非常重要,其主要原則是既要覆蓋計算機軟件基礎課程的主要內容,也要貼近實際,是實際生活中有應用價值的項目,還要便于學生理解完成項目的方法,能最終形成一個完整的軟件作品。比如說各種信息管理系統都是比較合適的項目。
在這個階段,教師重在引導學生開展項目,指導學生解決項目實施中碰到的難題,檢查學生項目實施情況,及時糾正項目的方向性、原則性錯誤,并引導學生及時進行反思總結,便于更好地掌握編程技巧和語法知識等內容。
在應用性實驗階段,學生的實驗成果,不僅是要通過提交相關文檔以及編寫的程序代碼來體現,還要在一定的范圍內進行實際測試,便于學生將理論知識與實際掛鉤,也便于學生進一步認識實驗項目與實際項目的環境差別,更好地融入社會實踐。
本階段的實驗由于應用性強,對于學習計算機軟件基礎理論知識感到吃力的學生,可不強行要求。
創新性實驗要求新 創新性實驗是課程的升華內容,主要是激發學生的創新思維和創新能力,所針對的群體是小部分學有余力的學生。在這部分實驗內容中,由學生自行選擇實驗項目,設計實驗方案和實驗步驟,學校提供相應的實驗環境和其他保障措施,教師則對學生選擇的實驗項目進行把關指導,確保項目具有創新性。在這個實驗中,整個過程都由學生獨立完成,學生要自行解決實驗中遇到的各種問題,總結各種錯誤出現的原因和避免出錯的方法,并在實驗結束后,自行檢驗實驗結果的應用價值,從而達到融合知識、鍛煉素質、提升能力的效果,培養軟件人才。
4 建立多樣化實驗教學方式,方便學生自主學習
實驗教學的方式要多種多樣,并優化實驗教學載體,為學生實驗提供更多的便利。
首先是可以充分發揮校園網的作用。目前,絕大部分學校已經建立自有的校園網,一方面為學生提供了大量的實驗教學資料儲備,如教學大綱、實驗大綱、實驗指導書、實驗室開放時間表、指導教師安排等實驗教學的所有技術支持文獻信息,為學生開展實驗提供了極大的便利;另一方面還提供了學生自測系統。在自測系統中,學生可以回答教師指定的問題,并完成打分,并可對回答問題的正確與否進行分析,糾正錯誤答案,進一步消化知識。同時,有的學校還設計了基于C語言的計算機軟件基礎自學系統,學生可以通過系統進行應用程序學習,循序漸進地學習和掌握知識,有力地鞏固課堂教學的知識。
其次是可以充分發揮社會單位的作用。學校可以和與計算機軟件專業對口的企業合作,在企業相應建立學生實踐基地,讓學生參與企業的實際設計,以干代學,從而進一步提升學生對計算機知識的認識,也進一步了解軟件產業對軟件人才的要求,適應軟件產業的環境,從而更好地增強教學效果。
5 結束語
計算機軟件基礎是一門實踐性強的課程,其實驗教學要適時推進,這是增強課程教學效果的需要,也是提升學生素質的需要。在實驗教學中,教師角色的轉換,學生主體地位的重申,社會單位作用的發揮,都深刻影響著學生學習本門課程的效果。在目前的形勢下,要充分發揮計算機軟件基礎作為培養應用型人才的重要基礎課程的作用,充分發揮教師、學生、社會單位在該課程中的積極作用,就必須抓好實驗環節的教學工作。只有實驗教學才能更好得實現教師與學生互動、學校與社會互動,才能培養出適合軟件產業發展需求的應用型人才。
【摘要】本文針對計算機軟件技術基礎課程教授過中出現的主要問題,提出了對教學實踐環節的幾點改革意見。
【關鍵詞】計算機軟件技術基礎;課程;軟件設計
“計算機軟件技術基礎”是計算機基礎教育的基本內容,是學生在本專業學習和研究中,開展計算機應用和系統開發的立足點。計算機基礎教育的任務和目標是培養既精通本專業知識,又能掌握計算機應用技能的復合型人才。這種復合型人才所具有的能力結構不是簡單的一維層次結構,而是網狀的空間結構,即包括:學生的本專業知識、計算機應用能力和信息素養。如何適應素質教育的要求,如何使學生的專業知識與計算機技術結合,如何使學生在已有的操作使用能力基礎上,提高應用開發能力,培養研究創新能力,《計算機軟件技術基礎》課程教學有著重要的作用。
1.教學現況與存在的問題
1.1 學生方面
由于非計算機專業學生來源不同,故其基礎也是不同的。學生在高中所學的前續程序課程分別為C語言、VB和VF,個別地區的高中甚至沒有開設計算機語言課程。由于軟件基礎課的第一部分為數據結構,涉及到相當多的指針操作,所以學過C語言的學生基礎相對較好,教學中容易理解教學內容。而學VB,VF的學生對指針沒有任何概念,對教學內容的理解相當困難,更不用說沒有學過語言的學生。這是由前續課程帶來的問題。
半數以上的學員一開始對該門課程的學習抱有極大的熱情,然而隨著課程難度的逐漸加大,編程技術底子較薄或接受能力較差的學員開始退縮,主要反映在大型程序設計作業完成情況上,分工不均衡,出現能者干、庸者看的現象。這與課程的設置有關。
1.2 課程設置方面
這門課程涉及到的內容很多,主要包括數據結構、結構化程序設計、面向對象程序設計。這幾個部分對于計算機專業而言都是單獨的一門課程,但是現在要把各部分的內容綜合到一門課程中去,便給教學帶來一定的難度。
這門課程的學時數有限,筆者所在學校安排了58學時(理論28學時、實驗28學時、考試2學時),教學的時間非常有限,要在這么短的時間內學好所有的內容,對學生和教師都是一個挑戰。
2.教學改革方面的幾點建議
2.1 傳統的課堂教學與新興網絡教學的完美結合
傳統教學模式的主要手段就是“粉筆+黑板”,這種教學手段可以充分展示教師的教學思路,展示教師的個人教學魅力,同時可以留給學生充裕的思考時間和完成筆記的時間。這種教學主要應避免“滿堂灌”和“面面俱到”,而是對一些原理性、概念性較強的教學內容采用這種教學。如:鏈表的概念,幾種查找、排序的方法以及他們之間的差異等內容都可以使用這種教學方法。例如,在講授應用結構體處理數據時,我們舉了一個顯示輸出輸入的幾組學生數據的例題,在課堂上,采用板書方式分步介紹了如何定義結構體,如何建立輸入功能子函數,如何建立輸出功能子函數,要求學生給出完
整的程序和輸出結果。然后又給學生布置一個作業,要求使用鏈表處理信息,程序運行后需按序顯示輸入的學生信息。這樣就可以讓學生進一步掌握動態分配空間函數的應用及如何創建鏈表和它在C語言程序中的應用。
“粉筆”黑板”這種教學看似簡單和落后,但如果提供了完善的網絡環境,學生就能在園區網上看到教師已經制作完成的課件,就能根據自己的學習需要檢索教師當天教學的板書,播放教師的某段講解。這種教學模式使學生能夠在課堂上緊跟教師思路,減少了完成筆記的時間,提高課堂效率。
2.2 目標驅動理念在課堂教學中的應用
建立在建構主義理論基礎之上的目標體驗教學是以學生為中心,以教學目標為驅動的教學方式,屬于探究式教學模式的一種。其顯著表現是:教師的教學與學生的學習都是圍繞著一個目標,而這個目標又包含著幾個小目標,每一個具有建構思想的目標驅動都要符合學生的“最近發展區”規律。最近發展區主要是指學生的潛在發展水平,在此水平上,學生還不能獨立完成學習目標,但經過啟發、幫助和努力,就能完成目標。例如,在講述“排序”時,首先就要求教師已經介紹過冒泡排序和快速排序這兩種互換類排序方法,而且學生已熟練掌握。在這基礎上,就可以對學生講解簡單插入排序和希爾排序這兩種插入類排序,也可以講授簡單選擇排序和堆排序。在這個教學過程中,冒泡排序和快速排序就是學生現有的發展水平,學生能獨立地、自如地完成教師提出的教學目標;而其他排序方法則是尚處于形成狀態,還不能獨立完成的教學目標,是學生的潛在發展水平,在教師幫助下,通過訓練和學生自己的努力才能完成的教學目標。
2.3 注重培養學生的動手能力
在計算機課程的教授中,許多老師比較注重概念、語法的講解,卻忽略對能力的培養,這樣培養出來的學生在上機時就會不知從何下手因此在教學過程中,在介紹完基本概念和語法知識后,可以利用更多的課時來對學生的思維方式進行引導對常用的軟件設計方法可以從“拿到題目”“如何分析”“如何解決”“最后具體程序實現”的整個過程進行全方位的啟發這樣能提高學生的軟件設計能力,使學生如何設計該類軟件有一個基本思路,知道如何去思考問題,如何去解決問題,方向明確、思路清晰。
2.4 改變單一考試模式
考試是學生學習導向的指揮棒,也是檢驗教學效果的基本方法。計算機軟件技術基礎是典型的實踐性課程,單一理論考試模式無法掌握學生上機操作水平。我們采取廠“筆試+上機”的考核方式,任何一項成績不通過這門課程學習就不合格。機試成績并不是一次給出,在平時上機實驗中就分階段進行考核,可以隨時掌握學生的學習和應用情況。例如,可以給出一些應用題,讓學生通過分析找出解決方法,訓練學生掌握應用領域的知識并綜合運用知識的能力。新的考核方法給了學生一個發揮才能的空間。變被動的應試為主動的學習,使學生成為考試的主人。學生在解決問題時若有創新,就可以得高分。這樣。可以激發學生的學習積極性和求知欲,給他們展示自己才能的機會。充分發揮創造力和想象力。
3.結束語
“計算機軟件技術基礎”課程對于從事計算機應用領域的非計算機專業人員是相當重要的,同時對于計算機應用領域的發展也起著十分重要的作用本文中針對該課程現階段教學中存在的問題,提出了改進的方法實踐證明,該方法能有效地提高學生的軟件設計能力和創作能力,是教學上的一種較好的開拓。
摘要:近年來計算機在我國各行各業扮演的越來越重要的角色,加強對計算機的有效性探討是實現計算機為各行各業服務的關鍵。計算機數據結構主要指的是信息在計算機內的寄存方式和信息的集合和整理。計算機數據結構經常與算法相聯系。算法是被計算機所識別的指令,算法是通過數據結構所進行的信息儲存。算法和數據結構二者是相互作用的,通過對算法蘊藏信息的分析可以有效的解決計算機存在的一些問題,提高處理效率和速度。
關鍵詞:計算機軟件 數據結構 算法
一、引言
隨著計算機在在我國各行各業發揮的作用日益凸顯,計算機的數據結構只的是信息在計算機 寄存方式和信息的集合和整理。計算機結構與算法關聯甚廣,因此加強計算機數據結構算法的研究對于計算機研究十分重要。下面我們將對計算機基礎數據的算法進行相應的介紹。
二、計算機軟件基礎數據結構之算法概述
(一)算法的兩要素
算法包括兩要素,一部分指的是對信息的操作處理,這部分對信息的操作處理包括四種處理方式,分別為邏輯符合,數學計算,信息的對比以及信息的傳遞另一部分指的是對信息的處理方式的操作,它引導指令進行有序的進行。
(二)算法的特征
算法是有限指令的整體,這些指令表明了處理問題的步驟,針對相應的問題,算法可以對定值按照原先設定的指令進行運算處理,并且通過一定數量的運算后傳送出計算機得出的最后結果。這就要求算法包含有限的指令,同時各項指令都 應該明確,不能多層含義,同時也要求這些指令都是計算機能力范圍之內的,超出計算機范圍以外的不僅不能起到積極效果反而會對以后的操作造成一定負面影響。算法對處理對象沒有要求,同時被處理對象也不會對這些指令產生影響。
(三)算法的表示
很多人可以通過文字或者符合翻譯算法,一般翻譯法包括一般性文字,C語言,程序圖,PAD圖等。其中一般性文字和C語言是具體詳細的描述算法的。他可以使學習者更容易學會。
(四)常用的算法
1.枚舉法
枚舉法是指對信息的某些獨特特點估計運行結果的區域,然后通過一些手段檢驗該區域的每種結果,直到驗證到所有餓都符合才加以停止。這些驗證有的是可以滿足算法的要求的,同時也存在著一些不能滿足算法要求的,這些滿足的對象就是計算機最終會傳遞的結果,那些不能滿足算法要求的就表明該算法無解。
枚舉法具有工作原理簡單,容易接受的優點,但是枚舉法有顯著的缺點就是工程量大工作時間長,枚舉法一般只適用于無法用別的方法解決的問題。
枚舉法包括以下步驟:
1.1通過對問題的思考,預估問題的大致方向
1.2選出合適的枚舉形式。枚舉形式包括順序法,對比法類型列舉法等
1.3將可能的方向進行一一驗證
1.4確定哪些情況是合理的哪些是不合理的,得出最終結果。
2.迭代法
迭代法與枚舉法相比比較粗糙,生活中很多方面都需要這種方式進行問題的處理它的顯著特點就是可以將一個麻煩的問題轉化成為比較簡單迭代算式,這樣就會形成問題由難至簡的循環,從何最終得出答案。
3.遞推和遞歸法
遞推和遞歸法是比較常用的一種方法,通過對一些特殊的公式的性質加以推導得出結果。遞推法和遞歸法從簡單入手,把前面得出的結果進行到后面的推理之間可以更加方便結果的得出。
三、計算機軟件基礎數據結構之算法的設計要求
算法就如同人與計算機之間進行溝通和交流的語言,通過算法作為中介可以加強人與計算機的距離,讓計算機按照預先設定的指令一樣去執行任務。但是要遵循一定的原則。
(一)正確性
設計者首先要按照算法的規則編譯指令進行編譯,只有按照規則的編譯才能實現和計算機的交流,讓它按照規定執行任務。如果出現錯誤的指令那么將會對引出不準確的結果。
(二)可讀性
算法一定要具有可讀性的原則,只有可讀性才能讓人對算法一目了然,如果算法過于復雜和晦澀會讓人難以理解原理。
(三)穩定性
算法的穩定可以使得計算機在運用時的穩定性能的保持,試問如果計算機在運行的時候總會出現錯誤,給人的感覺整體下降。穩定性對于算法來說至關重要,同時對于計算機的規范使用也至關重要。
(四)高效低耗能性
計算機內部器件的好壞對于計算機性能的高低具有決定性作用。算法亦如此,好的算法可以在最短的時間得出答案并且使用最低的耗能得出答案。
四、計算機軟件基礎數據之算法的復雜性分析
(一)運行時間長
一般設計者并不是根據計算機的算法衡量時長,算法運行的載體依然是計算機,因此計算機地運行速度是受很多因素的影響的。一樣的計算法在不同的載體上會產生不一樣的效果,這一效果并不是對算法效率的評判而是表現在時間的耗損上,耗損程度作為評價算法的好壞標準。
(二)內存消耗
內存消耗指的是計算機在運行算法時需要用到空間大小的尺度。內存消耗有傳入傳出信息所占的內存以及算法在運行過程中暫時占用內存的大小。傳入傳出信息占據的比例和問題相關,并不會隨著算法的變化而變化,在運行過程中暫時性占用的內存大小往往是由算法決定的,好的算法可以占據比較小的內存,相反壞的內存則會占據教的的內存。
五、結束語
計算機在近年來以及其迅速的腳步占領各個行業,計算機軟件基礎數據結構之算法是學校者了解計算機數據結構的基礎,通過對它的學習可以幫助學生更科學的認識到計算機的運行情況,并且使得學習者更好的掌握。本文從計算機軟件基礎數據結構之算法概述,計算機軟件基礎數據結構之算法的設計要求,以及計算機軟件基礎數據之算法的復雜性分析進行了相關的介紹。
摘 要:計算機軟件的基礎數據結構,主要負責講解計算機內信息的寄存方式、集合和整理,通常是與算法密不可分的。算法是能夠被計算機分辨和識別的指令,指令的內容就是通過計算機軟件基礎數據結構來進行寄存的信息。數據結構的算法分析,可以使計算機處理比較復雜的難題,提高了效率,本文對計算機基礎數據結構的算法進行了分析。
關鍵詞:計算機軟件;基礎數據結構;算法分析;復雜度
1 算法的概述
1.1 算法兩要素
算法主要包括兩部分:信息的處理操作和信息處理方式的操作結構,對信息的處理操作一般包括邏輯符號、數學計算、信息傳遞和信息對比,操作結構可以指引指令有序進行,通常用流程圖來描述。
1.2 算法的主要特征
有限指令的主要部分就是算法,有限指令能夠明確處理問題的步驟。面對問題,算法能夠對各種定值指令進行預算處理,通過運算傳達最后的計算結果。算法的特點主要為:指令的數量必須有限;指令不能超出計算機的能力范圍;被處理的對象不受指令影響,對象數量不影響指令,必須要有至少一個傳遞末端。
1.3 算法表示方法
目前編譯算法一般都用符號和文字來進行,主要包括程序圖、C語言、PAD圖,一般性文字等。C語言和一般性文字能夠具體詳細的描述算法,其他方法描述算法是大致內容并進行作圖,更加直觀的表達,便于學習理解。
1.4 常用的算法
常用的算法主要包括枚舉法、迭代法、遞推和遞歸法。枚舉法內容是指通過信息特點對運行結果的可能區域進行估計,然后利用一些方法手段檢查各個結果,直到所有結果都符合。在驗證過程中,驗證對象如果滿足算法要求,這個驗證對象就是最終計算機傳遞的結果,如果沒有達到要求的對象,那么算法就無解。迭代法是一種較為粗略的方法,可以把麻煩復雜的問題轉化為較為簡單的迭代式子,通過循環這個步驟,達到由繁化簡并最終得出答案的目的,該法適合非數值類問題的計算。遞推法和遞歸法是主要的算法制定編寫法,都通過運用特殊公式逐項推導而來的。
2 算法設計要求
算法像語言一樣,是計算機和人類溝通時的語言,通過算法,人們不僅可以跟計算機進行交流,還可以按照指令執行任務。因此所有的指令必須要符合一定的行為準則,算法的設計要求主要包括以下幾點:
2.1 具有正確性
設計者編譯指令時必須要按照算法的規則來進行,從而保證人和計算機正確的交流,保證計算機執行好任務。正確性中最重要的就是避免語法錯誤的出現,從而能夠為正確答案的得出做好準備。
2.2 具有可讀性
算法具有可持續性,是指算法總體思路容易讓人理解,是想一下,一個非常混亂的算法,即使再聰明的人也很難明白算法原理的,更不用說得出計算機答案。
2.3 具有穩定性
就像機械設備似的,如果工作狀態不穩定,那么就會很容易出現難懂奇怪的問題,算法如果不夠穩定,計算機在正常運行的時候,也會很容易出現錯誤。經常出現的錯誤就是亂碼,就會讓人感覺像是算法存在嚴重問題。
2.4 具有高效低耗的性能
計算機性能的好壞取決于內部的器件好壞,算法也是這樣的。好算法可以用最低能耗最短時間來得出答案,計算機內部的工作原理可以決定這些因素,其中最主要的就是存儲大小和運算速度的聯系。
3 算法復雜度的分析
算法復雜度決定了一個算法執行并得出結果需要的總時間,設計者通常是根據算法復雜度來判斷對算法的總效率來進行判斷的,這是因為時間的消耗和算法需要的內存情況是直接聯系掛鉤的。評判者主要是依據運行的時長以及內存的消耗來進行判斷的。下面就簡要介紹一下運行時長以及內存消耗:
3.1 運行的時長
通常來講設計者不是依據算法的總運行時間來衡量時間長短的,這是因為計算機仍然是算法正常運行的載體,計算機的運行速度跟許多因素有關,例如計算機的運行環境、計算機內部使用損耗等。因此,同一種算法在不同的計算機運行載體上運行的效果也是有很大差別的。一般來說,計算機運行時長的大小不是衡量算法效率的一種標準,而是判斷算法運行時間損耗的一項指標,能夠在一定程度上評判算法運行的好壞。
3.2 內存的消耗
計算機運行算法,會暫時占用相關的空間,被占用的空間大小尺度就是常說的內存消耗,內存消耗與相關的函數緊密聯系。內存消耗主要內容是傳入和傳出信息占用的內存、算法在運行過程中暫時占用的內存等。傳入和傳出信息占用的內存跟需要解決處理的問題是相關的,不會因算法變化而變化;算法運行中暫時占用的內存大小是由算法來決定的,不同的算法需要不同的內存,因此,比較好的算法需要的內存也比較少,這也是內存消耗成為評判算法好壞的又一個非常重要的標準。
摘 要:針對計算機軟件技術基礎課程的內容與特點,探討了傳統教學中存在的不足,提出幾點行之有效的教學改革方法。這些方法在實踐中取得了實效,對該課程的教學改革具有一定的意義。
關鍵詞:計算機軟件技術基礎 課程 教學改革
計算機軟件技術基礎是為非計算機專業開設的課程,該課程是后續課程的基礎,涉及內容比較廣泛,包括數據結構、操作系統、數據庫系統、計算機網絡、軟件工程技術、管理信息系統等內容,具有很強的理論和實踐性。本課程有如下三個難點。
(1)該課程的內容多、跨度大、學生把握重點有些困難。
(2)計算機軟件技術基礎是一門內容綜合的課程,涉及的知識面廣,學生對基礎課程的知識和理解程度有所差別,授課中比較難掌握。
(3)計算機軟件技術基礎是一門應用性很強的課程,需要理論與實踐相結合。
針對以上難點問題,本人分析了目前該課程在授課中普遍存在的問題,并從實際要求出發,對計算機軟件技術基礎課程的教學改革進行探討。
1 計算機軟件技術基礎課程存在的
問題
(1)目前,大多數老師采用常規的灌輸式教學方法,以教師講授為主,學生處于被動的學習接受狀態,缺乏對課程學習的興趣和主動性,啟發式教學沒有充分運用。
(2)有時為了增強學生的興趣和信心,往往較低教學難度,大部分時間講授基本概念,而對程序設計和調試技巧等較深的知識只是點到為止或者避而不談。導致大量學生學完本課程,只會背誦幾個基本概念,并沒有真正掌握程序設計的很多精華思想和編程技巧,更沒有了解軟件是如何管理計算機全部資源的。
(3)計算機軟件技術基礎實驗課在機房內進行驗證性實驗,實驗時教師只是把實驗目的、具體程序、程序實現的功能等內容介紹給學生,學生直接輸入程序代碼,然后獲取實驗數據,驗證理論知識。這樣,學生只是機械的進行程序錄入,不用獨立思考,所以不能深入細致的分析和調試,
2 課程教學改革
(1)教師主導性和學生主體性相結合
充分調動學生學習的主動性,引導學生自覺的學習和發展,教學過程實質是教師教和學生學的互動,只有這樣,才能使師生之間和學生之間教學相長、信息交流,從而達到知識與興趣共存,進而實現教學共贏。課程教學過程中,采用啟發式教學,隨時了解學生對知識點的理解和掌握,調動學生學習的熱情。
(2)采用案例引導式教學
在課堂理論知識的講授中,尤其是講解新知識時,采用實際的案例進行演示說明,把學生帶入特定的情景中進行思考;在演示過程中,逐步引出各個相關概念,加深學生對基本概念與原理的理解,進而提高學生運用理論知識分析和解決實際問題的能力。
案例引導的課程教學,能為學生在理論和實踐之間搭起一座橋梁。學生帶著多個基本概念和知識點的任務通過生動形象的案例進行學習,既容易激發學生的學習興趣,又有利于學生迅速掌握抽象、枯燥的概念,以及各相關知識點之間的內在聯系。在講授的過程中循序漸進、環環相扣,優化教學內容。
(3)注重實踐環節
對于計算機軟件技術基礎這門實踐性特別強的課程,必須把理論課和實驗課結合起來講解才能培養學生的能力,而且實踐教學不再是理論教學的附屬,它與理論教學同等重要,學生可以通過實驗課的練習領會理論教學中所學的知識,在上機的指導過程中,不僅要指導學生軟件設計的基本方法、程序調試的基本技巧,還要對學生思維方式進行引導。對實踐環節中的軟件設計從“給定題目”―“具體分析”―“解決問題”―“程序實現”―“運行調試”的整個過程進行全方位的啟發。使學生掌握軟件設計的基本思想,知道如何思考問題和解決問題.
3 結語
計算機軟件技術基礎是一門理論與實踐相結合的課程。該文針對該課程現有教學中存在的問題,提出了改進方法。實踐證明,該方法取得了良好的教學效果,能夠幫助學生系統掌握課程知識,切實提高實踐能力。
【摘 要】本文闡述了計算機軟件技術基礎課程教學特點和教學目的,針對課程教學現狀,分別從明確教學目標、豐富課堂教學手段、巧設學習情境和構建良好師生關系等幾方面對計算機軟件技術基礎課程教學策略進行了探討。
【關鍵詞】軟件技術基礎 課程教學 研究
一、引言
科學技術的飛速發展,使計算機技術在社會生活各個領域得到了廣泛的應用。計算機軟件技術基礎是高校計算機基礎教學中的重要內容,隨著《關于進一步加強高等學校計算機基礎教學的意見暨計算機基礎課程教學基本要求(試行)》 的出臺,國家對計算機基礎教學提出了新的要求,即打破傳統教育模式,以人為本,學生為主體,造就既精通本專業基礎知識,又能掌握計算機應用技能的復合型人才,達到素質教育的培養目標。
計算機軟件技術理論,是學生學以致用的基礎,其涉及的知識面廣、概念多、原理復雜和抽象,理解上會有一定的困難。因此,從計算機教學出發,對計算機軟件技術基礎課程教學知識體系、教學模式和教學方法等進行深入的分析和研究,尋找科學的教學方法,全面提升學生軟件開發應用技能和解決實際問題的能力,為學生終身可持續發展提供更為廣闊的空間,就顯得尤為重要和迫在眉睫。
二、計算機軟件技術基礎課程教學特點和教學目的
計算機軟件技術基礎課程既是集計算機網絡基礎、操作系統、數據結構、軟件工程以及數據庫等多門專業課為一體的綜合課程,涉及面廣,內容相對獨立,也是一門理論與實踐結合性較強的課程,其線性結構、非線性結構、圖、查找、排序等數據結構與算法之間關系復雜。教學中,應針對應用實例,對編程中常用的算法給予重點講解,對典型數據結構數據元素的集合關系以及基本運算展開教學研究和深入的講解。
計算機軟件技術基礎課程的教學目標,是用科學的方法引導學生,通過課程學習,既掌握計算機軟件技術基本理論知識、具備開發應用軟件所必需的軟件基礎知識、懂得高級編程語言知識、豐富編程技術和基本算法,又熟練運用程序設計的思維和方法,使其軟件素質得到提高,抽象思維能力,靈活運用高級語言進行程序設計和動手編程解決實際問題的能力得到加強。
三、計算機軟件技術基礎課程教學現狀分析與對策研究
(一)現狀分析
基礎知識不扎實。學生計算機知識較薄弱,尤其是該課程是以概念多、抽象而復雜的“C語言程序設計”為基礎的學科,理論知識多、應用層面的內容相對較少,學生難以理解的同時,感覺枯燥乏味,產生畏難情緒,加重了思想包袱,嚴重影響了學生的學習熱情。
教學方法單一。缺乏先進的教學理念的指導,教學策略上缺乏創新,沿襲著“你教我學”的教學模式,學生始終處于被動學習的地位,積極性受到壓抑,自身創造力和潛能未能得到有效發揮,知識傳輸與能力培養相互割裂。
課時限制。該課程知識點較多,課程學時安排較短,教師偏重基本理論講解,學生在短時間內難以消化吸收包括數據結構、操作系統等繁雜的基本概念,而程序設計和調試技巧等實踐性較強的部分往往因課時限制只能點到為止,學生無法體會課程的樂趣,更無法進行深入研究,嚴重影響了教學目標的實現。
(二)對策研究
明確教學目標。摒棄傳統教學方式,倡導以學生為中心,注重學生知識水平和技能的培養。教師應對計算機軟件技術基礎有一個全新的定位,在對教材知識點內涵與外延正確把握的基礎上,精心設計和巧妙安排學生易于接受的課堂教學活動,準確駕馭計算機軟件技術基礎課堂教學,將“任務驅動法”、“合作學習法”等優秀教學方法組合運用,創設探究情境,激發學生的學習熱情,使其對操作系統、 數據結構、 數據庫技術等功能和運用產生濃厚的興趣,不斷提高學習能力。
豐富課堂教學手段。以“任務驅動法”為代表的互動教學法,是上世紀80年代后逐漸發展成熟的實踐型教學方法,是國內外運用較多的、先進的教學理念。它是讓學生在“做中學”,通過學生的參與和體驗,在完成任務過程中主動地去分析和思考問題,加深對知識的理解和感知,共同探討解決問題的方法,進而達到對知識、技能的理解和掌握,既增強了知識點的融會貫通,也強化了學生主動積極的學習意識。
巧設學習情境。軟件技術基礎課程教學目的,是讓學生打破常規,啟迪思想,通過探索、實踐,掌握理論知識并能靈活地加以應用。“情境教學”正是基于這一先進思想的教學方式。如學習語言編譯時,使用“棧”可實現函數過程的調用。當計算機輸出數據打印時,打印機速度慢,為解決這個問題,教師安排學生們分組討論,最終在操作系統中設一個打印隊列,將打印任務逐個完成,避免了數據丟失或打印次序混亂。任務進行過程中,學生們熱情高漲,積極思維,體會知識的奧妙,深刻認識到了這門課程的意義和作用,同時小組成員團結協作,煥發出可貴的集體智慧,在目標實現過程中體驗成功帶來的巨大喜悅。
構建良好師生關系。教師傳道授業,是學生學習的組織者和倡導者,更應成為學生的良師益友,將抽象的、枯燥的軟件技術基礎,用實用化和情趣化的現代教學思想巧妙呈現,產生共鳴、碰撞智慧的火花,使學生充分感受學科魅力,從而啟迪心靈,放飛思想。當學生暴露出畏難或厭煩情緒時,教師應給予最大限度的寬容和理解,并用科學的思想加以引導,鼓勵他們打破常規、迎難而上,與學生共同完成知識點的跨越。
四、結論
綜上所述,打造充滿生機和活力的計算機軟件技術基礎課程教學,是新時期高校教學的需要,也是實施素質教育的關鍵。只有對教學現狀進行深入的分析和研究,采用科學的方法正確梳理教學思路,將優秀的現代教學思想融入計算機軟件技術基礎課程教學,優化教學過程,才能實現教學相長,不斷提高計算機軟件技術基礎課程教學的實效。
摘要:案例教學能有效提高學生分析問題和解決問題的能力,是現代教育的常用教學方法之一。文章分析案例教學中的案例特征,以實際工程項目的一個子系統為背景,設計實時仿真監視系統案例并介紹案例的具體建設情況,指出該案例對提高學生的學習興趣以及分析問題和解決問題的能力具有明顯的效果。
關鍵詞:軟件技術基礎;案例教學;案例建設;實時仿真;監視系統
1、計算機軟件技術基礎課程中案例教學的必要性
計算機軟件技術基礎是仿真工程與自動化專業的核心課程之一,是一門應用性很強的專業基礎課。該課程是整合課程,主要包括c++面向對象程序設計、算法與數據結構、操作系統、軟件工程等方面的內容,知識龐雜且難以掌握。學生在學習該課程之后常常感到困惑:所學知識有什么用,怎樣運用所學知識?一些學生雖然能夠在考試中考出高分,卻不知道怎樣解決實際問題。如何使學生認識所學知識的用途,融會貫通并靈活運用,是這門課應重點考慮的問題。目前,案例教學在法律類和管理類課程教學中的地位和作用已在教育界達成共識。教育部高等學校計算機科學與技術教學指導委員會于2006年6月了《關于進一步加強高等學校計算機基礎教學的意見暨計算機基礎課程教學基本要求(試行)》白皮書,明確指出在教學方法和手段上運用案例教學的必要性,因此,將案例教學作為一種教學方法引入工科類課程的教學,具有可行性和必要性。
2、認識案例
案例教學法就是在教師的指導下,根據教學目的和要求,以案例為基本素材,把學生帶人特定的教學情境中進行思考,以此加深學生對基本原理和概念的理解,進而培養并提高學生運用理論知識分析問題和鋸決問題能力的一種教學方法。
案例是案例教學的基礎,離開了案例,案例教學就無從談起。案例與一般教學中的例題有著本質區別,案例教學中的案例是將多個知識點融人一個整體來解決實際問題,涉及的知識面廣,知識間具有連貫性和系統性,涵蓋的知識具有綜合性的特點,知識和原理蘊藏于案例之中。一般教學中的例題往往是配合某一章節或某一知識點,從某個角度、某個方面或某個層次反映所學理論和方法,起著驗證和說明作用,常常帶有為講知識而杜撰例子的痕跡,各個例題之間相對獨立,涵蓋的知識單一,知識和原理孤立地呈現在學生面前。一般說來,工科類課程的案例應具有以下基本特征。
1)真實性。
客觀真實性是案例的基本特征。教學案例應源于真實,取材于工程實際或科研課題,但是又要高于真實。為了突出主題,可以對真實做一定的刪減處理。
2)綜合性。
案例應是綜合知識的載體,既要以學生已掌握的知識為依據輻射足夠多的知識點,又要在匹配教學內容的基礎上對知識有一定程度的擴展。
3)完整性。
案例是完整過程的載體,涉及了解背景、查詢資料、分析信息、發現問題、探求方法、采取行動、解決問題的全過程。
4)啟發性。
案例教學著眼于能力的培養,希望得到的不是案例的標準答案,而是解決問題的思維方法和能力。案例中,解決問題的方式是開放性的,可以留給學生想象的空間和發揮的余地。
5)實踐性。
學生可以對案例進行復現、改進和完善,也可以按照自己的思考去實現,增強理論應用于實際的能力,實現從理論到實踐的轉化。
3、案例建設
案例教學的前提是高質量的案例,高質量的案例既要覆蓋足夠的知識,又要控制合適的規模。規模過小,則不能溶入足夠的知識,也不能提供足夠的研討與思維空間;規模過大,則在短時間內難以被學生接受,不能得到預期的教學效果。筆者以實際工程項目衛星實時仿真系統的一個子系統為案例背景,在突出主題的前提下,進行了適當的詳略及刪減處理,形成了“實時仿真監視系統”案例。
3.1 案例背景簡介
衛星實時仿真系統能夠對衛星的方案、設計、集成、測試和運行各個階段進行仿真驗證,是提高衛星總體設計水平的重要手段,其網絡關系連接如圖1所示。在此系統中,仿真模型解算、物理設備接口等苛刻實時約束的節點通過反射內存互聯,構成實時內環,外環則通過普通網絡互聯,將人機交互、可視化、數據處理等實時約束弱的節點互聯,內、外環都可以根據需要擴充且內環不受外環影響,苛刻實時得到保障。轉發計算機完成內存數據的提取并轉發外環,仿真管理計算機則同時管理內、外環系統。衛星仿真監控是衛星實時仿真過程中的重要一環,它將抽象的仿真活動形象化,并及時將信號數據以各種方式反饋給用戶,以利于用戶分析、理解和決策。衛星實時仿真監控系統,能夠模擬通過控制、監視和測量星上設備的工作狀態實現實時連續地記錄工作過程、測試數據和描繪曲線。圖1中,人機交互計算機、曲線顯示計算機和三維顯示等外環計算機共同實現仿真監視功能。我們將人機交互計算機和曲線顯示計算機的功能提取出來,要求系統具有一定的通用性,能夠適應不同監視任務和不同數據類型,形成“實時仿真監視系統”案例。
3.2 實時仿真監視系統案例
實時仿真監視系統的工作原理為:轉發計算機完成內存數據的提取并轉發外環,外環上的實時仿真監視系統首先進行初始化,隨后自動生成系統主界面。系統支持兩種運行模式:監視模式和回放模式。在監視模式下,系統既要處理主界面信息,又要處理網絡數據。主界面信息的處理包括響應用戶交互消息、更新實時監視界面、實時繪制曲線;網絡數據的處理包接監聽網絡端口,接收、解析和保存數據包,將有效數據寫入共享數據結構,供給系統繪制曲線。在回放模式下,不再需要對網絡進行監聽,直接讀取監視模式下保存的原始數據文件,然后進行相應處理即可。
為實現上述目的,使系統具有一定的通用性,我們設計了如下方案:
(1)在軟件工程思想指導下,進行需求分析、總體設計、詳細設計、編碼實現以及綜合測試。通過該案例,讓學生對軟件工程思想指導下的軟件開發全過程有一個感性認識;
(2)采用多線程技術實現監視模式下的主界面信息處理和網絡數據處理,僅用單線程實現回放模式;
(3)設計一個數據包發送測試程序,模擬轉發計算機的功能。
為此,我們結合本課程的基本知識點將系統的主要功能模塊劃分為界面管理和數據處理兩大部分,界面管理部分主要承擔主界面信息的處理,數據處理部分則主要負責數據的處理。
3.2.1 界面管理
系統運行過程中始終需要對系統主界面進行管理。從運行初期的生成主界面,到運行中的監視過程的顯示,再到最終的系統結束,都需要對主界面進行即時的調整。為了提高通用性,系統采用基于配置文件的方式,通過用戶提供的配置文件,動態改變系統監視任務,也就是說,系統能夠改變每次運行時的任務,主界面顯示的內容具有不確定性。
1)讀取配置文件,獲取初始化信息。
系統運行之前,需要進行初始化,這就需要系統讀取配置文件,包括全部信號、實時顯示信號、數據包類型等配置文件。用戶必須按照約定的正確格式提供配置文件,否則系統有可能無法正確識別相關信息。從軟件工程的角度,配置文件的設計與確定應在總體設計階段完成。配置文件的類型、組織方式以及數據正確性的檢驗,都是學生可以自由發揮和擴展的內容。
2)自動生成實時監視界面。
監視對象的不確定性使得系統的監視界面無法固定,然而,不能將界面的生成工作完全交給用戶完成,這就需要設計一種適用于不同監視任務的界面生成算法,使系統將界面生成工作承擔下來。另外,系統界面的尺寸等信息是用戶所不知道的,因此被監視的信號在系統主界面中的顯示位置無法由用戶設定,這就需要系統自己完成界面的排布任務。因此,要求設計一個具有較強通用性的監視界面自適應生成算法,這部分涉及算法設計和計算機系統配置的獲取等基礎知識,算法設計是學生能夠自由發揮并出彩的部分。
3)定時更新監視界面。
為了實現實時監視功能,系統需要對監視界面進行定時更新,以顯示當前被監視信號的實時數據。為了滿足用戶的不同需求,系統提供0.5s、1s、2s三種刷新頻率。系統可以根據用戶選擇的刷新頻率對主界面進行更新。這部分主要涉及定時器的使用。
4)處理用戶交互消息。
系統需要對用戶的交互消息進行處理,主要為鼠標消息,包括運行模式的切換、仿真的開始與結束、加載歷史數據包文件等。這部分涉及所選編程環境下的消息響應機制問題。
3.2.2 數據處理
系統在運行過程中,需要對數據包進行接收、解析和存儲,還要為曲線繪制提供原始數據,因此需要設計一個專用的數據結構。
1)接收網絡數據包。
在監控模式下,系統既要處理主界面信息,又要通過網絡接收數據包。為了避免“漏掉”數據包,系統必須對網絡持續進行監聽。如果主線程將大量時間用在網絡監聽上,勢必無法對用戶的交互做出及時響應。因此,需要將數據包的接收放在一個單獨的線程中。這涉及操作系統進程管理的相關概念,是多線程程序設計技術的典型應用;也涉及網絡通信技術,需要了解網絡通信協議等相關知識。
2)解析數據包。
在接收到數據包后,需要將數據包內的數據進行解析,獲得數據包內的數據,將最新的數據更新至系統對應的變量中,以供實時顯示。解析數據包涉及網絡通信程序設計技術。
3)保存原始數據包。
系統要求有回放功能,因此需要將接收到的數據包寫入文件,進行永久保存。數據包的保存有兩種方式:解析后按段保存和作為整體進行二進制保存。第一種方法耗時,需較大工作量。第二種方法簡便,工作量小。顯然第二種方法更適合本系統。由于系統必須適應兩種類型的數據包,因此,進行數據保存時,采用以形參類型為區別的方式進行同名函數的重載,實現兩種類型數據包文件的存儲。這部分功能涉及C++面向對象程序設計中的重載技術以及文件操作技術。
4)讀取數據文件,獲取數據包。
在回放模式下,系統不再對網絡進行監聽,不進行數據包的接收,需要通過讀取之前保存的原始數據包文件獲得數據包。原始數據包文件保存的是二進制形式的數據包,系統每次讀取之后需要對數據包進行解析,這與接收到數據包的過程是一樣的,不同之處在于回放過程不再需要將數據包進行保存。這涉及C++面向對象程序設計中的文件操作,同時,通過監視模式下的多線程程序設計與回放模式下的單線程程序設計的對比,使學生真切感受并理解多線程程序設計技術及其應用場合等。
5)共享數據。
系統嵌套了曲線繪制模塊,因此,數據處理與曲線繪制之間需要有一塊共享數據內存。在收到數據包并解析后,馬上將有用的信息寫入該共享內存。寫入操作由數據包接收線程處理,讀取操作由主線程內的曲線繪制模塊完成,因此,需要對兩個線程進行同步。這涉及數據結構的設計和操作系統的同步與互斥。
6)快速查找。
系統支持大數據量下的仿真監視,對數據的快速查找有較高的需求,因此,需要設計支持快速查找的哈希表數據結構,包括哈希函數的確定、沖突的解決等,這涉及數據結構的哈希表技術。
4、結語
“實時仿真監視系統”案例,涵蓋了軟件工程、c++面向對象程序設計、算法與數據結構、操作系統和網絡通信等計算機軟件技術基礎課程及其先導與后繼課程的知識點,是一個與學生所學專業密切相關的實際應用系統,容易引起學生的興趣,也容易被學生理解和接受。這樣的案例既與教學目標相吻合,又便于教師駕馭和把握。
從學生反饋的情況看,學生普遍認為,案例教學法方式新穎,實時仿真監視系統案例與專業基礎結合緊密;能引導學生積極思考,提高學生的學習興趣以及分析問題和解決問題的能力。該案例在教學過程中取得了明顯的教學效果。
為了更好地開展案例教學,我們必須把建設高質量的案例作為重點來抓,選擇合適的案例背景,制定合理的案例建設計劃。實踐證明,只有經過長時間的積累、認真的思考、精心的選擇和多次教學實踐,才能獲得高質量的教學案例;只有經過團隊的長期努力,才能建設高質量的教學案例庫。
摘要:針對當前《計算機軟件基礎》電子教案開發中存在的問題,在調研了各種多媒體支持比較好的開發技術的基礎上,結合多年的教學實踐,提出了基于Flex 和 AIR 技術平臺的《計算機軟件基礎》電子教案系統開發的技術解決方案。該系統提高了課程教案的可復用性和可維護性,實現單機運行功能和網絡化功能,順應了電子教案的網絡化發展趨勢,克服了傳統 PPT 在課程電子教案制作方面的不足。
關鍵詞:計算機軟件基礎 電子教案 RIA Flex
電子教案,是將傳統教案中的內容轉換成計算機能處理的數字信息格式后存儲于記錄介質(如磁盤、磁帶、光盤等) 中的一種形態。同其他的電子出版物一樣,在觀看閱讀時必須事先輸人計算機主機中,由顯示器輸出。目前課堂上比較流行的電子教案一般有兩種類型:PPT 教案和 WORD 教案,調研中發現在《計算機軟件基礎》課程教學當中 PPT 教案使用的比例非常高。與傳統教案相比,電子教案不僅僅是形式上的變化,而是對傳統教學手段、教學方法和教學模式的深層次變革。在教學過程中有效運用電子教案是新課程改革的必然要求、是教育現代化的必然要求、也是未來社會發展的必然要求。
《計算機軟件基礎》作為工科專業的必修專業基礎課程之一,主要介紹了程序設計語言、數據結構和軟件工程基礎知識,強調基本算法的理解和運用。傳統教學無法演示程序設計實踐和算法演示,充分利用多媒體、網絡技術發展帶來的契機,采用新的教學模式改進原來的以教師講授為主的單一課堂教學模式是課程發展的趨勢。
一、現有《計算機軟件基礎》電子教案開發中存在的問題
軟件復用是一種由預先構造好的、為軟件復用是一種由預先構造好的、為復用目的而設計的軟件構件來建立或者組裝軟件系統的過程。目前用 PPT 等軟件開發的《計算機軟件基礎》電子教案的大部分內容是直接打包在一起的,用戶根本看不到動態演示過程,也沒法對內容進行修改,所以根本就談不上軟件的復用,網絡共享也困難。目前少數一些用Authorware,Director,Flash 和 Html 等軟件開發的《計算機軟件基礎》電子教案,由于在打包或時把教學內容和程序放在一起,一般沒有計算機培訓的用戶根本就沒有辦法對其進行修改。由于現在網絡的快速發展,基于 PPT 等開發工具開發出來的電子教案都不支持網絡瀏覽,這樣不利于課程電子教案內容的及時更新。同時,PPT 要做出很強的交互性需要熟悉它的腳本開發,而 PPT 的交互設計能力不強,限制了教案的二次開發能力,使得教師的教學活動設計和組織受到現有電子教案的約束,很難達到理想的教學效果。
二、系統整體設計結構
電子教案系統總體上被分為兩大部分,一個是電子教案的編輯器部分,另一個是電子教案的內容前臺展示部分(播放器功能)。編輯器部分的界面設計要力求簡潔明了,邏輯結構清晰。播放器部分是教師上課時用來展示教學內容的程序,它包括導航部分、內容展示部分、以及電子白板。系統的功能需求主要集中在圖文混排、多媒體支持、用戶交互、編輯和修改、文字批注和電子排版等功能。
系統總體上采用由電子教案編輯器和播放器兩部分組成,電子教案編輯器在完成電子教案內容的制作后導出素材內容,打開播放器播放電子教案。
編輯器主要是為電子教案的制作人員提供添加和修改課程電子教案內容的功能。編輯器部分包括電子教案文件處理部分,電子教案邏輯的設計,具體的每個頁面內容的添加和頁面相關屬性的設置。其中文件處理部分對電子教案進行新建、打開、保存;邏輯結構對電子教案內容之間的邏輯結構進行安排,使其符合電子教案整體的結構或教師教學的具體要求;頁面內容的添加負責在頁面中添加具體的教學內容素材,如圖片、文本、音頻、視頻等;頁面相關屬性的設置對頁面背景顏色和背景圖片的添加和修改,對頁面切換效果的設置。另外還有具體的媒體素材的風格設計,同時還提供備課時添加批注的功能。播放器通主要負責對編輯器生成的電子教案素材文件的展示,供教師上課使用。播放器的交互設計和 PPT 類似,保持了 PPT 的一些版面設計風格和快捷鍵操作等。另外播放器提供彈出式導航欄,方便教師上課時的導航操作,每種素材對象都有自己特定的交互方式。編輯器打包把播放器和電子教案素材內容放在一起,播放器在打開時會調用同級同名文件夾里的 XML 文件和素材文件。
三、主要模塊實現
1、電子教案文件操作模塊
該模塊在設計時把電子教案文件作為一個整體內容來進行新建、打開和保存。新建電子教案時對原有已打開電子教案的處理,如果用戶對已打開電子教案做了修改,但是未保存,會提示用戶先保存,然后再新建電子教案文件。
作為該系統的重要模塊之一,內容結構編輯模塊的設計要方便用戶對電子教案文件的邏輯結構進行編輯和修改。本系統采用樹的數據結構來標示電子教案的內容結構,不僅結構清晰,而且操作方便,符合一般用戶的習慣。
該樹形結構的節點可以拖動以調整節點的位置,在節點上單擊右鍵會彈出右鍵菜單,包括對節點的添加、復制、粘貼、刪除和修改等操作。
四、總結
《計算機軟件基礎》電子教案設計和開發的過程中,不僅使電子教案結合了桌面應用良好的用戶體驗與網絡課件輕松部署,帶給用戶更好的交互體驗。該系統實現了電子教案對網絡的支持,提高了教案的可重用性和可擴展性。本系統結構在細節上還有部分可以改進和提高的地方。比如系統定義的各種資源素材 XML 表示文檔沒有遵循 Scorm 技術標準,給以后電子教案素材內容網絡復用帶來不便。
一個軟件從開始計劃到廢棄為止,稱為軟件的生存周期。它包括計劃、開發和運行三個周期,每一時期又可細分為若干個更小的階段。計劃時期為問題定義和可行性研究;開發時期為需求分析、概要設計、詳細設計和編碼;運行時期為測試和維護。我們在開發軟件項目時,要做到系統計劃、分析、設計、編碼、測試及維護等基本的六大步驟。軟件開發首先從制定計劃開始,這是必不可少的一步,在制定計劃時,要準確地弄清軟件項目最終要解決的問題,并考慮相應的對策,寧愿花一些時間充分作好計劃,也不要在計劃不周的情況下倉促著手。
一、系統計劃:它包括系統定義及分析、可行性研究和實施計劃報告的編寫。1、系統定義是制定軟件計劃的第一步,它應決定所開發軟件的總目標,其任務包括首先是確定所開發軟件的總體要求和適用范圍,描述所開發軟件與外界接口的關系;其次是確定所需硬件和軟件的支持,對開發的進度和成本作初步估計;第三是分析系統的可行性是否確定所開發軟件與原軟件的兼容性或其它關系;最后是確定所開發軟件的性能與其內部復雜性之間的折中關系。2、可行性研究它包括技術可行性、經濟可行性及社會可行性方面。技術可行性是研究應弄清現有技術條件能否順利完成開發工作,對參加開發工作的人員應有哪些技術方面的要求。硬件配置能否滿足開發的需要,估計的進度是否恰當以及對用戶的技術方面的要求是否合理等等;經濟可行性研究的目的是希望以最小的開發成本取得最佳的經濟效益的軟件產品;社會可行性研究則是指所開發的軟件項目是否涉及到版權糾紛等法律問題,這樣的軟件產品投入運行后,對生產、管理或經營體制帶來有什么社會影響。3、實施計劃報告的編寫是開發進度、人員投入計劃、人員的組織及其資源的利用作個計劃報告提綱。
二、系統需求分析:需求分析的任務在于完全地弄清用戶對軟件系統的確切需求,它具有三大特點:準確性和一致性;清晰性和沒有二義性;直觀、易讀和易于修改。比如,你首先要知道做這個項目是為了解決什么問題;測試案例中應該輸入什么數據等等,為了清楚地知道這些需求,你經常要和客戶、項目經理交流等。需求分析的步驟:1、通過對現實環境的調查研究,獲得當前系統的具體模型;2、去掉具體模型中的非本質因素,抽象于當前系統的邏輯模型;3、分析當前系統與目標的差別,建立目標系統的邏輯模型;4、對目標系統進行完善和補充,并寫出完整的需求說明;5、對需求說明進行復審,直到確認文檔齊全,并且符合用戶的全部需求為止。
三、系統設計:主要分成兩步即概要設計(總體設計或結構設計)和詳細設計。概要設計階段應著重解決實現需求的程序模塊設計問題,如何把被開發軟件系統劃分成若干模塊,并決定模塊的接口,模塊間的相互關系以及模塊之間傳遞的信息。詳細設計則是要決定每個模塊內部的具體算法。經概要設計和詳細設計完成后,需要進行必要的階段評審,其目的在于使設計發生問題能夠及時發現并得到及時的解決。實際上軟件設計的主要任務是就是將軟件分解成模塊,該模塊是指能實現某個功能的數據和程序說明、可執行程序的程序單元。
四、系統編碼:系統編碼即編程序是軟件開發的最終目標,是產生能在計算機執行的程序,其目的是使用選定的程序設計語言,把模塊的過程性描述翻譯為用該語言書定的源程序。實質上,軟件=程序+文檔。編碼的目的是產生程序,其余階段是產生文檔。軟件編碼是指把軟件設計轉換成計算機可接受的程序,寫成以某一程序設計語言表示的“源程序清單”。能充分了解軟件開發語言、工具特性和編程風格,有助于開發工具的選擇以及保證軟件產品的開發質量。
五、系統測試:包括測試的方法與技術和測試步驟。測試在軟件生命期中占重要地位,不僅是因為測試階段占的時間、花費的人力和成本占軟件開發的比重很大,而且它直接影響著軟件的質量。程序中許多細微的地方要求絕對正確無誤,不能半點馬虎。軟件開發工作在測試以前已經歷了制定計劃、需求分析、設計和編碼等許多階段,每一個人的思維不可能絕對周密,而不可能不出現差錯,更不用說,在大中型軟件開發項目中,系統內各部分之間、各種數據之間、各種人員之間存在著復雜的關系,因而目前可采用的開發方法都不能完全避免發生差錯。1、測試的方法與技術主要是機器測試與人工測試和白盒測試與黑盒測試。機器測試是在設定的測試數據上執行被測程序的過程,又稱為動態測試。人工測試并不是可有可無的,為了節約計算機機時采取的權宜措施。它是機器測試的準備,也是程序測試中不可缺少的環節。而白盒法和黑盒法主要依據是軟件的功能或軟件行為描述,發現軟件的接口、功能和結構錯誤。其中接口錯誤包括內部、外部借口、資源管理、集成化以及系統錯誤。2、測試步驟。分單元測試(模塊測試)、綜合測試、確認測試和系統測試四部分組成。它是整個計算機系統(包括軟件與硬件)的測試,可與系統的安裝和驗收結合進行。測試的目的是讓你知道,什么時候算是完成了,這樣可以及時知道你是否真的完成。
測試是軟件開發時期最繁重的任務,也是保證軟件可靠性最主要的手段,測試的目的是發現程序的錯誤,而不是證明程序沒有錯誤,軟件的測試通常分散在3個階段進行。編碼階段完成單元測試,包括靜態分析與動態測試。
六、軟件維護:當軟件產品交付使用后,就進入生存周期的最后一個時期——運行時期。必須搞好軟件的維護,才能使它正常工作,還使它擴充功能、提高性能,為用戶帶來顯著的效益。一般軟件維護工作包括三個方面的內容:改正性維護、適應性維護和完善性維護。在軟件生存期中,維護工作是不可避免的,按照不同的目標,維護活動可以分為四類:1、以加強軟件功能為目標的完善性維護;2、糾正軟件遺留錯誤的糾錯性維護;3、為了適應運行環境變化而進行的適應性維護;4、以及為改進軟件的可維護性,減少將來的維護工作量而進行的預防性維護。軟件的可維護性,主要決定開發時期的活動,用軟件工程的方法來開發軟件,編制齊全的文檔,嚴格進行軟件測試和階段復審,是改善軟件可維護性、降低維護費用的關鍵。要加強對維護的管理,尤其是配置管理。有效地對軟件配置進行跟蹤和控制,避免造成文檔的混亂。為確保維護中修改的正確性,消除因修改不當給擁護帶來的不良影響,要求對修改工作持謹慎態度。
軟件工程環境是在開發軟件工程時,開發者要求環境支持他們按照軟件工程的方法,全面完成生存周期中的各項任務環境。它要求有適用的語言、良好的工具、有力的編輯和調試手段,以及盡可能豐富的實用程序。良好的環境可以提高開發效率和軟件質量的重要條件。軟件項目的特點是軟件產品和其它任何產業不同,它是無形的,既沒有重量,也沒有體積。對于這樣看不見、摸不著、完全沒有物理性質的產品,如何組織生產和研制,卻有許多與眾不同之處。
摘 要:該文是將我們對于計算機軟件技術基礎課程教學團隊的多年建設經驗進行了探索與實踐,為相關基礎課程教學團隊的建設提供一些寶貴的經驗,使國家“質量工程”建設工作落到實處。
關鍵詞:計算機軟件技術;基礎課程;教學團隊
我校計算機軟件技術基礎課程教學團隊經過多年的建設和發展,形成了鮮明的特色,為信息類專業學生的培養做出了一定的貢獻。
一、團隊設置特色
計算機軟件技術基礎課程教學團隊是在多年的教學改革與實踐中自然形成的老中青相結合的教學團隊。本團隊是在不斷適應國家建設需要的過程中形成、發展和壯大的。當今我國經濟飛速發展,在信息化建設中對高素質人才的培養提出了新要求,本團隊根據這些要求大力開展計算機科學與技術人才培養模式與課程體系的研究、建設與實踐,團隊自身水平穩步提高。組成了以教授、博士為核心的教學小組,并結合學科發展方向,建立多渠道師資培養機制。
二、切實可行的創新性改革措施
本團隊按照課程內涵,適應國家現代化建設對人才的需求,通過長期的教學實踐探索、總結、形成了以下創新性改革措施。
(一)樹立先進教學理念,優化課程內容
團隊以“厚基礎、寬口徑,知識、能力、素質協調發展”的教育教學理念,針對社會發展需求,結合各專業特點,分別制定教學計劃,將課程劃分為“基礎類”、“專業類”和“應用類”三個層次的課程類型。
(二)采用靈活教學方法和手段,提高教學質量
本團隊在長期的教學研究過程中,歸納、總結和形成了若干種實用的教學方法。將省級重點學科、精品課程建設的經驗應用到本課程教學改革中,充分發揮教授、博士的作用:教授、博士全部承擔課程的主講工作,定期研討本課程的新技術及發展動向;由團隊帶頭人主持培養方案、教學計劃、教學大綱制訂等教學活動;將科研課題引入課程設計和創新實驗等實踐活動中。緊跟學科發展的步伐,面向市場需求、結合各類專業特點,制訂了一套全新的課程大綱和人才培養方案,加大基礎實驗的課時數,著力培養實際動手能力。
(三)強化課程設計,提升學生綜合素質
從課程設計的選題、指導教師的配備、設計過程,我們從制度上實現了全方位的考核和監控。近年來,課程設計的選題中有15%來自團隊成員的基金項目和科研課題,35%來自企事業單位橫向課題,有30%的選題跟蹤學科領域的新技術。
三、實驗教學或實踐性教學
(一)依托優勢資源,強化實驗教學
依托我校的計算機科學與技術國家級實驗教學示范中心、光電技術與智能控制教育部重點實驗室、甘肅省高原交通信息工程及控制重點實驗室、鐵道部通信與自動化重點實驗室、甘肅省網絡測試技術研究中心、甘肅省網絡監測中心等11個實驗室和研究所,建立了面向本科生的課程實踐體系。實踐教學中突出知識的綜合運用能力培養,設立了綜合性課程設計體系,并對某些專項內容單獨設課,突出了計算機軟件分析設計能力、創新能力和團隊協作能力的培養。
(二)結合學生興趣,建立個性化的培養方案
利用國家級實驗教學示范中心的先進軟硬件平臺,開設設計性、創新性的綜合實驗,并作為實踐活動的必修環節。這些活動不僅向學生提供了接觸、學習先進軟件工具的機會,而且也通過教師的言傳身教,掌握科研的基本實驗技能,為后續實踐活動奠定基礎;通過本科生參與團隊成員承擔的科研項目,使學生一開始就處在一個較高的起點,能夠涉獵學科前沿。
(三)完善實驗教學管理制度,保證實驗教學質量
團隊切實加強教師隊伍和管理制度的建設,確保高質量地實施課程計劃。借鑒ISO9001認證體系中的過程化管理、按要素評估的思想,建立完善的教學質量保障體系。
四、資源建設
課程建設依托計算機科學與技術國家級實驗教學示范中心、光電技術與智能控制教育部重點實驗室、甘肅省高原交通信息工程及控制重點實驗室、鐵道部通信與自動化重點實驗室、甘肅省網絡測試技術研究中心、甘肅省網絡監測中心等實驗室,先后通過教育部、甘肅省教育廳和學校共同投入,補充和更新了一大批實驗設備,使實驗條件得到較大的改觀,能滿足教學科研的需要。同時,團隊通過校企聯合,建立了一批計算機設備比較先進、技術力量雄厚、指導能力強、穩定的校外學生實踐基地。各實習基地的實踐活動按照教學大綱和任務書進行,保證了實踐教學效果。
五、網絡教學建設
建立本課程網上課堂及在線立體化智能教學系統。網上課堂設計的目的是能夠給不同層次、不同需要的學生提供幫助,提高教學質量。根據網絡立體化教學環境的要求,系統主要包括用戶管理、公告系統、網上教學、動畫演示、在線測試、網上答疑、課程實驗、課程設計及論壇多個模塊構成,系統的設計思想確定為:以知識點為中心組織教學子系統;利用動畫技術設計演示子系統;建立交互式的考核子系統;建立答疑教室,為教學交流提供橋梁。
六、結束語
我校的計算機軟件技術基礎課程教學團隊是一支實力雄厚,極具影響力的教學科研隊伍。該團隊很好地把握了當前“計算機”教育的特點,堅持理論與實踐并重,一方面,注重對國際上新理論、新方法以及實踐中的熱點問題進行跟蹤和研究。另一方面,注重運用現代信息技術,精心制作了多媒體課件,采用多媒體手段進行教學,同時利用現代信息技術,實現了網絡化教學,方便了師生之間的教學互動,有助于促成教學質量的提高。該團隊的很多研究成果已經達到國內領先水平,并被評為國家級教學團隊。
摘 要 為了推進我國現代化產業的健康發展,各界對于計算機軟件工程技術的發展非常關注。目前,電子計算機的覆蓋面非常廣泛,這對于計算機軟件工程的發展提供了動力。為此,本文首先分析了計算機軟件工程的具體情況,其次,提出了促進以計算機軟件工程為基礎的現代化技術發展的可行性方法,最后,就計算機軟件工程未來的發展趨勢作以分析。
【關鍵詞】計算機 軟件工程 現代化技術 研究
現如今,已經步入信息化時代。在此背景下,現代信息技術以其特有的優勢為各個行業提供便利。其中,計算機軟件工程也屬于應用現代化信息技術中的重要一員,為了更接近理想發展目標,有必要提升其現代化水平。因此,了解計算機軟件工程現代化技術發展現狀,并提出合理性的改進意見,是非常必要的。只有這樣,才能讓計算機技術得到更充分的應用。
1 計算機軟件工程及其發展現狀
計算機軟件工程,具體是指參與軟件工程活動的軟件工程師和管理員進行開發、維護、管理軟件產品的過程。在這期間,他們需要在軟件工程的方法指導下,利用計算機及其軟件工具完成上述工作。自計算機軟件工程技術傳入我國以來,其也得到了一定的發展。分析其發展現狀,不難發現,計算機軟件工程技術與其他先進技術相比,存在明顯的共通性。因此,計算機軟件工程技術得到了眾多應用領域的認可。為了促使計算機軟件工程技術更好的發展,分析其存在的不足之處,有利于實踐過程中調整或者改正。具體而言,在軟件工程化開發過程中,會產生較多問題,例如,最突出的問題就是工程軟件設計需求與實際業務需求存在出入。除此以外,關于軟件工程的管理也不是一件容易的事情,其涉及的環節較多,內容較為繁雜,給軟件工程的管理造成諸多不便。就其根本,限制我國計算機軟件工程的發展因素主要有兩個方面:
(1)缺少自身的自主研發手段;
(2)缺少一套計算機軟件工程管理體系。
2 促進以計算機軟件工程為基礎的現代化技術發展的可行性方法
2.1 加強自主產權的保護
計算機軟件工程借助現代化技術實現發展,因此,在計算機軟件的自主創新技術上,相關企業應注重保護自主產權。在此過程中,要通過優化投資結構,創建出屬于自主研發的創新技術,進而推出相應的技術與產品。除此以外,為了縮小我國計算機軟件工程現代化技術與國外的差距,有必要密切關注國外的發展狀況。同時,保護知識產權是一項重要工作,企業或者相關人員應增強自身的知識產權保護意識,明確科學、合理的知識產權保護舉措,以促進我國現代化技術向更好的方向發展。為實現該目標,應做好以下幾點,
(1)針對知識產權方面的知識,應大力宣傳。
(2)針對相關知識產權方面的法律法規,應積極完善。
(3)將違背知識產權保護條例的行為給予相應的處罰。
從上述幾點入手,調動計算機設計人員的工作積極性。
2.2 重視創新技術和產品
我國計算機軟件工程上的技術自應用以來,取得了不錯的發展。但停滯不前的技術水平,很難讓我國計算機軟件工程技術實現更好的發展。為了扭轉這種局面,我國相關部門與科研人員在技術方面應實現創新。國外的先進技術固然能夠被引進或者借鑒,但是這不是長久之計。在計算機軟件工程技術中融入自身更多的自主性,才是創造優質產品的根本。通過技術創新,促進行業整體平穩發展,是我國的計算機軟件工程走向可持續發展的道路唯一途徑。現階段,我國相關部門與科研人員應該通過引進新型、專業型的技術人才,提出新穎的技術理念等方法實現計算機軟件工程技術的創新。這樣計算機軟件工程的建設才能打好基礎,進而推動其的整體進程。
2.3 政府增加扶持力度
信息化項目建設的發展,對于一個國家來說是非常重要的。作為信息化項目建設中的重要組成部分,現代化計算機軟件工程技術相關項目應該受到政府的重視,得到更多的扶持。為此,政府部門,應該做好以下幾項工作:
(1)通過增加投資和融資渠道讓項目建設獲取更多的投資。
(2)由政府負責牽頭成立相關的計算機軟件工程基金,為計算機軟件信息產業的發展貢獻出重要的力量。
(3)政府還應該通過引導和開發,促成相應的技術改造項目順利完成。
3 以計算機軟件工程為基礎的現代化技術發展方向
從計算機軟件工程的技術應用現狀來看,以計算機軟件工程為基礎的現代化技術發展前景非常好。在未來,以計算機軟件工程為基礎的現代化技術更傾向于向智能化方向發展。只有實現智能化,才能提升計算機在辦公效率方面的能力。不僅如此,在軟件工程技術開發中,也可以增強自動化的作用。因此,加大軟件開發技術的智能化推進力度刻不容緩。另外,分析以計算機軟件工程為基礎的現代化技術發展方向,可以明顯看出,其更加趨向開放性的發展趨勢。計算機的應用領域越來越多,全面推動技術的開發是必然的選擇,如此一來,增強開放化程度也成為了唯一方法。網絡化程度增強也是以計算機軟件工程為基礎的現代化技術發展的一個主流。在計算機軟件工程開發的過程中,涉及的信息數據越來越多,需要存貯的內容也隨之擴大,因此,在未來,計算機軟件工程需要更加趨向網絡化。否則,將難以快速的進行信息處理。同時,與全球信息的交匯也需要增強其網絡化。
4 結束語
綜上所述,為推動現代化社會發展,關注并重視現代信息技術非常必要。在現如今的信息化社會的背景下,促進信息化技術的發展不能僅僅借鑒或者引入國外的先進技術。我國應該本著積極創新產品的目的,提升自主研究技術水平,為提升服務質量與水平做出努力。我國計算機軟件工程的現代化發展,需要當代科研人員和相關人員貢獻力量。從政府加大扶持力度到科研人員重視創新技術和產品,都是推動計算機軟件的開發與進步的方法。此外,企業自身也要盡可能創造積極的環境為計算機軟件工程的優化升級奠定基礎。
摘要:針對目前“計算機軟件技術基礎”課程教學中存在的共性問題,結合專業特色,著重探討了將基于Zadeh認知原理的認知教學法與案例教學法相結合形成的認知案例教學法及其在該課程中的應用。通過三年的教學實踐,收到了良好的效果。
關鍵詞:軟件技術基礎;教學法;認知;案例
一、引言
“計算機軟件技術基礎”課程是非計算機專業的計算機基礎教學內容之一,有著廣泛的應用。課程的教學目標是使學生能夠全面系統地了解并掌握計算機軟件技術的基本概念、思想、原理和方法,并且具有一定的軟件系統設計能力,更好地利用計算機軟件技術解決本專業領域中的實際問題和日常事務性問題[1-2]。目前,很多高校都開設了“計算機軟件技術基礎”課程并取得了一定的成效,但該課程的綜合性較強,在教學過程中出現了一些不盡如人意之處。本文針對目前該課程在教學中存在的共性問題,結合作者的教學實踐,從教學方法的角度出發,對該課程的教學改革進行探討。
二、課堂教學存在的共性問題
“計算機軟件技術基礎”課程教學目前面臨的共性問題主要體現在以下幾個方面[3]:(1)學生對該課程的學習目的不明確,認識不到課程內容的重要性;缺乏學習動力、主動性和自覺性;(2)學生的程序設計、調試能力薄弱,缺乏解決實際問題的經驗,對課程內容的實用性體會不深;(3)教學學時較少,一般為32或者48學時。課堂教學大部分時間集中在基本概念、原理的講授上,而程序設計、調試等實踐性較強部分通常只能點到為止,無法進行深入講解和布置練習。
對于第一個問題,普遍采用的對策是引導學生重視課程;后面的兩個問題,目前的解決方式主要集中在教學方法和教學手段的改革上,不同的授課者在具體實施的時候,會因情況而各異。本文作者承擔著內蒙古大學通信工程、電子信息科學與技術兩個專業的“計算機軟件技術基礎”課程的授課任務,面對目前該課程教學中的共性問題,進行了深入的思考、分析和研究,除了對學生進行科學研究層面的適當引導外,嘗試采用合理有效的教學方法展開教學工作。
目前,一門課程大多采用一種教學方法,主要有任務驅動教學[4]、案例教學[5]、問題教學[6]、引導教學[7]、認知教學[8]等。前四種方法側重于教學形式與手段的變新與改革,認知教學從講授內容的本質出發,研究教學內容的認知過程。“計算機軟件技術基礎”課程以高級程序設計(C或C++)為基礎,內容涵蓋“算法與數據結構”、“操作系統技術”、“數據庫技術”和“軟件工程”等,各內容之間既互相聯系又比較獨立,每一部分內容都是計算機專業的一門專業課程。對于這樣具有繁雜的內容并且注重理論聯系實踐的課程,僅采用單一的教學方法組織教學肯定滿足不了授課的要求,同時學生也不容易掌握其內容。基于Zadeh認知原理的認知教學能夠從牢牢抓住教學本質出發,深化知識的組織、粒化與因果關系,將所有知識融為一體。案例教學能夠使理論和實踐有機地結合起來,利于學生的思維能力、知識應用能力、團隊合作精神的培養。本文將基于Zadeh認知原理的認知教學與案例教學兩種教學方法緊密地結合起來(以下稱認知案例教學法)并應用到該課程的教學實踐中,借此加強學生的程序設計、調試能力,緩解因教學學時較少與加強實踐能力間的矛盾。
三、認知案例教學法及在“計算機軟件技術基礎”中的應用
基于Zadeh認知原理的認知教學是按照人類認知事物的規律進行教授知識,將教學知識組織、粒化、因果化,使學生抓住知識的本質,全面地掌握知識。其中,組織是對知識宏觀的掌控,粒化是對知識微觀的演化,因果則是知識之間的關聯。因此,認知教學能夠條理地、邏輯地、系統地組織教學內容,是一種符合學生學習邏輯認知過程的科學方法[8]。案例教學是一種以教學案例為基礎的教學方法,以學生在課堂內外對案例的分析、思辨為重點,目的是提升學生應用理論創新性地解決實際問題的能力。具體形式是在教師的精心策劃和指導下,根據教學目的和教學內容要求,運用典型案例將學生帶入特定事件的現場進行案例分析,通過學生獨立思考或集體協作,進一步提高其識別、分析和解決某一具體問題的能力[5,9,10]。對于認知案例教學法,首先綜合考慮認知教學法和案例教學法的內涵,認真分析課程的特點和內容,提取宏觀知識點(教學內容)并把它們合理地組織在一起;然后對每個宏觀知識點進行細化,得到微觀知識點;接下來搭建宏觀知識點之間、微觀知識點之間的相互關聯,從而得到一個課程的認知系統;最后在這個認知系統的基礎上,對微觀知識點或宏觀知識點選擇合適的案例開展課程教學。
根據“計算機軟件技術基礎”課程的內容,把“算法與數據結構”、“操作系統技術”、“數據庫技術”和“軟件工程”四部分作為宏觀知識點,并用系統工程作為基點把它們關聯起來;依靠采用的教材和使用的參考資料對這四個宏觀知識點進行細化,并建立微觀知識點的彼此關聯,這樣就得到了“計算機軟件技術基礎”課程的認知系統,如圖1所示。圖1中的宏觀知識點和微觀知識點形成了一個多層次、逐層深入的組織結構。每一層是其上層的粒化,每層的微觀知識點之間、上層和下層之間都有直接或間接的因果關系。依據圖1所示的認知系統,在實際教學中采用了對底層一個或多個關聯緊密的微觀知識點精選有真實場景的應用案例展開課堂授課。為了能夠成功地進行認知案例教學,需要對學生進行科學研究層面的引導,較好地激發學生對課程的強烈求知欲和學習積極性,使其在課堂之外能夠主動地投入更多的時間和精力認真完成課堂教學的準備工作,同時自主地學習和發現問題。對于教師,需要在圖1的認知系統框架下,根據微觀知識點有針對性地選擇案例。仔細研究案例的內容,做好案例分析。明確給出本次案例教學重點討論的問題、有關的背景知識、參考資料和預習要求,把這些內容文檔化提供給學生,要求學生提前預習,找出具體問題,同時準備分組討論提綱。注重程序設計和調試,布置相應的練習,要求學生提前熟悉程序,并準備調試結果。課堂教學中,引導學生就一個問題進行討論,根據學生的發言進行相應的點評和講解;并引導學生從一個問題的討論過渡到另一個問題的討論;最后進行小結和歸納。
認知案例教學注重培養學生的程序設計和調試能力,教學中布置的練習都有相應的應用背景,學生通過調試和設計程序對課程內容的實用性有了進一步的體會。一般一個案例包含多個知識點,學生的預習和準備工作縮短了授課教師講授基本概念、原理所需的時間,這讓授課教師能夠在有限的課堂教學中集中更多的精力去講解實踐性較強部分。經過三年的認知案例教學實踐,發現學生的學習積極性和學習效率都有了明顯的提高,學習效果良好。
四、結束語
本文把認知案例教學法應用到“計算機軟件技術基礎”課程的教學實踐中,對于該課程的教學有一定的獨到性之處。較好地處理了理論與實踐相結合的關系,進一步激發了學生的學習興趣,使學生能夠更加牢固地掌握課程的知識點,同時培養了學生的自學能力和創造能力,提高了教學質量。
[摘 要]計算機軟件開發行業的發展得益于當前信息技術的快速發展和信息受眾不斷增加,當然計算機軟件開發也需要遵循特定的規律,依照其基礎架構原理來進行操作,才能夠保證計算機軟件開發朝著有效性的方向發展。且計算機軟件設計的過程,就是在邏輯關系的引導下,實現軟件內容的重新確定,進而形成對應的基礎架構,這是軟件運行的前提和基礎,甚至會影響到后期軟件系統的維護和管理工作。由此積極探討計算機軟件開發的基礎架構原理,是很有必要的。文章由此入手,積極探究計算機軟件開發的概況,進而分析計算機軟件開發的基礎架構原理。
[關鍵詞]計算機軟件開發;基礎架構原理;研究
1 引言
計算機軟件設計的過程,就是在邏輯關系的引導下,實現軟件內容的重新確定,進而形成對應的基礎架構,這是軟件運行的前提和基礎,甚至會影響到后期軟件系統的維護和管理工作。由此積極探討計算機軟件開發的基礎架構原理,是很有必要的。
2 計算機軟件開發的概況
2.1 計算機軟件開發的概況
計算機性能的不斷提升,使得人機交互效益得到不斷展現,越來越多的行業開始嘗試以計算機軟件開發的方式,實現自身運營模式的信息化轉變,由此以對應需求為基礎的軟件開發行業得到了快速的發展。計算機軟件開發具備以下的特點:持續性特點,就是軟件開發是一個循環往復的完善過程,在計算機邏輯基礎上,計算機軟件的缺陷是一直存在的,只有不斷的采取措施去修正,才能夠更好的發揮計算機軟件的性能;針對性比較強,往往都是針對于某一行業或者領域而開展的計算機軟件開發工作,其開發工作的目的性更強,對于效益的追求也是更加強烈的。
2.2 計算機軟件開發基礎架構的重要性分析
當前計算機軟件開發過程中,使用量比較多的基礎架構,就是三層結構體系,其分別可以歸結為:其一,表示層;其二,邏輯層;其三,數據層。在上述三個層次的基礎上,可以使得軟件的人機交互界面展現出良好的性能,使得邏輯關系和計算機語言之間得以分離,這樣在后期維護和修改的時候,單獨的對人機交互模式進行調整,就可以使得軟件開發的節奏變得更加快捷。由此可見選擇合理的計算機軟件開發基礎架構,對于軟件性能的最大化發揮,對于軟件后期的維護和管理工作質量提升而言,都是有很大幫助的。
3 計算機軟件開發的基礎架構原理分析
3.1 從計算機軟件開發基礎架構需求的角度來看
無論是開發設計怎樣的軟件,都需要在明確開發目的的基礎上進行,也就是需要對于軟件的需求進行全面分析。不同的企業,歸屬的領域不同,所需要展現的功能也是很有差異性的,此時企業都會提出對應的軟件開發需求。在此過程中,計算機軟件開發者與信息企業之間會展開大量的協商工作,對于軟件的功能進行分析,結合企業業務運行特點,實現計算機軟件開發方案的敲定。為了做好需求分析方面的工作,需要特別注意以下幾個方面的工作:建立完善的軟件企業與需求企業之間的溝通機制,保證在軟件需求分析的過程中,能夠充分的了解企業組織的業務特點和規律,保證軟件開發需求能夠更加明確。
3.2 從計算機軟件開發基礎架構編寫的角度來看
計算機軟件開發基礎架構需求分析結果得出之后,就需要進行實際的軟件編寫工作,從當前的實際情況來看,多數使用的是C語言,這種語言的特點為:語言結構結構比較好,編寫操作比較快捷,是當前程序員使用頻率比較多的語言模式。在實際的軟件編寫的過程中,會依照對應的功能劃分,實現不同模塊的敲定,保證不同模塊都能夠發揮自己的功能,此時需要建立對應的函數模式,使用這樣的主函數對于各個模塊進行調節和改善,這樣可以保證結構能夠更好的維護。當前一個計算機軟件的開發工作,都是有多個程序員來共同完成的,這樣可以盡可能的保證軟件編寫工作的高效性。
3.3 從計算機軟件開發基礎架構測試的角度來看
在計算機軟件開發基礎架構編寫工作完成之后,就需要對于軟件的不同功能實現測試,實現對于軟件測試階段的管理和控制,是保證軟件性能發揮的關鍵所在,這也是將對應計算機軟件投入使用之前必然要進行的工作。在此過程中,需要關注以下幾個方面的內容:其一,輸入特定的參數,對于軟件的運行情況進行記錄,驗差運行情況與理論情況之間差異性;其二,使用白盒子和黑盒子的方式去進行測試,同樣對于軟件測試的效果進行記錄,由此實現實際計算機軟件開發工作的順利開展;其三,除了測試工作之外,還應該做好計算機軟件開發基礎架構的維護和管理工作,定期對于軟件的性能發揮進行檢查,并且推出全新的版本,進而實現軟件自身的修復,這樣可以使得其自身的性能得到全面提升。
4 計算機軟件開發基礎架構選擇的基本原則
計算機軟件開發基礎架構的選擇,關系到計算機軟件效能的發揮,牽涉到各行各業信息化的快速發展和進步。在選擇計算機軟件開發基礎架構的時候,需要關注以下幾個方面的內容:其一,樹立軟件設計目標意識,在需求分析的基礎上,對于不同的基礎框架進行選擇;其二,使用先進的邏輯語言和編程技術,對于計算機軟件架構進行合理的編寫和操作,由此才能夠保證基礎架構開發工作的高效性;其三,依照軟件目標功能和結構選擇之間的關系分析,選擇合適的結構,進而使得軟件開發行為朝著有目的性的方向發展和進步;其四,注重計算機軟件開發團隊的塑造,處理好不同模板開發之間的關系,保證計算機軟件基礎結構選擇得更加科學和合理。
5 結語
綜上所述,計算機軟件開發過程并不簡單,其中不僅僅涉及到專業領域的知識,還關注到計算機軟件基礎結構的原理,處理好這兩者之間的關系,才能夠保證計算機軟件開發的基礎架構工作朝著更加高效的方向發展和進步。從當前計算機軟件開發基礎架構原理的運用實踐來看,其基礎架構選擇還存在很多不合理的情況,此時就需要采取對應的措施來改善和調整,相信隨著在此方面實踐經驗的積累,計算機軟件開發的基礎架構將會展現出更加大的效能。
摘要:計算機軟件安全檢測技術已經成為了計算機軟件開發過程中不可或缺的一項核心內容。計算機軟件開發人員,在進行計算機軟件開發過程中,非常有必要對不同類型的計算機軟件進行安全性檢測,以便于軟件開發人員事先發現安全隱患,從而采取適當的改進措施,確保不同計算機軟件在使用過程中順利運轉。
關鍵詞:計算機軟件;安全檢測技術
在社會經濟飛速發展的今天,計算機作為意義上的生產或者生活用品已經融入人類社會的各個領域,并且隨著科技的日新月異,電子計算機科學技術也隨之日臻完善和成熟。是計算機軟件在支撐著計算機的正常運轉,人們依賴計算機進行生產和生活要借助不同的計算機軟件來進行,因而,計算機軟件的安全性也就提到了計算機維護的首要日程。否則,其安全性就極有可能對計算機的使用帶來極大的安全隱患,同時也會給互聯網安全造成極大威脅。鑒于此,計算機軟件開發人員,在進行計算機軟件開發過程中,非常有必要對不同類型的計算機軟件進行安全性檢測,以便于軟件開發人員事先發現安全隱患,從而采取適當的改進措施,確保不同計算機軟件在使用過程中順利運轉。顯而易見,計算機軟件安全檢測技術已經成為了計算機軟件開發過程中不可或缺的一項核心內容。
1計算機軟件安全檢測的基本內容
當今社會,計算機的使用在不同領域越來越廣泛,而且越來越具有依賴性,因而,計算機軟件使用過程中的安全性則越來越成為計算機用戶的終極要求,主要表現在以下幾方面::第一,軟件之間的沖突導致計算機運行的不通暢。安裝某一款計算機軟件后,用戶發現這對計算機本身并沒有產生多么明顯的影響,甚至會因為該軟件和其他軟件沖突因而導致計算機運行速度明顯變慢等;第二,計算機軟件安全性得不到保證。計算機用戶在使用軟件的過程中許多個人信息會被留下,用戶的私密信息隨之就不可避免地被泄露,自然,用戶的個人隱私就會得不到有效的、必要的保護。因此,在不同計算機軟件開發過程中,軟件開發人員要利用成熟的安全檢測技術對計算機軟件中存在的安全漏洞進行檢測,并對其進行安全修復,從而達到提高安全性,降低風險的目的。
計算機軟件安全檢測是指在軟件開發過程中,計算機軟件開發人員采用安全檢測技術,采取科學的手段,對計算機軟件的漏洞和缺陷進行系統性地檢測。安全漏洞檢測是指計算機軟件開發人員對計算機軟件的安全缺陷及在使用過程中產生的安全隱患進行有針對性的檢測、修復,軟件升級或版本修復是這一過程的主要運用手段。不過,這類檢測只是停留在技術的層面問題;而真正的技術檢測,則是計算機使用過程中系統運轉過程中的安全管理、授權、訪問控制和機密性等核心內容。
2計算機軟件安全檢測的基本要求
計算機軟件檢測是一項復雜、嚴謹技術含量較高的工程,不僅對檢測的軟件有著科學嚴格的要求,同事對檢測方法、技術手段、操作人員素質等都有著嚴格的要求。
首先,由于計算機軟件程序具有復雜性的特點,要使用科學有效的安全檢測方法對計算機軟件安全進行實質性檢測。軟件中很多潛藏的安全問題,采用簡單的檢測方法是不能被排除的,所以開發人員一定要事先對軟件的相關特性以及檢測軟件的使用條件進行全面了解后,再根據實際情況選擇適當的檢測方法,制定出科學合理的檢測方案,對計算機軟件安全進行實質性檢測,不僅如此,開發人員還要在細節方面也要依據相關程序進行細化和深化。
其次,因為軟件漏洞具有存在于軟件開發程序的各個環節的特點,需要多類人員共同參與對計算機軟件的檢測,才可能確保盡可能多地排除軟件中潛在的安全威脅。多元化的人員參與有利于實現檢測方法的多極性、多樣性,這有利于及時、準確地排除安全隱患。不過,在軟件安全檢測過程中,必須需要具有專業軟件安全檢測技術的人員參與,同時還需要有了解軟件工作和使用特性的人員,從而實現多角度、全方位的檢測,以排除更多的安全風險,滿足軟件使用的安全要求。
最后,對計算機軟件進行安全檢測必須要按計劃選擇合適的方法進行安全檢測。選擇大體說來,需要通過以下做法具體執行:首先,要對計算機軟件檢測的各種方案和案例進行必要地分析研究,并且最后要進行匯總,在此基礎上再進行分析、歸納、總結,尋找出普遍通用的檢測規律。之后,再根據檢測的具體要求,對比、篩選合適的方法予以檢測。但是,再進行檢測之前,為了確保檢測程序的順利推行,事先必須制定出切實可行的檢測方案,并將檢測過程的方案制定的形象化、具體化,以確保檢測過程準確無誤地予以開展。以上工作做好、做細后,還要對上述擬定的檢測方案采用電腦模擬建立數據模型。特別需要指出的是,在這個過程中,一定要把語言支持作為實現模型形式化表現過程中的動態幫助。以上環節結束之后,作為對軟件進行運行和結構的安全測試,再開始檢測模擬系統。
3 計算機軟件安全檢測的具體技術
3. 1 語法安全檢測技術
語法安全監測技術主要是對計算機軟件中的語法進行實質性、技術性檢測。最初輸入條件的不同會使最終檢測結果產生差異。語法安全檢測技術通常被用于檢測源程序中的安全漏洞,該檢測技術可及時有效地檢測出系統函數與C語言庫函數的切換,并及時恰當地做出處理,從而建立以語法為基礎的測試數據。同時該檢測技術還能實現對計算機軟件的安全檢測,排除潛存的安全風險,保證計算機安全運行。
3. 2 動態安全檢測技術
這項技術是對計算機軟件運行環境變量進行的必要檢測,漏洞等風險因素是它主要進行的檢測目標。這種安全動態檢測技術的使用,計算機軟件源碼不需要在運作過程中進行修改,因而計算機用戶的隱私安全得到了很大程度地保證。在這類檢測技術應用過程中,如果計算機軟件的漏洞被發現,就會自動完成相關修復工作。今天,由于計算機在商務應用中也發揮著越來越大的作用,這種軟件的檢測技術更加適用于商務性,隨著普及率的越來越高,對保證商業機密的安全,必將發揮著越來越大的作用。
3. 3 靜態安全檢測技術
近年來,計算機程序開發人員根據程序代碼內部特性和結構是靜態安全檢測技術這一特征,事先構建合理的測試模型,以滿足計算機讀取的相關要求,對計算機進行安全靜態檢測,這就是所謂的靜態安全檢測技術。這種檢測技術的檢測程序是:開發人員先利用這種安全檢測技術對需要檢測的計算機進行檢測之后,再將選定的測試模型和待檢測的程序數據進行全面比對,如果待測的計算機軟件安全性能良好,其對比數據就會高度一致。近年來,由于這項技術日臻成熟,并且簡潔易行,越來越多的軟件技術開發人員傾向于此項研究之中,從而推動了這項技術得到更為充分的發展,并且越來越大地在計算機軟件安全領域中發揮了重要的作用。
3. 4 混合安全檢測技術
近年來,隨著計算機檢測軟件越來越多樣化,檢測技術要求的不斷提升,對計算機軟件越來越趨向于多項或者混合檢測,以確保效果的精準化、全面化。鑒于此,實踐中,我們往往傾向于多種檢測軟件并行的檢測方法,也即這里我們所說的混合安全檢測技術。這種混合安全檢測技術雙管齊下,動態安全檢測與靜態安全檢測并駕齊驅,采用了動態安全檢測與靜態安全檢測兩種檢測技術的優勢,揚長避短,強強聯合,確保計算機軟件檢測過程精準、全面、不留死角,極大地擴大了檢測范圍。
3. 5 基于web技術的安全檢測技術
計算機技術檢測采用web技術是近年來計算機檢測技術領域的一項嘗試和技術突破。Web技術是近年來伴隨著計算機互聯網技術出現的網絡資源開發技術。隨著web技術的不斷革新,這項技術也逐漸滲透到計算機軟件安全檢測領域中,并且和其他檢測手段比起來越來顯示出它獨特的優越性能――與同是作為計算機軟件安全檢查的傳統的檢測技術,Web安全檢測技術更具有靈活性、高效性和先進性的特點,在檢測性能等各方面都表現出優異的成績。大體說來,基于Web技術的安全檢測技術不僅能夠及時檢測出風險和漏洞,而且能夠及時對這些安全風險和漏洞進行有效修復,為計算機系統安全、可靠、高效地運行提供了有力的保障。鑒于這種檢測技術的精準、高效、安全的特色,基于Web技術的安全檢測技術已經越來越多的運用到不同行業的計算機檢測技術中,并且大有取代傳統檢測軟件的趨勢。
4 結束語
綜上所述, 隨著計算機網絡越來越大的影響著人類的生產和生活,計算機安全檢測技術作為計算機運用過程中的輔助技術,勢必越來越彰顯出它的必不可少的重要作用。同時,計算機技術越先進,勢必要求計算機安全檢測技術也必須隨之越先進,在科技日新月異的今天,相信我們人類社會在計算機安全檢測技術方面,也必將取得更多成果,以更好地服務于計算機技術,更好地造福于人類。