軟件工程心得體會_第1頁
軟件工程心得體會_第2頁
軟件工程心得體會_第3頁
軟件工程心得體會_第4頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

軟件工程心得體會一:軟件工程心得體會軟件工程心得體會未接觸軟件工程之前一直都很想學這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。 學了一個學期的軟件工程課,終于知道了個軟件工程的大概。學的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經(jīng)以為程序就是軟件,軟件就是程序。學習這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件, 我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復雜化導致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團隊開發(fā), 以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。 其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設(shè)計,編碼,調(diào)試,維護,如何組織這 5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學習永無止境。起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。在劃分模塊后明確了各自分工, 漸漸形成良性循環(huán)。在學習過程中,知道了團隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達成一致與默契。團隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協(xié)調(diào),組員積極配合,才能合作愉快。學習能力體現(xiàn)在能盡快接受新的知識,順應(yīng)變化,學為所用。上《軟件工程導論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠兀可厦嬉呀?jīng)給出了一些原因。專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化 ,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。沒有管理的設(shè)計是失敗和混亂的設(shè)計,沒有設(shè)計指導的編程是無序的忙碌的。根據(jù)開發(fā)的軟件的規(guī)模,應(yīng)該適當程度的運用軟件工程化的思想, 需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。其實開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。 首先是要有一個想法,即我寫的這個程序是要干什么的; 然后就是對要實現(xiàn)的核心功能大概構(gòu)思一種或多種實現(xiàn)方法,并從中選出一種自認為是較好的; 接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和 DEBUG。在我看來,除了第一步外,其余的步驟應(yīng)該是一個循環(huán)的過程。在編碼的過程中,你總是需要不斷地回過頭來修改原先的模塊設(shè)計,甚至最初選定的實現(xiàn)算法。具體到每一步的工作要怎樣完成, 是非常靈活的,只要把握住大體的方向就行。在進行分析,設(shè)計,編碼,調(diào)試,維護這幾部分的工作的時候,最核心的就是文檔的編寫。1?可行性分析就是關(guān)于當前項目能不能干的分析結(jié)果。2?項目描述這是在決定立項以后,對當前項目的一份扼要說明。3.需求分析就是對客戶要求的功能的定義。4?軟件設(shè)計這就是對程序的每一個模塊的詳細設(shè)計的說明文檔。開發(fā)日志我一直都認為這是文檔中最有趣的部分。開發(fā)日志相當于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感, 或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動等,還要對上述這些修改變動作些說明。測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。軟件工程心得體會二:軟件工程學習心得( 3185字)在本學期的軟件工程課程的學習中, 我們學習了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、 典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對軟件工程方法進行介紹, 包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具UML。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法, 畫分層的數(shù)據(jù)流圖、E-R圖以及狀態(tài)圖式本節(jié)的重點。第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進。 第五章編碼,這一章重點講解了編碼的風格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處, 并告誡我們將來一點要形成好的編碼風格。第六章軟件測試方法, 本章講解了軟件測試相關(guān)的概念及重要性, 軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。第七章統(tǒng)一建模語言 UML概述,本章詳細介紹了UML的基本模式、事物、關(guān)系及建模時用到的各種圖進行了介紹。第八章面向?qū)ο蠓治觯@一章主要講解了面向?qū)ο蠓治龅?3種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計模式, 本章對軟件體系結(jié)構(gòu)的基本概念、 典型風格等進行了講解。第十章面向?qū)ο笤O(shè)計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進行調(diào)整和細化。第十一章軟件維護,本章主要介紹軟件維護的任務(wù)、 軟件維護活動以及軟件維護方法進行了介紹。要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則:軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達到預期功能的程度。 可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。 這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題, 它們形成了對過程、過程模型及工程方法選取的約束。軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。 軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認以及維護等活動。需求活動包括問題分析和需求分析。 問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細設(shè)計。 概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、 模塊以及相關(guān)層次的說明、每一模塊的接口定義。 詳細設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。 實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。 確認活動貫穿于整個開發(fā)過程, 實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴充、 修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。我們學習了詳細設(shè)計的方法,其原則是過程描述是否易于理解、復審和維護,進而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細設(shè)計與代碼完全一致。包括程序流程圖、 N-S圖、PAD圖、HIPO圖程序流程圖:程序流程圖又稱之為程序框圖, 它是軟件開發(fā)者最熟悉的一種算法表達工具。它獨立于任何一種程序設(shè)計語言, 比較直觀和清晰地描述過程的控制流程, 易于學習掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型; while型循環(huán);until型循環(huán);多情況型選擇。N-S圖:一種符合結(jié)構(gòu)化程序設(shè)計原則的圖形描述工具,稱為盒圖,又稱為 N-S圖。在N-S圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型; WHILE重復型;UNTIL重復型;多分支選擇型。PAD圖:它是用結(jié)構(gòu)化程序設(shè)計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。 PAD也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。HIPO圖:HIPO圖是由一組IPO圖加一張HC圖組成。它是美國IBM公司在軟件設(shè)計中使用的主要表達工具。HC圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。 HC圖中的每一個模塊,均可用一張IPO圖來描述。IPO圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入一處理一輸出三者之間的聯(lián)系。還有測試方法:按照測試過程是否在實際應(yīng)用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法) 。靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析說明書、 軟件設(shè)計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術(shù):當把程序作為一個函數(shù), 輸入的全體稱為函數(shù)的定義域, 輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學習了其他很多工具、語言、方法等,雖然不是都學得很透徹,但我相信在今后的學習中一定會慢慢的完善的。軟件工程對于初學者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、 學好軟件工程,不是僅僅把幾本專業(yè)書籍細致地看幾遍,然后上機練習幾次就可以成功, 學習過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學,肯定是什么都學不透的,要集中精力打攻堅戰(zhàn),學習軟件工程首先要明白自己的學習目標究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應(yīng)的學習方向上進行提高, 制定出詳細的學習規(guī)劃。還要注意與其他科目的相輔相成, 就像我們在學習面向?qū)ο蠓治龅臅r候要結(jié)合大一學習的面向?qū)ο蠹捌浞椒▽W這一專業(yè)科目進行研究拓展 ;在學習語言時,要看看與 C語言的聯(lián)系,多思多想,把從各個科目學到的知識通匯貫通。在軟件工程的學習中,我了解到了軟件并非是一些代碼這么簡單, 在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的 30%,而后期的管理和維護更是占了 60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進度報告,項目開發(fā)總結(jié)報告,軟件維護手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查, 而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵, 既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進行周密的策劃、 詳細的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復才能達成, 所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。而編碼的學習中,我更了解到形成自己獨特的規(guī)范的編碼風格是非常重要的事。 因為這影響到了軟件后期繁重的維護, 大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言, 那么別人怎么能讀懂你的程序?讀不懂程序, 維護又從何談起呢?所以,我們在今后的學習中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風格,即方便自己的修改,也方便日后他人的閱讀。在學習中,我們還要注意比較三種方法的優(yōu)缺點, 例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應(yīng)需求變化的方面不夠靈活, 而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計和問題求解更符合人們?nèi)粘W匀坏乃季S習慣,適合大型、復雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學習中要注意多讀書、多思考、多練習、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴散開來,應(yīng)用于今后的實踐。不斷鍛煉自己,向一名合格的程序設(shè)計師邁進。軟件工程心得體會三:軟件工程心得體會( 797字)

