個人作業——軟件工程實踐總結作業


課程名稱:軟件工程1916|W(福州大學)
作業要求:個人作業——軟件工程實踐總結作業
學生:221600440_鄭曉彪
作業目標:軟工實踐課程的總結

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

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

  • 能在陌生開發過程中學習,過程苦到“真實”つ﹏⊂
  • Debug能力不足,結對的時候多謝伙伴的支持
  • 團隊交流能力不足,團隊實踐過程中的互幫互助、分工合作做得不好,感謝課程實踐的隊長和隊友們,我還有很多要學習的地方

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

  1. 完成有效代碼行:

    任務 代碼行(sloc)
    結對編程 500+
    gitbub實訓 200+
    團隊Alpha沖刺 3000+
    團隊Beta沖刺 300+
    累計 4000+
  2. 各作業花費時間:

    作業 花費時間
    第一次作業-准備篇 2h
    結對第一次—原型設計(文獻摘要熱詞統計) 20h
    結對第二次—文獻摘要熱詞統計及進階需求 30h+
    團隊作業第一次—團隊展示 2h
    團隊作業第二次—項目選題報告 5h+
    團隊第三次-項目原型設計 20h+
    團隊作業第四次-項目需求分析 24h+
    團隊作業第五次—項目系統設計與數據庫設計 12h+
    團隊作業第六次—團隊Github實戰訓練 10h+
    項目Alpha沖刺(團隊) 150h+
    事后諸葛亮(團隊) 2h
    項目Beta沖刺(團隊) 50h+
    Beta階段團隊項目互評 10h
    個人作業——軟件工程實踐總結作業 3h+
    合計 340+
  3. 讓我印象最深刻的作業是:
    項目Alpha沖刺(團隊),那次作業是我第一次體驗在有限時間內接觸陌生框架到Alpha版本發布的過程,時間緊任務重,多少個課堂自顧自的看教程、指南,見過幾次凌晨4點的福州大學……確實累,但也有所收獲——學習了新的框架Web前后端的代碼能力都有所提高,磨練了自己安排時間的能力,增強了自己的團隊意識。
  4. 累計花了400h+在軟工實踐上,平均每周花28.5h+
  5. 新軟件: 墨刀,PhpStorm,Unity
  6. 新工具: Git,JUnit
  7. 新框架、引擎: Laravel5,Corgi
  8. 新方法: 利用原型設計表達需求
  9. 其他方面的提升: 抗壓能力,文檔編寫能力

二、寫下屬於自己的人月神話——個人或結對或團隊項目實踐中的經驗總結+實例/例證結合的分析

  • 開發的起點很重要,請確保出發前能到達終點。作為實踐課上為數不多選了開發游戲的團隊之二(兩隊都待過)的成員,我能深刻體會到從選題開始到之后的一系列設計、報告都不好做,或者說效果不是很好。感覺給自己挖了一個坑?還是說游戲開發經驗不足?我覺得大多數的新團隊開始新開發應該都有這種體會,所以我很感謝能陪我一起走到課程結束的“難兄難弟”們和“葫蘆娃”們。
  • 過程中成員的互相支持很重要。這個我舉我被調到葫蘆娃隊的β沖刺過程來說吧(之前團隊里游戲開發參與不多)。在到了新團隊之后,我一不懂美工,二不懂寫腳本,稍微會用點unity,團隊沖刺過程中,新隊員隊長會陪我一起debug,改腳本等。一直到后來游戲做出來挺有趣,我都挺開心的。

三、對下一屆實踐的建議,或者對於開學初的你,對於大一的你,對於開學初的我,你有什么想建議和告知的呢?對於后來人的期許。 特別地,特別地,下一屆要不要中途換隊員?

  • 致大一的我:多跟着大佬學點技術吧,能參加點比賽也好。
  • 致開學初的我:考研嗎?三下課程任務有點中,多做點時間安排和心里准備吧。
  • 對后來人的期許:好好努力,堅持下去。
  • 看待中途換隊員:從個人被換過的經歷來看,不是不能換。團隊提前考慮考慮每個人都有被換走的可能進行工作安排

四、分析一下自己所處的團隊。軟件工程實踐是大學里少有的認真的團隊協作經驗。《構建之法》上說團隊的發展有幾個階段,你的團隊都經歷過么,最后到達了“創造”階段了么?(參考《構建執法》第17章 人、績效和職業道德)

  • 男上加男:一支充滿活力的團隊,有一個有能力又負責的隊長和一群平時樂觀的隊友。團隊經歷較長的應該是磨合階段,過程中經常有沖突,逐漸磨合,到后來按照隊長的安排愈加規范。但還遠算不上達到創造階段的團隊。
  • 葫蘆娃:一支充滿潛力的團隊,作為新轉入的成員,該團隊給了我較大的幫助,基本我的工作都是結對的,就是總會有人來幫我。感謝!新團隊的經歷較短,我個人認為自己在團隊中的工作是在磨合階段的。

五、怎樣證明你學會了軟件工程?

1)研發出符合用戶需求的軟件。必須公開發布,有實際的用戶,一定的用戶量和持續使用量 (3 天后能保持10 - 100個用戶);而不是: 做沒有用戶使用的軟件

  • 項目選題確立前就考慮了用戶需求,對比了市場。小組互測以及用戶體驗反饋良好。

2)通過一系列工具,流程,團隊合作,能夠在預計的時間內發布 “足夠好” 的軟件。有項目規划/需求/設計/實現/發布/維護,有定時的進度發布 ; 而不是: 通過臨時熬夜,胡亂拼湊,大牛一人代勞,延遲交付等方式糊弄

  • 團隊實訓中,團隊沖刺過程中都做了流程規划和進度控制等工作,按時發博。

3)並且通過數據展現軟件是可以維護和繼續發展的。而不是找不到源代碼,代碼無文檔,代碼不能編譯,沒有task/bug 等項目的發展資料

  • 團隊代碼在github遠程倉庫進行管理,並有團隊代碼規范,學習使用了框架規范代碼開發過程。

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

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

import fzu.edu.software.engineer;
import fzu.edu.pairwork.wordcount;
import fzu.edu.github.test;
import fzu.edu.rush.alpha;
import fzu.edu.rush.beta;

public class SoftWareEngineering{
    public static void mian(String[] args){
        System.out.println("Hello,SoftWareEngineering!");
    }
}

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com