福大軟工 · 最終做業 - 軟件工程實踐總結(我的)

   

1、請回望暑假時的第一次做業,你對於軟件工程課程的想象

  • 對比開篇博客你對課程目標和期待,「但願經過實踐鍛鍊,加強計算機專業的能力和就業競爭力」,對比目前的所學所練所得,在哪些方面達到了你的期待和目標,哪些方面還存在哪些不足,爲何?html

    開篇博客前端

    1.瞭解一個應用須要的步驟,包括須要的前端UI、後端數據庫、以及邏輯層js和服務器總體使用須要,經過項目答辯須要,找了好多好多的ppt模板和psd圖片,進一步提升了本身的審美能力和photoshop的基本能力;java

    2. 感覺到了團隊合做的重要性之大,分工合做真的特別重要,有信賴的隊友作起事情來真的是事倍功半呀,徹底不在怕的,而後就是全組幾乎全是轉專業的同窗,因此交流起來同感特別特別特別特別多!!你們都深有同感,這也是意想不到的特別大的收穫;node

    3. 與團隊成功完成一個比較成熟的預期項目,併成功發佈了微信小程序的我的版本,發佈成功的那一刻,知足感油然而生哈哈哈哈,父愛大發;python

    4. 對於我我的而言,學習到了新的語言,python自學瞭解了一點、同時更掌握了html和微信小程序後臺程序開發編輯語言,學會了「不懂就去各博客找」;linux

    5. 項目有部分功能還未可以所有實現,因此有些小小的失落,可是對比總體的效果來講,仍是挺ok的; 項目後期還能夠考慮與隊友進行參加一些創新創業大賽,感覺一下大賽答辯的氛圍;git

    6.在本次軟件工程實踐中,其實讓我相對比較初步地瞭解之後的就業方向以及目前的就業前景,開始會選擇和制定本身近年來的人生規劃,也意識到了學歷的重要性,從新更新了本身以前的一些不太成熟的想法,從新審視從新規劃不斷調整。github

  • 總結這門課程的實踐總結和給你帶來的提高,包括如下內容:web

      1. 統計一下,你在這門軟件工程實踐中,完成了多少行的代碼;面試

        Emmm,算上我的做業、組隊做業、團隊做業,還有最後的微信小程序(小程序裏面的wxss後期爲了和微信儘可能統一和規範,因此有的就直接拿過來套用了),大概應該也許差很少有8000+行吧。

      2. 軟工實踐的各次做業分別花了多少時間?(作一個列表)

        階段 耗時(min)
        第一次做業 100
        第二次做業 300
        結對項目1 1050
        結對項目2 300
        團隊展現 250
        團隊做業2 240
        團隊做業3 300
        團隊做業4 200 
        Alpha 衝刺(1/10) 120
        Alpha 衝刺(2/10) 200
        Alpha 衝刺(3/10) 210
        Alpha 衝刺(4/10) 220
        現場編程-抽獎系統 300
        Alpha 衝刺(5/10) 420
        Alpha 衝刺(6/10) 360
        Alpha 衝刺(7/10) 200
        Alpha 衝刺(8/10) 420
        Alpha 衝刺(9/10) 300
        Alpha 衝刺(10/10) 420
        Alpha 過後諸葛亮 350
        BETA 版衝刺前準備 350
        軟件測試(團隊) 125
        Beta衝刺 (1/7) 510
        Beta衝刺 (2/7) 400
        Beta衝刺(3/7) 388
        Beta衝刺 (4/7) 520
        Beta衝刺 (5/7) 360
        Beta衝刺 (6/7) 500
        Beta衝刺 (7/7) 460
        Beta答辯總結 550
      3. 哪一次做業讓你印象最深入?爲何?

        Emmmm,最讓我印象深入的仍是近期對《福大助手APP》的測評,在這個測評做業中,當天晚上大概從7點就開始寫APP的產品對比以及找BUG,找到一個BUG就開心一下,找到兩個就開心兩下,而後寫文,大概到了10點左右吧,開始挑選ppt,由於這段時間恰好在作學院的年終總結ppt,哈哈哈,因此模板就恰好用上來了,而後作這個ppt呀,實在也是沒那麼好作,要提的點有點多呀,並且材料有點不全,因此…當天晚上就一直作到了3點半+.而後次日7點50起來,4個小時的睡眠,那個累啊!還不如直接通宵……(這段話是在期末考前寫的,如今期末考過了,我要更新一下,4個小時的睡眠,跟通宵仍是有差異的!!!四個小時仍是很溫馨的0.0)

      4. 累計花了多少個小時在軟工實踐上?平均每週花多少個小時?同時貼出開篇博客「你打算平均每週拿出多少個小時用在這門課上」的回答

        累積花了近200個小時在軟工實踐上,平均每週應該有15個小時,由於我有點拖延症,而後由於有這這個Alpha版本和Beta版本的規則,因此就一絲不苟地監督着我——>今天更新小程序,一般是晚上7點開始作,而後坐到12點,睡覺,次日晚上6點準時提交博客心得和更新燃盡圖,漸漸地,天天18:10手機的鬧鐘天然提醒......對比開篇博客裏面哈哈哈哈,發現我這我的仍是很「謹慎行事」的哈哈哈哈,不過講真本身當時是以爲一週大概花個5小時再加上週六上午的實踐課足夠了......我以爲我成熟了好多好多好多呀!!!

         

        童年開篇博客


    1. 學習和使用新軟件;
      • 微信web程序開發工具(團隊項目)
      • Github(做業以及團隊進程)
      • Hbuilder(抽獎系統做業)
      • VS2017(我的做業)
    2. 學習和使用的新工具;
      • Adobe After Effects(處理圖形視頻)
      • ProcessOn(在線繪圖,UML以及流程圖等設計)
      • Adobe Premiere(編輯圖形以及視頻界面)
      • Leangoo(平常計劃和更新跟進進程)
    3. 學習和掌握的新語言、新平臺:
      • 新語言:C#、python、Html、以及微信小程序對應的語言(wxss、wxml、js、json等)
      • 新平臺:微信web開發者工具
    4. 學習和掌握的新方法:
      • 網上現有的資源和論壇有不少,有不懂的地方能夠先百度搜索一下;

    5. 其餘方面的提高。
      • 不怕再自學新知識了,由於會發現,會與不會只差有沒有逼本身一把了!
      • 團隊意識有了很大的提高,懂得了以後就業也是須要如此,團隊協做。

