實驗十四 團隊項目評審&課程學習總結

項目 內容
這個做業屬於哪一個課程 軟件工程任教教師
這個做業的要求在哪裏 實驗十四 團隊項目評審&課程學習總結做業要求
做業學習目標 對一個學期的軟件工程學習和項目實踐的總結




任務2:經歷了一個學期的軟件工程學習和項目實踐,請每位同窗完成一篇我的學習總結博客,內容要求以下:html




1.結合本學期課程學習內容,對比《實驗一 軟件工程準備》 的任務5你所提的問題(給出提問博客連接),嘗試對提出問題進行解答,並闡明是如何經過學習/實踐/討論弄清楚的;學習中是否產生了新的問題?若有,請提出。
java

在實驗一 軟件工程準備中的任務5我曾提出了一下幾個問題,如今我將根據一學期的學習和實踐作出個人解答git

1.咱們都知道PSP是我的開發流程,在書中第34頁也介紹了我的開發流程的任務清單,包括計劃(明確需求和其餘相關因素),開發(分析需求,生成設計文檔,設計複審,代碼規範,具體設計,具體編碼,代碼複審,測試),記錄用時,測試報告,計算工做量,過後總結,提出過程改進計劃這些內容。做者提供了2011年收集的兩組統計數據,對比大學四年級學生與工做三年的軟件工程師在PSP階段用時的對比,從表中對比咱們能夠發現大學生在需求分析和測試階段用時明顯比工程師要短,但編碼時間卻比工程師長許多。這是什麼緣由致使的呢?咱們在我的開發軟件過程當中應該注意哪些問題?github

回答:
      在這軟件工程一學期的學習過程當中咱們除了學習了相關的理論知識,更多的是在具體的軟件項目開發過程當中去實踐。在軟件的開發過程當中咱們又明顯的體會,就是項目作着作着就會出現不少問題,發現缺這少那,究其緣由仍是由於咱們在需求分析時分析不夠完全,老是在潦草分析獲得部分需求後就立刻投入到設計去了,結果到後期設計時就會發現大量問題。大學生編碼時間在整個開發過程當中用時較長是由於代碼量太少。我在剛開始的詞頻統計分析編寫代碼就比較慢,可是隨着越日後寫的代碼越多,我就發如今開發過程當中用在編碼階段用時相比較減小了.web


2.開發軟件最重要的一步就是需求分析,即肯定開發產品的功能,那當咱們開發出一款具有用戶需求的全部功能且測試功能均可用後,可否說這款產品就是一款好的產品,讓用戶滿意的產品?固然不能,還得考慮用戶體驗,軟件的各部分功能就至關於一個產品的各個零件,具有全部零件的產品就可用了嗎,例如生活中經常使用的插板,用的插板上面有兩孔和三孔的,看起來挺好的,既能插兩孔也能插三孔,但實際用的時候也許會發現具有兩個功能的插板卻不能同時插,這會讓人很抓狂。因此用戶體驗也是極其重要的一方面,那對於咱們來講,開發一個具備友好用戶體驗的產品應該注意哪些方面呢?怎麼去獲取用戶對於一款產品的使用喜愛呢,開發出令用戶滿意的軟件呢?編程

回答:
      咱們本身開發的軟件產品,由於開發人員對本身的產品很是的瞭解,便不會以爲產品在使用的時候有哪些不便之處,當讓其餘用戶來用時,就會發如今用戶體驗方面的問題。若是用戶體驗很差,那這款產品就算功能再強大,用戶不肯意也是白搭。我以爲在開發一個具備友好用戶體驗的產品應該注意一下幾個方面呢
