软件工程课程复盘
經過一個學期的學習,探索和實踐,和王老師的諄諄教導,我們小組的《華中農小魚吃吃吃》軟件順利完成并上傳至微信平臺。在此,我對整個學期以來小組完成的任務進行一個總結和復盤。
首先是三月初得知要組建小組,進行為期四個月的軟件開發工作。我們很快建立起了由五位同學組成的小組,在接下來的合作時光里大家互幫互助,積極完成自己的任務。
在軟件需求設計階段,我們在別的小組清一色的準備制作小程序情況下,毅然選擇了另辟蹊徑,制作小游戲。一方面,我們對制作小游戲更有興趣,覺得做出來的產品更具有實效性;另一方面,因為在過去的學習積累中還缺少對游戲的項目經驗,我們也想著挑戰自己,提升自己,讓知識技能更加豐富完善。確定軟件類型之后,我們通過調查,本著放松人們身心,緩解情緒和壓力的目的,我們從眾多的休閑類小游戲中選擇了以“大魚吃小魚”為原型的小游戲,并起名為“華中農小魚吃吃吃”。此后,我們從項目背景、任務概述、功能需求、數據需求、性能需求等等方面進行需求規格說明書的編寫,在此期間查閱了課本以及老師給的模板,但在后期交給老師進行初審的時候還不是很完善,后期還進行了多番修改。其他文檔亦復如是。
在概要設計階段,我們汲取了前面編寫軟件需求設計書的寶貴經驗,更加注重規范,逐步建立起我們所要完成的任務的基本概念模型,并從體系結構設計、接口設計、數據設計等多方面進行了深入探討和思考。我們決定使用結構化分析的方法來進行整個軟件的設計。每周一次的組會也是定期開展,全員到齊,從來沒有落下。至此,我們在心中對“華中農小魚吃吃吃”有了一個概括性的框架。
在詳細設計階段,就是我們自頂向下,逐層分解各個功能的過程了。我們從總體設計、模塊描述等方面,承接概要設計的每一個功能模塊,一步步細化為具體詳細的內容,包括各種圖以及偽代碼都有在詳細設計文檔里面寫道,我們盡可能地做到讓讀者看到文檔,就知道該怎么編寫代碼的程度。因此,當詳細設計文檔完成后,我們小組成員的心中已經十分熟悉該游戲系統應該怎么編寫了,代碼也呼之欲出。
接下來,就是為期一個多月的代碼實現過程了。我們小組利用微信開發者工具,我們申請了一個微信小程序,由編程能力最強的組員開始寫最核心的游戲模塊的代碼,游戲雛形成功建立。在大家共同參與下,其他模塊也逐步完善。在游戲界面和角色的美工方面,我們也下了不少功夫,包括為了實現解壓的效果,我們添加了精心挑選的舒緩的背景音樂,并且在平臺所規定的代碼包允許的容量內不斷更新圖片,力求更加完美的畫質帶來更好的游戲體驗。
最后就是測試階段了。我們邀請到了幾十位同學成為我們的第一批內測體驗者,他們都對該游戲體驗贊不絕口,覺得我們完成這個軟件工程的編寫是一件不可思議的事情。之后我們也對其中自己發現的小bug進行了微調,不斷完善細節,力求給大家帶來更加完美的游戲體驗。
通過這個學期的軟件工程及實驗課程,我深刻地體會到“將理論付諸于實踐”的深刻哲理。我們僅僅在課堂上聽老師灌輸知識是遠遠不夠的,必須親自上手實踐,操作,才能更加深刻地學習到這門課的內涵和精髓。計算機系的課程本來就擁有很強的實操性,我們要勤于動手動腦,才能把所學真正內化于心,并且在未來的科研和工作中用到。
總結
- 上一篇: [待总结]redmine
- 下一篇: call stack and stack