項目 | 內容 |
---|---|
這個作業屬於哪個課程 | https://www.cnblogs.com/nwnu-daizh/ |
這個作業的要求在哪里 | https://www.cnblogs.com/nwnu-daizh/p/12369881.html |
作業學習目標 | 1.了解Github的基本操作;2.通過瀏覽《現代軟件工程—構建之法》,提出自己在閱讀中存在的三個問題和自己的見解 |
作業參考文獻 | [1]鄒欣.構建之法——現代軟件工程》北京:人民郵電出版社,2017.7. |
任務一:調查問卷
- 以下網址提交課程調查問卷
- 已完成
任務二:在博客園平台注冊個人博客賬號和加入班級博客
- 用途:師生交流、同學交流、發布作業、學習先進技術與工程經驗
- 博客園地址
- 請參考這篇博客創建個人博客園博客賬號
- 班級博客地址
- 登錄博客后,在瀏覽器中打開鏈接,加入班級(若鏈接失效請在群內聯系助教)
- 已完成
任務三:注冊Github賬號
任務四:學習markdown編輯博客
參考文章學習使用MarkDown編輯博客,內容包括:
- 切換編輯器
- 排版章節
- 插入列表
- 插入超鏈接
- 引用別人的文字
- 行內修飾文字
- 插入代碼
- 插入表格
- 插入圖片
- 添加段落
- 已完成
任務五:提出瀏覽《現代軟件工程——構建之法》后的三個問題
-
問題一
書中第一章提到軟件流程的質量是為了評價軟件團隊和開發流程的問題太多而導致團隊間無法相互協作而存在的,同時軟件工程的教學和培訓目標是讓讀者通過理論學習和具體項目的練習,做到通過一定的軟件流程,在預計的時間內發布“足夠好”的軟件,指由團隊經歷了一定的軟件流程,通過全體團隊成員的努力,在一個長期階段內逐步完成的。但是在現實的團隊工作中,每個人性格不同,能力不等,如何確保團隊間的工作效率?有什么科學有效的方法可以解決這個問題?
在往后的閱讀中,我從第五章“團隊和流程”這一章中找到了答案。軟件團隊有各種形式,適用於不同的人員和需求。基於直覺形成的團隊模式未必是最合適的。其中包括蜂窩模式、主治醫師模式、明星模式、社區模式、業余劇團模式、秘密團隊、特工團隊、交響樂團模式、爵士樂模式、功能團隊模式、官僚模式。同樣一群人在一起做軟件開發,也總有一些方式方法,寫了再改模式、瀑布模型等等一系列變形模式。無論是用以上哪個模式,團隊間的相互交流,平等協作都是完成項目的基礎 -
問題二
同時書中提出軟件工程的教學和培訓目標是讓讀者通過理論學習和具體項目的練習,研發出符合用戶需求的軟件,通過實際的工作收集、推導、提煉需求,並在軟件發布后通過實際數據驗證需求的確被滿足了。那么一個項目到底要做到流程中的哪一步才算是完成了,最重點的是什么?
*本書在第六章中提出做項目的人認為“任務完成”世界開發人員認為寫完了改寫的代碼,並不代表項目已經結束,剩余的20%的長期任務才是軟件項目中對艱巨和底層的任務。在衡量開發流程是否適合當前的項目或團隊時,有以下幾個要求:- 自主管理
- 自我組織
- 多功能型
那么既然我們已經明確之后的20%工作可能要消耗我們將近80%的時間與精力,為什么不能將這部分任務在代碼部分提前完成一部分?*
-
問題三
書中提出一個軟件要有一個合理的軟件構架、軟件設計與實現,同時還要做到配置管理、質量保障、軟件測試、需求分析、軟件維護等等一系列的工作,而軟件工程是軟件的組成部分。書中對軟件工程的定義是這樣的軟件工程是把系統的、有序的、可量化的方法應用到軟件的開發、運營和維護上的過程。
軟件工程包括下列領域:軟件需求分析、軟件設計、軟件構建、軟件測試和軟件維護。人們在開發、運營、軟件維護的過程中有很對技術、做法、習慣和思想體系。軟件工程把這些相關的技術和過程統一到一個體系中叫“軟件開發流程”,其目的是為了提高軟件開發、運營、維護的效率。那么軟件工程與上學期開設的工程經濟之間究竟存在什么不同?
實驗總結
- 本次實驗的內容主要是為學習這門課程做了一定的准備工作,同時閱讀了鄒欣老師的《現代軟件工程—構建之法》對這門課程有了初步形象的認識。之前三個問題是我粗略了解這本書后提出的,可能有所欠缺,在對課程定義方面還缺少系統性的框架概念,仍需要老師在之后的理論實際課中有所提點。