軟件工程大作業總結
一、項目文檔整合
二、項目完成度總結
- 社長
- 創建活動
- 修改活動
- 活動通知、社團風采發布
- 發布任務
- 管理社團成員
- 創建活動
- 學生
- 報名參加活動
- 在社團風采中留言
- 查看所有社團信息
- 訂閱、取消訂閱社團
- 查看社團內部任務
- 報名參加活動
- 管理員
- 社團管理
- 審批活動申請
- 公共場地管理
- 社團管理
三、項目個人工作總結
1. 主要工作
由於本小組人數較少,在前階段的准備工作中包括(需求分析、設計)都是共同完成的,在之后的代碼實現中,沒有具體的代碼塊呈現,很多工作集中在同一個類中進行,可能無法較好地展現每個人的工作量;但是每個人有不同的功能實現划分,個人划分如下:
1.1 數據庫的連接+程序的串行
android端與數據庫的連接,使用JDBC進行與mysql的直連(之前嘗試的雲數據庫最終以失敗告終,以后還是會嘗試着使用,爭取能夠攻克難關);填充界面的內容:從數據庫中拿出包括社團、人員、學生與社團相關聯的信息等填充到所展示的界面中,實現前端的信息展示。
主要困難在於各個活動之間值的傳遞,每個activity基於傳遞的參數完成相對應的功能,涉及到主線程中多個線程的處理導致數據較為混亂,造成信息丟失,使各個活動界面無法靈活切換。
2.2 完成社長人員管理及發布推送功能
android端的開發也是邊學邊做,遇到了許多bug,包括界面的及時刷新,操作無效,找不到類等問題,都是一些細節上的處理。在人員管理中涉及到人員的增加、刪除及轉讓。在發布推送中實現了社長拍照上傳、從相冊中選擇上傳照片的功能,發布的推送可以被訂閱了該社團的人員看到。
2.3 完成查看社團任務及推送功能
社團任務放在“我加入的”進行展示,通過實現文本的收縮實現社團任務的查看;社團推送在“我關注的”進行展示,點擊標題后可進行推送的查看。
2.4 完成學生取消社團關注功能
用戶可以根據個人喜好社團取關的活動。
2.5 實現的主要界面
社團區域展示+社團簡介;優化社團管理的人員管理界面;推送發布界面
2. 個人反思
2.1 需求分析階段
在需求分析階段走了不少彎路,在對需求分析的理解上與老師講解的何為需求有些許偏差,幾次的需求設計文檔被老師否決,原因是我們所闡述的需求實為具體的實現功能,少了需求所需的一些限制。好在自己不是一個人在戰斗,在組員的共同努力下,最終完成了項目最重要的前期工作准備,為接下來的項目的實現做准備。但實際上在后期解決問題的過程中,發現了需求設計上的不足。
此次階段獲得的反思是:
閉門造車不可取,廣開思路,可以學習其他優秀程序員編寫的代碼,從而獲得一些靈感,將它變為自己的東西並體現在自己的項目中;頭腦風暴同樣重要,可以為自己的項目增加不少亮點,而不是僅僅局限於一些傳統功能上。
2.2 設計階段
設計基於需求分析的基礎之上,進行類圖、用例圖、時序圖的繪制以及數據庫的設計;在該階段,參與了圖的設計及繪制,期間有產生歧義,組內無法統一,此時老師的解答發揮了極大的作用,使繪制工作得以及時完成。
2.3 代碼實現階段
1. “小而精”沒有實現:
· 在界面的交互上不夠合理和准確;
· 在控件的使用上比較單調,應根據使用場合靈活調用;
· 在功能實現上沒有充分考慮限制條件,及實現的合理性。
< 老師的建議我們將充分吸收並作出在原來的基礎上做出修正 >
2. 統一管理代碼未能充分體現:
這是一條不歸路,因為在編寫代碼過程中遺忘了代碼的書寫規范,導致后面在拼接程序的過程中,需要修改一些細節,作為一個團隊,良好的書寫規范可以提高整個團隊的效率,這是我在本次項目實踐中獲得的教訓。
四、針對本次教學的小許建議
首先容我贊美一下朱勇老師:
朱勇老師是極好的,在這次的四個里程碑中,我們女生組遇到過不少問題,那每次向老師提問時,解答都是精細的,能夠解決不少的問題;除教學之外,老師還會提很多的建設性意見希望對我們有所幫助,不可否認,上朱勇老師的課是一段即艱辛又美好的時光。
然后以下是我的小許建議:
· 問題1:
在組隊上可能存在一些不合理性,就我們女生組而言(切身經歷來說):人少、風格比較統一、水平比較均衡,這可能導致在后面的項目實現中思想比較狹隘和統一;也有強強聯手的團隊,會不會說對水平一般的學生來說比較不公平呢?
· 建議:
最初老師的男女搭配的想法其實沒有問題,但是難於實施,原因可能是當代大學生比較羞澀,難於開口。我們是否可以通過隨機性的組隊方式,平均分配資源?或者說在組好隊的情況下進行適當的調劑?打破熟人組隊的潛規則,實現團隊合作,這樣既能減少這種不合理性,還可以增加學生之間的交流與溝通,一舉兩得。
· 問題2:
四個里程碑中,我們都是以博客形式進行小組的匯報展示,小組之間的交流比較缺乏,缺少相互學習的過程。
· 建議:
在每個里程碑結束前,可以小組抽選進行小組匯報,除老師能夠了解到小組的情況外,其他小組也可以進行一定的學習和交流,將問題放大,然后統一解決是否可以提高效率呢?此外,一定的獎懲機制個人認為還是必要的,比如:上台展示的小組若表現不錯可進行適當的加分調動同學們的積極性。