- 注意異常錯誤操做。提示在一些異常或者錯誤的操做時,必定要給予用戶必定的提示,讓用戶知道這樣操做是不規範的,也可以更好地提高用戶體驗。
- 產品操做手冊幫助。設計產品操做手冊幫助臺,也可以讓用戶可以更快速地瞭解產品的操做,更加輕鬆的上手使用產品。
- 保證操做的功能穩定性。產品操做的穩定性保證,也是直接影響用戶體驗的關鍵,千萬不要出現閃退、緩慢等直觀的使用感覺。
- 注意基礎頁面的分類。關於產品的功能分類,也必定要提早作好規劃,這樣基礎功能的清楚展示,也是幫助開發者和用戶提高體驗的關鍵。
- 注意分析用戶反饋信息。在產品上線後,對於用戶的使用反饋的信息,開發者也應該去了解,這樣才能知道如何進行完善、優化,開發出和適合用戶喜愛的軟件。java-web


3.聽過這麼一句話:全部可以顧促進質量提升的事情都QA應該參與,QA就是質量的把控和監督者,QA不該當侷限於"測試分析"、"測試設計"、"測試執行"等等,那麼做爲一個QA應該從哪些方面關注軟件產品質量?書中第14章,講述了軟件的質量=程序的質量+軟件工程的質量,提到軟件工程質量能夠用一套比較成熟的理論CMMI(能力成熟度模型集成),幫助企業進行對軟件工程過程的管理和改進,加強開發製造能力,從而能按時地,不超預算地製造質量的軟件。那CMMI適用於什麼樣的公司或者團隊?CMMI怎麼用?怎麼將它應用到具體工做中?

模塊化

回答:
      CMMI(能力成熟度模型集成)適合企業操做,避免了某些管理體系只重理論而忽視實踐的缺陷。在我國,隨着媒體的宣傳和政府的支持,許多企業引入了CMMI諮詢和認證,對於整個軟件行業的管理提高及研發效率提升起到了很大的幫助做用。但也有一些企業引入CMMI體系後,只留下一些形式上的開發流程和文檔模板,在管理上並沒有實質性改進。工具




2.總結本身在項目的可行性分析/需求分析/軟件設計/實現/測試/項目驗收/中學到了哪些「知識點」。
單元測試

      在可行性分析階段咱們明白了可行性研究的任務和過程,在進行可行性分析研究時須要瞭解和分析現有的系統,並以歸納的形式表達對現有系統的認識,進入設計階段之後應該把設想的新系統的邏輯模型轉變成物理模型,因此咱們學習了系統流程圖,數據流圖和數據字典來描繪將來的物理系統概貌。
      在需求分析階段,咱們明確了需求分析的主要任務有肯定對系統的綜合要求,分析系統的數據要求,導出系統的邏輯模型和修正系統的開發計劃,學習了用訪談法,面向數據流的自頂向下求精,簡易的應用規格說明技術和快速創建原型方法來獲取用戶需求,認識了E-R圖,狀態轉換圖,層次方框圖,Warnier圖和IPO圖等內容。
      在軟件設計階段,主要有整體設計和詳細設計,在整體設計中咱們對於整體設計有了必定的瞭解,明白了整體設計的幾大原則,如模塊化,抽象,逐步求精,信息的隱藏和局部化以及模塊獨立原則,在這一部分學習了用層次圖,HIPO圖和結構圖等圖形工具來描繪軟件的結構,也學習了面向數據流的設計方法,對變換分析和事務分析有了必定的認識。在詳細設計部分,咱們先對於人機界面的設計過程有了初步的認識,而後學習了幾款過程設計的工具,如程序流程圖,盒圖,PAD圖,斷定樹,斷定表及過程設計語言等內容。
      在實現階段,主要選擇合適的程序設計語言,按照軟件編碼規範說明說來進行編碼。
      在測試階段,測試的方法如黑盒測試和白盒測試有了必定的認識,知道了黑盒測試又叫功能測試,是用來測試軟件的功能是否符合需求說明書中的要求,也知道了白盒測試又叫結構測試,是用來測試程序內部結構是否正確執行的,而後學習了單元測試,集成測試,確認測試和系統測試,最後學習了軟件的調試。
      在最後的項目驗收中咱們模擬了真實環境在的驗收過程,對於驗收所需的材料,基本的流程有了整體的認識。




