軟工實踐個人總結


一、基本情況

(1.1)請回望第一次作業,你對於軟件工程課程的想象

對比開篇博客你對課程目標和期待,“希望通過實踐鍛煉,增強計算機專業的能力和就業競爭力”,對比目前的所學所練所得,在哪些方面達到了你的期待和目標,哪些方面還存在哪些不足,為什么?

  • 我在第一次作業中寫到本學期有令人痛苦的軟工實踐(特別是柯老板班),希望經歷軟工實踐不會那么抵觸代碼,也希望能夠和團隊一起把項目做好。本學期的軟工課程帶給我的收獲還是挺多的,最開始令我覺得超級難的個人編程作業真的讓我感覺頭大,我從未用python這門語言寫過代碼,當然是非常不熟悉。從毫無頭緒到和身邊的同學交流討論,一點點完成任務(雖然沒有全部完成),我認為這是一個成長的過程,思維得到了鍛煉,同時也練習了這門語言。
  • 結對編程讓我初步地學習了一些小程序的知識,並從0學習原型設計,配合隊友修改、優化、充實界面,Photoshop和墨刀等工具的使用變得得心應手,為讓原型的表現力更明顯也發現了許多寶藏網頁(視頻轉gif、智能摳圖等)。團隊協作時,團隊照片的后期讓我再次鍛煉了圖像的處理能力,原型設計的協作繪制雖覺得不滿意,但也不失為一次鍛煉。
  • 團隊項目的進行讓我學習了視頻數據收集、標注,現場編程讓我看課學習的auto.js得到了應用。另外,制作ppt、寫博客等瑣碎任務也注入了我對這門課的態度。總的來說,學習到了很多東西,圖像處理、審美能力得到鍛煉。團隊協助是一個內聚的過程,組員聚集寫代碼、工作給我帶來了很多感動,這些是符合期待的。起初的編碼目標(受到隊友的“照顧”)僅在個人編程得到了鍛煉,感覺還是有些抵觸代碼,這是不足之處,主要原因還是在於自己不夠積極主動地面對困難,畏畏縮縮地害怕寫bug只會導致自己的編碼能力止步不前,今后還需努力克服。

(1.2)總結這門課程的實踐總結和給你帶來的提升:

  • 非測試組

    • 在軟工實踐課程當中我編寫了_400_行代碼

    • 軟工實踐的各次作業分別花費的時間

      # 作業 花費時間(分鍾)
      1-2 個人編程作業 1365
      3 結對編程作業 2340
      4 團隊介紹與選題報告 530
      5 團隊需求分析報告 460
      6 團隊項目之現場編程 510
      7-13 Alpha沖刺(含總結) 1650
      14-19 Beta沖刺(含總結) 1020
  • 講述令你印象最深刻一次作業?為什么這次作業令你影響深刻?

    • 令我印象最深的一次作業是個人編程作業。在這里我描述一下我的心路歷程,剛看到個人編程作業我是迷茫且懵逼的,需求太多了我沒有辦法產生一個系統的思路去解決這個問題,另外作業要求的覆蓋率、詞雲圖、性能分析、編寫單元測試、異常處理這些東西我是真的沒搞過,也是真的不會。加之本身就帶有的對寫代碼的抵觸情緒,愣是荒廢了編程作業的前幾天。

    • 當我看到身邊的同學漸漸都開始研究、學習怎么解決這個問題,並且把自己對於某個功能點獨到的方法拿出來分享時發覺不是只有我一個人不會。我確實不太會用python,但是希望用這個人性化且便捷的語言來解決這個作業。從一開始的在CSDN上搜索學習敏感詞檢測的算法到將其修改應用到現有的需求中,首先實現了正確的敏感詞的檢測。經同學點撥使用python拼音庫不僅能夠實現帶諧音字的敏感詞識別,還能一並解決繁體字(感覺大受震撼,同學們太牛了),我覺得我又行了。實現最基本的功能,再將特殊的功能一點一點實現,但是由於前期需求的分解和解決思路設計不明確且有些方法不可行導致debug花費很多時間(明白了要想寫出好的代碼前期的設計工作尤為重要)。

    • 總之,個人編程作業我更熟悉了python語言,學習了如何用pycharm做性能分析,如何寫單元測試、異常處理等,還花了大把時間寫博客,當完成個人編程作業的那一刻我突然覺得好像也不是想象的那么不可完成,我也沒想過這些完全沒做過的東西最后都能完成,感覺很有成就感,因此這次作業令我印象深刻。

  • 在軟件工程課程上花費的時間(預計花費時間參考:同時貼出開篇博客“你打算平均每周拿出多少個小時用在這門課上”的回答)

