軟件工程實(shí)訓(xùn)心得體會一:軟件工程實(shí)訓(xùn)心得體會
這次軟件工程實(shí)訓(xùn)是從2010.12.26號開始的,截至2010.12.31號。實(shí)訓(xùn)內(nèi)容是用java相關(guān)知識(主要是jsp)做一個(gè)物流配送系統(tǒng)。下面談?wù)剬@次實(shí)訓(xùn)的看法。
因?yàn)樽约浩綍r(shí)對java知識儲備不足,特別是jsp這一塊基本不了解怎么回事,所以一拿到這個(gè)項(xiàng)目,我心里都是沒有底的,再加上我被分到的那個(gè)組,我知道就意味著是我一個(gè)人在戰(zhàn)斗了。呵呵,26號,實(shí)訓(xùn)開始了,我們的老師是來自中軟國際公司的程序員,一個(gè)是周褀,一個(gè)是朱映,都是一身樸素的著裝,讓我感覺做軟件的也沒什么兩樣。老師介紹了自己之后,就直接切入正題了,分析了下我們各個(gè)組的系統(tǒng),即將用到的知識,然后就總體把覺得需要補(bǔ)充的知識(jsp和數(shù)據(jù)庫連接等這幾塊)給我們實(shí)際操作了下,因?yàn)楫?dāng)時(shí)看到用jsp,還講的那么認(rèn)真,當(dāng)時(shí)我就后悔了,平時(shí)要是多聽點(diǎn),現(xiàn)在老師這么認(rèn)真的給我們講,這是一個(gè)多么難得的機(jī)會啊。后悔也沒用啊,開始還勉強(qiáng)能理解一點(diǎn),后來就直接暈了。然后再給大家介紹了一些即將用到的工具,比如rationalRose,SVN,MyEclipse等等。接下來的幾天就不再細(xì)講了。下面談?wù)勍ㄟ^這次實(shí)訓(xùn)的心得體會吧。
通過這次實(shí)訓(xùn),讓我了解到工程開發(fā)的過程,可行性分析——>需求分析——>概要設(shè)計(jì)——>詳細(xì)設(shè)計(jì)——>代碼編寫——>測試——>驗(yàn)收。從技術(shù)方面上,我開始jsp基礎(chǔ)基本上就是零的,在老師和syz2(另外一個(gè)物流小組,我一個(gè)人基本上是跟她們做的,或者說是看著她們做的)的幫助下,對jsp有了一個(gè)大概的認(rèn)識。其實(shí)實(shí)訓(xùn)開始前,我還以為做個(gè)系統(tǒng)沒什么大不了,可是當(dāng)真正拿到一個(gè)項(xiàng)目,我卻真的無從下手了,而且就是在知道需求分析和詳細(xì)設(shè)計(jì),在代碼編寫時(shí),一樣寸步難行。通過這個(gè)實(shí)訓(xùn),也讓我了解到,團(tuán)隊(duì)協(xié)作是多么的重要。一個(gè)人的精力是多么的有限。進(jìn)一步理解到,企業(yè)為什么如此重視團(tuán)隊(duì)協(xié)作。同時(shí)借用老師的話就是團(tuán)隊(duì)協(xié)作固然重要,但是是建立在個(gè)人素質(zhì)的基礎(chǔ)上,假設(shè)你個(gè)人素質(zhì)不行,將會影響到整個(gè)團(tuán)隊(duì),就別提對團(tuán)隊(duì)作更多貢獻(xiàn)了。**老師說這幾句話的時(shí)候,朝向了我,估計(jì)是有特殊意義的吧,所以,我將謹(jǐn)記老師的教導(dǎo)。
還有一個(gè)收獲是從一個(gè)同學(xué)(小胖)那里得到的,他的那組成員跟我的這組大體一樣,我倒是覺得沒什么了,不過他倒是很重視這個(gè)問題吧。然后他說出來,我也覺得這個(gè)問題確實(shí)其實(shí)是個(gè)大的問題。就是不管你會不會這門技術(shù),會不會做這個(gè)東西,態(tài)度要正確才好,就算你不會做,你也應(yīng)該認(rèn)真的對待,將來 出身到社會,就不是說像你現(xiàn)在,不會做就不做,跑去玩游戲了。小胖說出了這段話,也在我身上有了一個(gè)印證,雖然我jsp技術(shù)知識為0,但我也還是在認(rèn)真的跟著他們一起做,不會做,就多問,畢竟現(xiàn)在我們是學(xué)生,可以毫不顧忌的詢問各種問題,老師也會盡力為你回答。將來出身社會就不一樣了。雖然,我就算個(gè)打醬油的水平,但是這個(gè)醬油也要打得有涵量啊。不管怎么樣,我能對自己有個(gè)交待,雖然我不會,但是這次實(shí)訓(xùn)我確實(shí)是認(rèn)真對待了,六天的實(shí)訓(xùn),除了晚上加班外,還花了2個(gè)通宵來完成不同階段的任務(wù),完成與否也不重要了,我至少我做了,這點(diǎn),是這次我應(yīng)該對自己的一個(gè)肯定。
這次實(shí)訓(xùn)的心得基本上就是這些了,最后特別感謝中軟國際帶我們的那兩個(gè)老師(周褀,朱映),這兩個(gè)老師對待我們很平易近人,對我們提出的問題,總是不光解決了,還進(jìn)行了擴(kuò)展,晚上也跟我們一起加班加到很晚,印象尤其深刻就是朱映老師為了給小胖解決一個(gè)問題,臉都變紅了,還在繼續(xù)努力,這點(diǎn)我并不會覺得老師知識儲備不夠,我想應(yīng)該是這個(gè)問題的突發(fā)吧,一時(shí)沒想到怎么處理。相反讓我感覺更多的就是老師很認(rèn)真,很負(fù)責(zé)。還要感謝就是syz2小組的傾力支持,輔導(dǎo)。
軟件工程實(shí)訓(xùn)心得體會二:軟件工程實(shí)踐學(xué)習(xí)心得(2607字)
這學(xué)期學(xué)習(xí)了軟件工程實(shí)踐這門課,我覺得這是對上學(xué)期的軟件工程課程學(xué)習(xí)的檢驗(yàn),上學(xué)期學(xué)習(xí)軟件工程只是我們淺顯的認(rèn)識,相比之下,這學(xué)期就更加全面的說明了開發(fā)一個(gè)項(xiàng)目所需要的步驟以及開發(fā)項(xiàng)目過程中所需要注意的諸多細(xì)節(jié)。如果說上學(xué)期的課程注重理論基礎(chǔ)的話,那么這學(xué)期的軟工實(shí)踐,顧名思義,就是側(cè)重我們動手操作的能力。
原來我認(rèn)為開發(fā)一個(gè)項(xiàng)目最重要的就是寫代碼,似乎整個(gè)軟件都是編代碼,因?yàn)樽约簞邮帜芰Σ粡?qiáng)所以就很排斥做項(xiàng)目。可是經(jīng)過我們學(xué)習(xí)軟工課程到團(tuán)隊(duì)做項(xiàng)目再到學(xué)習(xí)軟件工程實(shí)踐課程之后,我才真正意識到實(shí)施一個(gè)軟件工程項(xiàng)目并不是說簡單的會編碼就能夠解決問題的,因?yàn)橐粋€(gè)軟件的生命周期分為三個(gè)時(shí)期:軟件定義時(shí)期、開發(fā)時(shí)期、維護(hù)時(shí)期,而這三個(gè)時(shí)期整體又分為七個(gè)階段,他們分別是:問題定義、可行性研究、需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和單元測試、綜合測試,由此可看出,當(dāng)我們開發(fā)一個(gè)項(xiàng)目時(shí),更多的精力不是放在編碼上,編碼只是一個(gè)很小的模塊,而是項(xiàng)目的整體結(jié)構(gòu)上。
在寫軟工實(shí)踐體會之前,我想在這里總結(jié)一下上學(xué)期三人團(tuán)隊(duì)做 項(xiàng)目的相關(guān)事宜。上學(xué)期我們?nèi)藞F(tuán)隊(duì)根據(jù)軟件開發(fā)的步驟開發(fā)一個(gè)名為“西大老鄉(xiāng)‘薈’”的社交系統(tǒng),主要是為西大學(xué)子提供一個(gè)找老鄉(xiāng)的平臺。雖然只進(jìn)行到詳細(xì)設(shè)計(jì)階段,沒有進(jìn)一步實(shí)現(xiàn),但是我還是從中學(xué)到很多東西的。首先要先確定項(xiàng)目主題,也就是這個(gè)項(xiàng)目用來做什么,可以解決什么問題。接著就是這個(gè)項(xiàng)目是否有研究的必要以及是否有解決的辦法,針對我們的項(xiàng)目,我們對西大的一些學(xué)生做了問卷調(diào)查,并從調(diào)查中繼續(xù)完善系統(tǒng)本身的做用戶。第三步根據(jù)我們確定的項(xiàng)目主題進(jìn)行需求分析,這一步驟當(dāng)時(shí)做的不是很好,比如所畫E-R圖、數(shù)據(jù)流圖等都有考慮不周的問題,導(dǎo)致接下來的概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)進(jìn)行的很困難,有些步驟甚至還需要返工。
從我們在需求分析中出現(xiàn)的問題,使我們明白了軟件定義階段對于一個(gè)項(xiàng)目的開發(fā)是至關(guān)重要的,當(dāng)軟件定義階段完成時(shí)必須要用正式的文檔準(zhǔn)確的地記錄目標(biāo)系統(tǒng)的需求。只有前期的準(zhǔn)備工作做得好,后面的工作才能順利進(jìn)行。雖然項(xiàng)目最后沒有完全實(shí)現(xiàn),但是起碼我們已經(jīng)初步體會到軟件項(xiàng)目開發(fā)的步驟,以及每一步所需要完成的文檔等內(nèi)容。
這學(xué)期的軟件工程實(shí)踐雖然不是親自動手開發(fā)一個(gè)系統(tǒng),但是張?jiān)嚼蠋熞浴拔锫?lián)網(wǎng)物流倉儲管理系統(tǒng)”為主給我們講解了一個(gè)真實(shí)系統(tǒng)的開發(fā)過程,從計(jì)劃到項(xiàng)目系統(tǒng)的發(fā)布實(shí)施,以及每一步必須生成的文檔。我主要從以下五個(gè)方面談一下我的心得體會。
第一、行業(yè)背景說明方面
對于一個(gè)軟件系統(tǒng)的開發(fā),第一步就是問題定義,了解所開發(fā)系統(tǒng)的行業(yè)背景,制定計(jì)劃。當(dāng)我們計(jì)劃確定以后就要對項(xiàng)目系統(tǒng)本身進(jìn)行可行性研究,主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性三個(gè)方面著手。就比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的行業(yè)背景說明文檔中非常詳細(xì)地分析了當(dāng)下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務(wù)說明、應(yīng)用背景、未來發(fā)展趨勢以及相關(guān)應(yīng)用案例等四個(gè)方面,項(xiàng)目團(tuán)隊(duì)中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關(guān)的調(diào)查資料對將要開發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來我們寫這類文檔的時(shí)候就是草草了事,不會做得這么詳細(xì),而這次看到大型項(xiàng)目的行業(yè)背景說明也是這么詳細(xì),也讓自己認(rèn)識到不管是軟件開發(fā)的那個(gè)階段都要認(rèn)真對待,這些瑣碎的文檔都是后期開發(fā)項(xiàng)目的支撐,只要它們做的透徹,后面的開發(fā)工作才能更順利的進(jìn)行。
第二、項(xiàng)目需求說明方面
這部分項(xiàng)目需求說明就是軟件定義時(shí)期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據(jù)用戶的需要確定系統(tǒng)必須完成那些工作,并對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫出一份需求規(guī)格說明,即為《物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)》項(xiàng)目需求說明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項(xiàng)目時(shí)寫的需求規(guī)格說明書就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來它不是很重要,寫文檔的時(shí)候也不知道怎么寫就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒有把自己項(xiàng)目的需求寫明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗(yàn)教訓(xùn)我會對這部分更加重視。
第三、系統(tǒng)概要設(shè)計(jì)方面
這部分內(nèi)容分說的是軟件設(shè)計(jì)時(shí)期的概要設(shè)計(jì)階段,該階段的主要目的就是實(shí)現(xiàn)系統(tǒng)的功能、設(shè)計(jì)軟件的結(jié)構(gòu)、模塊組成以及模塊之間的關(guān)系。在概要設(shè)計(jì)階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對比多種可能的系統(tǒng)實(shí)現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的結(jié)構(gòu)。在這個(gè)階段還會具體畫出E-R圖、數(shù)據(jù)流圖等方面的設(shè)計(jì)。
比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的系統(tǒng)概要設(shè)計(jì)從項(xiàng)目概述、設(shè)計(jì)約束、功能單元與功能模塊設(shè)計(jì)、數(shù)據(jù)E-R圖設(shè)計(jì)、總體設(shè)計(jì)、界面設(shè)計(jì)等六個(gè)方面介紹,通過讀這個(gè)文檔,我覺得最重要的還是總體設(shè)計(jì),分別從邏輯架構(gòu)設(shè)計(jì)、物理架構(gòu)設(shè)計(jì)、技術(shù)架構(gòu)設(shè)計(jì)設(shè)計(jì)系統(tǒng)。在這個(gè)階段中模塊要做到高內(nèi)聚低耦合,這樣開發(fā)出來的系統(tǒng)才會具有更高的獨(dú)立性。
在原來做項(xiàng)目時(shí)沒有編寫過這類文檔,在該階段只是畫了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對該類文檔尚未重視。通過張老師的講解和自己的學(xué)習(xí),我相信在以后做項(xiàng)目的時(shí)候一定會注意到這類文檔的編寫。
第四、詳細(xì)設(shè)計(jì)與分析方面
詳細(xì)設(shè)計(jì)階段就是把概要設(shè)計(jì)階段的每個(gè)模塊進(jìn)一步設(shè)計(jì),確定每個(gè)模塊所需要的算法和數(shù)據(jù)結(jié)構(gòu)。在這個(gè)階段還是需要我們設(shè)計(jì)出程序的詳細(xì)規(guī)格說明,而不是編寫程序。在詳細(xì)設(shè)計(jì)階段,系統(tǒng)設(shè)計(jì)人員可以通過使用程序流程圖、盒圖、PAD圖等過程設(shè)計(jì)的工具和Jackson圖等面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)工具進(jìn)一步設(shè)計(jì)系統(tǒng)相關(guān)接口,主要包括界面設(shè)計(jì)接口、業(yè)務(wù)單設(shè)計(jì)接口、單元模塊設(shè)計(jì)接口等,這些對于以后的編碼工作都是極其重要的。
第五、編碼和測試方案方面
關(guān)于編碼,我認(rèn)為編碼要想做的完美必備條件就是前面的軟件定義和軟件設(shè)計(jì)時(shí)期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對于編碼也要有相應(yīng)的文檔書寫規(guī)范,要使源程序代碼的邏輯簡明清晰、易讀易懂。這樣盡管我們不是設(shè)計(jì)系統(tǒng)的人員,當(dāng)看到源程序代碼的時(shí)候也能容易讀懂代碼的意思。
其次就是測試的內(nèi)容,從測試的文檔中我們可以得出,其實(shí)測試在軟件開發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問題并排除其中的潛藏的錯(cuò)誤,最終把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶使用。它要求測試人員也要有很高的技術(shù)水平。
軟件工程實(shí)訓(xùn)心得體會三:軟件公司工程實(shí)訓(xùn)心得體會(1300字)
我們是20XX年3月7號進(jìn)入宏天實(shí)訓(xùn)公司參加軟件開發(fā)實(shí)訓(xùn)的,在此次實(shí)訓(xùn)中,除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學(xué)會了如何去完成一個(gè)任務(wù),懂得了享受工作。當(dāng)遇到問題,冷靜,想辦法一點(diǎn)一點(diǎn)的排除障礙,到最后獲取成功,一種自信心就由然而生,這應(yīng)該就是工作的樂趣。有時(shí)候不懂的就需要問別人了,虛心請教,從別人的身上真的能學(xué)到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學(xué)會了在工作中與人的合作與交流,同樂同累,合作互助,這是團(tuán)體的精神,也是必須學(xué)習(xí)的東西。
經(jīng)過之前的在校學(xué)習(xí),對程序設(shè)計(jì)有了一定的認(rèn)識與理解。在校期間,一直都是學(xué)習(xí)理論知識,沒有機(jī)會去參與項(xiàng)目的開發(fā)。所以說實(shí)話,在實(shí)訓(xùn)之前,軟件項(xiàng)目開發(fā)對我來說是比較抽象的,一個(gè)完整的項(xiàng)目要怎么分工以及完成該項(xiàng)目所要的步驟也不是很明確。而經(jīng)過這次實(shí)訓(xùn),讓我明白了一個(gè)完整項(xiàng)目的開發(fā),必須由團(tuán)隊(duì)來分工合作,并在每個(gè)階段中進(jìn)行必要的總結(jié)與論證。
一個(gè)完整項(xiàng)目的開發(fā)它所要經(jīng)歷的階段包括:遠(yuǎn)景范圍規(guī)劃和用例說明、項(xiàng)目結(jié)構(gòu)和風(fēng)險(xiǎn)評估、業(yè)務(wù)功能說明書、詳細(xì)設(shè)計(jì)說明書、代碼實(shí)現(xiàn)、測試和安裝包等等。一個(gè)項(xiàng)目的開發(fā)所需要的財(cái)力、人力都是很多的,如果沒有一個(gè)好的遠(yuǎn)景規(guī)劃,對以后的開發(fā)進(jìn)度會有很大的影響,甚至?xí)霈F(xiàn)在預(yù)定時(shí)間內(nèi)不能完成項(xiàng)目或者完成的項(xiàng)目跟原來預(yù)想的不一樣。一份好的項(xiàng)目結(jié)構(gòu)、業(yè)務(wù)功能和詳細(xì)設(shè)計(jì)說明書對一個(gè)項(xiàng)目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個(gè)項(xiàng)目所要實(shí)現(xiàn)的功能在總體上有比較明確的認(rèn)識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實(shí)現(xiàn)是一個(gè)項(xiàng)目開發(fā)成功與否的關(guān)鍵,也就是說,前期作業(yè)都是為代碼的實(shí)現(xiàn)所做的準(zhǔn)備。
我深刻的認(rèn)識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實(shí)的編寫代碼基礎(chǔ),必須要有事先對文檔進(jìn)行可靠性報(bào)告,功能說明書,詳細(xì)設(shè)計(jì)說明書等的編寫和一些風(fēng)險(xiǎn)評估的編寫的能力。
除了圖書館,最能讓我感覺到身在大學(xué)的就是實(shí)訓(xùn)機(jī)房,在匆匆過去的兩個(gè)月內(nèi),我往返于實(shí)訓(xùn)機(jī)房與宿舍之間,使我享受了一個(gè)充實(shí)的學(xué)習(xí)時(shí)期,讓我感受到了大學(xué)的魅力,對自己充滿信心,對大學(xué)充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。
實(shí)訓(xùn)中要求有扎實(shí)的理論基本知識,操作起來才順心應(yīng)手,我這時(shí)才明白什么是“書到用時(shí)方恨少”。這就激發(fā)了學(xué)習(xí)的欲望。
“學(xué)以致用”,就是要把學(xué)來的知識能運(yùn)用到實(shí)際操作當(dāng)中,用實(shí)踐來檢驗(yàn)知識的正確性。我想,這是實(shí)訓(xùn)的最根本目的。
“紙上得來終覺淺,絕知此事要躬行!”,在短暫的實(shí)訓(xùn)過程中,讓我深深感受到自己在實(shí)際運(yùn)用中專業(yè)知識的匱乏。以前總以為自己學(xué)的還不錯(cuò),一旦應(yīng)用到實(shí)際就大不一樣了,這時(shí)才真正領(lǐng)悟“學(xué)無止境”的含義。
經(jīng)過為期兩個(gè)月的電子政務(wù)服務(wù)平臺系統(tǒng)開發(fā)的實(shí)訓(xùn),我對Visual 軟件開發(fā)平臺有了更深一步的了解,對微軟基礎(chǔ)類庫的認(rèn)識與使用也有了大大的提高。以及如何使用SQL Server數(shù)據(jù)庫進(jìn)行連接操作方面有了本質(zhì)的提高。
短短的實(shí)訓(xùn)結(jié)束了,為我將來的就業(yè)打下了良好的基礎(chǔ),也提高了我的軟件開發(fā)的水平,今后我將會更加努力的學(xué)習(xí),不斷提高自身素質(zhì),開拓創(chuàng)新,與時(shí)俱進(jìn),做一個(gè)優(yōu)秀的軟件開發(fā)工程師。