201971010157-張穎 實驗一 軟體工程準備-帶著問題學習軟體工程
專案 | 內容 |
課程班級部落格連線 | 2019級卓越班 |
作業要求連線 | 實驗一 軟體工程準備 |
我的課程學習目標 |
(1)瞭解並實際使用部落格園,認識到部落格園的強大之處,有非常有用的知識,並且可以和其他人一起互動和討論,能學到很多內容 (2)學會使用Github,完成對程式碼的儲存、管理、跟蹤、記錄及對程式碼的修改 |
這個作業在哪些方面幫助我實現學習目標 |
(1)作業清晰的步驟和對我的每一步引導 (2)通過自己的動手實踐去解決問題 |
正文:
任務1:已提交課程調查問卷
任務2:已在部落格園平臺註冊個人部落格賬號及加入班級部落格
任務3:已完成Github賬號的註冊
- Github的基礎操作:
① 在搜尋框中搜索需要的資源,會搜尋出來一些倉庫,如user:使用者名稱(查詢某一個人的倉庫)、language:python(查詢使用特定語言的倉庫);
② 建立一個新的倉庫-在頁面的最右上角,頭像的左邊,點選“+”,在彈出的下拉選項中選擇“New repository”,在倉庫名稱輸入框中輸入倉庫名稱:“hello-world”,再寫一個簡短的描述,勾選“Initialize this repository with a README”。
③ 建立一個分支-分支是一個可以讓你在同一時間工作在同一個倉庫的不同版本的方法。在倉庫中會有一個預設的名叫“master”的主分支,該分支用來儲存最終確定的版本程式碼。可以用其他的子分支來進行編輯和更改,確定之後再提交到主分支。當我從主分支創建出一個子分支的那一刻,其實就是對當時時間點的主分支做了一個拷貝。如果之後別的分支的人對主分支做出了更新,在提交到主分支之前,必須先從主分支上拉取那些更新。
- 使用Github託管專案的步驟:
①安裝上傳工具msysgit
②將自己寫好的專案上傳到github-建立倉庫:點選New repository,輸入倉庫名
③複製這個倉庫的地址
④來到專案的根目錄,滑鼠右擊空白地方,點選Git Bash Here
⑤輸入git clone+複製的地址,回車
⑥專案目錄下會有一個新的資料夾(剛剛建立的倉庫名字)
⑦選中除了這個資料夾之外的檔案,全部複製到這個資料夾裡面去
⑧輸入cd+資料夾名稱,回車進入該倉庫的根目錄目錄
⑨輸入git add. 將這些檔案新增到本地的倉庫
⑩輸入git commit -m "本次提交的說明資訊"
⑪輸入git push -u origin master,會彈框提示輸入使用者名稱,點選ok,提示輸入密碼,點選ok,上傳完畢。可以開啟github點選剛剛建立的倉庫,就看到專案都在裡面。
⑫輸入exit可以退出msysgit
任務4:已完成部落格園、github賬號資訊的填寫
任務5:初次接觸了軟體工程這門學科,有3個準備從課程學習中找到答案的問題
- 問題1-軟體工程的基本內容有哪些?目標是什麼?開發方法有什麼?
軟體工程的基本內容有:軟體工程原理、軟體工程過程、軟體工程方法、軟體工程模型、軟體工程管理、軟體工程度量、軟體工程環境、軟體工程應用、軟體工程開發使用;
軟體工程的目標是:在給定成本、進度的前提下,開發出具有適用性、有效性、可修改性、可靠性、可理解性、可維護性、可重用性、可移植性、可追蹤性、可互操作性和滿足使用者需求的軟體產品。追求這些目標有助於提高軟體產品的質量和開發效率,減少維護的困難。
軟體工程的開發方法有:包括專案管理,分析,設計,程式的編寫,測試和質量控制。軟體設計方法可以區別為重量級的方法和輕量級的方法。重量級的方法中產生大量的正式文件。著名的重量級開發方法包括ISO9000,CMM,和統一軟體開發過程(RUP)。輕量級的開發過過程沒有對大量正式文件的要求。著名的輕量級開發方法包括極限程式設計(XP)和敏捷流程(AgileProcesses)。
- 問題2-軟體行業賴以生存的“軟體”,程式設計師用來安身立命的“程式”到底是什麼?
鄒欣老師的《現代軟體工程——構建之法》中提到,程式,在這裡指的是源程式,就是一行行程式碼。它們是建立在資料結構上的一些演算法。程式還要對資料進行操作,這些資料有些是靜態的,有些是動態的。但是光有程式碼和靜態資料還不行,工程師要把它們構建為機器能懂的可執行程式碼。構建不僅僅是cc和link命令,一個複雜的軟體不但要有合理的軟體架構、軟體設計與實現,還要有各種檔案和資料來描述各個程式檔案之間的依賴關係、編譯引數、連結引數,等等。這些都構建的過程。
- 問題3-軟體工程詳細設計的基本任務和步驟是什麼?
詳細設計的主要任務是設計每個模組的實現演算法、所需的區域性資料結構。詳細設計的目標有兩個:實現模組功能的演算法要邏輯上正確和演算法描述要簡明易懂。基本任務就是確定應該怎樣具體的實現所要求的系統,也就是說,經過這個階段的設計工作,應該得出對目標系統的精確描述,從而在編碼階段把這個描述直接翻譯成某種程式設計語言書寫的程式。
詳細設計的步驟有待課程中學習。