心得體會是一種積累和沉淀,通過不斷地總結反思,我們可以積累寶貴的經(jīng)驗,并將其轉(zhuǎn)化為行動力和改進能力。在撰寫心得體會時,可以從自己的感受、思考和改進方面進行展開。這些是我在總結過程中找到的一些優(yōu)秀范文,供大家參考。
軟件工程課程心得體會篇一
學習了這門課程, 還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實例,讓理論和實踐得到了很好的結合。整一個學期下來,總的來說還是學到了很多東西的,有很多地方是值得肯定的,其實在我看來,軟件工程與其說是一門課程,不如說是一門思想。是一個如何去分析和處理問題的過程,應該說其范疇已經(jīng)遠遠不止局限于該門課程,成為了一個綜合的一個能夠解決問題的思想集合。
要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則: 軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達到預期功能的程度。
可用性指軟件基本結構、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。它們覆蓋了需求、設計、實現(xiàn)、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟件系統(tǒng)結構,包括子系統(tǒng)、模塊以及相關層次的說明、每一模塊的接口定義。詳細設計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結構說明及加工描述。實現(xiàn)活動把設計結果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。 軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
pad圖:它是用結構化程序設計思想表現(xiàn)程序邏輯結構的圖形工具。pad也設置了五種基本控制結構的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設計中使用的主要表達工具。hc圖既是層次圖,用于表示軟件的分層結構。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo 圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入處理輸出三者之間的聯(lián)系。還有測試方法:按照測試過程是否在實際應用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。靜態(tài)分析技術:不執(zhí)行被測軟件,可對需求分析說明書、軟件設計說明書、源程序做結構檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術:當把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關系。還學習了其他很多工具、語言、方法等,雖然不是都學得很透徹,但我相信在今后的學習中一定會慢慢的完善的。
軟件工程對于初學者來說,知識基礎較薄弱,對一些應用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學好軟件工程,不是僅僅把幾本專業(yè)書籍細致地看幾遍,然后上機練習幾次就可以成功,學習過程中要注意多看多練要注意結合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學,肯定是什么都學不透的,要集中精力打攻堅戰(zhàn),學習軟件工程首先要明白自己的學習目標究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應的學習方向上進行提高,制定出詳細的學習規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學習面向?qū)ο蠓治龅臅r候要結合大一學習的面向?qū)ο蠹捌浞椒▽W這一專業(yè)科目進行研究拓展;在學習語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學到的知識通匯貫通。
在軟件工程的學習中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設計說明書,詳細設計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進度報告,項目開發(fā)總結報告,軟件維護手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進行周密的策劃、詳細的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復才能達成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學習中,我更了解到形成自己獨特的規(guī)范的編碼風格是非常重要的事。因為這影響到了軟件后期繁重的維護,大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護又從何談起呢所以,我們在今后的學習中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎上形成屬于自己的風格,即方便自己的修改,也方便日后他人的閱讀。
在學習中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結合。而面向?qū)ο蠓椒ǖ某绦蛟O計和問題求解更符合人們?nèi)粘W匀坏乃季S習慣,適合大型、復雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學習中要注意多讀書、多思考、多練習、多討論,不斷熟悉書本的基礎,并以此為基礎將其擴散開來,應用于今后的實踐。不斷鍛煉自己,向一名合格的程序設計師邁進。
軟件工程課程心得體會篇二
對于一個軟件系統(tǒng)的開發(fā),第一步就是問題定義,了解所開發(fā)系統(tǒng)的行業(yè)背景,制定計劃。當我們計劃確定以后就要對項目系統(tǒng)本身進行可行性研究,主要從技術可行性、經(jīng)濟可行性和操作可行性三個方面著手。就比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的行業(yè)背景說明文檔中非常詳細地分析了當下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務說明、應用背景、未來發(fā)展趨勢以及相關應用案例等四個方面,項目團隊中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關的調(diào)查資料對將要開發(fā)系統(tǒng)的進行定義等工作。
原來我們寫這類文檔的時候就是草草了事,不會做得這么詳細,而這次看到大型項目的行業(yè)背景說明也是這么詳細,也讓自己認識到不管是軟件開發(fā)的那個階段都要認真對待,這些瑣碎的文檔都是后期開發(fā)項目的支撐,只要它們做的透徹,后面的開發(fā)工作才能更順利的進行。
第二、項目需求說明方面
這部分項目需求說明就是軟件定義時期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據(jù)用戶的需要確定系統(tǒng)必須完成那些工作,并對目標系統(tǒng)提出完整、準確、清晰、具體的要求。在需求分析結束之前系統(tǒng)分析人員要寫出一份需求規(guī)格說明,即為《物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)》項目需求說明文檔。我們可以看出該文檔也是非常詳細,相比之下我們之前做項目時寫的需求規(guī)格說明書就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來它不是很重要,寫文檔的時候也不知道怎么寫就借鑒下網(wǎng)上的內(nèi)容,結果根本就沒有把自己項目的需求寫明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗教訓我會對這部分更加重視。
第三、系統(tǒng)概要設計方面
這部分內(nèi)容分說的是軟件設計時期的概要設計階段,該階段的主要目的就是實現(xiàn)系統(tǒng)的功能、設計軟件的結構、模塊組成以及模塊之間的關系。在概要設計階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對比多種可能的系統(tǒng)實現(xiàn)方案和軟件結構,從中選出最佳方案和最合理的結構。在這個階段還會具體畫出e-r圖、數(shù)據(jù)流圖等方面的設計。
比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的系統(tǒng)概要設計從項目概述、設計約束、功能單元與功能模塊設計、數(shù)據(jù)e-r圖設計、總體設計、界面設計等六個方面介紹,通過讀這個文檔,我覺得最重要的還是總體設計,分別從邏輯架構設計、物理架構設計、技術架構設計設計系統(tǒng)。在這個階段中模塊要做到高內(nèi)聚低耦合,這樣開發(fā)出來的系統(tǒng)才會具有更高的獨立性。
在原來做項目時沒有編寫過這類文檔,在該階段只是畫了結構圖、層次圖以及相關的模塊劃分,對該類文檔尚未重視。通過張老師的講解和自己的學習,我相信在以后做項目的時候一定會注意到這類文檔的編寫。
第四、詳細設計與分析方面
詳細設計階段就是把概要設計階段的每個模塊進一步設計,確定每個模塊所需要的算法和數(shù)據(jù)結構。在這個階段還是需要我們設計出程序的詳細規(guī)格說明,而不是編寫程序。在詳細設計階段,系統(tǒng)設計人員可以通過使用程序流程圖、盒圖、pad圖等過程設計的工具和jackson圖等面向數(shù)據(jù)結構的設計工具進一步設計系統(tǒng)相關接口,主要包括界面設計接口、業(yè)務單設計接口、單元模塊設計接口等,這些對于以后的編碼工作都是極其重要的。
第五、編碼和測試方案方面
關于編碼,我認為編碼要想做的完美必備條件就是前面的軟件定義和軟件設計時期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對于編碼也要有相應的文檔書寫規(guī)范,要使源程序代碼的邏輯簡明清晰、易讀易懂。這樣盡管我們不是設計系統(tǒng)的人員,當看到源程序代碼的時候也能容易讀懂代碼的意思。
其次就是測試的內(nèi)容,從測試的文檔中我們可以得出,其實測試在軟件開發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問題并排除其中的潛藏的錯誤,最終把一個高質(zhì)量的軟件系統(tǒng)交給用戶使用。它要求測試人員也要有很高的技術水平。
軟件工程課程心得體會篇三
在本學期的軟件工程課程的學習中,我們學習了十一章的內(nèi)容。
第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。
第二章軟件工程方法與工具,這一章主要對軟件工程方法進行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒ā⑿问交椒ā?/p>
還引出了工具uml。
第三章軟件需求獲取與結構化分析方法,本章詳細介紹了需求獲取與需求分析階段的任務以及結構化分析方法,畫分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點。
第四章結構化分析方法,這一章重點講解了使用變換型映射方法和事務型映射方法生成初始的模塊結構以及模塊結構的改進。
第五章編碼,這一章重點講解了編碼的風格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風格。
第六章軟件測試方法,本章講解了軟件測試相關的概念及重要性,軟件測試與開發(fā)各個階段的關系;還介紹了白盒測試技術以及黑河測試技術。
第七章統(tǒng)一建模語言uml概述,本章詳細介紹了uml的基本模式、事物、關系及建模時用到的各種圖進行了介紹。
第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。
第九章軟件體系結構與設計模式,本章對軟件體系結構的'基本概念、典型風格等進行了講解。
第十章面向?qū)ο笤O計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進行調(diào)整和細化。
第十一章軟件維護,本章主要介紹軟件維護的任務、軟件維護活動以及軟件維護方法進行了介紹。
要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則:軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達到預期功能的程度。
可用性指軟件基本結構、實現(xiàn)及文檔為用戶可用的程度。
開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。
這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。
軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。
它們覆蓋了需求、設計、實現(xiàn)、確認以及維護等活動。
需求活動包括問題分析和需求分析。
問題分析獲取需求定義,又稱軟件需求規(guī)約。
需求分析生成功能規(guī)約。
設計活動一般包括概要設計和詳細設計。
概要設計建立整個軟件系統(tǒng)結構,包括子系統(tǒng)、模塊以及相關層次的說明、每一模塊的接口定義。
詳細設計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結構說明及加工描述。
實現(xiàn)活動把設計結果轉(zhuǎn)換為可執(zhí)行的程序代碼。
確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。
維護活動包括使用過程中的擴充、修改與完善。
伴隨以上過程,還有管理過程、支持過程、培訓過程等。
軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
我們學習了詳細設計的方法,其原則是過程描述是否易于理解、復審和維護,進而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細設計與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達工具。
它獨立于任何一種程序設計語言,比較直觀和清晰地描述過程的控制流程,易于學習掌握。
軟件工程課程心得體會篇四
軟件工程心得體會未接觸軟件工程之前一直都很想學這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。學了一個學期的軟件工程課,終于知道了個軟件工程的大概。學的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經(jīng)以為程序就是軟件,軟件就是程序。學習這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復雜化導致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設計,編碼,調(diào)試,維護,如何組織這5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學習永無止境。起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學習過程中,知道了團隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達成一致與默契。團隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協(xié)調(diào),組員積極配合,才能合作愉快。學習能力體現(xiàn)在能盡快接受新的知識,順應變化,學為所用。
上《軟件工程導論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠兀可厦嬉呀?jīng)給出了一些原因。專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。沒有管理的設計是失敗和混亂的設計,沒有設計指導的編程是無序的忙碌的。根據(jù)開發(fā)的軟件的規(guī)模,應該適當程度的運用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構思一種或多種實現(xiàn)方法,并從中選出一種自認為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。在我看來,除了第一步外,其余的步驟應該是一個循環(huán)的過程。在編碼的'過程中,你總是需要不斷地回過頭來修改原先的模塊設計,甚至最初選定的實現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進行分析,設計,編碼,調(diào)試,維護這幾部分的工作的時候,最核心的就是文檔的編寫。
1、可行性分析就是關于當前項目能不能干的分析結果。
2、項目描述這是在決定立項以后,對當前項目的一份扼要說明。
3、需求分析就是對客戶要求的功能的定義。
4、軟件設計這就是對程序的每一個模塊的詳細設計的說明文檔。
5、開發(fā)日志我一直都認為這是文檔中最有趣的部分。開發(fā)日志相當于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y構的一些微小變動等,還要對上述這些修改變動作些說明。
6、測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。
軟件工程課程心得體會篇五
時間過的很快,轉(zhuǎn)眼間已經(jīng)實習將近5個月,其中有2個月是屬于完全被流放的。最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開發(fā)(struts+mysql+spring+hibernate),之后是去做網(wǎng)絡交換機軟件的腳本測試?,F(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測試經(jīng)驗。
至少自己做的東西,是真正交付到了客戶手上,到也稍微有些成就感。
1、淺談測試
一直以來,我都認為測試是脫離了軟件工程范圍的工作,不以為屑。但在實際情況中,測試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責任在你,而不在于編碼人員。一般的測試人員不懂編碼,他們靠的是日以累計的經(jīng)驗總結和想象力。而要做到高級測試工程師,則一定要懂編碼,因為這是你完全掌握整個系統(tǒng)的方方面面具體運作的前提。但占主導地位的,還是大型系統(tǒng)的集成測試經(jīng)驗。實際項目中,編碼時間一般只占30%左右,真正耗費時間的是it階段的找bug與對應bug,此階段基本評定了coder的編碼質(zhì)量。
2、程序員的困惑
有些人,以為教學視頻和代碼看多,自己就懂的多,實際做起來,卻不知從何下手,
有位同事告訴我:代碼看幾遍都沒用,要去抄,例如一個查詢模塊,在此基礎上去做具體記錄的歷史記錄查詢模塊,你可能會覺得很簡單,但實際情況卻往往報一堆異常,配置問題涉及到方方面面,以及數(shù)據(jù)庫字段,傳值問題等等,一大堆對于新人來說很郁悶的問題。但不用怕,只要學會調(diào)試,一個個問題去追蹤,一個個去解決,自然而然,那段“源碼”才真正屬于你。
3、如何調(diào)試追蹤
如果你能在短短的時間內(nèi)就看到問題點在那,放下斷點去追蹤,出去找工作,絕對沒問題。出現(xiàn)問題的時候,不要光看代碼,要用實際行動去追蹤運行期間的具體值,那是最好途徑。eclipse是個很爽的ide,這點做的很好。例如頁面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫查詢語句去下手,設置斷點,一步一步stepover,讓sql字段(存取最終sql語句的字符串)運行到有值,inspect進去看,如果還看不出來,就點擊它,copy后在sql客戶端去實際運行,看看實際查詢出來的表是什么,如果是對的,有可能就是頁面調(diào)用的錯誤或者action邏輯的傳值問題。
頁面錯誤的調(diào)試,基本方法是用右鍵點擊實際網(wǎng)頁查看源代碼,copy到editplus,就能看到具體錯誤發(fā)生在那幾行。通常有幾種常見的錯誤,例如:缺少對象這種很多時候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(xxx=null)語句加保護。追蹤的方法基本就是用alert語句,放在有可能出錯的地方。
4、一些習慣
遇到問題先自己思考,無從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會了,不然你一輩子都停留在那種水平,從人身上學到的東西遠遠比書多的多。
解決了一個問題后,要去究根問底去找到問題產(chǎn)生的起因,以防你下次遇到類似的問題再浪費同樣的時間。
把代碼寫的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過一個高手寫的代碼,真的一看就是不同水平的人寫的,幾乎很完美,讀起來很流暢,方便自己也方便別人。
任務完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務,只要你肯去嘗試,他們就會對你另言相看,把三天的任務一天加班搞定,效率和忠誠都有了,路也比較好走了。
[]
軟件工程課程心得體會篇六
在本學期的軟件工程課程的學習中,我們學習了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對軟件工程方法進行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結構化分析方法,本章詳細介紹了需求獲取與需求分析階段的任務以及結構化分析方法,畫分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點。第四章結構化分析方法,這一章重點講解了使用變換型映射方法和事務型映射方法生成初始的模塊結構以及模塊結構的改進。第五章編碼,這一章重點講解了編碼的風格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風格。第六章軟件測試方法,本章講解了軟件測試相關的概念及重要性,軟件測試與開發(fā)各個階段的關系;還介紹了白盒測試技術以及黑河測試技術。第七章統(tǒng)一建模語言uml概述,本章詳細介紹了uml的基本模式、事物、關系及建模時用到的各種圖進行了介紹。第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。第九章軟件體系結構與設計模式,本章對軟件體系結構的基本概念、典型風格等進行了講解。第十章面向?qū)ο笤O計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進行調(diào)整和細化。第十一章軟件維護,本章主要介紹軟件維護的任務、軟件維護活動以及軟件維護方法進行了介紹。
要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則:軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達到預期功能的程度??捎眯灾杠浖窘Y構、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。它們覆蓋了需求、設計、實現(xiàn)、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟件系統(tǒng)結構,包括子系統(tǒng)、模塊以及相關層次的說明、每一模塊的接口定義。詳細設計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結構說明及加工描述。實現(xiàn)活動把設計結果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。
軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達工具。它獨立于任何一種程序設計語言,比較直觀和清晰地描述過程的控制流程,易于學習掌握。在流程圖中只能使用下述的五種基本控制結構:順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n-s圖:一種符合結構化程序設計原則的圖形描述工具,稱為盒圖,又稱為n-s圖。在n-s圖中,為了表示五種基本控制結構,規(guī)定了五種圖形構件。順序型;選擇型;while重復型;until重復型;多分支選擇型。
pad圖:它是用結構化程序設計思想表現(xiàn)程序邏輯結構的圖形工具。pad也設置了五種基本控制結構的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設計中使用的主要表達工具。
hc圖既是層次圖,用于表示軟件的分層結構。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測試方法:按照測試過程是否在實際應用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。
靜態(tài)分析技術:不執(zhí)行被測軟件,可對需求分析
說明書
、軟件設計說明書、源程序做結構檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術:當把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關系。
還學習了其他很多工具、語言、方法等,雖然不是都學得很透徹,但我相信在今后的學習中一定會慢慢的完善的。
軟件工程對于初學者來說,知識基礎較薄弱,對一些應用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學好軟件工程,不是僅僅把幾本專業(yè)書籍細致地看幾遍,然后上機練習幾次就可以成功,學習過程中要注意多看多練要注意結合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學,肯定是什么都學不透的,要集中精力打攻堅戰(zhàn),學習軟件工程首先要明白自己的學習目標究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應的學習方向上進行提高,制定出詳細的學習規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學習面向?qū)ο蠓治龅臅r候要結合大一學習的面向?qū)ο蠹捌浞椒▽W這一專業(yè)科目進行研究拓展;在學習語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學到的知識通匯貫通。
在軟件工程的學習中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設計說明書,詳細設計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進度報告,項目開發(fā)總結報告,軟件維護手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進行周密的策劃、詳細的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復才能達成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學習中,我更了解到形成自己獨特的規(guī)范的編碼風格是非常重要的事。因為這影響到了軟件后期繁重的維護,大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護又從何談起呢?所以,我們在今后的學習中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎上形成屬于自己的風格,即方便自己的修改,也方便日后他人的閱讀。
在學習中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結合。而面向?qū)ο蠓椒ǖ某绦蛟O計和問題求解更符合人們?nèi)粘W匀坏乃季S習慣,適合大型、復雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學習中要注意多讀書、多思考、多練習、多討論,不斷熟悉書本的基礎,并以此為基礎將其擴散開來,應用于今后的實踐。不斷鍛煉自己,向一名合格的程序設計師邁進。
共
2
頁,當前第2
頁1
2
軟件工程課程心得體會篇七
曾經(jīng)看過一本書叫《道法自然》,內(nèi)容略記得一二,但我最欣賞的是它的.書名。軟件設計沒什么太神秘有東西,只要用心體會,其實一切都很自然。軟件的設計之“道”,也不在于設計有多么的華麗、精巧,而在于其樸實、自然,最終達到“以無招勝有招”,進入一個全新的境界。
一、軟件設計理論的層次
以我的拙見,軟件設計領域中的各種概念,可以分為以下幾個層次來進行理解:
1、軟件設計的目的:重用性、擴展性。
這是最高的層次,是應對軟件危機的需要。
2、設計原則:低耦合、高聚合。
各種軟件設計的原則,如依賴倒置原則、單一職則原則、面向接口等,以及各種設計模式,其根本的目的其實只是為了降低耦合這么簡單。因為只有低耦合才能更好的適應變化,更好的重用和擴展。
3、實現(xiàn)方法:運用設計模式封裝變化、降低耦合。
設計模式只是用來“封裝變化、降低耦合”的工具而已。它是面向?qū)ο笤O計時代的產(chǎn)物,其本質(zhì)就是充分運用面向?qū)ο蟮娜齻€特性,即:封裝、繼承和多態(tài),進行靈活的組合運用。
二、關于耦合
1、耦合的粒度
耦合無論如何也是不可避免的。當我們實現(xiàn)接口、繼承父類的時候,就會不可避免的產(chǎn)生耦合。耦合是有不同粒度的,我們解耦到什么粒度為止,我認為應以模塊的重用粒度為準。盡量解除重用模塊或?qū)ο笾g的耦合。而重用模塊之內(nèi)的耦合,應屬于聚合的范疇,所以不要盲目的去解耦,否則就陷入了誤區(qū)。
2、解耦的原理
怎樣才能解耦呢,或者說為什么各種設計模式能達到解耦的目的呢?我覺得有以下幾個思路:
(1)將具體的東西抽象處理
(2)將分散的東西集中處理
而面向?qū)ο笾械慕涌?、繼承正為我們提供了這樣的一種機制。通過訪問接口或基類或抽象類,而不是具體的實現(xiàn)類,從而與具體的實現(xiàn)類達到了解耦的目的。我們還可以設計一些控制類,像潤滑劑一樣,協(xié)調(diào)各實現(xiàn)類之間的訪問,也可以達到耦的目的。
事實上,各種設計模式的基本思想也就是這樣。創(chuàng)建型模式是為了解除創(chuàng)建對象時產(chǎn)生的耦合,實際上是解除對類稱名的依賴,而結構型和行為型是為了解除對象屬性或方法的直接調(diào)用。不管什么設計模式,都是將對具體實現(xiàn)類的訪問提升為對接口、基類或用于協(xié)調(diào)的控制類的訪問。
三、關于接口
這一節(jié)更具體,談一談接口,因為使用接口是軟件設計的重要手段,但已經(jīng)不屬于“道”了。
1、接口與繼承
接口描述的是對象某一個方面行為特征。使用接口與使用繼承關系各有優(yōu)缺點,使用子類繼承可以繼承父類的功能,體現(xiàn)了重用的精神。而接品更加靈活,因為它解除了子類與父類之間的高度耦合,它體現(xiàn)在靈活擴展的精神。
2、接口與純虛類
接口存在的理由就是它更加靈活,關系簡單,易于理解。比如一個類可以實現(xiàn)十幾個甚至幾十個接口,但一般開發(fā)工具只支持單繼承(由于多繼承太容易導致混亂和沖突),如果要繼承十幾層,系統(tǒng)結構想必會無法理解了,我以為這是接口存在的最重要的原因。
如果接口和虛類繼承結合使用,可以產(chǎn)生強大的威力,這也是許多設計模式的“殺手锏”。
以上算是總結一下自己的心得。肯定有不少片面之處,請各位指教。
軟件工程課程心得體會篇八
軟件工程,就是一套用于軟件的團隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。你知道軟件工程
心得體會
是什么嗎?接下來就是本站小編為大家整理的關于軟件工程心得體會,供大家閱讀!時間飛逝,不知不覺間《軟件工程》的學習已經(jīng)過了大半了。在這將近半學期的學習中,雖然我不能說我將《軟件工程》學習的有多么的好,但是通過學習,我還是受益良多。
在以前,我一直對軟件存在一些偏見或則是誤解,認為軟件就是程序,軟件的開發(fā)就是編寫程序,只要編完了程序,一切也就ok了,而且我還片面的認為只要我掌握了時下最新的語言和工具,那么我就能寫程序了。一個人,只要會編程,就能寫軟件,就是程序員;一個公司,只要招聘一些程序員,就能開發(fā)好的軟件產(chǎn)品。只要有幾個有經(jīng)驗的程序員,再找些兼職的大學生,就能組成一個軟件公司。
但是通過了《軟件工程》這門課的學習,使我認識到了我以前的錯誤。軟件其實不僅僅是程序,軟件開發(fā)其實也不僅僅是編寫程序,軟件是思想在硬件上的載體和體現(xiàn),處理的是邏輯和信息。唯有對軟件和軟件的開發(fā)過程,有充分的認識,才能更好的開發(fā)出,過程受控、質(zhì)量受控的軟件產(chǎn)品。
而且在以前,我一直以為軟件的開發(fā)其實是一件很輕松快樂的事情,只要一天坐在電腦旁敲敲鍵盤,那么一切就可以了,但是現(xiàn)在我才發(fā)現(xiàn),我以前的很多的思想是多么的膚淺可笑。編程其實是一種樂趣和苦惱共存的一項創(chuàng)造性活動。因為編程不僅能夠滿足我們內(nèi)心深處進行創(chuàng)造的渴望,而且還能愉悅我們內(nèi)在的情感。
而且通過學習《軟件工程》,我還學到了很多其他的東西。比如通過學習《軟件工程》,特別是老師每次用實際的軟件現(xiàn)場的講解,為我提供了一個盡早接觸世界工作和真實項目的機會。讓我知道如何在以最小的成本中,訓練自己的基本工程素質(zhì)和能力,如何激發(fā)自己的積極性等。而且通過學習《軟件工程》,還讓我認識和培養(yǎng)了我的團隊協(xié)作能力,特別是對于我們這些在校的學生來說,這種學習更是能讓我在以后工作中少走很多的彎路。
所以,通過《軟件工程》的學習,我是真的學習到了很多有用的東西,讓我明白了很多的道理。在此我對老師的辛勤教育表示感謝,因為是你讓我學習到了這些,是我獲益良多。
軟件工程心得體會未接觸軟件工程之前一直都很想學這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。學了一個學期的軟件工程課,終于知道了個軟件工程的大概。學的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經(jīng)以為程序就是軟件,軟件就是程序。學習這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復雜化導致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設計,編碼,調(diào)試,維護,如何組織這5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學習永無止境。起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學習過程中,知道了團隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達成一致與默契。團隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協(xié)調(diào),組員積極配合,才能合作愉快。學習能力體現(xiàn)在能盡快接受新的知識,順應變化,學為所用。
上《軟件工程導論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。沒有管理的設計是失敗和混亂的設計,沒有設計指導的編程是無序的忙碌的。根據(jù)開發(fā)的軟件的規(guī)模,應該適當程度的運用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構思一種或多種實現(xiàn)方法,并從中選出一種自認為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。在我看來,除了第一步外,其余的步驟應該是一個循環(huán)的過程。在編碼的過程中,你總是需要不斷地回過頭來修改原先的模塊設計,甚至最初選定的實現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進行分析,設計,編碼,調(diào)試,維護這幾部分的工作的時候,最核心的就是文檔的編寫。1.可行性分析就是關于當前項目能不能干的分析結果。
2.項目描述這是在決定立項以后,對當前項目的一份扼要說明。
3.需求分析就是對客戶要求的功能的定義。
4.軟件設計這就是對程序的每一個模塊的詳細設計的說明文檔。
5.開發(fā)日志我一直都認為這是文檔中最有趣的部分。開發(fā)日志相當于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y構的一些微小變動等,還要對上述這些修改變動作些說明。
6.測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。
共
2
頁,當前第1
頁1
2
軟件工程課程心得體會篇九
軟件工程師(系統(tǒng)分析工程師)
第一學期:程序員入門課程
(1)教學內(nèi)容:(2)課程目標:
程序員(3)掌握的技能:
先學習進入軟件編程世界,才能夠具備計算機java語言學習的基礎;使用java語言理解程序邏輯,進行簡單編程(4)課程主要的知識點:
熟悉計算機軟件的基礎知識理解程序邏輯、基本算法核心技能:用java開發(fā)c/s結構的管理信息系統(tǒng)(5)教學方式:
理論課實驗課綜合案例課分析課設計課評測課復習課以完成項目為目標的教學方法。以學員為主體的教學方法。(6)就業(yè)崗位:
java初級程序員,簡單的管理系統(tǒng)開發(fā)和維護
將本文的word文檔下載到電腦,方便收藏和打印
推薦度:
點擊下載文檔
搜索文檔
軟件工程課程心得體會篇十
學習了這門課程,還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實例,讓理論和實踐得到了很好的結合。整一個學期下來,總的來說還是學到了很多東西的,有很多地方是值得肯定的,其實在我看來,軟件工程與其說是一門課程,不如說是一門思想。是一個如何去分析和處理問題的過程,應該說其范疇已經(jīng)遠遠不止局限于該門課程,成為了一個綜合的一個能夠解決問題的思想集合。
要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則:軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達到預期功能的程度。
可用性指軟件基本結構、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。它們覆蓋了需求、設計、實現(xiàn)、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟件系統(tǒng)結構,包括子系統(tǒng)、模塊以及相關層次的說明、每一模塊的接口定義。詳細設計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結構說明及加工描述。實現(xiàn)活動把設計結果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
pad圖:它是用結構化程序設計思想表現(xiàn)程序邏輯結構的圖形工具。pad也設置了五種基本控制結構的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設計中使用的主要表達工具。hc圖既是層次圖,用于表示軟件的分層結構。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入處理輸出三者之間的聯(lián)系。還有測試方法:按照測試過程是否在實際應用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。靜態(tài)分析技術:不執(zhí)行被測軟件,可對需求分析說明書、軟件設計說明書、源程序做結構檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術:當把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關系。還學習了其他很多工具、語言、方法等,雖然不是都學得很透徹,但我相信在今后的學習中一定會慢慢的完善的。
軟件工程對于初學者來說,知識基礎較薄弱,對一些應用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學好軟件工程,不是僅僅把幾本專業(yè)書籍細致地看幾遍,然后上機練習幾次就可以成功,學習過程中要注意多看多練要注意結合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學,肯定是什么都學不透的,要集中精力打攻堅戰(zhàn),學習軟件工程首先要明白自己的學習目標究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應的學習方向上進行提高,制定出詳細的學習規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學習面向?qū)ο蠓治龅臅r候要結合大一學習的面向?qū)ο蠹捌浞椒▽W這一專業(yè)科目進行研究拓展;在學習語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學到的知識通匯貫通。
在軟件工程的學習中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設計說明書,詳細設計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進度報告,項目開發(fā)總結報告,軟件維護手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進行周密的策劃、詳細的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復才能達成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學習中,我更了解到形成自己獨特的規(guī)范的編碼風格是非常重要的事。因為這影響到了軟件后期繁重的維護,大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護又從何談起呢所以,我們在今后的學習中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎上形成屬于自己的風格,即方便自己的修改,也方便日后他人的閱讀。
在學習中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結合。而面向?qū)ο蠓椒ǖ某绦蛟O計和問題求解更符合人們?nèi)粘W匀坏乃季S習慣,適合大型、復雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學習中要注意多讀書、多思考、多練習、多討論,不斷熟悉書本的基礎,并以此為基礎將其擴散開來,應用于今后的實踐。不斷鍛煉自己,向一名合格的程序設計師邁進。
軟件工程課程心得體會篇十一
我也是學軟件的!
你看看我們學的東西吧!
都是必修的!
c/c++,數(shù)據(jù)結構,離散數(shù)學,匯編語言,現(xiàn)代操作系統(tǒng),結構化計算機組成,c#語言,java語言(選修),數(shù)據(jù)庫原理,算法分析與設計,編譯原理,uml,軟件工程,軟件需求工程,計算機網(wǎng)絡,還有什么呢?
我們的教材除了“匯編語言設計”和編譯原理,都是英文原版的,學的時候很辛苦!因為拿兩門課更難!
如果樓主對計算機沒有什么興趣,還是學點別的吧!個人感覺很累!可能是我們還有其他的課程,想什么高等數(shù)學,線性代數(shù)等等之類的,很累!
一.填志愿,學校為先還是專業(yè)為先?
一本院校里有名校、一般重點大學,學校之間的層次和教育資源配置,還是有較大差異的。在一本院校中,選學??赡芨匾恍W校的品牌對學生未來就業(yè)會產(chǎn)生一定影響。如果你進了名校,但沒能進入自己最喜愛的專業(yè),你還可以通過輔修專業(yè)等方式,來完善學科知識結構。而且,如今大學生就業(yè)專業(yè)對口的比例越來越小了,進入一所積淀深厚、資源豐富的學校,有助于全面提升自己的素質(zhì)與能力。
二本院校中,大部分學校都有鮮明的單科特色。建議考生結合自己的特長、興趣愛好,以專業(yè)為導向來選擇學校。
二.如何看待專業(yè)“冷門”“熱門”?
專業(yè)的熱門與冷門,隨著經(jīng)濟和社會形勢的變化而變化。有些專業(yè),看起來熱門,許多學校都開設,招收了許多學生,導致若干年后人才過剩。有的專業(yè),在招生時顯得冷門,但畢業(yè)生就業(yè)時因為社會需求旺盛,學生成了“搶手貨”,而且個人收益也不錯。家長可以幫助學生,收集多方信息,對一些行業(yè)的發(fā)展前景進行預測,帶著前瞻性的眼光去填當下的高考志愿。同時,學生也要從自己的特長與興趣出發(fā)來選擇專業(yè),有興趣才能學得更好,日后在就業(yè)競爭中脫穎而出。
高校新專業(yè)的產(chǎn)生有不同的“源頭”。有的是在老專業(yè)基礎上誕生的,專業(yè)內(nèi)容變得更寬泛一些,此類新專業(yè)的分數(shù)線通常與往年差不多。有的是某一老專業(yè)與其他學科交叉而產(chǎn)生的,這類新專業(yè)在培養(yǎng)實力方面可能比老專業(yè)弱一些。有的是根據(jù)社會需求而設置的全新專業(yè),錄取分數(shù)線可能會在校內(nèi)處于較低分數(shù)段。
?
三.高考咨詢問些什么?
4月下旬起,各高校招生咨詢會此起彼伏,密度很大。為了提高現(xiàn)場咨詢的效率,咨詢前不妨做些“備課”,在相關部委的官方網(wǎng)站、校園網(wǎng)等網(wǎng)站上“預習”一些對外公開的基本情況。
比如對高校辦學條件和水平,有了比較才有認識。從高校隸屬關系看,既有國家部委所屬院校,也有省市所屬院校。隸屬不同,經(jīng)費投入、招生范圍等也有所不同。目前,全國30多所列入“985工程”的高校都是出類拔萃的高校,而列入“211工程”的高校也有百余所。
另外,還可查詢一下高校師資水平和重點學科數(shù)據(jù)。代表師資水平的數(shù)據(jù)包括院士、大師級人物有多少;作為未來院士“預備隊”的“長江學者”有多少;博士生導師有多少等。國家重點學科是經(jīng)教育部嚴格評審,在各個高校相同學科中排名前一、前二名的某些學科。一所高校的“重點學科”越多,其周邊也必然聚集著一個較高水平的相關學科群。
在正式咨詢時,再問到更細的專業(yè)層面。應真正了解專業(yè)方向的內(nèi)涵,包括研究些什么、學哪些課程、將來在哪些領域就業(yè)、以往就業(yè)率如何、未來社會需求怎樣、招生計劃多少、過去幾年錄取情況,以及這個專業(yè)的歷史沿革、在同行中的水平、是否具有碩士點博士點以及現(xiàn)有哪些名師等。其中,錄取分數(shù)線情況應掌握近幾年的數(shù)據(jù),參考其趨勢變化。
?
四.2015年熱門專業(yè)排名前十名:
?
? 1、電子與信息類:電子信息科學與技術、光信息科學與技術、電氣工程及其自動化、自動化、電子信息工程、通信工程(長沙牛耳軟件教育是湖南最專業(yè)的電腦軟件培訓學校)。
?
? 2、外語類:外貿(mào)英語、小語種。
?
? 3、法學類:法學、社會學、治安學、偵查學。
?
? 4、機械類:機械設計制造及其自動化、材料成型及控制工程、工業(yè)設計、過程裝備與控制工程、測控技術與儀器。
?
? 5、土建類:建筑學、城市規(guī)劃、土木工程、建筑環(huán)境與設備工程、給水排水工程。
?
? 6、會計類:會計學、財務管理。
?
? 7:中文類:對外漢語、新聞學、廣播電視新聞學、廣告學、編輯出版學。
?
? 8、醫(yī)學類:臨床醫(yī)學、麻醉學、醫(yī)學影象學、醫(yī)學檢驗、口腔醫(yī)學、藥理學、中藥理論。
?
? 9、環(huán)境、心理類:環(huán)境科學、生態(tài)學、心理學、應用心理學。
?
? 10、工商管理類:工商管理、市場營銷、人力資源管理、旅游管理。
?
好就業(yè)專業(yè):據(jù)統(tǒng)計,排行前十的專業(yè)
?
一,同聲傳譯
同聲傳譯員被稱為21世紀第一大緊缺人才,隨著中國對外經(jīng)濟交流的增多和奧運會帶來的會務商機的涌現(xiàn),需要越來越多的同聲傳譯員。
同聲傳譯員的薪金不是按照年薪和月薪來算的,是按照小時和分鐘來算的,現(xiàn)在的價碼是每小時4000元到8000元,相關人士說。4年之后入駐中國和北京的外國大公司越來越多,這一行肯定吃香。
二.3g工程師
據(jù)計世資訊發(fā)布的相關研究報告稱,估計國內(nèi)3g人才缺口將達到50萬人以上,由于目前3g人才比較少,尤其是復合型人才奇缺,預計4年之后3g工程師的基本年薪會在15萬元到20萬元。從目前的一些趨勢來看,在無線增值服務行業(yè)里的一些精通2.5g技術的人才年薪都在10萬元左右,中國已經(jīng)進入3g時代了,這些人才的收入應該會更高,業(yè)內(nèi)人士表明。
三.網(wǎng)絡媒體人才
目前,類似與在新浪和搜狐的網(wǎng)絡編輯的月薪都在5000元左右,中等職位的收入都在8000元到10000元之間。相信4年之后整個網(wǎng)絡媒體的廣告收入越來越多的時候,從業(yè)人員會有一個更好的回報,目前,不少網(wǎng)絡編輯對自己所從事的行業(yè)都頗有信心。
四.物流師
物流人才的需求量為600余萬人。相關統(tǒng)計顯示,目前物流從業(yè)人員當中擁有大學學歷以上的僅占21%,許多物流部門的管理人員是半路出家,很少受過專業(yè)培訓。據(jù)相關人士透露,對此人才有需求的某知名企業(yè)在國內(nèi)招聘的應屆大學生目前的薪金是每月6000元到8000元。
五.系統(tǒng)集成工程師
據(jù)悉,一名剛剛畢業(yè)的學生,毫無工作經(jīng)驗的學生應聘系統(tǒng)集成工程師之后的薪金是年薪8萬元,用戶對系統(tǒng)集成服務的要求不斷提高,從最初的網(wǎng)絡建設到基于行業(yè)的'應用,在到對業(yè)務的流程和資源策略的咨詢服務,未來系統(tǒng)集成工程師應該是一路走高的職業(yè)。
六.環(huán)境工程師
相關資料顯示,目前我過環(huán)保產(chǎn)業(yè)的從也人員僅有13萬余人,其中技術人員有8萬人,按國際通行的慣例計算,我國在環(huán)境工程師方面的缺口在42萬人左右,據(jù)悉,隨著國內(nèi)房地產(chǎn)行業(yè)發(fā)展,國內(nèi)園林設計師,景觀設計師的月薪都在七八千左右。
七.精算師
我國被世界保險界認可的精算師不足10人,在當今的國內(nèi)人才市場上,精算師可謂鳳毛麟角,隨著國際保險巨頭在中國開拓市場以及國內(nèi)企業(yè)的需要,精算師是幾年后保險業(yè)最拿手的人才,目前在國外的平均年薪達10萬美金,國內(nèi)目前月薪也在1萬以上。隨著人們對保險認識加強,保險行業(yè)的興起必然會需要更多的精算師。
八.中西醫(yī)師,醫(yī)藥營銷
醫(yī)學院校畢業(yè)的學生有三條路可以走,一是進入醫(yī)院,急救醫(yī)生,產(chǎn)科醫(yī)生,婦科醫(yī)生,和理療醫(yī)師都將十分吃香,二是進入醫(yī)藥生成流通企業(yè),三十繼續(xù)深造,業(yè)內(nèi)人士表示,這個行業(yè)的特點是越老越值錢,目前的醫(yī)藥行業(yè)月薪在3000到5000元。
十注冊會計師
根據(jù)中國經(jīng)濟高速嘎子的需要,至少急需35萬名注冊會計師,而目前實際具備從業(yè)資格的自由8萬人左右,其中被國際認可的不足15%,每年高擴畢博在內(nèi)的四大注冊會計師事務所都會在高校招收畢業(yè)生,專業(yè)涵蓋了統(tǒng)計,法律,數(shù)學等,應屆畢業(yè)生月薪都在五六千元,在加上每年的豐厚的獎金,收入會超過10萬元。
軟件工程課程心得體會篇十二
畢業(yè)實習是教學過程中一個重要的實踐性教學環(huán)節(jié),是一次綜合性學習。通過實習加深對專業(yè)理論知識的理解,培養(yǎng)和提高實際操作動手的能力,使所學理論知識與編程實踐緊密結合,為畢業(yè)后從事計算機相關工作打下良好的基礎。實習期間讓我學到很多東西,不僅在理論上讓我對it領域有了全新的認識,在實踐能力上也得到了很大的提高,真正的學到了學以致用,更學到很多做人的道理,對我來說受益匪淺。同時,我還學到了如何與人相處,怎樣與人進行更好的交流。我們幾個人組成一個團隊,大家一起學習開發(fā)一個項目,彼此之間的交流溝通就顯得尤為重要,如何將自己的想法清楚明白的告訴隊友,如何提出自己想法的同時又不傷害其他的隊友的面子,這些在我的實習生活中都有一些體會。相信這次實習對我以后的學習、工作將會產(chǎn)生很大的影響,在短短的二十幾天里學到的這些寶貴的經(jīng)驗將會成為我以后工作的基石。
一、實習內(nèi)容和過程
實習期間,我主要在軟件開發(fā)部進行學習,同時對其他如人事部、檢測部門進行了了解,通過與有關項目負責人的學習交流,從而對it行業(yè)最近的發(fā)展及對人才需求、能力要求等方面有所了解,對自己的未來發(fā)展和規(guī)劃有很大意義。
實習的開始幾天主要是對公司工作流程和員工工作習慣的了解和適應,對自己作出調(diào)整,使自己盡快進入工作狀態(tài)。
接下來幾天,主要是對自己將要面臨和接受的工作的接觸了解,思考如何將自己所學的知識運用到工作中去。
中間的幾天主要是進行有關項目中幾個小功能模塊的學習和實現(xiàn),簡單的對自己的工作有一個體會。
最后的幾天主要就是真正的參與到工作中去,通過自己的實際動手去做項目,對分配到的任務的完成及其中遇到困難的解決,發(fā)現(xiàn)自己的不足,鍛煉自己的能力。
1.1公司概況
____軟件有限公司成立于20__年1月,公司以軟件產(chǎn)品開發(fā)、軟件項目實習培訓為主要目標,公司以先進的技術開發(fā)體系為基礎,已經(jīng)成功地開發(fā)了多個軟件產(chǎn)品和軟件項目。公司自成立以來發(fā)展迅速,已獲取軟件高新技術企業(yè)認證,正在進行iso-9002體系認證,以市場為先導、研發(fā)為后盾、服務為宗旨,全面服務于我國的軟件事業(yè)。
公司愿景:使__成為社會認可和尊敬的優(yōu)秀軟件公司
公司核心價值觀:團隊合作、不斷創(chuàng)新、社會責任感、客戶為本、誠實正直
公司使命:在公司軟件產(chǎn)品及軟件服務的幫助下,讓人們愉快工作、快樂生活。__對品質(zhì)有著執(zhí)著的追求,但是高品質(zhì)的設計并不意味著高成本,我們有著長期為知名客戶服務的經(jīng)驗,應用國際通用的標準化建模體系等先進技術,建立了完善的質(zhì)量控制流程,因此,我們能夠在高品質(zhì)的基礎上,保持富有競爭力的低報價。
__具有優(yōu)秀的技術實力:在大型數(shù)據(jù)庫oracle、db2、_ml、webservices、internet/intranet、java、php、c#、c應用等方面擁有的技術;在web應用程序、辦公自動化、商業(yè)智能、電子商務、電子政務、企業(yè)資源管理、知識管理、商業(yè)網(wǎng)站、手機應用、游戲和多媒體電子出版等方面具有豐富的開發(fā)實施經(jīng)驗。這些技術和實施經(jīng)驗是倬威達的客戶獲得高性能、低成本的產(chǎn)品和服務的重要保證。
__秉承以人為本的管理理念人性化管理,并強調(diào)規(guī)范的開發(fā)流程,以及業(yè)內(nèi)的開發(fā)技術,為員工的發(fā)展提供充分的發(fā)展和上升空間。穩(wěn)定且高素質(zhì)的團隊,是我們提供優(yōu)質(zhì)軟件和服務的基礎。
為了滿足軟件企業(yè)對軟件實用人才的需求,公司與__多所高校建立校企合作關系,極大的增強了畢業(yè)生在求職中的項目經(jīng)驗及工作中的實際動手能力,促進高校就業(yè),實訓效果顯著受到高校領導、畢業(yè)生及用人單位的一致好評。公司經(jīng)過幾年的實訓經(jīng)驗的累積,深深認識到實用人才是企業(yè)選人用人時的關鍵因素,所以公司實訓致力于軟件實用人才培養(yǎng),重視與院校建立長期合作關系。通過校企合作,優(yōu)勢互補,互利共贏,支持院校教育事業(yè)。
在二十一世紀,__軟件公司將進一步發(fā)展壯大,未來五年內(nèi),__將實施戰(zhàn)略性結構調(diào)整,瞄準國內(nèi)外一流軟件公司,使之成為較有影響的軟件公司。
軟件工程課程心得體會篇十三
一、 實訓目的:
通過對java語言、sql數(shù)據(jù)庫的應用以及sql語言的復習和鍛煉,并且通過使用myeclipse開發(fā)平臺設計管理項目,以達到充分熟悉開發(fā)平臺及應用設計。同時掌握并實踐軟件項目設計規(guī)范及其開發(fā)流程:需求分析、概要設計、詳細設計、代碼編寫等,以便提前適應軟件公司開發(fā)流程、環(huán)境和工作要求。
二、實訓內(nèi)容:
1. 項目:(“當當網(wǎng)”)
2. 完成(用戶注冊、登錄、列表、購物車、刪除、修改)等功能
3. 數(shù)據(jù)庫設計、sql應用
4. 項目實戰(zhàn)
三、實訓總結:
轉(zhuǎn)眼間實訓已過去一段時間,之前的興奮、喜悅?cè)缃褚呀?jīng)讓我熟悉,在實訓的每一天都會讓我有成為一名真正的財富者擁有的沖動。也許,在這期間不一定會讓一個人有著翻天覆地的變化,但變化就是這樣一點一點產(chǎn)生的。通過這一期的實訓,雖然倍感折磨,但是收獲卻是很大的,學習中我不但有了學習成果的喜悅,而且自己也日漸成熟,有種說不出的喜悅。
在實訓的過程中,我深深的體會到了自己在專業(yè)知識方面的欠缺和不足,也意識到了自己作為計算機軟件專業(yè)的學生,要想在以后的職業(yè)中嶄露頭角,除了要有過硬的理論知識,健康的體魄之外,還必須具備良好的心理素質(zhì),是自己在以后的途中無論經(jīng)歷什么樣的困難,都立于不敗之地。通過實訓老師的課堂講解與企業(yè)文化標準的培訓,使我加深了對自己專業(yè)的認識,從而確定自己以后的努力方向,要想在短暫的實訓時間內(nèi)盡多的學到東西,就需要我們跟老師或同學進行良好的溝通,加深彼此的了解,只有我們跟老師多溝通,讓老師更了解我們,才能更真切的對我們進行培訓工作。由此,班級的文化“共享”就在生活中慢慢形成了。
“紙上得來終覺淺,絕知此事要躬行!”在這短短的時間里,讓我深深的感覺到自己在實際應用中所學來專業(yè)知識的匱乏。讓我真真領悟到“學無止境”這句話的涵義。而老師在專業(yè)認識周到中所講的,都是課本上沒有而對我們非常有實際意義的。這又給我們的實訓增添了濃墨淡彩的光輝。我懂得了實際生活中,專業(yè)知識是怎樣應用與實踐的。在這些過程中,我不僅知道了職業(yè)生涯所需具備的專業(yè)知識,而且讓我深深體會到一個團隊中的各個成員合作的重要性,要善于團隊合作,善于利用別人的智慧,這才是大智慧??繂我坏牧α渴呛茈y完成一個大項目的,在進行團隊合作的時候,還要耐心聽取每一個成員的意見,是我們的組合達到更加完美。
這次實訓除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學會了如何去完成一個任務,懂得了享受工作。當遇到問題,冷靜,想辦法一點一點的排除障礙,到最后獲取成功,一種自信心就由然而生,這應該就是工作的樂趣。有時候不懂的就需要問別人了,虛心請教,從別人的身上真的能學到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學會了在工作中與人的合作與交流,同樂同累,合作互助,這是團體的精神,也是必須學習的東西。
經(jīng)過之前的學習,對程序設計有了一定的認識與理解。在校期間,一直都是學習理論知識,沒有機會去參與項目的開發(fā)。所以說實話,這次實訓,軟件項目開發(fā)對我來說是比較抽象的,一個完整的項目要怎么分工以及完成該項目所要的步驟也不是很明確。而經(jīng)過這次實訓,讓我明白了一個完整項目的開發(fā),必須由團隊來分工合作,并在每個階段中進行必要的總結與論證。
一個完整項目的開發(fā)它所要經(jīng)歷的階段包括:遠景范圍規(guī)劃和用例說明、項目結構和風險評估、業(yè)務功能說明書、詳細設計說明書、代碼實現(xiàn)、測試和安裝包等等。一個項目的開發(fā)所需要的財力、人力都是很多的,如果沒有一個好的遠景規(guī)劃,對以后的開發(fā)進度會有很大的影響,甚至會出現(xiàn)在預定時間內(nèi)不能完成項目或者完成的項目跟原來預想的不一樣。一份好的項目結構、業(yè)務功能和詳細設計說明書對一個項目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有比較明確的認識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實現(xiàn)是一個項目開發(fā)成功與否的關鍵,也就是說,前期作業(yè)都是為代碼的實現(xiàn)所做的準備。
我深刻的認識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實的編寫代碼基礎,必須要有事先對文檔進行可靠性報告,功能說明書,詳細設計說明書等的編寫和一些風險評估的編寫的能力。
除了圖書館,最能讓我感覺到身在大學的就是實訓機房,在匆匆過去的兩個月內(nèi),我往返于實訓機房與宿舍之間,使我享受了一個充實的學習時期,讓我感受到了大學的魅力,對自己充滿信心,對大學充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。
實訓中要求有扎實的理論基本知識,操作起來才順心應手,我這時才明白什么是“書到用時方恨少”。這就激發(fā)了學習的欲望。 “學以致用”,就是要把學來的知識能運用到實際操作當中,用實踐來檢驗知識的正確性。我想,這是實訓的最根本目的。
最初在實訓時自己就有一些不自信,但隨著項目的進展,我慢慢的找到了自己的位置,找到自己的目標,雖然自己與好的同學還有差距,這也給了我很大壓力,但是我相信沒有壓力就沒有動力,所以在整個實訓過程中我都在不斷地努力。
實訓期間讓我學到很多東西,不僅在理論上讓我對it領域有了全新的認識,在實踐能力上也得到了很大的提高,真正的學到了學以致用,更學到很多做人的道理,對我來說受益匪淺。我意識到自己知識的缺少,這激勵我在以后的學習、工作、生活中要不斷了解信息技術發(fā)展動態(tài)以及信息發(fā)展中出現(xiàn)的新的技術。
除此之外,我還學到了如何與人相處,如何和人更好的交流,我們組成一個團隊大家一起開發(fā)一個項目,大家的交流溝通顯得尤為重要,如何將自己的想法清楚明白的告訴隊友,如何提出自己想法的同時又不傷害其他的隊友的面子,這些在我的實訓生活中都有一些體會??墒钦f,第一次親身體會理論與實際相結合,讓我大開眼界。也是對以前學習的一個初審吧,相信這次實訓多我以后的學習、工作也將會有很大的影響,在實訓的這段時間里這些寶貴的經(jīng)驗將會成為我以后工作的基石。
作為即將畢業(yè)走出校園的學生,經(jīng)過3年的在校學習,對程序設計有了一些基本的理性的認識和理解。在校期間一直忙于理論的學習,沒有機會也沒有經(jīng)驗來參與我們項目的開發(fā),所以在實習之前軟件按開發(fā)對我來說是非常抽象的,一個完整的項目要怎么來分工以及完成該項目所需要的基本步驟也不明確,通過這次實訓讓我明白一個完整項目的完成必須團隊分工合作,并在每個階段進行必要的總結和檢查。在我們項目的開發(fā)過程中我們項目的步驟:詳細設計、詳細設計review、編碼、編碼。在項目開發(fā)過程中我也深刻的體會到詳細設計對一個項目開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有具體的認識,并能減少在開發(fā)過程中出現(xiàn)不必要的脫節(jié)。
這次實訓是對我們學習的一個檢驗,雖然項目中很多知識我們在日常的學習中都沒有遇到,這同時提醒我:要想成為一個合格的程序員就有具備一種自學能力,在工作中會遇到很多從未接觸過的問題,當有了問題時要去解決,在你不斷努力,尋找答案的過程中,自己的能力也在潛移默化的提升。有時遇到問題時可能有很多想法但卻不知道那個正確,這就讓我們不斷地去探索,不斷地嘗試。
軟件工程課程心得體會篇十四
軟件工程是一個復雜的過程,其中需求是關鍵的一環(huán)。在實踐過程中,我積累了一些關于軟件工程需求的心得體會。本文將從需求的重要性、需求分析的方法、需求的管理、需求變更的處理以及與客戶的溝通等方面來進行分享和探討。
第二段:需求的重要性
需求在軟件工程中是至關重要的一環(huán)。過去曾發(fā)生過許多項目失敗的案例,其中很大一部分是因為需求未能準確地被捕獲、理解和分析。因此,我們需要充分認識到需求在整個軟件開發(fā)過程中的關鍵作用。只有了解了需求,我們才能確保軟件的功能、性能和用戶體驗都能達到預期的目標。
第三段:需求分析的方法
需求分析是需求工程的核心環(huán)節(jié)。要提取和分析的需求是多樣的,如功能需求、非功能需求、用戶需求和系統(tǒng)需求等。因此,我們需要采用適當?shù)姆椒▉磉M行需求分析。常用的方法有面談、問卷調(diào)查、原型設計、用戶故事等。通過這些方法的應用,我們可以更好地了解用戶的需求,確保需求的全面性和準確性。
第四段:需求的管理
需求的管理對于軟件工程項目的成功十分關鍵。需求的變更和演化是不可避免的,但如何管理好這些變更將決定項目的成敗。在管理需求時,我們需要建立一個有效的需求管理流程,包括變更申請、評審、優(yōu)先級設定以及變更控制等環(huán)節(jié)。同時,跟蹤需求的狀態(tài)和進展也是十分重要的,這可以幫助我們及時發(fā)現(xiàn)和解決問題,確保項目的順利進行。
第五段:與客戶的溝通
與客戶的溝通是需求工程的核心要素之一??蛻敉亲盍私庾约盒枨蟮娜?,與他們的有效溝通可以幫助我們更好地理解和滿足他們的需求。在與客戶溝通時,我們不僅需要傾聽和理解他們的需求,還需要及時與他們進行反饋和確認。同時,我們也需要積極與客戶溝通預期的交付時間、項目成本等重要因素,以保持客戶的滿意度和項目的成功。
結尾段:總結
通過實踐和經(jīng)驗,我認識到需求在軟件工程中的重要性,以及需求分析、管理和與客戶的溝通對于項目成功的關鍵作用。只有充分認識和理解這些關鍵點,我們才能在軟件工程項目中更好地滿足用戶需求,確保項目的順利進行和成功交付。因此,在未來的工作中,我將繼續(xù)深入研究和學習軟件工程需求方面的知識,不斷提升自己的能力和技術水平。
軟件工程課程心得體會篇十五
基于本次暑期實習的情況,我收獲很大。
從實訓目的來看,本次實訓主要是在vs2012開發(fā)平臺上實現(xiàn)對c#語言、sql數(shù)據(jù)庫的應用,就我所在小組的項目工作內(nèi)容來看,還需要掌握水晶報表和mdi多窗口應用技術。除了要充分熟悉開發(fā)平臺及應用設計之外,還要掌握并實踐軟件項目設計規(guī)范及其開發(fā)流程即需求階段、分析和設計階段、編碼階段和測試階段,以便能按時交付作業(yè)。
從實訓的內(nèi)容來看,我小組的項目是“人事工資管理系統(tǒng)”,主要實現(xiàn)公司企業(yè)對內(nèi)部員工檔案、工資、獎罰考勤等一系列的管理,這在當今不斷壯大的企業(yè)用人單位是亟待需要的,總的來說,項目的難度系數(shù)不是很高,但也是相當困難。
在校外實習之前,老師先在校內(nèi)培訓了5天。5天實訓中,著重講解了c#語言應用,并布置編寫“通訊錄”工作臺程序,windows應用程序和wpf程序,數(shù)據(jù)先是用文本保存,然后練習用數(shù)據(jù)庫保存,期間每天需上交當日作業(yè)。5天的時間里,通過不斷地學習,我從完全不懂c#語言成長到初步掌握了這門語言,當然在具體應用中還是會遇到些問題,但我還在學習。其實在實習的前一個月里,老師就上傳了一些關于c#語言的資料并通知我們需要配置哪些軟件環(huán)境,對于這一點,我是相當感謝何老師的,當然在校外的實習里,公司也全都把開發(fā)項目用到的一系列軟件上傳到公共文件夾里,從而免去了我們下載軟件的麻煩,在此,感謝眾老師。
校內(nèi)實習要上交的作業(yè)我是在校外實習中補充完成的,因為之前上交的作業(yè)由于時間倉促大都有錯誤,所以借著校外實習中對c#語言的進一步應用和講師的詳細講解后,我重新改正了錯誤,希望何老師能諒解采納。
校外實習是從7月12號開始,歷時15天,15天的最后一天要回校評審。我對本次校外實習的各個方面都十分滿意。相比上次實習,首先這里的住宿學習條件非常好,住宿和實習地都安裝了空調(diào),實習地方環(huán)境清幽寬敞明亮,伙食也非常好。然后就是實習講師非常專業(yè)和負責,他事先把所有有關實習的資料軟件存放在公共文件夾,且規(guī)劃入微。一開始先是對我們進行c#測試分好組安排好每組項目任務,又指導我們每個小組安裝svn軟件,方便小組文件上傳與統(tǒng)一,整體一氣呵成,不似之前實習的凌亂,這一點我十分敬佩。之后每天都先安排好任務工作,認真且非常詳細的給我們操作示范并細心地制作成word文檔供小組之后查看。每隔幾天都會有小組評審,主要針對小組所編文檔的規(guī)范程度和不足提出修改建議。作為小組的pm,我必須承認一開始工作任務安排不當,沒有完全發(fā)揮各成員的優(yōu)勢,以致文檔編寫的有些瑕疵,不過在小組評審過后,我便及時更改了項目工作的分工,而之后小組項目工作進行的非常順利,每個人的能力都得到了最大的發(fā)揮和升華,當然這完全得力于小組成員的高度配合。
我小組是c#軟件開發(fā)第一組,組內(nèi)有6名成員,兩個主要負責項目核心代碼的編寫,其余負責簡單模塊代碼的編寫,我主要負責填寫與修改相關項目文檔并督促小組進度和團結組內(nèi)成員、合理分配組員任務并及時調(diào)節(jié)組內(nèi)安排的各種不適與問題。校外實習的過程中,小組成員高度團結,協(xié)調(diào)合作,對所有問題都能及時探討并高效解決,有時遇到分歧,不過在全體討論后,都能找到合理的統(tǒng)一方案,如在界面設計環(huán)節(jié)中,就登陸界面和模塊界面的設計中,組員有很多不同建議,在詢問老師和權衡實現(xiàn)困難程度后,我們達成了一致意見,統(tǒng)一后的界面相比之前更加規(guī)整明晰,且功能更加健全,當然這是我們小組齊心合力的結果。在開發(fā)的過程中,出現(xiàn)過項目分工不明確的問題,其原因源于我考慮到組員能力的不同,所以就把大部分的工作安排給能力高的人身上,其他能力低的只暫讓他們自由學習希望能盡早跟上小組步伐,不過事實證明我錯了。讓部分組員自由學習而不參與項目的工作中本身就拖累了小組的整體速度,而且在短暫的時間里,他們也實在學不到任何實際的東西,所以后來我更改了戰(zhàn)略。我先讓能力低的組員嘗試參照模板編寫一些文檔的簡單部分,然后讓能力稍高點的組員繼續(xù)補充文檔的核心部分,最后由我修改格式和內(nèi)容,最后讓老師審閱。這個方案實施過后,小組的效率整體上明顯提高,每個人各司其職,全組團結一致,共同為項目的完成發(fā)揮自己的聰明才智。而之后,在項目編碼階段,我們小組的tl負責對項目整個框架的構建,即設計好主要的窗口原型,然后指導小組成員在自己所負責的模塊上添加具體事件代碼,最后再進行修改,這樣做不僅將組員團結在一起提高組內(nèi)效率,更直接提高了組員的編程能力。
需求分析階段和設計階段很快結束了,我們小組齊心協(xié)力按時完成了相關文檔的編寫,包括需求規(guī)約、實現(xiàn)規(guī)約、界面設計word圖形文檔、數(shù)據(jù)庫設計說明書、詳細設計說明書和概要說明書,在老師評審過后,發(fā)現(xiàn)問題還是有很多,作為項目經(jīng)理的我本該對這些文檔進行及時修改和更正,但由于時間倉促且我們是第一組需第一個評審,所以就馬馬虎虎的拿未精確修改的文檔進行審評了,老師著重對系統(tǒng)模塊圖和模塊功能描述那塊提出了些許建議,并讓演示了小組編寫的代碼程序,對其中錯誤問題提出了解決方案。之后進行一番修改過后,我小組正式進入了編碼階段,編碼只有短暫的3天,后兩天老師分小組評審并提出改進意見,小組修正和改進代碼結構語句,完善項目要求,緊接著進入測試階段,老師又著重介紹了一些測試工具方便小組測試,填寫并修改好測試文檔后,整個實習就將要進入尾聲了。再回校進行最后評審項目ppt和提交作業(yè)后,暑期實習就正式結束。
短短半個月的實習中,我深深的感受到自己在實際應用中專業(yè)知識的匱乏和短時間學習掌握一門新知識和新技術的困難,這是我非常畏懼的兩大難題。就自身來說,我喜歡有所準備,不喜歡臨陣磨槍,盡管之前對實習要求的知識技能有些了解,但到真正實施時,還是不免有些不知所措,而之后能慢慢克服畏懼慌張并團結小組成員按時且高效的完成作業(yè),這都得力于實習老師和組員對我的巨大幫助,在此,由衷感謝他們,也感謝我自己。
軟件工程課程心得體會篇十六
我實習的單位是xx學院,這是一所全日制中等專業(yè)學校。我在學校里主要是負責校內(nèi)內(nèi)網(wǎng)的管理,其涉及到校內(nèi)網(wǎng)網(wǎng)站的正常登陸和訪問,校內(nèi)內(nèi)各系部主機是否正常互聯(lián),有無被病毒感染、傳播。使得校內(nèi)網(wǎng)內(nèi)的計算機可以正常運行,做好校內(nèi)網(wǎng)的管理和維護工作。
從同學到實習工程師,短短幾個月的工作過程使我受益匪淺。不僅是在專業(yè)學問方面,最主要是在為人處事方面。社會在加速度地發(fā)生變化,對人才的要求也越來越高,要用進展的目光看問題,得不斷進步思想熟悉,完善自己。作為一名it從業(yè)者,所受的社會壓力將比其他行業(yè)更加沉重,要學會創(chuàng)新求變,以適應社會的需要。在單位里,小到計算機的組裝修理,大到效勞器的維護與測試,都需要一個人獨立完成??梢哉f,近3個月的工作使我成長了不少,從中有不少感悟,下面就是我的一點心得:
你可以假裝你的面孔你的心,但絕不行以無視真誠的力氣。第一天去網(wǎng)絡中心實習,心里不行避開的有些疑心:不知道教師怎么樣,應當去怎么做啊,要去干些什么呢等等吧!踏進辦公室,只見幾個陌生的臉孔。我微笑著和他們打招呼。
從那天起,我養(yǎng)成了一個習慣,每天早上見到他們都要微笑的說聲:“教師早〞,那是我心底真誠的問候。我總覺得,常常有一些微小的東西簡單被我們無視,比方輕輕的一聲問候,但它卻表達了對教師同事對伴侶的`敬重關心,也讓別人感覺到被重視與被關心。僅僅幾天的時間,我就和教師們打成一片,很好的跟他們溝通溝通學習,我想,應當是我的真誠,換得了教師的信任。他們把我當伴侶也情愿指導我,情愿安排給我任務。
要想在短暫的實習時間內(nèi),盡可能多的學一些東西,這就需要跟教師有很好的溝通,加深彼此的理解,剛到網(wǎng)絡中心,教師并不理解你的工作學習力量,不明晰你會做那些工作,不明晰你想理解的學問,所以跟教師很好的溝通是很必要的。同時我覺得這也是我們將來走上社會的一把不行缺少的鑰匙。通過溝通理解,教師我我有了大體理解,邊有針對性的教我一些學問,我對網(wǎng)絡部線,電腦硬件安裝,網(wǎng)絡故障排解,工作原理應用比叫感愛好,所以教師就讓我獨立的完成校內(nèi)大小部門的網(wǎng)絡檢修與電腦故障排解工作。如秘書處的辦公室內(nèi)局域網(wǎng)的組件,中心效勞機房的效勞器監(jiān)測等,直接或間接保證了校內(nèi)網(wǎng)的正常運行和使用,在這方面的工作中,真正學到了計算機教科書上所沒有或者真正用到了課本上的學問,穩(wěn)固了舊學問,把握了新學問,甚至在理論中驗證了書本上舊有的不合實際的學問,這才真正表達了學問的真正價值,學以致用。
激情與急躁,就像火與冰,看似兩種完全不同的東西,卻能碰撞出最漂亮的火花。在中心時,教師就跟我說,想做電腦網(wǎng)絡這一塊,激情與急躁必不行少,在產(chǎn)品更新方面,這一行業(yè)就像做新聞工作,補斷的更新,這就需要你有激情,急躁的去不斷的學習進步自己的專業(yè)程度。
問教師,查資料,一個個問題迎刃而解,自己在這方面的學問得到了充實。這些在平常的書本上僅僅是獲得感性的熟悉在這里真的理論了,才算是真正的把握了,也讓我熟悉到了自己的缺乏,告誡自己,不管做什么,切忌眼高手低,要擅長鉆研。
還有我感受比擬深的就是查看log日志記錄,因為效勞器的維護是簡單又艱辛的,既要保障物理平安又要保證系統(tǒng)平安,這就需要通過查詢log日志記錄,每一分鐘的效勞器狀況都有l(wèi)og日志記錄,而且它一是數(shù)據(jù)量大、二是有大量無用信息,所以查看log使特別“苦痛〞的事情。像這些工作我熬深深地感覺到每有激情與急躁是做不好的。
軟件工程課程心得體會篇十七
經(jīng)過長時間對國貿(mào)軟件的的使用,在不斷練習操作的過程中,我對國貿(mào)軟件的最深刻感覺是:學以致用、有趣、必須細心耐心反應迅速。
1.學以致用
作為國貿(mào)專業(yè),經(jīng)過長時間的理論學習,急需通過實際操作或某種近似于實際操作的平臺對所學的理論知識加以實踐,以求進一步掌握和鞏固,而國貿(mào)軟件正提供了這樣一種平臺。該軟件涉及了及出口貿(mào)易的各個方面和環(huán)節(jié),從外貿(mào)公司的經(jīng)營運作到實際的進出口業(yè)務流程,都能進行模擬實訓。在使用過程中,會遇到很多國貿(mào)的基礎理論知識和實務技能,這是對國貿(mào)理論掌握程度的最好考察。眼過千遍不如手過一遍,相對于理論部分而言,國貿(mào)實務更注重實際操作,通過這種理論結合實踐的方式,鞏固基礎知識,查找理論學習的不足,以前學習的實物理論基礎知識會更加的具體和直觀。同時,該軟件的實務操作部分與報關員報關實務所涉及的知識基本一致,這對于我的報關員考試復習提供了很大的幫助。
2.有趣
該軟件通過“實戰(zhàn)”方式訓練,會在操作過程中遇到很多難題和挑戰(zhàn),這些必須自己想辦法解決。由于大家進行了角色劃分,形成了一個虛擬市場,所以大家之間相互的競爭是必不可少的,大家會從各個方面進行競爭。競爭在現(xiàn)在是無法避免的,意識正是現(xiàn)代社會生存發(fā)展所需要的。正是這種競爭,使得我(相信大家)對該軟件產(chǎn)生了濃厚的興趣。
3.細心、耐心、反應迅速
國貿(mào)軟件涉及大數(shù)據(jù)計算的繁瑣的單證填寫,所以必須做到細心耐心,例如,在填制外貿(mào)合同時,一個小小的數(shù)據(jù)錯誤或是貨物裝運、指運港名稱的錯誤都會是合同填寫失敗;填寫保險單或是報關單證,沒有嚴格按照合同數(shù)據(jù)填制就會導致填寫出現(xiàn)錯誤,無法進行下一步驟,影響實驗效率。
在操作過程中,除了復習、鞏固所學國貿(mào)理論外,另一個重要任務就是想辦法“賺錢”,提高自己企業(yè)的盈利水平和生存能力,這就要求必須反應迅速、判斷準確,否則會覺得企業(yè)經(jīng)營的舉步維艱。
以上就是經(jīng)過一段時間對國貿(mào)軟件的操作使用產(chǎn)生的心得體會。
我們是20xx年3月7號進入宏天實訓公司參加軟件開發(fā)實訓的,在此次實訓中,除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學會了如何去完成一個任務,懂得了享受工作。當遇到問題,冷靜,想辦法一點一點的排除障礙,到最后獲取成功,一種自信心就由然而生,這應該就是工作的樂趣。有時候不懂的就需要問別人了,虛心請教,從別人的身上真的能學到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學會了在工作中與人的合作與交流,同樂同累,合作互助,這是團體的精神,也是必須學習的東西。
經(jīng)過之前的在校學習,對程序設計有了一定的認識與理解。在校期間,一直都是學習理論知識,沒有機會去參與項目的開發(fā)。所以說實話,在實訓之前,軟件項目開發(fā)對我來說是比較抽象的,一個完整的項目要怎么分工以及完成該項目所要的步驟也不是很明確。 而經(jīng)過這次實訓,讓我明白了一個完整項目的開發(fā),必須由團隊來分工合作,并在每個階段中進行必要的總結與論證。
一個完整項目的開發(fā)它所要經(jīng)歷的階段包括:遠景范圍規(guī)劃和用例說明、項目結構和風險評估、業(yè)務功能說明書、詳細設計說明書、代碼實現(xiàn)、測試和安裝包等等。一個項目的開發(fā)所需要的財力、人力都是很多的,如果沒有一個好的遠景規(guī)劃,對以后的開發(fā)進度會有很大的影響,甚至會出現(xiàn)在預定時間內(nèi)不能完成項目或者完成的項目跟原來預想的不一樣。一份好的項目結構、業(yè)務功能和詳細設計說明書對一個項目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有比較明確的認識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實現(xiàn)是一個項目開發(fā)成功與否的關鍵,也就是說,前期作業(yè)都是為代碼的實現(xiàn)所做的準備。
我深刻的認識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實的編寫代碼基礎,必須要有事先對文檔進行可靠性報告,功能說明書,詳細設計說明書等的編寫和一些風險評估的編寫的能力。
除了圖書館,最能讓我感覺到身在大學的就是實訓機房,在匆匆過去的兩個月內(nèi),我往返于實訓機房與宿舍之間,使我享受了一個充實的學習時期,讓我感受到了大學的魅力,對自己充滿信心,對大學充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。
實訓中要求有扎實的理論基本知識,操作起來才順心應手,我這時才明白什么是“書到用時方恨少”。這就激發(fā)了學習的欲望。
“學以致用”,就是要把學來的知識能運用到實際操作當中,用實踐來檢驗知識的正確性。我想,這是實訓的最根本目的。
“紙上得來終覺淺,絕知此事要躬行!”,在短暫的實訓過程中,讓我深深感受到自己在實際運用中專業(yè)知識的匱乏。以前總以為自己學的還不錯,一旦應用到實際就大不一樣了,這時才真正領悟“學無止境”的含義。
經(jīng)過為期兩個月的電子政務服務平臺系統(tǒng)開發(fā)的實訓,我對visual 軟件開發(fā)平臺有了更深一步的了解,對微軟基礎類庫的認識與使用也有了大大的提高。以及如何使用sql server數(shù)據(jù)庫進行連接操作方面有了本質(zhì)的提高。
短短的實訓結束了,為我將來的就業(yè)打下了良好的基礎,也提高了我的軟件開發(fā)的水平,今后我將會更加努力的學習,不斷提高自身素質(zhì),開拓創(chuàng)新,與時俱進,做一個優(yōu)秀的軟件開發(fā)工程師。
這學期學習了軟件工程實踐這門課,我覺得這是對上學期的軟件工程課程學習的檢驗,上學期學習軟件工程只是我們淺顯的認識,相比之下,這學期就更加全面的說明了開發(fā)一個項目所需要的步驟以及開發(fā)項目過程中所需要注意的諸多細節(jié)。如果說上學期的課程注重理論基礎的話,那么這學期的軟工實踐,顧名思義,就是側(cè)重我們動手操作的能力。
原來我認為開發(fā)一個項目最重要的就是寫代碼,似乎整個軟件都是編代碼,因為自己動手能力不強所以就很排斥做項目。可是經(jīng)過我們學習軟工課程到團隊做項目再到學習軟件工程實踐課程之后,我才真正意識到實施一個軟件工程項目并不是說簡單的會編碼就能夠解決問題的,因為一個軟件的生命周期分為三個時期:軟件定義時期、開發(fā)時期、維護時期,而這三個時期整體又分為七個階段,他們分別是:問題定義、可行性研究、需求分析、總體設計、詳細設計、編碼和單元測試、綜合測試,由此可看出,當我們開發(fā)一個項目時,更多的精力不是放在編碼上,編碼只是一個很小的模塊,而是項目的整體結構上。
在寫軟工實踐體會之前,我想在這里總結一下上學期三人團隊做 項目的相關事宜。上學期我們?nèi)藞F隊根據(jù)軟件開發(fā)的步驟開發(fā)一個名為“西大老鄉(xiāng)‘薈’”的社交系統(tǒng),主要是為西大學子提供一個找老鄉(xiāng)的平臺。雖然只進行到詳細設計階段,沒有進一步實現(xiàn),但是我還是從中學到很多東西的。首先要先確定項目主題,也就是這個項目用來做什么,可以解決什么問題。接著就是這個項目是否有研究的必要以及是否有解決的辦法,針對我們的項目,我們對西大的一些學生做了問卷調(diào)查,并從調(diào)查中繼續(xù)完善系統(tǒng)本身的做用戶。第三步根據(jù)我們確定的項目主題進行需求分析,這一步驟當時做的不是很好,比如所畫e-r圖、數(shù)據(jù)流圖等都有考慮不周的問題,導致接下來的概要設計、詳細設計進行的很困難,有些步驟甚至還需要返工。
從我們在需求分析中出現(xiàn)的問題,使我們明白了軟件定義階段對于一個項目的開發(fā)是至關重要的,當軟件定義階段完成時必須要用正式的文檔準確的地記錄目標系統(tǒng)的需求。只有前期的準備工作做得好,后面的工作才能順利進行。雖然項目最后沒有完全實現(xiàn),但是起碼我們已經(jīng)初步體會到軟件項目開發(fā)的步驟,以及每一步所需要完成的文檔等內(nèi)容。
這學期的軟件工程實踐雖然不是親自動手開發(fā)一個系統(tǒng),但是張元平老師以“物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)”為主給我們講解了一個真實系統(tǒng)的開發(fā)過程,從計劃到項目系統(tǒng)的發(fā)布實施,以及每一步必須生成的文檔。我主要從以下五個方面談一下我的心得體會。
第一、行業(yè)背景說明方面
對于一個軟件系統(tǒng)的開發(fā),第一步就是問題定義,了解所開發(fā)系統(tǒng)的行業(yè)背景,制定計劃。當我們計劃確定以后就要對項目系統(tǒng)本身進行可行性研究,主要從技術可行性、經(jīng)濟可行性和操作可行性三個方面著手。就比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的行業(yè)背景說明文檔中非常詳細地分析了當下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務說明、應用背景、未來發(fā)展趨勢以及相關應用案例等四個方面,項目團隊中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關的調(diào)查資料對將要開發(fā)系統(tǒng)的進行定義等工作。
原來我們寫這類文檔的時候就是草草了事,不會做得這么詳細,而這次看到大型項目的行業(yè)背景說明也是這么詳細,也讓自己認識到不管是軟件開發(fā)的那個階段都要認真對待,這些瑣碎的文檔都是后期開發(fā)項目的支撐,只要它們做的透徹,后面的開發(fā)工作才能更順利的進行。
第二、項目需求說明方面
這部分項目需求說明就是軟件定義時期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據(jù)用戶的需要確定系統(tǒng)必須完成那些工作,并對目標系統(tǒng)提出完整、準確、清晰、具體的要求。在需求分析結束之前系統(tǒng)分析人員要寫出一份需求規(guī)格說明,即為《物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)》項目需求說明文檔。我們可以看出該文檔也是非常詳細,相比之下我們之前做項目時寫的需求規(guī)格說明書就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來它不是很重要,寫文檔的時候也不知道怎么寫就借鑒下網(wǎng)上的內(nèi)容,結果根本就沒有把自己項目的需求寫明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗教訓我會對這部分更加重視。
第三、系統(tǒng)概要設計方面
這部分內(nèi)容分說的是軟件設計時期的概要設計階段,該階段的主要目的就是實現(xiàn)系統(tǒng)的功能、設計軟件的結構、模塊組成以及模塊之間的關系。在概要設計階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對比多種可能的系統(tǒng)實現(xiàn)方案和軟件結構,從中選出最佳方案和最合理的結構。在這個階段還會具體畫出e-r圖、數(shù)據(jù)流圖等方面的設計。
比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的系統(tǒng)概要設計從項目概述、設計約束、功能單元與功能模塊設計、數(shù)據(jù)e-r圖設計、總體設計、界面設計等六個方面介紹,通過讀這個文檔,我覺得最重要的還是總體設計,分別從邏輯架構設計、物理架構設計、技術架構設計設計系統(tǒng)。在這個階段中模塊要做到高內(nèi)聚低耦合,這樣開發(fā)出來的系統(tǒng)才會具有更高的獨立性。
在原來做項目時沒有編寫過這類文檔,在該階段只是畫了結構圖、層次圖以及相關的模塊劃分,對該類文檔尚未重視。通過張老師的講解和自己的學習,我相信在以后做項目的時候一定會注意到這類文檔的編寫。
第四、詳細設計與分析方面
詳細設計階段就是把概要設計階段的每個模塊進一步設計,確定每個模塊所需要的算法和數(shù)據(jù)結構。在這個階段還是需要我們設計出程序的詳細規(guī)格說明,而不是編寫程序。在詳細設計階段,系統(tǒng)設計人員可以通過使用程序流程圖、盒圖、pad圖等過程設計的工具和jackson圖等面向數(shù)據(jù)結構的設計工具進一步設計系統(tǒng)相關接口,主要包括界面設計接口、業(yè)務單設計接口、單元模塊設計接口等,這些對于以后的編碼工作都是極其重要的。
第五、編碼和測試方案方面
關于編碼,我認為編碼要想做的完美必備條件就是前面的軟件定義和軟件設計時期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對于編碼也要有相應的文檔書寫規(guī)范,要使源程序代碼的邏輯簡明清晰、易讀易懂。這樣盡管我們不是設計系統(tǒng)的人員,當看到源程序代碼的時候也能容易讀懂代碼的意思。
其次就是測試的內(nèi)容,從測試的文檔中我們可以得出,其實測試在軟件開發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問題并排除其中的潛藏的錯誤,最終把一個高質(zhì)量的軟件系統(tǒng)交給用戶使用。它要求測試人員也要有很高的技術水平。
【本文地址:http://www.aiweibaby.com/zuowen/4782188.html】