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


項目 內容
這個做業屬於哪一個課程? 2016級計算機科學與工程學院軟件工程(西北師範大學)
這個做業的要求在哪裏? 實驗四 軟件工程結對項目
做業學習目標是? (1)掌握軟件項目評審會流程;(2)反思總結課程學習內容。



任務一:結合本學期課程學習內容,對比的任務5你所提的問題,嘗試對提出問題進行解答,並闡明是如何經過學習/實踐/討論弄清楚的;學習中是否產生了新的問題?若有,請提出。

《實驗一 軟件工程準備》
一、那麼怎樣肯定一個完美的軟件,怎樣肯定一個產品呢是否能發佈出去呢?軟件工程師如何保證在新的改進上保持著原來軟件的完整性呢?
當產品已經足夠好的狀況下,能夠確認是否已經完成。 「足夠好」:是指產品已經具有一些可接受的綜合屬性,如功能、質量、時效性、客戶價值、競爭力以及支撐的基礎設施已經準備就緒。 
客戶對質量的見解主要取決於可靠性(持續運行無端障)和性能(操做的響應時間) 內部對質量的見解主要設計以下方面:軟件在將來的可修改性、可維護性、文檔的可理解性等。
發佈準則必需要與成功準則相對應,沒有放四海而皆準的發佈準則,要確保項目取得最終的成功,反映產品可以上線發佈的指標都必需要有必定的可信度和可測度。 若是指定了不符合項目業務目標的寬鬆的發佈準則,可能會形成一種必定會可能會取得成功的假象。 一些寬鬆的發佈準則:普遍的客戶羣體曝光率,「很高的客戶滿意度」 。一些模棱兩可的措辭:可接受的、足夠的、恰當的、普遍的、精確地、高的、改進的、低的、合理的、健壯的、準確無誤的和有效率的。這些措辭要儘可能避免使用。html

二、什麼方法能夠提升單元測試的效率?
制定合適的測試過程規範;
制定合理的測試計劃;
設計合適的測試方案;
按照科學的方法涉及測試用例;
使用工具管理測試發現的缺陷;
對缺陷進行統計分析,指導過程改進。
對測試過程規範,測試計劃、測試方案、測試用例進行評審。算法

三、咱們要怎樣知道本身適合哪一種模式呢?數據庫

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

-可行性分析是經過對項目的主要內容和配套條件,如市場需求、資源供應、建設規模、工藝路線、設備選型、環境影響、資金籌措、盈利能力等,從技術、經濟、工程等方面進行調查研究和分析比較,並對項目建成之後可能取得的財務、經濟效益及社會環境影響進行預測,從而提出該項目是否值得投資和如何進行建設的諮詢意見,爲項目決策提供依據的一種綜合性的系統分析方法。可行性分析應具備預見性、公正性、可靠性、科學性的特色。
-需求分析是軟件計劃階段的重要活動,也是軟件生存週期中的一個重要環節,該階段是分析系統在功能上須要「實現什麼」,而不是考慮如何去「實現」。需求分析的目標是把用戶對待開發軟件提出的「要求」或「須要」進行分析與整理,確認後造成描述完整、清晰與規範的文檔,肯定軟件須要實現哪些功能,完成哪些工做。此外,軟件的一些非功能性需求(如軟件性能、可靠性、響應時間、可擴展性等),軟件設計的約束條件,運行時與其餘軟件的關係等也是軟件需求分析的目標。
-軟件設計是從軟件需求規格說明書出發,根據需求分析階段肯定的功能設計軟件系統的總體結構、劃分功能模塊、肯定每一個模塊的實現算法以及編寫具體的代碼,造成軟件的具體設計方案。軟件設計是把許多事物和問題抽象起來,而且抽象它們不一樣的層次和角度。將問題或事物分解並模塊化使得解決問題變得容易,分解的越細模塊數量也就越多,它的反作用就是使得設計者考慮更多的模塊之間耦合度的狀況。
-軟件開發是根據用戶要求建造出軟件系統或者系統中的軟件部分的過程。軟件開發是一項包括需求捕捉、需求分析、設計、實現和測試的系統工程。軟件通常是用某種程序設計語言來實現的。一般採用軟件開發工具能夠進行開發。軟件分爲系統軟件和應用軟件,並不僅是包括能夠在計算機上運行的程序,與這些程序相關的文件通常也被認爲是軟件的一部分。 軟件設計思路和方法的通常過程,包括設計軟件的功能和實現的算法和方法、軟件的整體結構設計和模塊設計、編程和調試、程序聯調和測試以及編寫、提交程序。
-軟件測試,描述一種用來促進鑑定軟件的正確性、完整性、安全性和質量的過程。換句話說,軟件測試是一種實際輸出與預期輸出之間的審覈或者比較過程。軟件測試方法的分類有不少種,以測試過程當中程序執行狀態爲依據可分爲靜態測試和動態測試;以具體實現算法細節和系統內部結構的相關狀況爲根據可分黑盒測試、白盒測試和灰盒測試三類;從程序執行的方式來分類,可分爲人工測試和自動化測試。
-項目驗收,也稱範圍覈實或移交。它是覈查項目計劃規定範圍內各項工做或活動是否已經所有完成,可交付成果是否使人滿意,並將覈查結果記錄在驗收文件中的一系列活動。

任務三:結合我的項目/結對編程/團隊項目的我的經歷,談談心得。