2、寫下屬於本身的人月神話——我的或結對或團隊項目實踐中的經驗總結+實例/例證結合的分析

    1. 總結與反思:
      • 其實總結與反思的重要性主要是從這件事中天天提交Alpha版本和Beta版本這兩個階段主要總結出來的,真的經過天天記錄一下本身作了些什麼,作得怎麼樣,而後接下去準備怎麼作,對於本身接下去的執行力會有很大很大的提高,另外,經過總結也使本身比較放心,完成任務後,就能夠開開心心玩,相反,若是一個任務沒有好好完成,後補缺補漏的東西就會愈來愈多。
    2. 換位思考:
      • 其實我一直以爲換位思考是特別重要的,尤爲是在一個團隊當中,若是每一個人都只考慮到本身的利益,只以爲本身比別人作得多而後就不甘心這點確定是不行的,其實在實踐課過程當中「換隊員」這一件事情中,就很能體現「換位思考」這個觀點,在原來的隊員走以後,咱們的任務和進度會受到什麼影響顯然就特別明顯。因此應該多站在其餘同窗的角度上思考問題,在任務分配後就應當先完成好本身的那一部分,有問題的地方在提出,以團隊整體利益優先的基本,不要太計較我的目前所得,得學會團隊優先原則。
    3. 服從與配合:
      • 在團隊合做中,我以爲服從安排是特別須要的,包括必定的威信力也是必不可少的,團隊總得須要有一個「頭」來把握方向,鼓舞人心!另外在平常合做中,應當盡力服從安排,有問題私底下提出,保持隊長必定的威信力,提升團隊總體的協做力。
    4. 不輕易認輸:
      • 其實這一點對於咱們小組後期特別重要呀!!!在Alpha版本演示上,項目沒作出來,進度緩慢,對比其餘小組真的是差好多好多好多好多呀!不過由於「不服輸」這一點,因此你們就一塊兒白天作、熬夜作,相互鼓勵,勉勵本身,逼着本身不懂就去百度,再不懂就去問,反正就是要作出來,堅持必定要作出來,並相信本身不比別人差的信念,最後咱們就堅持下來了,在Beta演示上「日新月異」哈哈哈哈哈哈哈,最終的結果其實仍是比較欣慰的,感觸很深!

