天天看點

軟體工程之基礎篇軟體軟體工程結束語

完成學生管理系統和機房收費系統後,一度以為自己對軟體和軟體工程已經有了一個清晰成熟的認知。但是學習過張洪志老師關于軟體工程的教學視訊後,才認識到自己之前對軟體工程的了解還隻是停留在一個感性認知的階段。感謝張洪志老師和米老師給我提供一個系統學習軟體工程的機會! 現在首先向大家介紹我對軟體工程基礎的了解,即對軟體和軟體工程的再認識。

軟體

Mind Map

軟體工程之基礎篇軟體軟體工程結束語

什麼是軟體?

軟體是一個邏輯實體,它包括程式、資料和文檔的完整集合。通俗點講:做為計算機系統的靈魂,軟體這一邏輯實體就相當于我們的思維;而做為計算機系統實體實體的硬體,相當于我們的軀體。

軟體的特性

  • 首先,做為一種邏輯實體,一款優秀的軟體具有良好的抽象性。
  • 軟體的生産過程更多的展現的是邏輯思維的具象化,而沒有硬體生成過程中明顯的實體制造過程。
  • 在使用或者說運作階段,軟體沒有硬體的磨損和老化問題;但這并不是說軟體在使用過程中不會發生故障。

軟體的發展和分類

  • 軟體的發展

軟體過程的發展經曆了程式設計階段、程式系統階段和現在的軟體工程階段。而軟體工程主要是為了解決軟體危機,力争在系統科學的開發過程指導下,以最小的投入做出性能最優的軟體。

  • 軟體的分類

軟體的分類方式比較多,一般我們可以按照軟體的功能、規模、工作方式和服務方式等等一系列的分類标準對軟體進行分類以友善我們的學習、整理和交流。

  • 按照軟體功能進行軟體的分類

按照此種分類方式,我們可以将軟體分為支撐軟體、系統軟體和應用軟體。我個人的了解是支撐軟體是系統軟體的基礎,而系統軟體又是應用軟體的基礎。其中支撐軟體主要提供文本編輯、檔案處理、資料傳輸以及提供半智能的功能;系統軟體則為應用軟體提供必要的運作環境:作業系統、資料庫管理、裝置驅動和通信處理;而應用軟體則在支撐軟體和系統軟體的支援下,為工商農等行業的問題提供更為高效的解決方案。

至于按照其他分類方法對軟體進行分類,請大家自行檢視,我就不再贅述了。

軟體工程

軟體工程主要是為了解決軟體開發過程中的問題,提供軟體開發的科學合理的解決方案。張洪志老師的教學視訊就是對軟體工程進行詳細解讀的一份高效學習資料。

Mind Map

軟體工程之基礎篇軟體軟體工程結束語

軟體的定義和三要素

關于軟體的定義,有衆多專家提供的不同解釋,有興趣的夥伴可以自行查閱。我們完全沒有必要記住每一個定義的具體内容,隻要明白軟體工程的使命是提供軟體開發的科學合理的解決方案即可。而軟體工程的三要素分别是:方法、工具和過程。具體來講,軟體工程的方法提供了軟體開發的技術;軟體過程的工具則為軟體開發提供必要的開發環境;軟體過程的過程規範了軟體生命周期的各個階段并提供品質管理。

軟體生存期

就像我們人有人生旅程一樣,軟體同樣具有自己的生命周期。軟體的生命周期是為了以更小的投入獲得更大的産出,主要包括下面這幾個階段:制定計劃(問題分析、可行性研究)→需求分析→設計(概要設計、詳細設計)→編碼→測試(單元測試群組裝測試等)→運作&維護。

結束語

           以上就是我對軟體和軟體工程的理論方面的認識,感謝大家的寶貴時間。雖然沒有很具體的技術,但是我認為理論方面的學習也是非常必要的。一個技術如果沒有一個優秀理論的指導,這個技術的合理性和發展性就值得我們仔細推敲了。

繼續閱讀