大二下学期软件工程概论总结
? ? ? ? 軟件工程概論這門課可以算是我本學期最辛苦的一門課了。但與此同時這門課給我帶來的收獲和其他課程相比,也不是一個量級的。
? ? ? ? ?這學期我通過課上的學習與作業項目的完成過程,了解到軟件開發由項目的確定到項目的需求分析,再到概要,詳細設計,代碼設計以及開發完成后軟件的測試等等這一完整的軟件開發流程。學習上面每一個步驟中的相關方法和工具。學完后應初步具備具備管理整個軟件開發流程的能力。從而提高軟件的質量與生產率,最終實現軟件的社會化生產。在給定成本,進度的前提下,開發出具有可修改性的,可靠性的,可維護性的,可移植性的,可重用性的并且滿足用戶需求的軟件產品。
軟件工程總結——學習篇
這一學期的軟件工程課就要進入尾聲了,在復習鞏固理論知識的,同時更需要回顧和反思自己的學習態度。
在這學期的軟件工程學習中,未曾有過遲到,早退以及曠課的情況。雖然軟件工程的課內容深奧難懂,但還是告誡自己,上課不開小差,認真聽講,加深對其的理解。
同時我在課下努力學習Android開發相關的知識,與隊友結對開發收獲很大。
? ? ? 通過與隊友結對開發APP我發現想做好一個軟件,以下幾個方面很重要:
? ? 1,清晰的產品模型規劃
? ? ? ? 在開始開發軟件前,一定要想清楚,需要開發的這個項目到底是一個什么樣的東西,它的功能應該包括什么,其中哪些是主邏輯部分功能,哪些是拓展功能,你做出來的軟件需要讓什么人去用。我們組在開發過程中在這個問題上吃了大虧。由于一開始在選題時候我們并沒有仔細地去考慮到底要做成什么樣子的,核心功能邏輯是哪些,功能亮點有什么,這導致我們在項目進行中遇到了很多很多問題,、開發成本增大,開發效率一下變低。因此我覺得一個好的軟件一定要在開發前想清楚要做的產品到底是一個什么樣的產品。可以不需要想清楚每一個細節,但是涉及軟件核心的邏輯與功能必須想清楚,否則,后患無窮。
? ? ? 2,合適的技術
? ? 在開發項目前我們需要進行技術選型。比如界面怎么設計,數據庫的數據表怎么設計,我們在項目開發過程中一開始選用的是sqlite數據庫,后來我們又租了服務器,將用戶的數據存在服務器上,關于日歷的顯示,我們找了很多的控件和模板,界面也查看了別人寫的例子。
? ? ? ?3 ,嚴謹的開發流程
? ? ? 由于開發的是一個APP,就應該選擇APP的開發模式,如快速原型模型開發等等。由于開發團隊很小,而且成員間很熟悉,甚至可能是一個宿舍的幾個人,因此就覺得幾個人在一起還要抽特定時間集中開發,開迭代會議很“表面”。但是事實證明,如果沒有每周一個或多個特定時間的集中開發,大概率發生的情況是在迭代檢查前一晚上爆肝,甚至通宵。沒有迭代會議會導致,對整個項目完成進度失去控制與規劃。會陷入:“啊,這幾天我們做了很多了!你看有........”但其實沒做很多的情況之中。因此項目集中開發與項目會議至關重要。在項目開始前需要有一個比較粗略的規劃,到什么時間點需要大概做到什么程度。在每一次迭代會議上需要給上一個階段的工作作出總結,細致地確定下一個階段的工作細節,任務分配,安排下一個迭代集中開發時間與每一次開發要完成的任務點,這樣才能做到有條不紊。
? ? 4,關注開發細節
? ? ? ? 寫代碼的人很多時候會覺得,我東西都給你了,文檔什么的不重要~其實在做一個項目的時候文檔什么的,很重要。文檔是給用戶看的,也是給開發團隊看的。比如需求文檔(讓開發團隊知道自己產品需要哪些功能),設計文檔(讓開發者知道軟件需要做成啥樣),測試文檔(確定測試方案,測試環境,測試工具,設計測試用例)。沒有文檔記錄的開發是不完整并且混亂的,我們組一開始開發時不太關注這方面的東西,因此產生了各種問題。因此在開發過程中,文檔至關重要,沒有文檔,就沒有一個好的大型項目,開發過程也必定是痛苦而凌亂的。
軟件工程總結——感悟篇
時間飛逝,短短的半學期轉眼過去,在不知不覺中這門課學習完了。在這一學期中,我通過學習還是受益良多的。
在以前,我一直對軟件工程存在一些未知與誤解。認為軟件就是程序,軟件開發就是編寫程序的過程,只要完成程序的編寫,那么軟件也就宣布著成功開發。而且我還片面的認為只要我掌握了當下最流行的編程語言與其開發工具,就能很好的編寫出一個程序。一個人只要會編程,就能寫軟件,就是程序員。一個公司,只要招聘一些程序員,就能開發很好的軟件產品。只要有幾個有經驗的程序員,在找些兼職的大學生,就能組成一個軟件公司。
但是,通過學習了軟件工程后,讓我恍然大悟。才知道以前隊軟件開發的認知是多麼的錯誤,多么愚昧。漸漸的才明白,軟件其實不僅僅是個程序,軟件開發也不是簡簡單單編寫程序的過程。軟件是思想在硬件上的載體與體現,處理的是邏輯與信息。唯有對軟件和軟件開發過程有充分的認識,才能更好的開發出,過程受控,質量受控的軟件產品。而且在以前,我一直以為軟件開發是一件讓人愉快的事情,只要坐在電腦前敲敲代碼,那么一切就OK了,現在我發現,以前的想法是多么的可笑(可能被電影中的情節所欺騙)。編程其實是一種痛苦與快樂并存的一想創造性的活動。因為編程不僅僅能滿足我們的創造欲,還能愉悅內在的情感。
在軟件開發過程中或許有很多不解的地方,這時我們要從整體的概念上較好的理解和把握軟件工程,學習時要注意多看多練多去結合實際,多思考,面對錯誤不要一范就問,多嘗試自己解決。一口吃不成一個胖子,慢工出細活,集中精力主攻一塊領域。學習軟件工程首先要明白自己的目標是什么,根據自己的實際出發,有針對性的去學習,去實踐,制定出詳細的學習規劃。
另外,通過軟件工程,還讓我學習到一個重要的知識——團隊的合作,團隊之間的分工,統一,對于我們這類在校生而言,這種學習能讓我們在以后的工作中少走一些彎路。所以,通過軟件工程,我是真的學到了很多的東西,不單單是書中的理論知識,更多是讓我明白了很多的道理。軟件工程強調概念和知識的理解與掌握,側重軟件的項目分析、設計、實現和維護的基本技能。比較注意‘點’和‘面’的結合。是一門理論性較強的學科。對于理論性較強的學科,把握起來真的是有些困難。閱讀了《構建之法》我發現這本書既可以即可以當做故事書來讀,也可以當教科書來用,很感謝此書給我帶來很多的感悟。
? ? ??最后要感謝王老師一個學期的辛苦教學,幽默而又嚴格的風格很受同學喜歡。這是一門讓我很喜愛的課程。
轉載于:https://www.cnblogs.com/lq13035130506/p/11029287.html
總結
以上是生活随笔為你收集整理的大二下学期软件工程概论总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: miniusbpcb封装_MINI MI
- 下一篇: ubuntu安装pytorch镜像修改及