軟件工程這門課剛開始是我的項目,但實際完成和預期設想相差仍是挺大的,具體編碼花費了預期兩倍的時間,仍是由於對JAVA語言掌握不熟練,上機練習不夠。此次實驗掌握了軟件項目我的開發流程,以及Github上發佈軟件項目的操做方法。感受仍是團隊合做開發項目比較好,遇到問題和不懂的地方能夠幾我的互相探討商量完成,能夠省下不少時間在項目的優化和完善上。編程

第二次實驗是第一次結對項目,相比以前的我的項目,此次實驗的方法步驟都有很大改變。兩我的一塊兒編程時,須要在方法、數據結構甚至是變量和函數名上達成一致。這減小了其中一方隨意編寫代碼的可能性,結對編程時也選擇了更加標準的語法、格式。每一個人獨自進行設計、實現軟件的過程當中不免要犯這樣那樣的錯誤。若是是結對編程的話,解決問題的能力就提升了,程序中的錯誤就會少不少,設計質量和代碼質量也會高不少,還會省下不少之後修改、測試的時間。由於有隨時的複審和交流,並且程序各方面的質量都會由於實力較強的同伴而變得更高。還有就是兩我的一塊兒合做一件事的時候,精神力更能集中、更專一,從而更能快速高效的完成任務。結對編程時我瞭解到了不一樣的解決問題的思路和算法,知道了一些還未接觸到的鍵盤快捷鍵和調試技巧。和同伴在一塊兒工做讓我更好地相互瞭解對方,從而更加理解她,加強了團隊凝聚力。一個成功的軟件團隊須要不少合做,有效地交流、相互學習和傳遞經驗是頗有必要的。安全

在完成咱們團隊項目「家教管理系統」中,從最開始的問卷調查,用戶需求的分析,到《軟件需求規格說明書》,到基於墨刀的原型系統的實現再到項目的系統改進,最後到系統的實現,這一路走來,每一步都走的不容易,期間也遇到了不少的問題,例如最開始的時候,用戶需求分析團隊成員的意見出現了分歧,爲此咱們再次調查了更多的用戶後,小組通過認真討論後達成一致,正是咱們在前期的充分調研,才使的咱們在後面的具體實現工程中游刃有餘,在預期的時間內完成咱們的項目。固然,實現過程也不是一路順風,在會議欄目編輯富文本框實現的時候,就遇到了麻煩,以前沒有接觸到,因此不知道如何去實現,在我不知所措的時候,咱們的團隊成員馮曉同窗,自告奮勇,在他的幫助下,我順利的完成了個人任務。團隊項目的實現除了學習更多的新知識外,我以爲更重要的是團隊成員的相互合做,相互配合。這接下來的時間,咱們會更加完善咱們的項目。數據結構

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

1.統計在軟件工程實踐中,你完成了多少行的代碼:

統計在軟件工程實踐中,我完成了大約2000行代碼。模塊化

2.你在軟件工程實踐的各次做業分別花了多少時間?

實驗 用時(h)
實驗一 軟件工程準備 2
實驗二 軟件工程我的項目 15
實驗三 做業互評與改進 5
實驗四 軟件工程結對項目 15
實驗五 軟件研發團隊組建 5
實驗六 團隊項目選題 3
實驗七 團隊項目原型設計與開發 15
實驗八 基於原型的團隊項目需求調研與分析 15
實驗九 團隊項目需求改進與系統設計 15
實驗十 團隊項目系統改進與詳細設計 15
實驗十一 團隊項目設計完善與編碼 20
實驗十二 軟件測試與Alpha衝刺 20
實驗十三 Beta衝刺與團隊項目驗收 20

3.哪一次做業讓你印象最深入?爲何?

軟件工程做業中團隊項目使我印象最深入,由於這是第一次按軟件工程的方法進行結對編程嘗試,體會了合做編程的過程,期間經過相互的討論和監督使得代碼更規範,功能更完善,邏輯較爲嚴謹,特別是在單元測試和代碼複審時,能更快的發現代碼的錯誤,結對編程的效率比較高,在代碼規範方面,意識到隨意編寫的危害,讀代碼改代碼都很費勁,在結對編程中也遇到溝通交流的問題,可是也快速找到了適合咱們的解決方法。函數

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

累計共花了165個小時在軟件工程實踐上,平均每週大約花11個小時在軟件工程實踐上。工具

5.你學習和掌握的新語言、新平臺

語言:Java Web、Java、Markdown
平臺:博客園、GitHub、中國大學MOOC、雨課堂性能

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

軟件開發工具、項目管理工具 軟件開發方法 軟件建模方法
墨刀、GitHub 面向對象方法,Jackson方法,原型方法 數據流圖,數據庫建模,面對對象建模

7.其餘方面的收穫或提高

經過這學期學習,鍛鍊了個人編程能力、文檔撰寫能力、任務規劃能力、團隊協做等能力,最大的感觸就是團結合做的力量比單打獨鬥的力量大,學習效率也更高,作出來的項目也會比我的項目更完善。遇到問題小組成員集思廣益,互幫互助,最後解決問題,體會了完整的項目開發流程。

任務五:你認爲目前的課程存在哪些問題,你有什麼更好的建議。

以前的教學形式都是先期老師引導教學,而後再開設課程設計實踐。但此次是課堂教學與實踐結合,並且剛開始就作我的項目,讓編程不太好的我有點適應不了,但願老師能設置一個過渡。剛開始我的項目一次實驗有兩週的時間,但到後期衝刺編碼的時候一次實驗只有一週時間,感受時間有點趕,但願能夠給編碼測試的時間長一點。

相關文章
相關標籤/搜索