時間飛逝,不知不覺間《軟件工程》的學習已經(jīng)過了大半了。在這將近半學期的學習中,雖然我不能說我將《軟件工程》學習的有多么的好,但是通過學習,我還是受益良多。在以前,我一直對軟件存在一些偏見或則是誤解, 認為軟件就是程序,軟件的開發(fā)就是編寫程序,只要編完了程序,一切也就 ok了,而且我還片面的認為只要我掌握了時下最新的語言和工具,那么我就能寫程序了。一個人,只要會編程,就能寫軟件,就是程序員;一個公司,只要招聘一些程序員, 就能開發(fā)好的軟件產(chǎn)品。只要有幾個有經(jīng)驗的程序員, 再找些兼職的大學生,就能組成一個軟件公司。但是通過了《軟件工程》這門課的學習,是程序,軟件開發(fā)其實也不僅僅是編寫程序,邏輯和信息。唯有對軟件和軟件的開發(fā)過程,質(zhì)量受控的軟件產(chǎn)品。而且在以前,我一直以為軟件的開發(fā)其實旁敲敲鍵盤,那么一切就可以了,曰些兼職的大學生,就能組成一個軟件公司。但是通過了《軟件工程》這門課的學習,是程序,軟件開發(fā)其實也不僅僅是編寫程序,邏輯和信息。唯有對軟件和軟件的開發(fā)過程,質(zhì)量受控的軟件產(chǎn)品。而且在以前,我一直以為軟件的開發(fā)其實旁敲敲鍵盤,那么一切就可以了,曰是但是現(xiàn)在我才發(fā)現(xiàn),使我認識到了我以前的錯誤。軟件其實不僅僅軟件是思想在硬件上的載體和體現(xiàn),處理的是有充分的認識,才能更好的開發(fā)出,過程受控、一件很輕松快樂的事情, 只要一天坐在電腦我以前的很多的思想是多么的膚淺可笑。編程其實是一種樂趣和苦惱共存的一項創(chuàng)造性活動。 因為編程不僅能夠滿足我們內(nèi)心深處進行創(chuàng)造的渴望,而且還能愉

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論