3、對下一屆實踐的建議,或者對於開學初的你,對於大一的你,對於開學初的我,對於同期的TA們,對於後來的學弟學妹:

  1. 你有什麼想建議、告知和期許想要告訴他們呢?

    付出與收穫確定是成正比的,就算不是線性的,起碼你付出後,確定會有收穫的;另外仍是從一開始就好好作吧,由於這門課其實對於咱們專業最後的就業包括升學還算是目前全部學科中最有用的一科吧!認真學,畢竟接近「10」學分呢!

  2. 特別地,特別地,下一屆要不要中途換隊員(強制的、完全的從一隊換到另外一隊)?
    假設依舊是一個90+人數的大班

    我以爲這個確定是要繼續換的呀!!!!其實這個在團隊一開始,不只可以讓你們認清各自的職責,明確本身的任務,更爲主要的是,這個操做在團隊創建之初,很培養團隊集體感的呀!(可以想出這種操做的,我也真的是服氣哈哈哈,特別牛X!!!佩服)

  3. 身在一個格外大的班級,競爭強勁,你認爲一個組的人數應當在多少比較合適?

    我認爲處於6~9人會比較合適。其實在這個比例當中,恰好適合學習與定位的匹配,我以爲很合適。

  4. 我的/結對/團隊做業應該控制在怎樣的規模?

    我以爲這學期這樣的規模仍是很好的,由我的——>結對——>團隊,這個操做沒毛病呀!

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

    我最想感謝的實際上是這個「團隊」:從一開始的進度緩慢,做業完成度低、Alpha演示幾近失敗,到咱們最後的「脫穎而出」,自學自學自學,別人都自學,你不自學?那幾個日日夜夜算是軟工這門課留給咱們的寶貴經驗了吧,很高興加入這個團隊,和你們同樣,受益不淺,十分有幸認識你們,謝謝督促!

4、分析一下本身所處的團隊。軟件工程實踐是大學裏少有的認真的團隊協做經驗。《構建之法》上說團隊的發展有幾個階段,你的團隊都經歷過麼,最後到達了「創造」階段了麼?(參考《構建執法》第17章 人、績效和職業道德)

  1. 萌芽階段:這個確定是經歷過了,當時算是你們的第一次見面,而後就在樓下「開天窗」,各自說出本身想法而後總結,考慮可行性,而後「互懟」,最終肯定咱們的項目功能(項目由最初的2個功能,沿着主功能拓展到了5個功能,仍是頗有可行性的)。
  2. 磨合階段:這個也經歷過了,你們相互協調各自的工做內容,本身適合與不適合相互協調,最終肯定。
  3. 規範階段:也經歷過了,這個其實算是比較後期作的,剛開始其實就有規範了,不過主要仍是體如今文檔的撰寫(這個規範格式XX的你們的執行力比較好),可是代碼方面好像效果不是特別地顯著,最好仍是在總結的階段,而後規範了你們的代碼以及界面風格的設計。
  4. 創造階段:這個目前團隊還沒經歷....(由於最後其實仍是掐着時間完成最終Beta版本)

