楊光
第九屆“中國軟件杯”大學生軟件設(shè)計大賽報名工作于2020年3月初全面啟動,本屆大賽構(gòu)建了全方位、多角度、多渠道的傳播矩陣,線上和線下結(jié)合,報名數(shù)量再創(chuàng)新高。
本屆大賽根據(jù)需要及時調(diào)整賽程設(shè)置、創(chuàng)新工作思路和比賽形式,開啟云端智慧評審先河,確保疫情防控和初賽評審工作兩不誤。
云端智慧評審? ?創(chuàng)新評審模式
面對今年的特殊情況,大賽組委會實行評審“零接觸”,積極推動“智慧評審”創(chuàng)新實踐,充分發(fā)揮“云端評審”模式智能化、移動化和便捷化的優(yōu)勢,通過遠程討論,交流評審意見,使評審專家足不出戶即可完成工作,從環(huán)境部署、機器調(diào)試到遠程端接入……大賽組委會本著早部署,零差錯,無故障的原則,保障了第九屆“中國軟件杯”大學生軟件設(shè)計大賽云端評審、遠程評議工作圓滿完成。
清華大學軟件學院副教授聞立杰表示:“往年采用的是把老師們集中在一起評審的方式,并把評審相同賽題的老師安排在一起,方便針對疑點進行討論。今年采用線上評審方式,評審時間集中而評審老師無需集中,不再受空間限制,增加了靈活性。缺點是無法和出題單位、其他老師進行面對面針對疑點進行實時討論,在評審效率上會有所下降,但總體的評審質(zhì)量和評審時限仍然是有保障的?!?/p>
為了更好地滿足企業(yè)和學生的多樣化需求,今年大賽初賽評審分批進行。7月22日,大賽初賽第一次云端評審工作在中國電子信息產(chǎn)業(yè)發(fā)展研究院拉開帷幕,歷時7天,于7月28日圓滿結(jié)束。
此次評審的作品涵蓋7道賽題,其中本科組5道、高職組2道。
來自清華大學、北京大學、中國人民大學、東南大學、北京航空航天大學、北京理工大學等高校的評審教師和來自東軟教育科技集團、南京蘇寧軟件技術(shù)有限公司、統(tǒng)信軟件技術(shù)有限公司、南京翼輝信息技術(shù)有限公司、江蘇鯤鵬生態(tài)創(chuàng)新中心、浩鯨云計算科技股份有限公司、江蘇航天龍夢信息技術(shù)有限公司7家出題企業(yè)的數(shù)十位評審專家,云端相聚,共同評審了來自全國高校和高職院校的近2000件作品。
作品整體水平高? ?創(chuàng)新思維涌動
疫情是危機,也是契機,給每個人都上了生動的一課,增長了人們化危為機的智慧。漫漫人生路,職業(yè)生涯中,人人都可能遇到驚濤駭浪。在大賽中磨練出的勇氣,耐心,信心,會助力同學們乘風波浪,直抵彼岸。
東軟教育科技集團設(shè)計的“A1 基于計算機視覺的交通場景智能應用”這一賽題,成為最受參賽學生喜愛的本科組賽題。
來自東軟教育科技集團的企業(yè)評審專家馬振爍表示:“今年作品總體水平不錯,我看到了很多用心且充滿亮點的出色作品,幾乎所有作品都實現(xiàn)了題目要求的基礎(chǔ)功能?!?/p>
賽題“A5視頻全量目標分析和建模”的參審教師聞立杰認為,作品總體水平較高,完成度普遍較好,工作量充實,疫情并沒有影響同學的發(fā)揮,反而給了同學更多打磨作品的時間?!巴暌灿幸曨l對象識別類題目,但今年的視頻內(nèi)容在場景上更貼近實際,從街拍的高清視頻中精準識別對象類別并準確追蹤實現(xiàn)精準計數(shù),是非常有難度和挑戰(zhàn)的任務?!?/p>
A5頗受參賽選手青睞?!耙驗槠淦鹾夏壳叭斯ぶ悄芗夹g(shù)在智慧交通領(lǐng)域的應用需求,結(jié)合實際,能為無人駕駛提供軟件基礎(chǔ)方面的支持?!甭劻⒔芊治?,“A5的難點在于如何運用好已有的計算機視覺領(lǐng)域的成熟模型,并提升其運行效率,做到作品的高識別精度、高運行速度、高追蹤精度。”
聞立杰表示:“有幾個作品在物體識別率、識別精度和追蹤精度方面做得不錯,并將識別結(jié)果做了語義分割,實時展示了物體ID、識別置信度和識別種類,在識別種類總數(shù)和識別對象計數(shù)上也給出了較好的結(jié)果,且模型運行速度快?!?/p>
解題思路巧妙? ?創(chuàng)新亮點頻現(xiàn)
東南大學計算機科學與工程學院副教授倪慶劍參評了“A2基于網(wǎng)絡(luò)拓撲及告警的故障根因定位系統(tǒng)實現(xiàn)及算法研究”和“B1代理層架構(gòu)的分布式數(shù)據(jù)庫中間件實現(xiàn)流式查詢”兩道賽題。
“這兩道賽題設(shè)計的作品類型與我的預想基本一致?!蹦邞c劍說,“A2賽題中,測試集F1值指標所占的權(quán)重較高,因此對算法正確性和有效性要求較高,對這一指標的看重也在較大程度上保證了評審的公平性。最終提交完整作品的學生團隊基本上正確理解了題意。B1賽題中,流控參數(shù)如何支持動態(tài)設(shè)置應該是一個難點。最終提交完整作品的學生團隊基本正確理解了題意?!?/p>
倪慶劍表示,就A2和B1賽題而言,完成要求并最終提交的作品總體水平較好。大部分作品基本上都按照賽題要求,完成了相關(guān)功能;代碼相對規(guī)范,核心部分有注釋;文檔基本都按照要求提供??吹贸鰜?,部分學生作品的設(shè)計比較用心,在設(shè)計和實現(xiàn)方面考慮得較為全面;關(guān)于不足,在文檔規(guī)范性方面可以進一步提高。
A2賽題的企業(yè)評審專家是施云濤,來自蘇寧科技集團的AIOps智能運維首席算法專家。施云濤表示:“有11支隊伍測試集F1值高于80%,是比較好的。學生們在充分理解賽題、深入分析數(shù)據(jù)的基礎(chǔ)上,創(chuàng)新使用了節(jié)點權(quán)重定位、特征提取+分類、排序、因果學習+推斷等算法,測試集根因定位的準確率較高。也就是說,不少隊伍沒有將解題思路局限于答疑時提供的因果發(fā)現(xiàn)及推斷方法,而是巧妙地將問題轉(zhuǎn)化為分類、權(quán)重定位、排序等問題,同樣也得到了較好的結(jié)果。系統(tǒng)功能上,大部分隊伍使用了前后端分離的web架構(gòu),也有些隊伍實現(xiàn)了桌面應用架構(gòu),基本按照賽題要求完成根因定位和結(jié)果展示的功能。整體而言,學生們提交的作品還是比較不錯的,但有些隊伍在代碼結(jié)構(gòu)、代碼注釋、系統(tǒng)性能上需要進一步加強?!?/p>
不少隊伍的解題思路和系統(tǒng)功能實現(xiàn)上都超出了專家的預期。馬振爍提到:“19857、19470、19285、19159這幾個作品都很優(yōu)秀,無論是作品本身、文檔編寫,還是視頻錄制、演示等都展示出很多細節(jié)上的亮點。在功能技術(shù)上,這些作品也都展現(xiàn)了多重功能性和創(chuàng)新性,整體完成度很好,算法優(yōu)良,給我留下了深刻的印象。總而言之,我從各個方面都能感受到參賽選手很用心,為此投入了大量的時間和精力。”
施云濤舉例:“解題思路上,020770隊伍沒有使用特別復雜的機器學習算法,而是在分析數(shù)據(jù)特點后巧妙地使用了根因節(jié)點權(quán)重定位算法,算法的準確率和性能都很好。021590和019929都將網(wǎng)絡(luò)拓撲信息和告警統(tǒng)計信息轉(zhuǎn)化為有效的特征數(shù)據(jù),然后使用可解釋性強的SVM和XGBOOST機器學習算法進行分類,算法準確率也很高。系統(tǒng)功能實現(xiàn)上,不少隊伍都使用了前后端分離的web架構(gòu),019929前端使用Echarts技術(shù),在拓撲展示和圖表渲染方面有著不錯的表現(xiàn)。
航天龍夢Linux內(nèi)核工程師王浩軍評審的是B2酷貓云盤管理器。王浩軍指出:“題目考察閱讀和使用API文檔開發(fā)的能力,讓同學們嘗試進行不同操作系統(tǒng)下的開發(fā)、了解不同CPU架構(gòu)的區(qū)別。開發(fā)者不應當將作品局限于X86+Windows,應更多關(guān)注中國基礎(chǔ)軟硬件的發(fā)展,為生態(tài)建設(shè)出一份力。大多數(shù)學生都能按照要求開發(fā)創(chuàng)作,也有個別隊伍理解錯了題意但做出了不錯的作品,非??上?。閱讀需求文檔是開發(fā)者要掌握的基本技能,希望同學們引以為鑒?!?/p>
決賽在 即? ?奪魁還需“精”“新”
成功總是垂青那些精益求精、創(chuàng)新為先的人。本著“人無我有,人有我精,人精我新”的“秘籍”,作品更容易脫穎而出。
馬振爍提醒參賽選手:“決賽與初賽的不同之處是,決賽會提供一些全新的高清的交通各類場景的視頻來測試,所以希望能夠入圍決賽的隊伍首先要提高自己作品的泛化能力和普適性,同時繼續(xù)完善作品的功能性,展示能力,用戶使用體驗等以取得更好的成績。初審中看到很多作品在場景功能上的設(shè)計較為趨同,只有在功能性和創(chuàng)新性上多花些心思,才會讓作品更具有競爭力。還有些作品功能做出來了,但是實際展示比較混亂,結(jié)果也不明顯,決賽要盡量避免這種情況?!?/p>
聞立杰建議在追蹤計數(shù)、創(chuàng)新點方面完善作品:一是進一步提高機器學習模型的運行效率,提升輸出視頻結(jié)果的流暢度;二是針對輸出視頻結(jié)果的可辨識性和友好性進行提升,能清晰地展示要求類別范圍內(nèi)的待識別對象的識別結(jié)果和追蹤效果;三是提升對象識別結(jié)果的識別精度和追蹤精度,從而給出每類對象的精確計數(shù),如car、person、motorbike、bicycle等,很多作品的計數(shù)結(jié)果都嚴重偏離了參考答案。
王浩軍表示,很多參賽者都把作品重心放到了UI上,但是作為一個應用軟件,功能實現(xiàn)才是最重要的。像批量傳輸、Seafile、Ftp等私有存儲的對接功能,被很多參賽者忽略了。希望參賽者能將重心放在功能實現(xiàn)上。希望決賽的作品能給出詳細的編譯、部署文檔,能夠直接做成Deb和Rpm包更好。
對于功能實現(xiàn)已經(jīng)比較完善的作品,除優(yōu)化展示界面外,評審教師還提出如下建議。
倪慶劍老師給出三點建議,重視客觀指標、規(guī)范文檔、精簡視頻。第一,如果題目中有明確、客觀指標的要求,團隊在設(shè)計算法時必須達到,否則要調(diào)整算法和策略。第二,規(guī)范文檔,比如圖、表、公式、參考文獻等,可以請指導教師把關(guān)。第三,如果視頻答辯,一定要精簡視頻長度,簡要說明使用的方法、亮點和創(chuàng)新點,進行功能展示。
施云濤提到可從兩方面下功夫:第一,除了少數(shù)隊伍F1值為100%,其他隊伍需進一步迭代優(yōu)化已有的算法。第二,系統(tǒng)性能,從提交的作品來看,根因定位的時間有MS級的,也有S級,如果測試集F1值較好,可以考慮優(yōu)化根因定位的時間。
“中國軟件杯”大賽自舉辦以來就得到企業(yè)、高校及相關(guān)主管部門的高度關(guān)注。九年來,大賽共吸引了來自全國31個省、市、自治區(qū)近千所高校的數(shù)萬支隊伍參賽,切磋技術(shù),匯聚成創(chuàng)新發(fā)展的磅礴力量,推動產(chǎn)學互動走向深入。大賽聚集了國內(nèi)百余家軟件骨干企業(yè),吸引了數(shù)十萬余支高校團隊參賽,在推進產(chǎn)教深度融合、深化校企協(xié)同育人等方面發(fā)揮了重要作用。大賽及時把產(chǎn)業(yè)前沿技術(shù)、行業(yè)最新標準帶到比賽中,使高校的人才培養(yǎng)更加符合產(chǎn)業(yè)發(fā)展的需求,有效促進了人才培養(yǎng)質(zhì)量的提升。大賽始終堅持賽題原型全部源自軟件骨干企業(yè)實際需求,致力于引導在校學生積極參加軟件科研活動,促進學生創(chuàng)新能力和實際動手能力的提高,參加“中國軟件杯”大賽的選手們實踐能力更強,在工作后能更快地融入企業(yè),知識的體系也更加健全。大賽的舉辦也加深了教育者對新業(yè)態(tài)的深層理解,不斷引導辦學模式、培養(yǎng)模式、教學模式改革與發(fā)展,對保持軟件產(chǎn)業(yè)持續(xù)健康快速的發(fā)展、促進產(chǎn)業(yè)轉(zhuǎn)型升級起到了有力的推動作用。
據(jù)大賽組委會介紹,大賽由工業(yè)和信息化部、教育部、江蘇省人民政府主辦,中國電子信息產(chǎn)業(yè)發(fā)展研究院、江蘇省工業(yè)和信息化廳、江蘇省教育廳、教育部高等學校計算機類專業(yè)教學指導委員會、信息技術(shù)新工科產(chǎn)學研聯(lián)盟承辦,由中國信息化周報、南京江北新區(qū)產(chǎn)業(yè)技術(shù)研創(chuàng)園、江蘇軟件產(chǎn)業(yè)人才發(fā)展基金會、南京市軟件和信息服務集群發(fā)展促進機構(gòu)、南京航空航天大學執(zhí)行。
第九屆大賽全國總決賽將于8月中下旬在線上舉行。屆時將對決賽全程進行全網(wǎng)直播。部分獲獎選手將受邀參加第十六屆中國(南京)國際軟件產(chǎn)品和信息服務交易博覽會,并在9月6日的開幕式上接受表彰。
企業(yè)專家談
優(yōu)秀軟件設(shè)計工程師必備能力
馬振爍? 要成為優(yōu)秀的軟件設(shè)計工程師首先要熱愛這個行業(yè),有濃厚的興趣,多學習多實踐。其次應系統(tǒng)、扎實地學習基本的計算機理論,保持規(guī)范編寫代碼的習慣。最后要勤思考、培養(yǎng)并提升自己的編程思維和設(shè)計架構(gòu)能力。
施云濤? 問題分析能力、學習能力和溝通能力是優(yōu)秀軟件設(shè)計工程師必備的三種能力。1.問題分析能力,實際工作中需要解決的問題多種多樣,透過現(xiàn)象看到問題的本質(zhì),將問題轉(zhuǎn)化為軟件設(shè)計模型,是優(yōu)秀軟件設(shè)計工程師的核心能力。2.學習能力,軟件行業(yè)技術(shù)迭代更新非??欤鳛檐浖夹g(shù)人員,需要有較強的學習能力,敏銳砂發(fā)現(xiàn)新技術(shù),快速地學習新技術(shù),只有這樣才能駕馭和應用好新技術(shù)。 3.溝通能力,軟件產(chǎn)品的開發(fā)通常不是只有1個人在戰(zhàn)斗,開發(fā)過程中需要大量的團隊內(nèi)部和跨團隊溝通,良好的溝通能力往往事半功倍。
王浩軍? 大型項目開發(fā)對開發(fā)者的溝通能力和開發(fā)規(guī)范要求很高。很多學生將代碼push到github或者碼云,通過git來進行版本管理和協(xié)同開發(fā),這是非常好的習慣。作為優(yōu)秀的軟件設(shè)計工程師,要具備把握全局的能力。多了解優(yōu)秀項目的框架,思考“為什么”,而不是只知道“是什么”。終身學習是必不可少的。在技術(shù)方面,要選擇更合適的,而不是只選擇會的,需要用什么技術(shù)就去學習,這才是最好的進步方式。
寄語軟件學子
夯實基礎(chǔ)+勇于實踐+拓展視野
失敗的原因可能有千萬種,但是成功法則卻驚人的相似。三位老師對“如何成為優(yōu)秀的軟件設(shè)計工程師”這一問題有著相同的觀點:
聞立杰? 除了努力學好基礎(chǔ)課程外,要多多參與各類實踐活動,軟件工程知識本身要靠實踐才能更好地掌握,甚至要形成適合自己的方法。與此同時,也希望同學們注重理論知識的掌握,關(guān)注最前沿的研究成果,使得軟件工程向軟件科學進發(fā),而不僅僅局限于工程。
倪慶劍? 在打牢軟件工程領(lǐng)域知識基礎(chǔ)的同時,一定要多參與相關(guān)的學科競賽和實際項目,實踐是深刻理解軟件領(lǐng)域理論知識的最好方式;擁有扎實的知識基礎(chǔ)和豐富的軟件項目實踐經(jīng)驗,才有可能成為優(yōu)秀的軟件工程師。
施云濤? 參與優(yōu)秀的開源項目,開源項目中往往有不少優(yōu)秀的軟件工程師,在和他們溝通、協(xié)作的過程中可以學到很多知識,提升自己的編碼技能;關(guān)注技術(shù)論壇、博客、公眾號,及時掌握業(yè)界最新的技術(shù)和產(chǎn)業(yè)資訊,拓展自己的技術(shù)視野;參與各種競賽,提升解決實際問題的能力,積累實戰(zhàn)經(jīng)驗。