累計時間 實際周均時間 預計周均時間
132(h) 6.9(h) 6(h)
  • 介紹學習到的新技術或生產力工具以及它們給你帶來了哪方面的作用?

    • Adobe Photoshop。真真確實是一款強力的圖像處理軟件,以前只是學習了有什么功能,但很少上手操作。軟工實踐真的有很多機會用到這個軟件,涉及到原型設計的素材圖、團隊照片后期修圖、視頻的拼圖需要、功能展示圖繪制、藝術字體摳圖等部分,拼圖、摳圖、畫素材各種操作都在軟工實踐得到了鍛煉,真的嘎嘎有用。

    • 墨刀、摹客網頁版。這兩款原型設計工具是我本學期才接觸到的,從小程序的原型設計到團隊作業的原型分別依賴墨刀、摹客兩款原型設計工具,兩款給我的感覺正好是優缺點互補,墨刀繪圖、添加事件交互操作都非常方便,唯一不好在於得氪金才能協作,摹客則相反。它們的作用就是讓我以比較良好的體驗完成了原型設計工作(特別是墨刀)。

    • auto.js。這真是以前沒聽說過的東西,應現場編程要求學習了二十多節網課,也算積累了知識。作用就發揮在了現場編程上,雖然短時間的學習沒有讓我有足夠時間實踐,但積累到的知識還是在團隊的現場編程中發揮了點作用。挺想用它試試簽今日校園的,無奈自己的手機是iOS系統。

    • 小程序前端知識。結對編程時上網課學習了部分前端的布局、框架,作用的話就當是積累了點知識吧。

    • python。這個應該不算學習到的新技術,提到它的原因主要是先前學習過但缺乏應用,個人編程使用到了之前沒有使用過的包,這真的是個非常人性化的語言,可調用的東西也很多,我覺得個人編程作業就是一個很好的體現,相比使用c++的同學,用python寫的代碼確實比較短,今后使用到這門語言的機會應該會有很多。

    • 單元測試、異常處理、覆蓋率測試。編寫單元測試能夠有效地測試所寫代碼的功能,異常處理則能夠針對代碼中出現的異常情況做出提示和處理,這些都是必學的東西,不僅是應用到個人編程作業,也可用於今后發現代碼問題,有利於debug。另外,如果不是個人編程我不知道原來pycharm專業版自帶有測試覆蓋率的功能,我只能說pycharm yyds。

  • 其他方面的提升。

    • 制作ppt、文字能力。ppt的模板選擇、文字圖片的排版、文字內容的打磨都有所提升。

    • 博客排版、撰寫能力。在軟工課前很少使用博客園,真的是因為寫了很多次博客對Markdown格式也更加熟悉,博客撰寫效率相比學期初有明顯提升。

    • 一些道理。首先是做事應該有所規划,在本學期軟工作業的完成過程中我經常拖着作業直到deadline驅動我去完成作業,這一點讓我感覺很不好,熬夜寫作業挺難受的(頭發掉的是真多)。其次是對於自身能力有准確認識,制定切合實際的目標,我們的團隊項目由於工作量過大難以在短期內做完,這使得我們的項目完成度不好。接着是關於團隊溝通的問題,團隊前期缺乏溝通多少影響了項目的推進效率,后續加強溝通工作也變得更加高效,這表明溝通能夠有效地了解更多需求和細節,高效自然是必然結果。最后,雖然在這門課我有很多做的不夠好的地方,最起碼也為軟工熬過夜、努力過。

    • 心性的磨煉。從個人編程提出一大堆我不懂的要求開始,到一無所知的原型設計、小程序,再到團隊項目的數據收集、標注等,我也經常真挺羡慕周六早上躺在床上不用去上軟工課、不用答辯也不用瘋狂交博客的舍友,我只能用我學到了蠻多東西的來安慰一下自己,突然就升華了。

 