5、怎樣證實你學會了軟件工程?

  1. 研發出符合用戶需求的軟件
    貼出目前所記錄在案的用戶使用量狀況,以下圖所示

  1. 經過一系列工具,流程,團隊合做,可以在預計的時間內發佈 「足夠好」 的軟件
    從編寫到測試再到發佈,咱們歷經了好幾個迭代的過程,中間經過溝通交流也是修修補補,最終展現的也是後續在既有功能版本上的刪減版(我的版開發權限爲了配合微信小程序發佈的審覈問題,致使幾乎近半數的功能砍掉才得以上線)
  2. 而且經過數據展示軟件是能夠維護和繼續發展的。
    在github上能夠搜索到咱們項目WeEdit的源碼,徹底開源共享,歡迎下載並提出建議或者issue,謝謝
  3. 對着這個檢查表:http://xinz.cnblogs.com/p/3852177.html 檢查一下,本身若是去企業面試,這些常見的問題是否都能回答,並在此總結。
類別 具體技能和麪試問題 如今的回答(大三)
語言 最拿手的計算機語言之一,代碼量多少?(偏web前端,PC/Mobile App) wxml、js 4000行+
語言 最拿手的計算機語言之二,代碼量多少?(偏後端,數據處理,網站後臺,機器學習,等) java 2500行+
軟件實現 (閱讀代碼的能力,實現,單元測試)你有沒有在別人代碼的基礎上改進,你是怎麼讀懂別人的代碼的,你採起了什麼辦法來保證你的新功能不會影響原來的功能?你在開中碰到最複雜的bug是什麼,你是如何解決的?這個bug出現的緣由是什麼,你在未來應該怎麼去避免bug再出現? 1.有,好比此次結對編程就是對學長的代碼進行改進;2.剛開始仍是要本身經過註釋什麼的看吧,可是由於每一個人的代碼規範不同,後面就直接問寫代碼的學長了;3.大的框架不變,只修改了須要改進的代碼,在新增功能的時候要進行屢次測試,看以前的代碼可不能夠執行;4.遇到的bug就是自己代碼就是有問題的吧,還有就是頁面跳轉,刷新什麼的。
軟件測試 (測試方法、測試工具、測試實踐、代碼覆蓋率)你如何測試你本身寫的代碼?你如何測試別人的代碼?你掌握了多少種測試工具和方法?你寫過測試工具?你如何對一個網站進行壓力測試和效能測試?你如何測試一個軟件的人機界面(UX/UI)? 正常的話都是用軟件自帶的測試工具測試。
效能分析 效能分析,效能改進,你寫過的最複雜的代碼是什麼?你是如何測量和改進它的效能的,用了什麼工具,如何分析的? 最複雜的代碼就是如今團隊所作的微信小程序,因爲不少東西都要從新學,作起來就感受這個小程序挺複雜的。
需求分析 (需求分析,典型用戶,場景,創新)你作過多少個有實際用戶的項目,用戶最多有多少?你的項目有什麼創新的地方? 本次軟工的項目,用戶量大概大概了120+,項目創新主要是根據於目前的市場需求,周圍同窗以及以前和幾個就業的學長學姐有詢問的一些建議,而後這個項目主要就是可以實現集一體化的辦公,創新的地方就在於解決了辦公過程當中的是否可以糾錯的功能,旨在提升辦公效率,推出後市場其實很大的呀!
行業洞察力 你最感興趣的領域是什麼?這個領域過去10年經歷了哪些創新?你分析過這個領域前10名產品?請分析一下他們的優劣,你要進入這個領域,應該如何創新? 目前對前端比較感興趣。2009年Ryan Dahl發佈了node,node是一個基於V8引擎的服務端JavaScript運行環境,相似於一個虛擬機,也就是說js在服務端語言中有了一席之地。
項目管理 你參與過項目管理麼?請描述一下兩個當下流行的開發方法在你的項目中的具體應用狀況;請問你如何決定項目中各類任務的優先次序,有什麼理論來支持你的作法若是你忽然發現項目不能按時完成,你做爲項目領導,有什麼辦法? 參加過,首先是根據所制定的計劃來決定各個任務的優先順序,若是沒有及時完成,可能會在作其餘事的時候抽一些時間作完。
軟件設計 你作過架構設計,模塊化設計,接口設計麼?請說明一下你爲什麼是這樣設計,你比較過什麼不一樣的設計方式,你的設計取得了什麼結果? 作過呀,作過模塊化設計,不斷地進行調試,而後下降程序複雜度,使程序設計、維護等操做簡單化。
質量意識 (代碼複審/代碼規範/代碼質量)你是怎麼作代碼複審的,你加入咱們團隊後,能幫咱們提升代碼質量麼,請具體說怎麼提升? 我作代碼複審主要是添加註釋,代碼行的縮進,讓總體代碼清晰明瞭,還有關鍵代碼函數值打印。
工具/社區 Software Tools (performance tool, version control, work item, TFS)你在各類開發平臺(web,linux,PC,mobile,machine learning)都使用過什麼樣的工具,本身寫過什麼工具來改進工做效率?給社區貢過什麼工具和代碼?Github有分享代碼麼?你寫的技術博客堅持了多久,讀者最多的是哪一篇? 測試工具junit,效能工具jprofiler,還有xml數據解析。我本身先前嘗試寫過幾篇跟計算機課程相關的博客,不事後來課程比較多,因此就沒有繼續堅持寫下去。
團隊協做 work with others(協同工做,提供反饋,說服別人)請描述你在項目中何說服同伴採用你提出的更好的解決方案,或者你如何聽取了別人的意見,改進了本身的方案?你如何說服懶情的同伴加緊工做,實現團隊的目標? 首先是討論商量,把更好的方案的優勢和同伴解釋清楚,懶惰的同窗就須要時常督促,時常查看他的任務進度,給他一種緊迫感。
理論素養 你上過什麼數學,計算機或其餘理論課,請舉出具體的例子,說明你學到的理論知識如何幫助你解決實際問題。 數學分析、高等代數、離散數學、機率論、解析幾何、算法與結構、面向對象與程序設計等等,利用離散數學的邏輯,數據結構編寫代碼,看代碼複雜度
自我管理 整年級你專業排名多少?你從剛入學(大學一年級)到如今的排名有變化麼?如何解釋你的排名的變化? 目前排名44/110,從大一上的28到如今,最主要是大二剛轉過來,當時對於兩邊專業的銜接不是很好,致使本身那學期的成績差了好多,落差特別大,如今逐漸調整本身的狀態,努力追上。

六*(選作)、閱讀軟件工程中關於代碼質量的的經典論文,從下列文獻中選擇一篇或若干篇,結合本身的實際作一個閱讀筆記(例如,本身寫的代碼質量如何,是否是一個大泥球,如何衡量本身代碼的質量)?從如下參考論文中選擇一篇或若干篇:
參考論文文獻:

[1] Stamelos I, Angelis L, Oikonomou A, et al. Code quality analysis in open source software development[J]. Information Systems Journal, 2002, 12(1): 43-60.

[2] Boehm B W, Brown J R, Lipow M. Quantitative evaluation of software quality[C]//Proceedings of the 2nd international conference on Software engineering. IEEE Computer Society Press, 1976: 592-605

[3] Samoladas I, Stamelos I, Angelis L, et al. Open source software development should strive for even greater code maintainability[J]. Communications of the ACM, 2004, 47(10): 83-87

7、個性發揮,包括圖文、照片和創意等!

    不懂就是百度,不懂就找博客,總有人會懂!

相關文章
相關標籤/搜索