前言:想要寫出一篇引人入勝的文章?我們特意為您整理了學生解決工程問題能力培養方式探究范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:為了提高網絡工程專業學生對于復雜工程問題的解決能力,本文提出了將爬蟲技術融合進企業場景的復雜工程問題的實訓方案。實踐的效果顯示,學生在基于企業場景的復雜工程問題解決過程中,培養了分析、檢索、解決、總結和合作的綜合能力。
關鍵詞:復雜工程問題;爬蟲;網絡工程
1引言
近年來,為了提高高等學校畢業生的職業能力,國家大力推進工程認證工作。工程認證著重于能力的培養,其教學目的是使得畢業生達到一定的能力要求。這種以學生為中心的教育理念,教學內容的設計務必要聚焦學生能力的培養。網絡爬蟲是基于一定的規則,包括正則、xpath、字符串函數等方式,從互聯網的網頁中抽取信息,包括文字、數據、圖片、視頻、音頻等。目前網絡爬蟲多數是用python語言實現。對于網絡工程專業的學生,爬蟲項目完成的過程涉及python語言的所有基礎知識點,進一步應用則涵蓋諸多復雜工程問題領域。本文總結了在python程序設計課程中,通過爬蟲項目與后續網絡工程專業課程結合,依據企業場景設計相關的復雜工程問題。在復雜工程問題的逐步解決過程中,學生的分析、檢索、解決、總結及合作的能力得到了提高[1]。
2問題的重要性和必要性
2.1重要性
網絡工程專業畢業生需要面對網絡實施建設、運維巡檢過程中復雜多變的情況。隨著互聯網技術的發展,虛擬化、云計算、SDN、信息安全等相關技術的大量出現,面對的工程問題越來越復雜,表現在技術和需求、成本和代價多個指標上的衡量,需要畢業生能快速梳理出解決的思路,找到最合適實施的方案。面對復雜問題,能夠快速判斷和決策是一種能力。復雜工程問題解決能力提供的就是這種能力。復雜工程問題解決能力大綱中對于系統思維角度有這樣的描述:(1)識別系統整體相關的全部因素。(2)識別整體系統中的驅動/關鍵因素或主要矛盾。(3)解釋為解決關鍵問題所進行的資源分配。(4)發現系統中的緊張關系并應用妥協折中的方法尋找解決問題的途徑。以上描述指出了培養這種評估決策能力的大概方向,因此復雜工程問題解決能力的培養極為重要。
2.2必要性
網絡工程中的復雜工程問題除了技術理論與實現的復雜性,還需要考慮企業實現中的需求、成本、實時性、健壯性、可擴展性等各種實際問題,務求最終的項目方案能夠滿足企業需求,性價比高,可擴展性和健壯性、實時性較好,保證系統可靠性和容錯性。因此在復雜工程問題解決上,也要教給學生使用上述工程評估準則。基于上述理念,工程教育認證強調課程教學和實踐內容必須包含相應領域的工程原理。課程教授要達到一定的專業深度。這就意味著,教學內容要包含基本的理論和知識點,還需要將工程實踐中的思想和方法融入教學實踐中,尤其是企業所需與實踐結合的可行性、高效率等思想和方法[2]。要培養學生以最小代價最好地完成企業工程設計目標。因此,教學不是只注重學生知識的培養,而是有必要培養學生對復雜工程問題的解決能力[3]。
3復雜工程問題場景
Python課程分為八個基本知識模塊,包括環境安裝、運算符、表達式與內置對象、Python序列結構、程序控制結構、函數、面向對象程序設計、字符串、文件與文件夾操作。根據網絡工程專業學生就業的SDN、網絡自動化運維、WEB開發、智能網絡等方向,基于python基礎知識,設計基于企業應用的復雜工程項目。在解決項目中復雜工程問題的完成過程中,培養學生的知識、能力、素養,實現工程能力的提升。在SDN、網絡自動化運維、WEB開發、智能網絡等方向,使用python語言的各種擴展包可完成以下應用場景:(1)爬蟲通過re、bs4、lxml、scrapy等技術實現數據的采集;(2)數據分析與智能網絡使用numpy、pandas、matplotlib、keras等技術實現數據分析和網絡負載均衡、擁塞的智能預測;(3)網絡流量分析使用pyshark、scapy等技術實現網絡流量的分析和異常流量的識別;(4)自動化運維使用ansible、paramiko等技術實現網絡的自動化運維管理;(5)SDN使用pox、Ryu等技術開發應用層功能,實現網絡的動態管理;(6)pythonweb開發使用django、flask等技術實現web系統開發。上述應用中的若干場景的交叉融合,都可以設計為復雜工程問題。在這些場景教學過程中,指導學生利用較小代價提煉問題的本質,并找到適合的解決辦法。在問題的解決過程中,資料查閱能力、問題解決的評價機制的判斷能力、團隊的協調溝通能力、自我表達能力、書面撰寫能力也能得到有效鍛煉。
4爬蟲在能力培養中的作用
學生在基于爬蟲的python程序設計課程項目實施中,最常見三個應用場景為:(1)應用爬取的數據開發一個web系統,完成系統的各種增刪改查功能,通過爬蟲定時器自動更新數據,同時完成web后臺和前端app多種應用;(2)將爬取的數據通過數據分析的各種機器學習或者深度學習模型,進行分類、聚類、回歸等綜合分析,并通過圖表進行展示;(3)將爬取的網絡流量信息,進行網絡負載、網絡漏洞等功能分析,并使用flask等web框架進行展示。通過將爬蟲與其他不同應用場景復雜工程問題相融合,在問題解決過程中可以培養學生以下幾個方面的綜合能力:(1)發現問題和提出問題的能力,將復雜工程問題的場景進行總結并概述;(2)獲取信息和搜集資料的能力,根據總結和提出的問題通過教材或互聯網搜集相關解決方案;(3)對研究對象及其相關資料和信息進行分析與思考的能力,即對搜集到的資料進行分析并通過思考提出自己的見解,包括比較各種方法的優缺點、可行性、成本與效率等;(4)提出新思想、新方法和新結果的能力。通過不同方法的比較,結合工程實際,對多種方法融合提出新的適合工程的解決方案;(5)對研究成果進行轉化的能力。這一步就是實施,按照選擇的方案解決工程的技術問題。這是重點也是難點,很多學生選擇了適合的方法后,在實施時遇到問題難以解決,需要教師予以指導;(6)對科研活動的過程與結果進行表達的能力。這是對工程各個步驟的總結與提升,也是企業中必需的能力之一[4]。使用爬蟲與企業應用場景相融合,學生解決復雜問題的能力得到提升。比較優秀的學生案例包括Reader小說閱讀器、動漫電影查詢系統、“后疫情時代”輿情演變分析、輔助人臉識別機器學習的圖片爬蟲等。以動漫電影查詢系統的完成來分析學生能力提升過程。這是爬取動漫電影并開發web端系統,可以在系統中按名字、評分進行查詢。學生經過分析,認為可以完成一個動漫爬取網站,做成web端系統。第一步發現問題,包括:數據庫的選擇、選擇Web開發框架、如何爬取、如何定時自動獲取新的動漫信息等問題。第二步搜集資料,使用baidu、github、知網搜集各種資料。第三步對資料進行分析,比較不同的數據庫mysql、sqllite、sqlserver,不同的開發框架flask、django,不同的動漫網站的爬取難度以及定時器的不同使用方案。第四步最終選取sqllite這個輕量級數據庫;考慮到開發難度和任務時間,選擇flask的pythonweb開發框架;由于內容比較豐富且爬取難度低,選擇使用網站進行動漫爬取;選擇多線程定時器定期調用爬取新動漫并存儲。第五步實施過程。小組分工負責爬蟲、定時器、web開發、數據庫設計、ppt制作及答辯等任務,合作完成任務。第六步最終合作完成任務報告,包括任務概述及各部分開發說明文檔。通過上述分析,可以明確看出,通過爬蟲與web開發結合的方式,學生解決了一個復雜工程問題,鍛煉了查詢、分析、解決、合作、總結的能力。2018年至今,在山東科技大學網絡工程專業4屆共500多名學生中進行爬蟲與企業場景融合的實訓方案。與之前未進行該方式的學生相比,采用了爬蟲融合企業場景的實訓方案的學生在科創比賽、就業創業中取得的成績優于未實施該方案的學生,具體數據如表2所示。可以看出采用了爬蟲融合企業場景的實訓方案后,學生的解決復雜問題的能力有所提升,從而帶動了學生的科創獲獎數量和就業率的提升,因此這種方法是有效的。
5結束語
本文以python爬蟲融合多種應用場景培養學生復雜工程問題解決能力的研究,通過實踐使學生認識到理論知識與生產實踐的密切關系,從而提高應用基本觀點和方法分析和解決實際問題的能力。學生面向爬蟲融合企業場景的課題,面對能夠反映工作和生產中可能出現的各種實際情況時,通過發現并提出問題、搜集資料、分析資料、提出新方法、實施、總結等環節,最終解決問題完成工程[5]。通過復雜工程問題的解決,學生在團隊合作、分析、技術實施、總結等多方面的綜合能力得到提升。通過實踐證明,通過python爬蟲融合多種應用場景進行復雜工程問題解決能力的培養思路是切實可行并且有效的。
作者:孫琳 徐文正 武瑩瑩 單位:山東科技大學智能裝備學院