3.結合我的項目/結對編程/團隊項目的我的經歷,談談心得。

      經過這一學期的實踐練習,我對這三種類型的項目有了更加切身的體會。就我的項目而言,我以爲咱們可按照我的的想法來實施,但在過程遇到問題的狀況比較多,一我的不容易解決。結對項目中有了另我的成員的參與,一人領航一人駕駛,在需求階段會有更多的想法和思路,考慮問題會更加的全面,若是兩人技術至關,能力至關效果會比較好,可是兩人思惟方式不同,技術相差較大,編碼風格又不一樣就很難共同來完成任務。團隊項目在人數上比結對項目要多,能夠將一個較大項目分配給不一樣的人員來作,可是這又有一個缺點是人多很差管理,誰應該適合作什麼,作那一塊內容,成員之間如何溝通協做,這都得項目組長來協調,協調的好項目才能正常穩定的進行下去。




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

   ●_●統計在軟件工程實踐中,你完成了多少行的代碼;

      在軟件工程實踐中,從我的項目到結對項目再到最後的團隊項目,我完成了大概5000-8000行的代碼

   ●_●你在軟件工程實踐的各次做業分別花了多少時間?(作一個列表)

軟件做業 花費時間(h)
實驗 一 軟件工程準備 5h
實驗 三 做業互評與改進 4h
實驗 四 軟件工程結對項目 18h
實驗 五 軟件工程準備 4h
實驗 六 團隊項目選題 3h
實驗 七 團隊項目原型設計與開發 13h
實驗 八 基於原型的團隊項目需求調研與分析 8h
實驗 九 團隊項目需求改進與系統設計 7h
實驗 十 團隊項目系統設計與詳細設計 20h
實驗 十一 團隊項目設計完善&編碼 50h
實驗 十二 軟件測試與Alpha衝刺 7h
實驗 十三 Beta衝刺與團隊項目驗收 6h
實驗 十四 團隊項目評審&課程學習總結 8h
總花費時間 153
每週平均花費時間 22

   ●_●哪一次做業讓你印象最深入?爲何?

      在作過的這些做業中,我以爲令我印象最深入的是英文詞頻統計的結對項目,由於這是時隔將近一年又從新接觸java,編寫java web項目,很久沒寫代碼,好多東西都只記了大概,因此又把之前作的項目從新溫習了一遍,並且因爲是第一次嘗試結對項目,因此過程當中遇到了許多問題,花費了較長的時間。

   ●_●累計花了多少個小時在軟件工程實踐上?平均每週花多少個小時?

      大概18小時,可是具體算來遠遠不止,由於還有溫習以前學習過的內容的時間。

   ●_●你學習和掌握的新語言、新平臺;

      語言方面一直用的都是java,新工具卻是挺多,像原型設計工具如摩客,墨刀;在線做圖工具process on;畫用例圖的DiagramDesigner ;GitHub等;

   ●_●填寫下表,總結一學期的學習中,你學習或使用的軟件工程開發工具、開發方法和建模方法

軟件開發工具、項目管理工具 軟件開發方法 軟件建模方法
Eclipse、GitHub 、Sublime、Oracle,Rational Rose,Process On,墨刀 原型方法、面向對象方法、結構化方法 面對對象建模、結構化建模方法




5.你認爲目前的課程存在哪些問題,你有什麼更好的建議。

      很榮幸能夠成爲代老師的學生,代老師真的是很是的認真負責,也是很注重課程創新,在課程方面花費了不少心思,又是翻轉課堂,又是專門教咱們使用博客來記錄平時學習過程,又是專門找助教來評做業,爲咱們提供各類學習方法和工具,還能夠提供與做者交流的機會等等。各方面都很好,建議的話,但願老師在課堂上多講些例子,好比用例建模這塊,能夠找一個學生熟悉的具體的例子,從用例圖,活動圖,時序圖,類圖等都講一下,這樣能夠給同窗們更直觀的認識,更容易理解,在具體的項目中也能更好的運用。

相關文章
相關標籤/搜索