二、總結與收獲

非測試組:個人或結對或團隊項目實踐中的經驗總結+實例/例證結合的分析。

  • 個人編程作業。總的來說總算用python寫了個東西,另外學習了pycharm的覆蓋率測試、針對代碼的功能塊編寫單元測試來檢驗敏感詞檢測的功能是否有問題,學習了異常處理的寫法,由於可視化需要,也用python繪制了統計圖。另外,python的包是真牛逼,敏感詞檢測使用拼音包能夠囊括多個功能點(原先以為繁體字、諧音字得用什么特殊高級的方法),此處是收到同學思路的啟發,因此得出經驗:python的包是個待挖掘的寶藏,在需求之上確實很有研究的必要(沒准可以調用很簡單的方法解決難題)。

  • 結對編程作業。結對編程作業讓我對原型設計深有感觸。前期綜合資料比對各種原型設計工具的優缺點選擇了墨刀,並在設計前講工具使用方法的網課刷完,上手真的非常快,確實磨刀不誤砍柴工。另外,由於原型設計用到的圖片、gif等都是前端需要的,前期做原型設計沒有邊做邊整理素材導致了后續又花多余的時間集齊素材。還有一點是制作原型需要依賴的工具,除了Photoshop輔助之外,制作原型過程中為追求動態效果搜集了gif動圖,但自己沒法一幀一幀將動圖摳出,在搜索過程中發現了在線gif摳圖工具省去了不少麻煩。為使博客中有gif動圖展示原型,又在網上發現了視頻轉gif的在線工具,這波發現的寶藏網站算是積累經驗了吧。

  • 團隊項目實踐。我覺得有兩個問題,一是目標過高,團隊項目工作量太大了,短期內無法很好地完成,起初我們小組認為在github上找到些開源代碼就能保證我們的項目在本學期完成,但事實並非如此,我們沒有估計到各種考試、大作業,也未考慮到學習新技術需要花費大量時間,從這個問題就能說明了制定目標還需從實際出發。二是缺乏溝通,初期乃至中期小組內的溝通都僅僅停留在開會上,並且開會大多數時候是簡單分工,不做詳細的分配,直到alpha沖刺結束我們的項目還是沒有做出一個可用的東西,原因肯定不乏組內互相溝通需求、進度。在后期beta沖刺,我們做出了改變,小組聚集起來共同交流工作,讓我最直觀的感受是效率和先前完全不一樣,現場交流服務器做到哪、前端什么bug沒有de出來、答辯ppt有什么地方需要修改等,所有事情都變得事半功倍。所以,團隊的項目一定不可缺少溝通交流。

 

三、致謝

這學期下來,你最感謝的人是誰?有什么話想要對TA說呢?

這學期下來,我最感謝的人是林志鋒同學。軟工實踐作業初期感覺很迷茫,對於作業我常常覺得無從下手,林志鋒同學在我迷茫時不但對我開導鼓勵,而且在作業的完成過程中常常耐心、細心地引導我解決問題,在結對編程時更是”一個人扛下了所有“。在我們小組的團隊項目中,他積極承擔了很大一部分工作,且在完成自己部分的同時關心其他組員的完成情況並積極主動地提供幫助,我不禁被他的樂觀心態和團隊責任感所感染,感覺被大佬帶飛了吧。我就想說:志鋒哥牛逼,志鋒哥yyds!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM