通過(guò)總結(jié)自己的經(jīng)驗(yàn),我明白了成功的秘訣。在寫(xiě)心得體會(huì)之前,要先進(jìn)行適當(dāng)?shù)臏?zhǔn)備和調(diào)研。下面是一些關(guān)于心得體會(huì)的范文,供您參考。這些范文涵蓋了學(xué)習(xí)、工作和生活等不同方面的心得體會(huì),希望能夠給您帶來(lái)一些啟示和幫助。通過(guò)閱讀這些范文,您可以了解如何寫(xiě)出一篇優(yōu)秀的心得體會(huì),同時(shí)也可以拓寬自己的思路和觸角。記住,心得體會(huì)是展示自己與眾不同的機(jī)會(huì),要把握好每一次寫(xiě)作的機(jī)會(huì)。
軟件工程的學(xué)習(xí)心得體會(huì)篇一
轉(zhuǎn)眼,出來(lái)社會(huì)都已大半年,已是半個(gè)社會(huì)人了。不能再向?qū)W生那樣,某些時(shí)候可以隨心隨意。頂崗實(shí)習(xí),為我們提供了一個(gè)很好的實(shí)踐機(jī)會(huì),可以讓我們更好的把理論應(yīng)用于實(shí)踐,在實(shí)踐中領(lǐng)悟理論,更可以學(xué)習(xí)到很多書(shū)本上學(xué)習(xí)不到的、甚至比理論知識(shí)更實(shí)用的業(yè)務(wù)知識(shí)。而且,這些實(shí)習(xí)經(jīng)驗(yàn),無(wú)疑是我們畢業(yè)后就業(yè)的一大籌碼。作為一個(gè)成年人,作為一個(gè)社會(huì)職業(yè)人,任何時(shí)候都要守規(guī)矩,做好自己的本分,承擔(dān)起自己所需要承擔(dān)的責(zé)任。經(jīng)歷了2家公司的工作,我漸漸的認(rèn)識(shí)到,每一份工作或每一個(gè)工作環(huán)境都無(wú)法盡善盡美,但每一份工作中都有許多寶貴的經(jīng)驗(yàn)和資源,如失敗的沮喪、自我成長(zhǎng)的喜悅、溫馨的工作伙伴、值得感謝的客戶(hù)等等,這些都是工作成功者必須體驗(yàn)的感受和必備的財(cái)富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會(huì)收獲很多很多。在你收獲很多很多的同時(shí),你會(huì)發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅(jiān)強(qiáng),樂(lè)觀(guān),闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
將本文的word文檔下載到電腦,方便收藏和打印。
軟件工程的學(xué)習(xí)心得體會(huì)篇二
這次軟件工程實(shí)訓(xùn)是從__年__月__日號(hào)開(kāi)始的,截至__年__月__日號(hào)。實(shí)訓(xùn)內(nèi)容是用java相關(guān)知識(shí)(主要是jsp)做一個(gè)物流配送系統(tǒng)。下面談?wù)剬?duì)這次實(shí)訓(xùn)的看法。
因?yàn)樽约浩綍r(shí)對(duì)java知識(shí)儲(chǔ)備不足,特別是jsp這一塊基本不了解怎么回事,所以一拿到這個(gè)項(xiàng)目,我心里都是沒(méi)有底的,再加上我被分到的那個(gè)組,我知道就意味著是我一個(gè)人在戰(zhàn)斗了。呵呵,26號(hào),實(shí)訓(xùn)開(kāi)始了,我們的老師是來(lái)自中軟國(guó)際公司的程序員,一個(gè)是周褀,一個(gè)是朱映,都是一身樸素的著裝,讓我感覺(jué)做軟件的也沒(méi)什么兩樣。老師介紹了自己之后,就直接切入正題了,分析了下我們各個(gè)組的系統(tǒng),即將用到的知識(shí),然后就總體把覺(jué)得需要補(bǔ)充的知識(shí)(jsp和數(shù)據(jù)庫(kù)連接等這幾塊)給我們實(shí)際操作了下,因?yàn)楫?dāng)時(shí)看到用jsp,還講的那么認(rèn)真,當(dāng)時(shí)我就后悔了,平時(shí)要是多聽(tīng)點(diǎn),現(xiàn)在老師這么認(rèn)真的給我們講,這是一個(gè)多么難得的機(jī)會(huì)啊。后悔也沒(méi)用啊,開(kāi)始還勉強(qiáng)能理解一點(diǎn),后來(lái)就直接暈了。然后再給大家介紹了一些即將用到的工具,比如rationalrose,svn,myeclipse等等。接下來(lái)的幾天就不再細(xì)講了。下面談?wù)勍ㄟ^(guò)這次實(shí)訓(xùn)的心得體會(huì)吧。
通過(guò)這次實(shí)訓(xùn),讓我了解到工程開(kāi)發(fā)的過(guò)程,可行性分析——需求分析——概要設(shè)計(jì)——詳細(xì)設(shè)計(jì)——代碼編寫(xiě)——測(cè)試——驗(yàn)收。從技術(shù)方面上,我開(kāi)始jsp基礎(chǔ)基本上就是零的,在老師和syz2(另外一個(gè)物流小組,我一個(gè)人基本上是跟她們做的,或者說(shuō)是看著她們做的)的幫助下,對(duì)jsp有了一個(gè)大概的認(rèn)識(shí)。其實(shí)實(shí)訓(xùn)開(kāi)始前,我還以為做個(gè)系統(tǒng)沒(méi)什么大不了,可是當(dāng)真正拿到一個(gè)項(xiàng)目,我卻真的無(wú)從下手了,而且就是在知道需求分析和詳細(xì)設(shè)計(jì),在代碼編寫(xiě)時(shí),一樣寸步難行。通過(guò)這個(gè)實(shí)訓(xùn),也讓我了解到,團(tuán)隊(duì)協(xié)作是多么的重要。一個(gè)人的精力是多么的有限。進(jìn)一步理解到,企業(yè)為什么如此重視團(tuán)隊(duì)協(xié)作。同時(shí)借用老師的話(huà)就是團(tuán)隊(duì)協(xié)作固然重要,但是是建立在個(gè)人素質(zhì)的基礎(chǔ)上,假設(shè)你個(gè)人素質(zhì)不行,將會(huì)影響到整個(gè)團(tuán)隊(duì),就別提對(duì)團(tuán)隊(duì)作更多貢獻(xiàn)了。__老師說(shuō)這幾句話(huà)的時(shí)候,朝向了我,估計(jì)是有特殊意義的吧,所以,我將謹(jǐn)記老師的教導(dǎo)。
還有一個(gè)收獲是從一個(gè)同學(xué)(小胖)那里得到的,他的那組成員跟我的這組大體一樣,我倒是覺(jué)得沒(méi)什么了,不過(guò)他倒是很重視這個(gè)問(wèn)題吧。然后他說(shuō)出來(lái),我也覺(jué)得這個(gè)問(wèn)題確實(shí)其實(shí)是個(gè)大的問(wèn)題。就是不管你會(huì)不會(huì)這門(mén)技術(shù),會(huì)不會(huì)做這個(gè)東西,態(tài)度要正確才好,就算你不會(huì)做,你也應(yīng)該認(rèn)真的對(duì)待,將來(lái)出身到社會(huì),就不是說(shuō)像你現(xiàn)在,不會(huì)做就不做,跑去玩游戲了。小胖說(shuō)出了這段話(huà),也在我身上有了一個(gè)印證,雖然我jsp技術(shù)知識(shí)為0,但我也還是在認(rèn)真的跟著他們一起做,不會(huì)做,就多問(wèn),畢竟現(xiàn)在我們是學(xué)生,可以毫不顧忌的詢(xún)問(wèn)各種問(wèn)題,老師也會(huì)盡力為你回答。將來(lái)出身社會(huì)就不一樣了。雖然,我就算個(gè)打醬油的水平,但是這個(gè)醬油也要打得有涵量啊。不管怎么樣,我能對(duì)自己有個(gè)交待,雖然我不會(huì),但是這次實(shí)訓(xùn)我確實(shí)是認(rèn)真對(duì)待了,六天的實(shí)訓(xùn),除了晚上加班外,還花了2個(gè)通宵來(lái)完成不同階段的任務(wù),完成與否也不重要了,我至少我做了,這點(diǎn),是這次我應(yīng)該對(duì)自己的一個(gè)肯定。
這次實(shí)訓(xùn)的心得基本上就是這些了,最后特別感謝中軟國(guó)際帶我們的那兩個(gè)老師(周褀,朱映),這兩個(gè)老師對(duì)待我們很平易近人,對(duì)我們提出的問(wèn)題,總是不光解決了,還進(jìn)行了擴(kuò)展,晚上也跟我們一起加班加到很晚,印象尤其深刻就是朱映老師為了給小胖解決一個(gè)問(wèn)題,臉都變紅了,還在繼續(xù)努力,這點(diǎn)我并不會(huì)覺(jué)得老師知識(shí)儲(chǔ)備不夠,我想應(yīng)該是這個(gè)問(wèn)題的突發(fā)吧,一時(shí)沒(méi)想到怎么處理。相反讓我感覺(jué)更多的就是老師很認(rèn)真,很負(fù)責(zé)。還要感謝就是syz2小組的傾力支持,輔導(dǎo)。
軟件工程的學(xué)習(xí)心得體會(huì)篇三
軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它包括程序、相關(guān)數(shù)據(jù)及其說(shuō)明文檔。軟件工程(softwareengineering,簡(jiǎn)稱(chēng)為se)是針對(duì)軟件這一具有特殊性質(zhì)的產(chǎn)品的工程化方法。se涵蓋了軟件生命周期的所有階段,并提供了一整套工程化的方法,來(lái)指導(dǎo)軟件人員的工作。任何事物都是從無(wú)到有的,軟件當(dāng)然也不例外。上世紀(jì)中期,軟件產(chǎn)業(yè)從零開(kāi)始起步,經(jīng)過(guò)半個(gè)多世紀(jì)的發(fā)展,其大致經(jīng)歷的3個(gè)階段:程序設(shè)計(jì)階段、軟件設(shè)計(jì)階段和軟件工程時(shí)代,現(xiàn)已成為推動(dòng)人類(lèi)社會(huì)發(fā)展的龍頭產(chǎn)業(yè),隨著信息化時(shí)代的發(fā)展,軟件對(duì)人類(lèi)社會(huì)也將越看來(lái)越重要。人們對(duì)軟件的認(rèn)識(shí)自然經(jīng)歷了一個(gè)由淺入深的過(guò)程,在得到巨大需求的同時(shí),也遇到了一系列嚴(yán)重問(wèn)題,即軟件危機(jī)。所謂軟件危機(jī),是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一些嚴(yán)重問(wèn)題,其實(shí)質(zhì)是軟件產(chǎn)品的供應(yīng)趕不上需求的增長(zhǎng)。概括的說(shuō)包含兩方面的問(wèn)題:一、如何開(kāi)發(fā)軟件,以滿(mǎn)足不斷增長(zhǎng),日趨復(fù)雜的要求;二、如何維護(hù)數(shù)量不斷膨脹的軟件產(chǎn)品。為研究和解決軟件危機(jī),一門(mén)新興的學(xué)科軟件工程,應(yīng)運(yùn)而生。
軟件工程的概念是為了有效地控制軟件危機(jī)的發(fā)生而被提出來(lái)的,它的中心目標(biāo)就是把軟件作為一種物理的工業(yè)產(chǎn)品來(lái)開(kāi)發(fā),要求“采用工程化的原理與方法對(duì)軟件進(jìn)行計(jì)劃、開(kāi)發(fā)和維護(hù)”,它的主要對(duì)象是大型軟件,它的最終目的是擺脫手工生產(chǎn)軟件的現(xiàn)狀,逐步實(shí)現(xiàn)軟件開(kāi)發(fā)和維護(hù)的自動(dòng)化。軟件工程的概念自提出來(lái)后,經(jīng)過(guò)幾十年的發(fā)展,雖然軟件危機(jī)沒(méi)有得到徹底的解決,但在軟件開(kāi)發(fā)方法和技術(shù)方面已經(jīng)有了很大的進(jìn)步,提出了軟件工程知識(shí)體系、軟件工程三段論、軟件工程生存期模型、服用原則等等。
軟件開(kāi)發(fā)過(guò)程大致經(jīng)過(guò)7個(gè)階段:可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、提交與維護(hù)。接下來(lái)逐一分析本人見(jiàn)解:
一、可行性分析:顧名思義,就是看項(xiàng)目究竟“能不能做”。有3個(gè)方面:技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性。要確定項(xiàng)目,首先要客觀(guān)的、科學(xué)的了解項(xiàng)目的規(guī)模、難度和時(shí)間限制,才可以確定應(yīng)該投入多少人力、物力和財(cái)力去做這個(gè)項(xiàng)目,必須準(zhǔn)確的估計(jì)項(xiàng)目的規(guī)模與難度??错?xiàng)目是否有價(jià)值去做,如果沒(méi)有價(jià)值,就放棄;如果有價(jià)值,就要看目前的資源是否能滿(mǎn)足項(xiàng)目的開(kāi)發(fā)。如果項(xiàng)目有價(jià)值,且有必需的資源,那么就可以確定能做這個(gè)項(xiàng)目了。
2、通過(guò)什么方式去了解:直接與客戶(hù)交談;有些需求客戶(hù)講不清楚,分析人員又猜不透,這是就要請(qǐng)教行家。需求分析是非常重要的階段,如果做不好的話(huà),后果很麻煩。
三、概要設(shè)計(jì):解決“怎么做”的問(wèn)題。將需求描述的“做什么”問(wèn)題變?yōu)橐粋€(gè)實(shí)施方案的創(chuàng)造性過(guò)程,使得整個(gè)項(xiàng)目在邏輯上和物理上能夠得意實(shí)現(xiàn)。概要設(shè)計(jì)是第一個(gè)開(kāi)發(fā)活動(dòng),也是最重要的活動(dòng),是軟件項(xiàng)目實(shí)現(xiàn)的關(guān)鍵階段。設(shè)計(jì)質(zhì)量的高低直接決定了軟件項(xiàng)目的成敗,缺乏或者沒(méi)有軟件設(shè)計(jì)的過(guò)程會(huì)產(chǎn)生一個(gè)不穩(wěn)定的、甚至是失敗的軟件系統(tǒng)。一個(gè)良好的軟件設(shè)計(jì)是進(jìn)行快速軟件開(kāi)發(fā)的根本,沒(méi)有良好的設(shè)計(jì),會(huì)將時(shí)間花在不斷的調(diào)試上,無(wú)法添加新功能,修改時(shí)間越來(lái)越長(zhǎng),隨著給程序打上一個(gè)有一個(gè)的補(bǔ)丁,新的功能需要更多的代碼實(shí)現(xiàn),就變成一個(gè)惡性循環(huán)了。概要設(shè)計(jì)是軟件設(shè)計(jì)級(jí)別中的高級(jí)設(shè)計(jì),是從需求出發(fā),描述了總體上系統(tǒng)架構(gòu)應(yīng)該包含的要素。概要設(shè)計(jì)盡可能模塊化,因此描述了各個(gè)模塊之間的關(guān)聯(lián),主要是根據(jù)需求規(guī)格或規(guī)格定義,合理、有效地實(shí)現(xiàn)產(chǎn)品規(guī)格中定義的各項(xiàng)需求,完成軟件模塊的劃分并描述模塊之間的關(guān)系,并不斷分解系統(tǒng)模塊,從高層分解到低層分解。它注重框架設(shè)計(jì)、總體結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、接口設(shè)計(jì)、網(wǎng)絡(luò)環(huán)境設(shè)計(jì)等,將產(chǎn)品分割成一些可以獨(dú)立設(shè)計(jì)和實(shí)現(xiàn)的部分并保證各個(gè)部分可以和諧的工作。此過(guò)程中畫(huà)數(shù)據(jù)流圖、ipo圖、e-r圖、界面設(shè)計(jì)等。
出程序的詳細(xì)規(guī)格說(shuō)明,這種規(guī)格說(shuō)明類(lèi)似于其他工程領(lǐng)域中工程師經(jīng)常使用的工程藍(lán)圖,程序員根據(jù)其中所包含的必要的細(xì)節(jié)寫(xiě)出實(shí)際的程序代碼。用另一種方式說(shuō)就是,詳細(xì)設(shè)計(jì)是將概要設(shè)計(jì)的框架內(nèi)容具體化、明細(xì)化,將概要設(shè)計(jì)轉(zhuǎn)化為可以操作的軟件模型,但在實(shí)際項(xiàng)目進(jìn)行過(guò)程中,依據(jù)項(xiàng)目的具體情況和項(xiàng)目要求,這個(gè)過(guò)程可能可以省略(邏輯上沒(méi)有省略,表現(xiàn)在概要設(shè)計(jì)階段或者編碼階段),直接按照概要設(shè)計(jì)進(jìn)行編碼;不過(guò),個(gè)人認(rèn)為最好有,有詳細(xì)設(shè)計(jì)可以更好的保證編碼順利的進(jìn)行,可以預(yù)先掃清編碼過(guò)程中的障礙,提高代碼的質(zhì)量和編碼的效率。主要包括模塊描述、算法描述、數(shù)據(jù)描述,可以采用圖形、表格或者文字描述等方式表達(dá)出來(lái)。
代碼的時(shí)候,更不要錯(cuò)過(guò)重構(gòu),另外,重構(gòu)可以和設(shè)計(jì)互補(bǔ)。還有一點(diǎn)值得注意,要在必要的時(shí)候部署編碼文檔。
六、測(cè)試:看軟件是否符合標(biāo)準(zhǔn)。軟件編碼完成之后,將軟件提交給用戶(hù)之前,需要對(duì)軟件進(jìn)行測(cè)試,這是保證軟件產(chǎn)品質(zhì)量的一個(gè)重要標(biāo)準(zhǔn),也是評(píng)估產(chǎn)品質(zhì)量的主要手段。軟件測(cè)試是從軟件工程中演化出來(lái)的一個(gè)分支,有著非常廣泛的內(nèi)容,并且隨著軟件產(chǎn)業(yè)的發(fā)展,它已經(jīng)變得越來(lái)越重要。軟件與生俱來(lái)就可能存在缺陷,為了防止和減少這些可能存在的缺陷,進(jìn)行軟件測(cè)試是有必要的,測(cè)試是最有效的的排錯(cuò)和防止缺陷和故障的手段。最原始的測(cè)試莫過(guò)于直接運(yùn)行軟件了,后來(lái)測(cè)試手段逐漸多樣化。測(cè)試手段有靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試面向?qū)ο蟮臏y(cè)試、自動(dòng)化測(cè)試等等之分。靜態(tài)測(cè)試或稱(chēng)靜態(tài)分析是指一種不通過(guò)執(zhí)行程序來(lái)進(jìn)行測(cè)試的一種技術(shù),主要是檢查軟件的表示和描述是否一致,覆蓋程序的編碼格式、程序語(yǔ)法、檢查獨(dú)立語(yǔ)句的結(jié)構(gòu)和使用等,主要包括代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量等等,可以通過(guò)人工進(jìn)行,亦可借助工具(如:語(yǔ)法分析器)自動(dòng)進(jìn)行。動(dòng)態(tài)測(cè)試是運(yùn)行被測(cè)試的程序,通過(guò)輸入測(cè)試用例,對(duì)其運(yùn)行情況進(jìn)行分析,以達(dá)到檢測(cè)的目的,顯然動(dòng)態(tài)測(cè)試封像我們通常意義上的“測(cè)試”。動(dòng)態(tài)測(cè)試主要包括白盒測(cè)試、黑盒測(cè)試、灰盒測(cè)試(介于黑盒和白盒之間)。其他測(cè)試不再一一介紹。
打水漂了。為了保證成功地將我們開(kāi)發(fā)的軟件提交給用戶(hù),我們需要對(duì)用戶(hù)進(jìn)行培訓(xùn),同時(shí)提交必要的文檔及用戶(hù)手冊(cè)軟件。維護(hù)就不用多說(shuō)了,就是售后服務(wù)了。維護(hù)需要分析人員、編碼人員和設(shè)計(jì)人員等角色的參與,有糾錯(cuò)行維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)、預(yù)防性維護(hù)等。維護(hù)后,要寫(xiě)軟件維護(hù)過(guò)程文檔,至少提交一個(gè)軟件維護(hù)記錄。以上是軟件工程及其幾個(gè)階段的介紹,知道怎樣開(kāi)發(fā)軟件只是軟件工程的一部分,搞好團(tuán)隊(duì)合作也是很重要的。項(xiàng)目是一個(gè)很大的工程,需要一個(gè)團(tuán)隊(duì)的統(tǒng)籌規(guī)劃,團(tuán)結(jié)協(xié)作,集思廣益,舉一反三,才能夠按預(yù)期完成。
軟件工程的學(xué)習(xí)心得體會(huì)篇四
作為一名軟件工程專(zhuān)業(yè)的學(xué)生,我在近期學(xué)習(xí)的“軟件工程概論”課程中有了很多收獲和體會(huì)。通過(guò)這門(mén)課程,我更加深刻地認(rèn)識(shí)到了軟件工程的重要性和其領(lǐng)域的多樣性。在日后的學(xué)習(xí)和實(shí)踐工作中,我將會(huì)更加努力地掌握相關(guān)知識(shí),提升自己的技能和綜合素質(zhì),做一個(gè)優(yōu)秀的軟件工程師。
本次軟件工程概論的課程主要從軟件過(guò)程、軟件生命周期、軟件質(zhì)量、軟件工程方法學(xué)等方面進(jìn)行了系統(tǒng)的介紹和講解。在學(xué)習(xí)過(guò)程中,我們通過(guò)理論學(xué)習(xí)和實(shí)際案例演示等多種方式,深入了解了軟件開(kāi)發(fā)的全過(guò)程,明確了軟件需求分析、軟件設(shè)計(jì)、編碼與測(cè)試、維護(hù)等各個(gè)環(huán)節(jié)的重要性。同時(shí),學(xué)習(xí)了如何控制項(xiàng)目中的工期、成本和質(zhì)量,如何保證項(xiàng)目進(jìn)度和質(zhì)量的有效管理,以及如何開(kāi)展有效的軟件開(kāi)發(fā)工作。
在學(xué)習(xí)軟件工程概論的課程中,我更加深刻地認(rèn)識(shí)到了軟件工程的重要性和復(fù)雜性。我們需要在整個(gè)軟件開(kāi)發(fā)的過(guò)程中,進(jìn)行需求分析、系統(tǒng)設(shè)計(jì)、開(kāi)發(fā)和測(cè)試等一系列的工作,確保軟件系統(tǒng)能夠滿(mǎn)足預(yù)期目標(biāo)。同時(shí),我們也需要關(guān)注軟件的維護(hù)和更新,隨時(shí)根據(jù)需求進(jìn)行優(yōu)化和改進(jìn)。在實(shí)踐的過(guò)程中,我們還需要進(jìn)行團(tuán)隊(duì)協(xié)作,有效地管理項(xiàng)目進(jìn)度和質(zhì)量等方面的問(wèn)題。只有當(dāng)我們充分理解軟件的復(fù)雜性,并且有一套有效的軟件開(kāi)發(fā)及管理模式時(shí),才能夠順利地推進(jìn)項(xiàng)目工作,取得良好的效果。
學(xué)習(xí)軟件工程概論,不僅能夠?qū)W習(xí)到知識(shí),更能夠培養(yǎng)我們的素質(zhì)和能力。我們通過(guò)學(xué)習(xí)軟件開(kāi)發(fā)的流程和方法,養(yǎng)成了系統(tǒng)化的思維方式,能夠更好地理解問(wèn)題和解決問(wèn)題。同時(shí),我們也學(xué)習(xí)到了互聯(lián)網(wǎng)時(shí)代的軟件開(kāi)發(fā)模式和管理方式,使我們更加適應(yīng)互聯(lián)網(wǎng)時(shí)代的工作環(huán)境。此外,我們對(duì)團(tuán)隊(duì)協(xié)作、進(jìn)度管理和質(zhì)量控制等方面的問(wèn)題也有了更深入的認(rèn)識(shí)。這些都將為我們?nèi)蘸蟮膶W(xué)習(xí)和工作提供極大的幫助。
五、結(jié)語(yǔ)。
軟件工程概論的學(xué)習(xí),使我對(duì)軟件工程有了更深入的了解。我了解了軟件開(kāi)發(fā)的全過(guò)程和軟件項(xiàng)目管理的重要性;同時(shí),我養(yǎng)成了系統(tǒng)化的思維方式,能夠更好地應(yīng)對(duì)未來(lái)的學(xué)習(xí)和工作。在以后的學(xué)習(xí)和實(shí)踐工作中,我將會(huì)更加努力地掌握相關(guān)知識(shí),提升自己的技能和綜合素質(zhì),成為一名優(yōu)秀的軟件工程師。
軟件工程的學(xué)習(xí)心得體會(huì)篇五
談到機(jī)械工程先來(lái)講講機(jī)械,中國(guó)的機(jī)械發(fā)展有著悠久的歷史,五千年前的紡織機(jī)械、晉朝時(shí)期的連機(jī)錐和水碾、西漢時(shí)期的指南車(chē)和鼔車(chē)、東漢的地震儀、秦始皇時(shí)期的銅車(chē)馬??國(guó)外機(jī)械的產(chǎn)生要追溯到18世紀(jì)初,第一次工業(yè)革命產(chǎn)生蒸汽機(jī)和一些以蒸汽機(jī)為動(dòng)力的近代機(jī)械的雛形,再到19世紀(jì)代左右的第二次工業(yè)革命,內(nèi)燃機(jī)的產(chǎn)生帶來(lái)了新的動(dòng)力機(jī)械,開(kāi)始了機(jī)械的迅猛發(fā)展。從機(jī)械和社會(huì)的發(fā)展來(lái)看,一個(gè)社會(huì)機(jī)械水平越高,生產(chǎn)力水平越強(qiáng)?,F(xiàn)代社會(huì)也是一樣,機(jī)械是現(xiàn)代社會(huì)進(jìn)行生產(chǎn)和服務(wù)的六大要素(人、資金、信息、能量、材料和機(jī)械)之一,機(jī)械工業(yè)是國(guó)民經(jīng)濟(jì)的支柱工業(yè)之一,是社會(huì)生產(chǎn)力發(fā)展水平的重要標(biāo)志。綜上可見(jiàn),機(jī)械是一個(gè)國(guó)家發(fā)展、民族復(fù)興的重要保證。
機(jī)械社會(huì)發(fā)展中的地位如此之高,那機(jī)械工程呢?機(jī)械工程是運(yùn)用數(shù)學(xué)、物理等基礎(chǔ)理論和有關(guān)機(jī)械方面的專(zhuān)門(mén)知識(shí),結(jié)合生產(chǎn)實(shí)際經(jīng)驗(yàn),經(jīng)濟(jì)有效地解決在設(shè)計(jì)、研究、制造和運(yùn)行各種機(jī)械中遇到的實(shí)際問(wèn)題。從定義上可以看出,機(jī)械工程是一個(gè)系統(tǒng)性的全面的工程,可以盡可能合理的創(chuàng)造和最大化的利用機(jī)械??梢?jiàn),在21世紀(jì)這樣一個(gè)充滿(mǎn)市場(chǎng)競(jìng)爭(zhēng)和需要不斷創(chuàng)新的時(shí)代,機(jī)械工程運(yùn)用的好與不好,往小一點(diǎn)說(shuō),直接關(guān)系到一個(gè)企業(yè)的存亡問(wèn)題,往大一點(diǎn)說(shuō),直接決定了一個(gè)國(guó)家機(jī)械工業(yè)方面的軟實(shí)力。機(jī)械工程對(duì)國(guó)家發(fā)展如此之重要,對(duì)于未來(lái)希望成為工程師的大學(xué)生的我來(lái)說(shuō),沒(méi)有理由不好好的了解機(jī)械工程。
工程中力學(xué)包含:理論力學(xué)、流體力學(xué)、材料力學(xué)、震動(dòng)力學(xué)、計(jì)算力學(xué)。這些力學(xué)是進(jìn)行機(jī)械設(shè)計(jì)和制造的基礎(chǔ),學(xué)好這些理論才能知道運(yùn)動(dòng)以怎樣的機(jī)構(gòu)傳遞,能量以怎樣的機(jī)器傳遞。
機(jī)械設(shè)計(jì)包含了很多的設(shè)計(jì)方法,除去傳統(tǒng)設(shè)計(jì)方法不說(shuō),現(xiàn)代設(shè)計(jì)方法包含:優(yōu)化設(shè)計(jì)、可靠性設(shè)計(jì)、有限元分析、并行設(shè)計(jì)、綠色設(shè)計(jì)、創(chuàng)新設(shè)計(jì)、模塊化設(shè)計(jì)和反求設(shè)計(jì)。其中有限元分析、綠色設(shè)計(jì)和反求設(shè)計(jì)令我印象深刻。利用電腦軟件對(duì)設(shè)想的機(jī)械部件進(jìn)行有限元分析,可以確保設(shè)計(jì)的合理性和可利用行,如此以來(lái),可以在不做出模型的情況下就可以清楚的了解結(jié)構(gòu)的性能,節(jié)約了時(shí)間不說(shuō)更節(jié)約了大量的人力、物力財(cái)力。在綠色設(shè)計(jì)方面,美國(guó)的廢舊汽車(chē)?yán)每芍^楷模,報(bào)廢汽車(chē)再利用率達(dá)到了百分之九十五,再利用零部件重量超過(guò)舊車(chē)的總重量的百分之七十五,可以說(shuō)節(jié)約了大量的資源,對(duì)環(huán)境有了一個(gè)很好的保護(hù),這點(diǎn)反觀(guān)我的祖國(guó),確實(shí)有必要學(xué)習(xí)一下,我國(guó)現(xiàn)在汽車(chē)每年的購(gòu)買(mǎi)量都在大幅度上漲,隨之而來(lái)的必然會(huì)有大量的報(bào)廢汽車(chē),這是新的產(chǎn)業(yè),也是一個(gè)新的經(jīng)濟(jì)增長(zhǎng)點(diǎn),不但節(jié)約資源保護(hù)環(huán)境,還可以促進(jìn)經(jīng)濟(jì)增長(zhǎng),真是一舉兩得的好事啊。這些設(shè)計(jì)方法中,最讓我眼睛一亮的要數(shù)“反求設(shè)計(jì)”,二戰(zhàn)戰(zhàn)敗國(guó)日本就是運(yùn)用這種方法,以“一代引進(jìn),二代國(guó)產(chǎn)化,三代改進(jìn)口、四代占領(lǐng)國(guó)際市場(chǎng)”方針,迅速的崛起為世界第二大經(jīng)濟(jì)體。日本的成果是對(duì)這種方法實(shí)質(zhì)的最好詮釋?zhuān)袊?guó)也在使用這種方法,不過(guò)是歪曲了的,只顧模仿不懂得吃透他人的技術(shù)再創(chuàng)新,是中國(guó)科學(xué)技術(shù)落后與發(fā)達(dá)國(guó)家的一個(gè)重要因素。模仿不可怕,可怕的是照搬照套!用好“反求設(shè)計(jì)”實(shí)現(xiàn)“比他人做得更好”。
機(jī)械制造技術(shù)包含兩方面含義:
1、指用機(jī)械加工零件的技術(shù);。
2、指制造某種機(jī)械的技術(shù)。在制造技術(shù)方面,先進(jìn)制造技術(shù)顯得更適合現(xiàn)代化,通過(guò)將多方面的技術(shù)進(jìn)行交叉、融合和集成,綜合應(yīng)用于產(chǎn)品全生命周期的制造過(guò)程,可以更經(jīng)濟(jì)更有效率更好的制造出適應(yīng)市場(chǎng)需求的產(chǎn)品。特別是三維打印技術(shù),可以通過(guò)電腦造型,再通過(guò)3d打印機(jī)打印出模型來(lái)觀(guān)察產(chǎn)品的合理性和可用性,方便效率高。
最后談?wù)剻C(jī)電一體化技術(shù),機(jī)器人現(xiàn)在是各個(gè)國(guó)家研究的熱門(mén)項(xiàng)目,每個(gè)國(guó)家都希望在這方面領(lǐng)先全球,機(jī)器人就是典型的利用了機(jī)電一體化技術(shù)的產(chǎn)品,是機(jī)械和電子的有機(jī)結(jié)合。從20世紀(jì)中后期,機(jī)電一體化就代表了現(xiàn)代機(jī)械工程的發(fā)展方向,產(chǎn)生了眾多高新機(jī)械產(chǎn)品,如:火箭、衛(wèi)星、宇宙飛船、航空母艦、深海探測(cè)器??梢?jiàn),機(jī)電一體化的前景非常不錯(cuò),不過(guò)要想學(xué)好這么技術(shù),作為機(jī)械專(zhuān)業(yè)的學(xué)生來(lái)說(shuō),就有必要好好的學(xué)學(xué)計(jì)算機(jī)和信息類(lèi)的知識(shí),畢竟機(jī)電一體化中電子占了很大的比重,為了自己未來(lái)的發(fā)展,也為了趕上現(xiàn)代化的機(jī)械工程方向,我要努力的學(xué)好機(jī)械專(zhuān)業(yè)課的同時(shí),多涉獵一些電子類(lèi)的書(shū)籍,為未來(lái)的發(fā)展奠定基礎(chǔ)。
軟件工程的學(xué)習(xí)心得體會(huì)篇六
軟件工程心得體會(huì)未接觸軟件工程之前一直都很想學(xué)這門(mén)課程,因?yàn)橛X(jué)得這門(mén)課很牛,是那些有工程師稱(chēng)號(hào)的高手才擺弄的東西。學(xué)了一個(gè)學(xué)期的軟件工程課,終于知道了個(gè)軟件工程的大概。學(xué)的時(shí)候總覺(jué)得很抽象,理解起來(lái)好像不難,但總是摸不著頭腦一種很茫然的感覺(jué)。曾經(jīng)以為程序就是軟件,軟件就是程序。學(xué)習(xí)這門(mén)課程第一個(gè)收獲是,知道了二者的不同之處。以前做過(guò)的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個(gè)軟件的說(shuō)明,看來(lái)已經(jīng)很接近作坊了。不過(guò)大的項(xiàng)目沒(méi)有接觸過(guò),用軟件工程的方法還是第一次。我想也是程序的不斷復(fù)雜化導(dǎo)致了軟件危機(jī)的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過(guò)倪老師的講解,理解了軟件工程,就是一套用于軟件的團(tuán)隊(duì)開(kāi)發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對(duì)于軟件開(kāi)發(fā)的5個(gè)重要組成部分:需求分析,設(shè)計(jì),編碼,調(diào)試,維護(hù),如何組織這5個(gè)部分的工作,以及如何完成每一個(gè)工作。吾生也有涯,而知也無(wú)涯,學(xué)習(xí)永無(wú)止境。起初,對(duì)軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學(xué)習(xí)過(guò)程中,知道了團(tuán)隊(duì)合作十分重要,爭(zhēng)議固然存在,但通過(guò)討論、協(xié)商,群策群力,在不斷磨合中能夠達(dá)成一致與默契。團(tuán)隊(duì)成員中能力各有高下,互相尊重,各取所長(zhǎng),不宜妄自菲薄。組長(zhǎng)多加協(xié)調(diào),組員積極配合,才能合作愉快。學(xué)習(xí)能力體現(xiàn)在能盡快接受新的知識(shí),順應(yīng)變化,學(xué)為所用。
上《軟件工程導(dǎo)論》這門(mén)課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。專(zhuān)業(yè)點(diǎn)講,軟件工程最終是為了實(shí)現(xiàn)“軟件制造業(yè)”的社會(huì)化,工業(yè)化大生產(chǎn),提高其勞動(dòng)生產(chǎn)效率。只有如此,軟件業(yè)才能實(shí)現(xiàn)社會(huì)化,工業(yè)化大生產(chǎn),才能“做大做強(qiáng)”。沒(méi)有管理的設(shè)計(jì)是失敗和混亂的設(shè)計(jì),沒(méi)有設(shè)計(jì)指導(dǎo)的編程是無(wú)序的忙碌的。根據(jù)開(kāi)發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運(yùn)用軟件工程化的思想,需要靈活,畢竟我們開(kāi)發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(jiàn)(我是這么認(rèn)為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實(shí)開(kāi)發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。想想自己平時(shí)是怎樣寫(xiě)程序的。首先是要有一個(gè)想法,即我寫(xiě)的這個(gè)程序是要干什么的;然后就是對(duì)要實(shí)現(xiàn)的核心功能大概構(gòu)思一種或多種實(shí)現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來(lái)就是將涉及的各種主要或次要功能分成各個(gè)模塊;最后就是分模塊來(lái)編碼和debug。在我看來(lái),除了第一步外,其余的步驟應(yīng)該是一個(gè)循環(huán)的過(guò)程。在編碼的過(guò)程中,你總是需要不斷地回過(guò)頭來(lái)修改原先的模塊設(shè)計(jì),甚至最初選定的實(shí)現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計(jì),編碼,調(diào)試,維護(hù)這幾部分的工作的時(shí)候,最核心的就是文檔的編寫(xiě)。
1.可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。
2.項(xiàng)目描述這是在決定立項(xiàng)以后,對(duì)當(dāng)前項(xiàng)目的一份扼要說(shuō)明。
3.需求分析就是對(duì)客戶(hù)要求的功能的定義。
4.軟件設(shè)計(jì)這就是對(duì)程序的每一個(gè)模塊的詳細(xì)設(shè)計(jì)的說(shuō)明文檔。
5.開(kāi)發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。開(kāi)發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫(xiě)程序時(shí)突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動(dòng)等,還要對(duì)上述這些修改變動(dòng)作些說(shuō)明。
6.測(cè)試分析用于指出程序存在或潛在的缺陷和錯(cuò)誤,以及程序性能的數(shù)字描述。
軟件工程的學(xué)習(xí)心得體會(huì)篇七
學(xué)習(xí)了這門(mén)課程, 還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實(shí)例,讓理論和實(shí)踐得到了很好的結(jié)合。整一個(gè)學(xué)期下來(lái),總的來(lái)說(shuō)還是學(xué)到了很多東西的,有很多地方是值得肯定的,其實(shí)在我看來(lái),軟件工程與其說(shuō)是一門(mén)課程,不如說(shuō)是一門(mén)思想。是一個(gè)如何去分析和處理問(wèn)題的過(guò)程,應(yīng)該說(shuō)其范疇已經(jīng)遠(yuǎn)遠(yuǎn)不止局限于該門(mén)課程,成為了一個(gè)綜合的一個(gè)能夠解決問(wèn)題的思想集合。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則: 軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。 軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo 圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀(guān)地顯示輸入處理輸出三者之間的聯(lián)系。還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書(shū)、軟件設(shè)計(jì)說(shuō)明書(shū)、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護(hù)又從何談起呢所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
軟件工程的學(xué)習(xí)心得體會(huì)篇八
軟件工程(softwareengineering,簡(jiǎn)稱(chēng)為se)是一門(mén)研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),軟件開(kāi)發(fā)工具,系統(tǒng)平臺(tái),標(biāo)準(zhǔn),設(shè)計(jì)模式等方面。在現(xiàn)代社會(huì)中,軟件應(yīng)用于多個(gè)方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機(jī)界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫(kù),游戲等。同時(shí),各個(gè)行業(yè)幾乎都有計(jì)算機(jī)軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門(mén)等。這些應(yīng)用促進(jìn)了經(jīng)濟(jì)和社會(huì)的發(fā)展,使得人們的工作更加高效,同時(shí)提高了生活質(zhì)量。
在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性并且滿(mǎn)足用戶(hù)需求的軟件產(chǎn)品。
是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。軟件工程的原則有以下四項(xiàng)基本原則:1)選取適宜開(kāi)發(fā)范型;2)采用合適的設(shè)計(jì)方法;3)提供高質(zhì)量的工程支持;4)重視開(kāi)發(fā)過(guò)程的管理。
據(jù)說(shuō)上個(gè)世紀(jì)60年代的程序員都是天才,寫(xiě)程式就像寫(xiě)日記一樣,吃過(guò)晚飯沒(méi)事干隨手就可以寫(xiě)幾個(gè)出來(lái)玩,第二天還可以拿去賣(mài)錢(qián)。所以那時(shí)候程序員在大家眼中,跟那些搞美術(shù),音樂(lè)的是一類(lèi)的,被稱(chēng)為“藝術(shù)家”。
但事過(guò)境遷,就像任何人都不會(huì)嫌錢(qián)多一樣,永遠(yuǎn)都不會(huì)有人嫌cpu快的。于是,隨之而來(lái)的就是硬件的迅猛發(fā)展和越來(lái)越變態(tài)的軟件。記得以前常去同學(xué)家拷游戲,通常幾張軟盤(pán)就可以搞定,而現(xiàn)在的游戲,兩三張cd-rom都算少的了。像如此龐大復(fù)雜的怪物,就算你是如何的天才,一個(gè)人肯定是搞不定的,否則,等你把程式寫(xiě)出來(lái),人家intel連奔騰n都開(kāi)發(fā)出來(lái)了。既要開(kāi)發(fā)大型的軟件還要追求速度(這樣才能賺錢(qián)),于是很自然地,合作的概念被提了出來(lái)。
在開(kāi)始合作的初期,由于大家都習(xí)慣了當(dāng)很有個(gè)性的“藝術(shù)家”,結(jié)果可想而知,一個(gè)是畢加索派的,而另一個(gè)是意大利印象派的,再加上一個(gè)畫(huà)潑墨山水畫(huà)的,要是像這樣湊出來(lái)的東西都能不出問(wèn)題的話(huà),那么bill早就轉(zhuǎn)行了。所以,那時(shí)侯的大型軟件,據(jù)說(shuō)“藍(lán)屏”比windows98還多。
馬克思告訴我們,萬(wàn)物都是從量變到質(zhì)變的。隨著問(wèn)題的不斷涌現(xiàn),一些master們開(kāi)始嘗試去總結(jié)經(jīng)驗(yàn),并歸納了一些規(guī)范去指導(dǎo)軟件的分析,設(shè)計(jì),實(shí)現(xiàn),測(cè)試,維護(hù),人員交流協(xié)作,項(xiàng)目預(yù)算及時(shí)限控制等方方面面,這就是軟件工程的前身。
軟件工程到現(xiàn)在已發(fā)展了30多年,可以說(shuō)是相當(dāng)成熟的了。現(xiàn)在開(kāi)發(fā)軟件,據(jù)說(shuō)都是一大幫人排排坐,按著一整套的規(guī)章制度來(lái)干活。于是,軟件開(kāi)發(fā)成了“工程”,程序員也就淪為“工人”了。
軟件工程,說(shuō)白了,就是這樣一套用于軟件的團(tuán)隊(duì)開(kāi)發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對(duì)于軟件開(kāi)發(fā)的5個(gè)重要組成部分:需求分析,設(shè)計(jì),編碼,調(diào)試,維護(hù),如何組織這5個(gè)部分的工作,以及如何完成每一個(gè)工作。簡(jiǎn)單來(lái)說(shuō),就是對(duì)于總體的組織和對(duì)于局部的實(shí)現(xiàn)。
開(kāi)發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。想想自己平時(shí)是怎樣寫(xiě)程序的。首先是要有一個(gè)想法,即我寫(xiě)的這個(gè)程序是要干什么的;然后就是對(duì)要實(shí)現(xiàn)的核心功能大概構(gòu)思一種或多種實(shí)現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來(lái)就是將涉及的各種主要或次要功能分成各個(gè)模塊;最后就是分模塊來(lái)編碼和debug。除了第一步外,其余的步驟應(yīng)該是一個(gè)循環(huán)的過(guò)程。既然軟件開(kāi)發(fā)是一個(gè)具有不可預(yù)知性和變化性的`動(dòng)態(tài)的過(guò)程,那么,對(duì)其每一個(gè)步驟的組織,即周期模型,就必須包容它的這種性質(zhì)。
具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計(jì),編碼,調(diào)試,維護(hù)這幾部分的工作的時(shí)候,最核心的就是文檔的編寫(xiě)。文檔的作用在于以下3個(gè)方面:一是可以幫助整理思路。把要完成的目標(biāo),系統(tǒng)的結(jié)構(gòu),每一個(gè)模塊的功能等整理一下,然后分門(mén)別類(lèi)地寫(xiě)下來(lái),這樣在開(kāi)發(fā)的過(guò)程中,就有據(jù)可依,在需要回過(guò)頭來(lái)修改設(shè)計(jì)的時(shí)候,也有證可考。二是便于交流。想象一下開(kāi)會(huì)時(shí)的情形。一大幫子人爭(zhēng)先恐后,激烈辯論,然后會(huì)終人散,思想靈感也就隨之散了,結(jié)果是開(kāi)了半天會(huì),什么也沒(méi)討論出來(lái)。這就是后來(lái)會(huì)議記錄被發(fā)明出來(lái)的原因。在腦子里的東西一多,就會(huì)散而且亂,用語(yǔ)言表達(dá)的時(shí)候,很容易會(huì)丟三落四,別人也很難把握住你的思想。但經(jīng)過(guò)整理寫(xiě)在紙上以后,則會(huì)清晰得多,無(wú)論是別人還是自己,看起來(lái)都可以一目了然。三是可以作為以后維護(hù)時(shí)的參考資料。有一句名言:“筆和紙永遠(yuǎn)都比大腦可靠”,意思就是說(shuō),放在大腦里的東西說(shuō)不準(zhǔn)哪天就忘了,但寫(xiě)在紙上的東西,只要不發(fā)生什么意外,一般是丟不了的。當(dāng)過(guò)了一段時(shí)間,你需要再回過(guò)頭來(lái)修改你的程序的時(shí)候,你就會(huì)發(fā)現(xiàn),你以前寫(xiě)下的文檔實(shí)在太有價(jià)值了。別指望你的源代碼,對(duì)于復(fù)雜一點(diǎn)的程序來(lái)說(shuō),單純的源代碼幾乎會(huì)扼殺掉你所有的時(shí)間。
可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。主要考慮的方面包括:是否能把這個(gè)項(xiàng)目開(kāi)發(fā)出來(lái);假如可以的話(huà),預(yù)計(jì)需要多少時(shí)間,能否滿(mǎn)足客人的時(shí)間要求;需要多少人力和資金的投入;最重要的是,這個(gè)項(xiàng)目能否賺錢(qián),能賺多少。還要對(duì)可能存在的風(fēng)險(xiǎn)進(jìn)行評(píng)估。
時(shí)間飛逝,不知不覺(jué)間《軟件工程》的學(xué)習(xí)完了。在這將近半學(xué)期的學(xué)習(xí)中,雖然我不能說(shuō)我將《軟件工程》學(xué)習(xí)的有多么的好,但是通過(guò)學(xué)習(xí),我還是受益良多。
在以前,我一直對(duì)軟件存在一些偏見(jiàn)或則是誤解,認(rèn)為軟件就是程序,軟件的開(kāi)發(fā)就是編寫(xiě)程序,只要編完了程序,一切也就ok了,而且我還片面的認(rèn)為只要我掌握了時(shí)下最新的語(yǔ)言和工具,那么我就能寫(xiě)程序了。一個(gè)人,只要會(huì)編程,就能寫(xiě)軟件,就是程序員;一個(gè)公司,只要招聘一些程序員,就能開(kāi)發(fā)好的軟件產(chǎn)品。只要有幾個(gè)有經(jīng)驗(yàn)的程序員,再找些兼職的大學(xué)生,就能組成一個(gè)軟件公司。
但是通過(guò)了《軟件工程》這門(mén)課的學(xué)習(xí),使我認(rèn)識(shí)到了我以前的錯(cuò)誤。軟件其實(shí)不僅僅是程序,軟件開(kāi)發(fā)其實(shí)也不僅僅是編寫(xiě)程序,軟件是思想在硬件上的載體和體現(xiàn),處理的是邏輯和信息。唯有對(duì)軟件和軟件的開(kāi)發(fā)過(guò)程,有充分的認(rèn)識(shí),才能更好的開(kāi)發(fā)出,過(guò)程受控、質(zhì)量受控的軟件產(chǎn)品。
而且在以前,我一直以為軟件的開(kāi)發(fā)其實(shí)是一件很輕松快樂(lè)的事情,只要一天坐在電腦旁敲敲鍵盤(pán),那么一切就可以了,但是現(xiàn)在我才發(fā)現(xiàn),我以前的很多的思想是多么的膚淺可笑。編程其實(shí)是一種樂(lè)趣和苦惱共存的一項(xiàng)創(chuàng)造性活動(dòng)。因?yàn)榫幊滩粌H能夠滿(mǎn)足我們內(nèi)心深處進(jìn)行創(chuàng)造的渴望,而且還能愉悅我們內(nèi)在的情感。
而且通過(guò)學(xué)習(xí)《軟件工程》,我還學(xué)到了很多其他的東西。比如通過(guò)學(xué)習(xí)《軟件工程》,特別是教員的課程講解和每次用實(shí)際的軟件現(xiàn)場(chǎng)的講解,為我提供了一個(gè)盡早接觸世界工作和真實(shí)項(xiàng)目的機(jī)會(huì)。讓我知道如何在以最小的成本中,訓(xùn)練自己的基本工程素質(zhì)和能力,如何激發(fā)自己的積極性等。而且通過(guò)學(xué)習(xí)《軟件工程》,還讓我認(rèn)識(shí)和培養(yǎng)了我的團(tuán)隊(duì)協(xié)作能力,特別是對(duì)于我們這些在校的學(xué)生來(lái)說(shuō),這種學(xué)習(xí)更是能讓我在以后工作中少走很多的彎路。
所以,通過(guò)《軟件工程》的學(xué)習(xí),我是真的學(xué)習(xí)到了很多有用的東西,讓我明白了很多的道理。在此我對(duì)教員的辛勤教育表示感謝,因?yàn)槭悄阕屛覍W(xué)習(xí)到了這些,是我獲益良多。
軟件工程的學(xué)習(xí)心得體會(huì)篇九
軟件工程經(jīng)濟(jì)是近年來(lái)出現(xiàn)的嶄新的研究方向,是軟件工程和經(jīng)濟(jì)學(xué)相互融合深入的產(chǎn)物。下面是本站小編為大家整理的軟件工程。
供你參考!
時(shí)間過(guò)的很快,轉(zhuǎn)眼間已經(jīng)實(shí)習(xí)將近5個(gè)月,其中有2個(gè)月是屬于完全被流放的。最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開(kāi)發(fā)(struts+mysql+spring+hibernate),之后是去做網(wǎng)絡(luò)交換機(jī)軟件的腳本測(cè)試。現(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測(cè)試經(jīng)驗(yàn)。
至少自己做的東西,是真正交付到了客戶(hù)手上,到也稍微有些成就感。
1、淺談測(cè)試。
一直以來(lái),我都認(rèn)為測(cè)試是脫離了軟件工程范圍的工作,不以為屑。但在實(shí)際情況中,測(cè)試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責(zé)任在你,而不在于編碼人員。一般的測(cè)試人員不懂編碼,他們靠的是日以累計(jì)的經(jīng)驗(yàn)總結(jié)和想象力。而要做到高級(jí)測(cè)試工程師,則一定要懂編碼,因?yàn)檫@是你完全掌握整個(gè)系統(tǒng)的方方面面具體運(yùn)作的前提。但占主導(dǎo)地位的,還是大型系統(tǒng)的集成測(cè)試經(jīng)驗(yàn)。實(shí)際項(xiàng)目中,編碼時(shí)間一般只占30%左右,真正耗費(fèi)時(shí)間的是it階段的找bug與對(duì)應(yīng)bug,此階段基本評(píng)定了coder的編碼質(zhì)量。
2、程序員的困惑。
有位同事告訴我:代碼看幾遍都沒(méi)用,要去抄,例如一個(gè)查詢(xún)模塊,在此基礎(chǔ)上去做具體記錄的歷史記錄查詢(xún)模塊,你可能會(huì)覺(jué)得很簡(jiǎn)單,但實(shí)際情況卻往往報(bào)一堆異常,配置問(wèn)題涉及到方方面面,以及數(shù)據(jù)庫(kù)字段,傳值問(wèn)題等等,一大堆對(duì)于新人來(lái)說(shuō)很郁悶的問(wèn)題。但不用怕,只要學(xué)會(huì)調(diào)試,一個(gè)個(gè)問(wèn)題去追蹤,一個(gè)個(gè)去解決,自然而然,那段“源碼”才真正屬于你。
3、如何調(diào)試追蹤。
如果你能在短短的時(shí)間內(nèi)就看到問(wèn)題點(diǎn)在那,放下斷點(diǎn)去追蹤,出去找工作,絕對(duì)沒(méi)問(wèn)題。出現(xiàn)問(wèn)題的時(shí)候,不要光看代碼,要用實(shí)際行動(dòng)去追蹤運(yùn)行期間的具體值,那是最好途徑。eclipse是個(gè)很爽的ide,這點(diǎn)做的很好。例如頁(yè)面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句去下手,設(shè)置斷點(diǎn),一步一步stepover,讓sql字段(存取最終sql語(yǔ)句的字符串)運(yùn)行到有值,inspect進(jìn)去看,如果還看不出來(lái),就點(diǎn)擊它,copy后在sql客戶(hù)端去實(shí)際運(yùn)行,看看實(shí)際查詢(xún)出來(lái)的表是什么,如果是對(duì)的,有可能就是頁(yè)面調(diào)用的錯(cuò)誤或者action邏輯的傳值問(wèn)題。
頁(yè)面錯(cuò)誤的調(diào)試,基本方法是用右鍵點(diǎn)擊實(shí)際網(wǎng)頁(yè)查看源代碼,copy到editplus,就能看到具體錯(cuò)誤發(fā)生在那幾行。通常有幾種常見(jiàn)的錯(cuò)誤,例如:缺少對(duì)象這種很多時(shí)候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(=null)語(yǔ)句加保護(hù)。追蹤的方法基本就是用alert語(yǔ)句,放在有可能出錯(cuò)的地方。
4、一些習(xí)慣。
遇到問(wèn)題先自己思考,無(wú)從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會(huì)了,不然你一輩子都停留在那種水平,從人身上學(xué)到的東西遠(yuǎn)遠(yuǎn)比書(shū)多的多。
解決了一個(gè)問(wèn)題后,要去究根問(wèn)底去找到問(wèn)題產(chǎn)生的起因,以防你下次遇到類(lèi)似的問(wèn)題再浪費(fèi)同樣的時(shí)間。
把代碼寫(xiě)的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過(guò)一個(gè)高手寫(xiě)的代碼,真的一看就是不同水平的人寫(xiě)的,幾乎很完美,讀起來(lái)很流暢,方便自己也方便別人。
任務(wù)完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務(wù),只要你肯去嘗試,他們就會(huì)對(duì)你另言相看,把三天的任務(wù)一天加班搞定,效率和忠誠(chéng)都有了,路也比較好走了。
一、實(shí)訓(xùn)目的:
通過(guò)對(duì)java語(yǔ)言、sql數(shù)據(jù)庫(kù)的應(yīng)用以及sql語(yǔ)言的復(fù)習(xí)和鍛煉,并且通過(guò)使用myeclipse開(kāi)發(fā)平臺(tái)設(shè)計(jì)管理項(xiàng)目,以達(dá)到充分熟悉開(kāi)發(fā)平臺(tái)及應(yīng)用設(shè)計(jì)。同時(shí)掌握并實(shí)踐軟件項(xiàng)目設(shè)計(jì)規(guī)范及其開(kāi)發(fā)流程:需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫(xiě)等,以便提前適應(yīng)軟件公司開(kāi)發(fā)流程、環(huán)境和工作要求。
二、實(shí)訓(xùn)內(nèi)容:
1.項(xiàng)目:(“當(dāng)當(dāng)網(wǎng)”)。
2.完成(用戶(hù)注冊(cè)、登錄、列表、購(gòu)物車(chē)、刪除、修改)等功能。
3.數(shù)據(jù)庫(kù)設(shè)計(jì)、sql應(yīng)用。
4.項(xiàng)目實(shí)戰(zhàn)。
三、實(shí)訓(xùn)總結(jié):
轉(zhuǎn)眼間實(shí)訓(xùn)已過(guò)去一段時(shí)間,之前的興奮、喜悅?cè)缃褚呀?jīng)讓我熟悉,在實(shí)訓(xùn)的每一天都會(huì)讓我有成為一名真正的財(cái)富者擁有的沖動(dòng)。也許,在這期間不一定會(huì)讓一個(gè)人有著翻天覆地的變化,但變化就是這樣一點(diǎn)一點(diǎn)產(chǎn)生的。通過(guò)這一期的實(shí)訓(xùn),雖然倍感折磨,但是收獲卻是很大的,學(xué)習(xí)中我不但有了學(xué)習(xí)成果的喜悅,而且自己也日漸成熟,有種說(shuō)不出的喜悅。
在實(shí)訓(xùn)的過(guò)程中,我深深的體會(huì)到了自己在專(zhuān)業(yè)知識(shí)方面的欠缺和不足,也意識(shí)到了自己作為計(jì)算機(jī)軟件專(zhuān)業(yè)的學(xué)生,要想在以后的職業(yè)中嶄露頭角,除了要有過(guò)硬的理論知識(shí),健康的體魄之外,還必須具備良好的心理素質(zhì),是自己在以后的途中無(wú)論經(jīng)歷什么樣的困難,都立于不敗之地。通過(guò)實(shí)訓(xùn)老師的課堂講解與企業(yè)文化標(biāo)準(zhǔn)的培訓(xùn),使我加深了對(duì)自己專(zhuān)業(yè)的認(rèn)識(shí),從而確定自己以后的努力方向,要想在短暫的實(shí)訓(xùn)時(shí)間內(nèi)盡多的學(xué)到東西,就需要我們跟老師或同學(xué)進(jìn)行良好的溝通,加深彼此的了解,只有我們跟老師多溝通,讓老師更了解我們,才能更真切的對(duì)我們進(jìn)行培訓(xùn)工作。由此,班級(jí)的文化“共享”就在生活中慢慢形成了。
“紙上得來(lái)終覺(jué)淺,絕知此事要躬行!”在這短短的時(shí)間里,讓我深深的感覺(jué)到自己在實(shí)際應(yīng)用中所學(xué)來(lái)專(zhuān)業(yè)知識(shí)的匱乏。讓我真真領(lǐng)悟到“學(xué)無(wú)止境”這句話(huà)的涵義。而老師在專(zhuān)業(yè)認(rèn)識(shí)周到中所講的,都是課本上沒(méi)有而對(duì)我們非常有實(shí)際意義的。這又給我們的實(shí)訓(xùn)增添了濃墨淡彩的光輝。我懂得了實(shí)際生活中,專(zhuān)業(yè)知識(shí)是怎樣應(yīng)用與實(shí)踐的。在這些過(guò)程中,我不僅知道了職業(yè)生涯所需具備的專(zhuān)業(yè)知識(shí),而且讓我深深體會(huì)到一個(gè)團(tuán)隊(duì)中的各個(gè)成員合作的重要性,要善于團(tuán)隊(duì)合作,善于利用別人的智慧,這才是大智慧??繂我坏牧α渴呛茈y完成一個(gè)大項(xiàng)目的,在進(jìn)行團(tuán)隊(duì)合作的時(shí)候,還要耐心聽(tīng)取每一個(gè)成員的意見(jiàn),是我們的組合達(dá)到更加完美。
這次實(shí)訓(xùn)除了讓我明白工作中需要能力,素質(zhì),知識(shí)之外,更重要的是學(xué)會(huì)了如何去完成一個(gè)任務(wù),懂得了享受工作。當(dāng)遇到問(wèn)題,冷靜,想辦法一點(diǎn)一點(diǎn)的排除障礙,到最后獲取成功,一種自信心就由然而生,這應(yīng)該就是工作的樂(lè)趣。有時(shí)候不懂的就需要問(wèn)別人了,虛心請(qǐng)教,從別人的身上真的能學(xué)到自己沒(méi)有的東西,每一次的挫折都會(huì)使我更接近成功。還有學(xué)會(huì)了在工作中與人的合作與交流,同樂(lè)同累,合作互助,這是團(tuán)體的精神,也是必須學(xué)習(xí)的東西。
經(jīng)過(guò)之前的學(xué)習(xí),對(duì)程序設(shè)計(jì)有了一定的認(rèn)識(shí)與理解。在校期間,一直都是學(xué)習(xí)理論知識(shí),沒(méi)有機(jī)會(huì)去參與項(xiàng)目的開(kāi)發(fā)。所以說(shuō)實(shí)話(huà),這次實(shí)訓(xùn),軟件項(xiàng)目開(kāi)發(fā)對(duì)我來(lái)說(shuō)是比較抽象的,一個(gè)完整的項(xiàng)目要怎么分工以及完成該項(xiàng)目所要的步驟也不是很明確。而經(jīng)過(guò)這次實(shí)訓(xùn),讓我明白了一個(gè)完整項(xiàng)目的開(kāi)發(fā),必須由團(tuán)隊(duì)來(lái)分工合作,并在每個(gè)階段中進(jìn)行必要的總結(jié)與論證。
一個(gè)完整項(xiàng)目的開(kāi)發(fā)它所要經(jīng)歷的階段包括:遠(yuǎn)景范圍規(guī)劃和用例說(shuō)明、項(xiàng)目結(jié)構(gòu)和風(fēng)險(xiǎn)評(píng)估、業(yè)務(wù)功能。
說(shuō)明書(shū)。
詳細(xì)設(shè)計(jì)說(shuō)明書(shū)代碼實(shí)現(xiàn)測(cè)試和安裝包等等。一個(gè)項(xiàng)目的開(kāi)發(fā)所需要的財(cái)力人力都是很多的,如果沒(méi)有一個(gè)好的遠(yuǎn)景規(guī)劃,對(duì)以后的開(kāi)發(fā)進(jìn)度會(huì)有很大的影響,甚至?xí)霈F(xiàn)在預(yù)定時(shí)間內(nèi)不能完成項(xiàng)目或者完成的項(xiàng)目跟原來(lái)預(yù)想的不一樣。一份好的項(xiàng)目結(jié)構(gòu)業(yè)務(wù)功能和詳細(xì)設(shè)計(jì)說(shuō)明書(shū)對(duì)一個(gè)項(xiàng)目的開(kāi)發(fā)有明確的指引作用,它可以使開(kāi)發(fā)人員對(duì)這個(gè)項(xiàng)目所要實(shí)現(xiàn)的功能在總體上有比較明確的認(rèn)識(shí),還能減少在開(kāi)發(fā)過(guò)程中出現(xiàn)不必要的麻煩。代碼的實(shí)現(xiàn)是一個(gè)項(xiàng)目開(kāi)發(fā)成功與否的關(guān)鍵,也就是說(shuō),前期作業(yè)都是為代碼的實(shí)現(xiàn)所做的準(zhǔn)備。
我深刻的認(rèn)識(shí)到要成為一名優(yōu)秀的軟件開(kāi)發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實(shí)的編寫(xiě)代碼基礎(chǔ),必須要有事先對(duì)文檔進(jìn)行可靠性報(bào)告,功能說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū)等的編寫(xiě)和一些風(fēng)險(xiǎn)評(píng)估的編寫(xiě)的能力。
除了圖書(shū)館,最能讓我感覺(jué)到身在大學(xué)的就是實(shí)訓(xùn)機(jī)房,在匆匆過(guò)去的兩個(gè)月內(nèi),我往返于實(shí)訓(xùn)機(jī)房與宿舍之間,使我享受了一個(gè)充實(shí)的學(xué)習(xí)時(shí)期,讓我感受到了大學(xué)的魅力,對(duì)自己充滿(mǎn)信心,對(duì)大學(xué)充滿(mǎn)信心,以積極的心態(tài)迎接明天挑戰(zhàn)。
實(shí)訓(xùn)中要求有扎實(shí)的理論基本知識(shí),操作起來(lái)才順心應(yīng)手,我這時(shí)才明白什么是“書(shū)到用時(shí)方恨少”。這就激發(fā)了學(xué)習(xí)的欲望。“學(xué)以致用”,就是要把學(xué)來(lái)的知識(shí)能運(yùn)用到實(shí)際操作當(dāng)中,用實(shí)踐來(lái)檢驗(yàn)知識(shí)的正確性。我想,這是實(shí)訓(xùn)的最根本目的。
最初在實(shí)訓(xùn)時(shí)自己就有一些不自信,但隨著項(xiàng)目的進(jìn)展,我慢慢的找到了自己的位置,找到自己的目標(biāo),雖然自己與好的同學(xué)還有差距,這也給了我很大壓力,但是我相信沒(méi)有壓力就沒(méi)有動(dòng)力,所以在整個(gè)實(shí)訓(xùn)過(guò)程中我都在不斷地努力。
實(shí)訓(xùn)期間讓我學(xué)到很多東西,不僅在理論上讓我對(duì)it領(lǐng)域有了全新的認(rèn)識(shí),在實(shí)踐能力上也得到了很大的提高,真正的學(xué)到了學(xué)以致用,更學(xué)到很多做人的道理,對(duì)我來(lái)說(shuō)受益匪淺。我意識(shí)到自己知識(shí)的缺少,這激勵(lì)我在以后的學(xué)習(xí)、工作、生活中要不斷了解信息技術(shù)發(fā)展動(dòng)態(tài)以及信息發(fā)展中出現(xiàn)的新的技術(shù)。
除此之外,我還學(xué)到了如何與人相處,如何和人更好的交流,我們組成一個(gè)團(tuán)隊(duì)大家一起開(kāi)發(fā)一個(gè)項(xiàng)目,大家的交流溝通顯得尤為重要,如何將自己的想法清楚明白的告訴隊(duì)友,如何提出自己想法的同時(shí)又不傷害其他的隊(duì)友的面子,這些在我的實(shí)訓(xùn)生活中都有一些體會(huì)??墒钦f(shuō),第一次親身體會(huì)理論與實(shí)際相結(jié)合,讓我大開(kāi)眼界。也是對(duì)以前學(xué)習(xí)的一個(gè)初審吧,相信這次實(shí)訓(xùn)多我以后的學(xué)習(xí)、工作也將會(huì)有很大的影響,在實(shí)訓(xùn)的這段時(shí)間里這些寶貴的經(jīng)驗(yàn)將會(huì)成為我以后工作的基石。
作為即將畢業(yè)走出校園的學(xué)生,經(jīng)過(guò)3年的在校學(xué)習(xí),對(duì)程序設(shè)計(jì)有了一些基本的理性的認(rèn)識(shí)和理解。在校期間一直忙于理論的學(xué)習(xí),沒(méi)有機(jī)會(huì)也沒(méi)有經(jīng)驗(yàn)來(lái)參與我們項(xiàng)目的開(kāi)發(fā),所以在實(shí)習(xí)之前軟件按開(kāi)發(fā)對(duì)我來(lái)說(shuō)是非常抽象的,一個(gè)完整的項(xiàng)目要怎么來(lái)分工以及完成該項(xiàng)目所需要的基本步驟也不明確,通過(guò)這次實(shí)訓(xùn)讓我明白一個(gè)完整項(xiàng)目的完成必須團(tuán)隊(duì)分工合作,并在每個(gè)階段進(jìn)行必要的總結(jié)和檢查。在我們項(xiàng)目的開(kāi)發(fā)過(guò)程中我們項(xiàng)目的步驟:詳細(xì)設(shè)計(jì)、詳細(xì)設(shè)計(jì)review、編碼、編碼。在項(xiàng)目開(kāi)發(fā)過(guò)程中我也深刻的體會(huì)到詳細(xì)設(shè)計(jì)對(duì)一個(gè)項(xiàng)目開(kāi)發(fā)有明確的指引作用,它可以使開(kāi)發(fā)人員對(duì)這個(gè)項(xiàng)目所要實(shí)現(xiàn)的功能在總體上有具體的認(rèn)識(shí),并能減少在開(kāi)發(fā)過(guò)程中出現(xiàn)不必要的脫節(jié)。
這次實(shí)訓(xùn)是對(duì)我們學(xué)習(xí)的一個(gè)檢驗(yàn),雖然項(xiàng)目中很多知識(shí)我們?cè)谌粘5膶W(xué)習(xí)中都沒(méi)有遇到,這同時(shí)提醒我:要想成為一個(gè)合格的程序員就有具備一種自學(xué)能力,在工作中會(huì)遇到很多從未接觸過(guò)的問(wèn)題,當(dāng)有了問(wèn)題時(shí)要去解決,在你不斷努力,尋找答案的過(guò)程中,自己的能力也在潛移默化的提升。有時(shí)遇到問(wèn)題時(shí)可能有很多想法但卻不知道那個(gè)正確,這就讓我們不斷地去探索,不斷地嘗試。
在這次軟件工程課程中,我學(xué)到了很多東西,第一次深刻的體會(huì)到了什么叫做用工程化的思想來(lái)編寫(xiě)軟件,以前自己也寫(xiě)過(guò)一些小型軟件,沒(méi)有做過(guò)大型的項(xiàng)目,直到這次課堂我擔(dān)任組長(zhǎng)并組織組員共同完成“個(gè)人圖書(shū)管理系統(tǒng)”這個(gè)項(xiàng)目,第一次和別人合作,才發(fā)現(xiàn)運(yùn)用工程化的思想來(lái)做是如此的有必要。
從這里,我才真正的意識(shí)到實(shí)施一個(gè)軟件工程并不是說(shuō)簡(jiǎn)單的會(huì)編碼就能夠解決問(wèn)題的,我們更多的精力不是放在編碼上,編碼只是一個(gè)很小的模塊,只占到那么小的一個(gè)部分。這個(gè)事實(shí)在很大程度上顛覆了我以前的思想,在我以前的認(rèn)識(shí)中,似乎整個(gè)軟件就是編碼,除此無(wú)它,還好有老師的指導(dǎo),不然真的會(huì)出現(xiàn)老師所說(shuō)的,撞得頭破血流之后才想起來(lái)用軟件工程的思想來(lái)完成這個(gè)工作。
剛真正開(kāi)始工作之前,我們費(fèi)了很多的時(shí)間來(lái)完成一些前端工作,如需求分析和可行性分析,這塊工作在別人看來(lái)可能是相對(duì)無(wú)關(guān)緊要,甚至是多于的,其實(shí),換做在以前,我也會(huì)這么認(rèn)為??墒?,我現(xiàn)在算是深深地明白了磨刀不誤砍柴工的道理,這些工作的完成太有必要了,太重要了,要想你的軟件有用有市場(chǎng),能被別人接受和認(rèn)可,在進(jìn)行過(guò)程中不會(huì)出現(xiàn)崩潰性的問(wèn)題,這些工作缺一不可。
還有就是接下來(lái)的一些設(shè)計(jì)模塊,此模塊與軟件編碼涉及比較緊密,主要是解決一些參數(shù)傳遞和接口通訊的問(wèn)題,此模塊對(duì)我的觸動(dòng)遠(yuǎn)沒(méi)有上兩個(gè)模塊對(duì)我的影響大,因此再次也不做過(guò)多的介紹。
在整個(gè)活動(dòng)的完成過(guò)程中,作為組長(zhǎng),我收獲很多,我發(fā)現(xiàn),要是組里有個(gè)人不怎么想做事情時(shí),他對(duì)于整個(gè)組織的影響是毀滅性的,正所謂“一顆老鼠屎,能壞一倉(cāng)谷”,以后我的組織里要是出現(xiàn)這樣的人,我絕不會(huì)給他繼續(xù)留下來(lái)的機(jī)會(huì),我會(huì)在第一時(shí)間將他清除出去。還有就是,作為組長(zhǎng),你要做的最重要的事情,不是發(fā)揮自己的聰明才智,而是創(chuàng)造出一個(gè)平臺(tái),讓別人去發(fā)揮,你所要做得,出了保證這個(gè)平臺(tái)的完整性和公平性外,還有就是協(xié)調(diào)好各組員之間的關(guān)系。
軟件工程的學(xué)習(xí)心得體會(huì)篇十
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫(huà)分層的數(shù)據(jù)流圖、e—r圖以及狀態(tài)圖式本節(jié)的重點(diǎn)。第四章結(jié)構(gòu)化分析方法,這一章重點(diǎn)講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點(diǎn)講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說(shuō)帶來(lái)的好處,并告誡我們將來(lái)一點(diǎn)要形成好的編碼風(fēng)格。第六章軟件測(cè)試方法,本章講解了軟件測(cè)試相關(guān)的概念及重要性,軟件測(cè)試與開(kāi)發(fā)各個(gè)階段的關(guān)系;還介紹了白盒測(cè)試技術(shù)以及黑河測(cè)試技術(shù)。第七章統(tǒng)一建模語(yǔ)言u(píng)ml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時(shí)用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動(dòng)態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計(jì)模式,本章對(duì)軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計(jì),本章的重點(diǎn)是對(duì)面向?qū)ο蠓治鰰r(shí)建立的對(duì)象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動(dòng)以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。包括程序流程圖、n—s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱(chēng)之為程序框圖,它是軟件開(kāi)發(fā)者最熟悉的一種算法表達(dá)工具。它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀(guān)和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n—s圖:一種符合結(jié)構(gòu)化程序設(shè)計(jì)原則的圖形描述工具,稱(chēng)為盒圖,又稱(chēng)為n—s圖。在n—s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀(guān)地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書(shū)、軟件設(shè)計(jì)說(shuō)明書(shū)、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。
動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
軟件工程的學(xué)習(xí)心得體會(huì)篇十一
學(xué)習(xí)軟件工程一個(gè)學(xué)期以來(lái),我在陳燁老師的教導(dǎo)下確實(shí)獲益匪淺。軟件工程這門(mén)課,讓我對(duì)軟件的認(rèn)識(shí)有了大大的提升,從一開(kāi)始對(duì)軟件工程的一無(wú)所知,到現(xiàn)在一學(xué)期下來(lái)的不斷學(xué)習(xí),懂得了許多的知識(shí)。
軟件不僅僅是程序,而是思想在硬件上的載體和體現(xiàn),軟件工程與其說(shuō)是一門(mén)課程,不如說(shuō)是一門(mén)思想。讓我懂得如何去分析和處理問(wèn)題的過(guò)程,綜合解決問(wèn)題。
在這段時(shí)間的學(xué)習(xí)中,我明白了一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告等多個(gè)文檔,而軟件的生存周期可分為八個(gè)階段,分別是問(wèn)題定義,可行性研究,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),程序設(shè)計(jì),測(cè)試,文檔,技術(shù)支持,售后服務(wù)。而可行性包括經(jīng)濟(jì),技術(shù),法律和社會(huì)。了解了許多軟件開(kāi)發(fā)模型,比如瀑布模型,增量模型和螺旋模型,也了解了uml對(duì)象面向?qū)ο蠼?,知道如何?huà)流圖,碩果累累。其實(shí)軟件和程序是兩個(gè)不同的概念,軟件除了程序還要有使用和維護(hù)該程序所需要的全部文檔。包括需求文檔、設(shè)計(jì)文檔、測(cè)試文檔、維護(hù)文檔以及使用手冊(cè)。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,需要很好的基礎(chǔ)知識(shí)的理解和掌握,所以說(shuō)學(xué)好軟件工程不是僅僅書(shū)多看幾遍就可以成功,而是要多注意結(jié)合實(shí)際,多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決,然后舉一反三。
軟件工程這門(mén)課在我們畢業(yè)之后,是我們實(shí)際要運(yùn)用的一項(xiàng)非常有用的技能,這門(mén)課讓我意識(shí)到理論學(xué)習(xí)很重要,而實(shí)踐更重要,實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),只有實(shí)踐和理論相結(jié)合,才能使效益最大化。軟件工程的課雖然快要結(jié)束了,但是我對(duì)軟件工程的學(xué)習(xí)才剛剛開(kāi)始,有了這些基本知識(shí)做鋪墊,在以后做項(xiàng)目的時(shí)候?qū)?huì)是解決問(wèn)題的有效措施。
軟件工程的學(xué)習(xí)心得體會(huì)篇十二
對(duì)于一個(gè)軟件系統(tǒng)的開(kāi)發(fā),第一步就是問(wèn)題定義,了解所開(kāi)發(fā)系統(tǒng)的行業(yè)背景,制定計(jì)劃。當(dāng)我們計(jì)劃確定以后就要對(duì)項(xiàng)目系統(tǒng)本身進(jìn)行可行性研究,主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性三個(gè)方面著手。就比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的行業(yè)背景說(shuō)明文檔中非常詳細(xì)地分析了當(dāng)下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務(wù)說(shuō)明、應(yīng)用背景、未來(lái)發(fā)展趨勢(shì)以及相關(guān)應(yīng)用案例等四個(gè)方面,項(xiàng)目團(tuán)隊(duì)中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關(guān)的調(diào)查資料對(duì)將要開(kāi)發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來(lái)我們寫(xiě)這類(lèi)文檔的時(shí)候就是草草了事,不會(huì)做得這么詳細(xì),而這次看到大型項(xiàng)目的行業(yè)背景說(shuō)明也是這么詳細(xì),也讓自己認(rèn)識(shí)到不管是軟件開(kāi)發(fā)的那個(gè)階段都要認(rèn)真對(duì)待,這些瑣碎的文檔都是后期開(kāi)發(fā)項(xiàng)目的支撐,只要它們做的透徹,后面的開(kāi)發(fā)工作才能更順利的進(jìn)行。
第二、項(xiàng)目需求說(shuō)明方面
這部分項(xiàng)目需求說(shuō)明就是軟件定義時(shí)期中需求分析階段,而該階段的主要目的就是了解用戶(hù)的需要,根據(jù)用戶(hù)的需要確定系統(tǒng)必須完成那些工作,并對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫(xiě)出一份需求規(guī)格說(shuō)明,即為《物聯(lián)網(wǎng)物流倉(cāng)儲(chǔ)管理系統(tǒng)》項(xiàng)目需求說(shuō)明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項(xiàng)目時(shí)寫(xiě)的需求規(guī)格說(shuō)明書(shū)就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀(guān)整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來(lái)它不是很重要,寫(xiě)文檔的時(shí)候也不知道怎么寫(xiě)就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒(méi)有把自己項(xiàng)目的需求寫(xiě)明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗(yàn)教訓(xùn)我會(huì)對(duì)這部分更加重視。
第三、系統(tǒng)概要設(shè)計(jì)方面
這部分內(nèi)容分說(shuō)的是軟件設(shè)計(jì)時(shí)期的概要設(shè)計(jì)階段,該階段的主要目的就是實(shí)現(xiàn)系統(tǒng)的功能、設(shè)計(jì)軟件的結(jié)構(gòu)、模塊組成以及模塊之間的關(guān)系。在概要設(shè)計(jì)階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對(duì)比多種可能的系統(tǒng)實(shí)現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的結(jié)構(gòu)。在這個(gè)階段還會(huì)具體畫(huà)出e-r圖、數(shù)據(jù)流圖等方面的設(shè)計(jì)。
比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的系統(tǒng)概要設(shè)計(jì)從項(xiàng)目概述、設(shè)計(jì)約束、功能單元與功能模塊設(shè)計(jì)、數(shù)據(jù)e-r圖設(shè)計(jì)、總體設(shè)計(jì)、界面設(shè)計(jì)等六個(gè)方面介紹,通過(guò)讀這個(gè)文檔,我覺(jué)得最重要的還是總體設(shè)計(jì),分別從邏輯架構(gòu)設(shè)計(jì)、物理架構(gòu)設(shè)計(jì)、技術(shù)架構(gòu)設(shè)計(jì)設(shè)計(jì)系統(tǒng)。在這個(gè)階段中模塊要做到高內(nèi)聚低耦合,這樣開(kāi)發(fā)出來(lái)的系統(tǒng)才會(huì)具有更高的獨(dú)立性。
在原來(lái)做項(xiàng)目時(shí)沒(méi)有編寫(xiě)過(guò)這類(lèi)文檔,在該階段只是畫(huà)了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對(duì)該類(lèi)文檔尚未重視。通過(guò)張老師的講解和自己的學(xué)習(xí),我相信在以后做項(xiàng)目的時(shí)候一定會(huì)注意到這類(lèi)文檔的編寫(xiě)。
第四、詳細(xì)設(shè)計(jì)與分析方面
詳細(xì)設(shè)計(jì)階段就是把概要設(shè)計(jì)階段的每個(gè)模塊進(jìn)一步設(shè)計(jì),確定每個(gè)模塊所需要的算法和數(shù)據(jù)結(jié)構(gòu)。在這個(gè)階段還是需要我們?cè)O(shè)計(jì)出程序的詳細(xì)規(guī)格說(shuō)明,而不是編寫(xiě)程序。在詳細(xì)設(shè)計(jì)階段,系統(tǒng)設(shè)計(jì)人員可以通過(guò)使用程序流程圖、盒圖、pad圖等過(guò)程設(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ì)接口等,這些對(duì)于以后的編碼工作都是極其重要的。
第五、編碼和測(cè)試方案方面
關(guān)于編碼,我認(rèn)為編碼要想做的完美必備條件就是前面的軟件定義和軟件設(shè)計(jì)時(shí)期要按部就班的做,文檔一定要按要求書(shū)寫(xiě),不能偷懶也不能草草書(shū)寫(xiě)。對(duì)于編碼也要有相應(yīng)的文檔書(shū)寫(xiě)規(guī)范,要使源程序代碼的邏輯簡(jiǎn)明清晰、易讀易懂。這樣盡管我們不是設(shè)計(jì)系統(tǒng)的人員,當(dāng)看到源程序代碼的時(shí)候也能容易讀懂代碼的意思。
其次就是測(cè)試的內(nèi)容,從測(cè)試的文檔中我們可以得出,其實(shí)測(cè)試在軟件開(kāi)發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問(wèn)題并排除其中的潛藏的錯(cuò)誤,最終把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶(hù)使用。它要求測(cè)試人員也要有很高的技術(shù)水平。
軟件工程的學(xué)習(xí)心得體會(huì)篇十三
軟件工程師作為現(xiàn)代社會(huì)中越來(lái)越重要的職業(yè)之一,隨著信息技術(shù)的不斷發(fā)展,其職責(zé)也越來(lái)越廣泛和重要。作為一名軟件工程師,我在這個(gè)行業(yè)里摸爬滾打多年,深感自己的成長(zhǎng)離不開(kāi)各種經(jīng)驗(yàn)和心得的積累。在接下來(lái)的文字中,我將從個(gè)人視角談?wù)勛约涸谲浖_(kāi)發(fā)過(guò)程中的心得體會(huì)。
第二段:選擇質(zhì)量。
在軟件開(kāi)發(fā)的過(guò)程中,我最關(guān)注的是軟件的質(zhì)量。因?yàn)檐浖枰L(zhǎng)期運(yùn)行,不僅要滿(mǎn)足用戶(hù)需求,還要兼顧安全性和可維護(hù)性等方面,這需要我們?cè)陂_(kāi)發(fā)過(guò)程中嚴(yán)格控制每一個(gè)環(huán)節(jié),做好每一個(gè)細(xì)節(jié)。因此,我在項(xiàng)目開(kāi)發(fā)前會(huì)認(rèn)真分析需求和可能的風(fēng)險(xiǎn),對(duì)技術(shù)框架和工具的選擇非常謹(jǐn)慎。我也會(huì)定期進(jìn)行代碼復(fù)審和單元測(cè)試等工作,確保代碼質(zhì)量達(dá)標(biāo)。當(dāng)然,在不斷優(yōu)化的過(guò)程中,我也意識(shí)到代碼質(zhì)量的提高不僅僅在于個(gè)人級(jí)別,而更應(yīng)該顧及團(tuán)隊(duì)整體水平,因此深感技術(shù)學(xué)習(xí)和交流的重要性。只有不斷積累、分享,才能讓團(tuán)隊(duì)的發(fā)展更加健康和持久。
第三段:溝通協(xié)作。
作為一名軟件工程師,我們的工作不僅僅是編寫(xiě)代碼,更包括與產(chǎn)品經(jīng)理、UI設(shè)計(jì)師、測(cè)試工程師等各個(gè)角色之間的溝通協(xié)作。這就需要我們具備更多的軟技能。比如,要善于傾聽(tīng)和引導(dǎo),以便更好地理解產(chǎn)品需求和用戶(hù)痛點(diǎn);要有清晰的表達(dá)能力,能夠清楚地向其他角色描述自己的想法和意圖;在開(kāi)發(fā)過(guò)程中,也要非常注重團(tuán)隊(duì)合作,及時(shí)溝通和協(xié)調(diào)出現(xiàn)的問(wèn)題。整個(gè)軟件開(kāi)發(fā)過(guò)程需要涵蓋從需求分析、規(guī)劃和設(shè)計(jì),再到編碼、測(cè)試和上線(xiàn)等各個(gè)環(huán)節(jié),期間需要負(fù)責(zé)人與團(tuán)隊(duì)的全面協(xié)作才能保證項(xiàng)目的順利完成。
第四段:學(xué)習(xí)成長(zhǎng)。
軟件開(kāi)發(fā)是一個(gè)知識(shí)密集型的工作,要時(shí)刻緊跟技術(shù)的發(fā)展趨勢(shì)才能在激烈的競(jìng)爭(zhēng)中取得優(yōu)勢(shì)。因此,我認(rèn)為軟件工程師需要具備持續(xù)學(xué)習(xí)的能力和自我提升的意識(shí)。我會(huì)在業(yè)余時(shí)間去了解新的技術(shù),參加相關(guān)的技術(shù)社群和活動(dòng),不斷學(xué)習(xí)和嘗試新東西,以此來(lái)增強(qiáng)自己的核心競(jìng)爭(zhēng)力和解決實(shí)際問(wèn)題的能力。同樣,我也會(huì)時(shí)刻關(guān)注團(tuán)隊(duì)的成長(zhǎng)和發(fā)展,希望能為團(tuán)隊(duì)帶來(lái)更多的經(jīng)驗(yàn)和技術(shù)積累。
第五段:總結(jié)回顧。
在軟件開(kāi)發(fā)的過(guò)程中,我覺(jué)得最重要的是要保持持之以恒的熱情和精神狀態(tài)。無(wú)論是在技術(shù)領(lǐng)域還是在團(tuán)隊(duì)管理中,不停地學(xué)習(xí)和成長(zhǎng),分享并培育團(tuán)隊(duì)的創(chuàng)新精神和專(zhuān)業(yè)精神,才能不斷提高自己和團(tuán)隊(duì)的能力和素質(zhì),做出更好的產(chǎn)品。取得成功需要獨(dú)立思考和勇于探索,但更需要承認(rèn)團(tuán)隊(duì)的重要性,在各方面展現(xiàn)出自己領(lǐng)導(dǎo)團(tuán)隊(duì)的能力和擔(dān)當(dāng)。在今后的工作和生活中,我也將持續(xù)關(guān)注自己的成長(zhǎng)需求,堅(jiān)定地走好自己的職業(yè)道路。
軟件工程的學(xué)習(xí)心得體會(huì)篇一
轉(zhuǎn)眼,出來(lái)社會(huì)都已大半年,已是半個(gè)社會(huì)人了。不能再向?qū)W生那樣,某些時(shí)候可以隨心隨意。頂崗實(shí)習(xí),為我們提供了一個(gè)很好的實(shí)踐機(jī)會(huì),可以讓我們更好的把理論應(yīng)用于實(shí)踐,在實(shí)踐中領(lǐng)悟理論,更可以學(xué)習(xí)到很多書(shū)本上學(xué)習(xí)不到的、甚至比理論知識(shí)更實(shí)用的業(yè)務(wù)知識(shí)。而且,這些實(shí)習(xí)經(jīng)驗(yàn),無(wú)疑是我們畢業(yè)后就業(yè)的一大籌碼。作為一個(gè)成年人,作為一個(gè)社會(huì)職業(yè)人,任何時(shí)候都要守規(guī)矩,做好自己的本分,承擔(dān)起自己所需要承擔(dān)的責(zé)任。經(jīng)歷了2家公司的工作,我漸漸的認(rèn)識(shí)到,每一份工作或每一個(gè)工作環(huán)境都無(wú)法盡善盡美,但每一份工作中都有許多寶貴的經(jīng)驗(yàn)和資源,如失敗的沮喪、自我成長(zhǎng)的喜悅、溫馨的工作伙伴、值得感謝的客戶(hù)等等,這些都是工作成功者必須體驗(yàn)的感受和必備的財(cái)富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會(huì)收獲很多很多。在你收獲很多很多的同時(shí),你會(huì)發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅(jiān)強(qiáng),樂(lè)觀(guān),闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
將本文的word文檔下載到電腦,方便收藏和打印。
軟件工程的學(xué)習(xí)心得體會(huì)篇二
這次軟件工程實(shí)訓(xùn)是從__年__月__日號(hào)開(kāi)始的,截至__年__月__日號(hào)。實(shí)訓(xùn)內(nèi)容是用java相關(guān)知識(shí)(主要是jsp)做一個(gè)物流配送系統(tǒng)。下面談?wù)剬?duì)這次實(shí)訓(xùn)的看法。
因?yàn)樽约浩綍r(shí)對(duì)java知識(shí)儲(chǔ)備不足,特別是jsp這一塊基本不了解怎么回事,所以一拿到這個(gè)項(xiàng)目,我心里都是沒(méi)有底的,再加上我被分到的那個(gè)組,我知道就意味著是我一個(gè)人在戰(zhàn)斗了。呵呵,26號(hào),實(shí)訓(xùn)開(kāi)始了,我們的老師是來(lái)自中軟國(guó)際公司的程序員,一個(gè)是周褀,一個(gè)是朱映,都是一身樸素的著裝,讓我感覺(jué)做軟件的也沒(méi)什么兩樣。老師介紹了自己之后,就直接切入正題了,分析了下我們各個(gè)組的系統(tǒng),即將用到的知識(shí),然后就總體把覺(jué)得需要補(bǔ)充的知識(shí)(jsp和數(shù)據(jù)庫(kù)連接等這幾塊)給我們實(shí)際操作了下,因?yàn)楫?dāng)時(shí)看到用jsp,還講的那么認(rèn)真,當(dāng)時(shí)我就后悔了,平時(shí)要是多聽(tīng)點(diǎn),現(xiàn)在老師這么認(rèn)真的給我們講,這是一個(gè)多么難得的機(jī)會(huì)啊。后悔也沒(méi)用啊,開(kāi)始還勉強(qiáng)能理解一點(diǎn),后來(lái)就直接暈了。然后再給大家介紹了一些即將用到的工具,比如rationalrose,svn,myeclipse等等。接下來(lái)的幾天就不再細(xì)講了。下面談?wù)勍ㄟ^(guò)這次實(shí)訓(xùn)的心得體會(huì)吧。
通過(guò)這次實(shí)訓(xùn),讓我了解到工程開(kāi)發(fā)的過(guò)程,可行性分析——需求分析——概要設(shè)計(jì)——詳細(xì)設(shè)計(jì)——代碼編寫(xiě)——測(cè)試——驗(yàn)收。從技術(shù)方面上,我開(kāi)始jsp基礎(chǔ)基本上就是零的,在老師和syz2(另外一個(gè)物流小組,我一個(gè)人基本上是跟她們做的,或者說(shuō)是看著她們做的)的幫助下,對(duì)jsp有了一個(gè)大概的認(rèn)識(shí)。其實(shí)實(shí)訓(xùn)開(kāi)始前,我還以為做個(gè)系統(tǒng)沒(méi)什么大不了,可是當(dāng)真正拿到一個(gè)項(xiàng)目,我卻真的無(wú)從下手了,而且就是在知道需求分析和詳細(xì)設(shè)計(jì),在代碼編寫(xiě)時(shí),一樣寸步難行。通過(guò)這個(gè)實(shí)訓(xùn),也讓我了解到,團(tuán)隊(duì)協(xié)作是多么的重要。一個(gè)人的精力是多么的有限。進(jìn)一步理解到,企業(yè)為什么如此重視團(tuán)隊(duì)協(xié)作。同時(shí)借用老師的話(huà)就是團(tuán)隊(duì)協(xié)作固然重要,但是是建立在個(gè)人素質(zhì)的基礎(chǔ)上,假設(shè)你個(gè)人素質(zhì)不行,將會(huì)影響到整個(gè)團(tuán)隊(duì),就別提對(duì)團(tuán)隊(duì)作更多貢獻(xiàn)了。__老師說(shuō)這幾句話(huà)的時(shí)候,朝向了我,估計(jì)是有特殊意義的吧,所以,我將謹(jǐn)記老師的教導(dǎo)。
還有一個(gè)收獲是從一個(gè)同學(xué)(小胖)那里得到的,他的那組成員跟我的這組大體一樣,我倒是覺(jué)得沒(méi)什么了,不過(guò)他倒是很重視這個(gè)問(wèn)題吧。然后他說(shuō)出來(lái),我也覺(jué)得這個(gè)問(wèn)題確實(shí)其實(shí)是個(gè)大的問(wèn)題。就是不管你會(huì)不會(huì)這門(mén)技術(shù),會(huì)不會(huì)做這個(gè)東西,態(tài)度要正確才好,就算你不會(huì)做,你也應(yīng)該認(rèn)真的對(duì)待,將來(lái)出身到社會(huì),就不是說(shuō)像你現(xiàn)在,不會(huì)做就不做,跑去玩游戲了。小胖說(shuō)出了這段話(huà),也在我身上有了一個(gè)印證,雖然我jsp技術(shù)知識(shí)為0,但我也還是在認(rèn)真的跟著他們一起做,不會(huì)做,就多問(wèn),畢竟現(xiàn)在我們是學(xué)生,可以毫不顧忌的詢(xún)問(wèn)各種問(wèn)題,老師也會(huì)盡力為你回答。將來(lái)出身社會(huì)就不一樣了。雖然,我就算個(gè)打醬油的水平,但是這個(gè)醬油也要打得有涵量啊。不管怎么樣,我能對(duì)自己有個(gè)交待,雖然我不會(huì),但是這次實(shí)訓(xùn)我確實(shí)是認(rèn)真對(duì)待了,六天的實(shí)訓(xùn),除了晚上加班外,還花了2個(gè)通宵來(lái)完成不同階段的任務(wù),完成與否也不重要了,我至少我做了,這點(diǎn),是這次我應(yīng)該對(duì)自己的一個(gè)肯定。
這次實(shí)訓(xùn)的心得基本上就是這些了,最后特別感謝中軟國(guó)際帶我們的那兩個(gè)老師(周褀,朱映),這兩個(gè)老師對(duì)待我們很平易近人,對(duì)我們提出的問(wèn)題,總是不光解決了,還進(jìn)行了擴(kuò)展,晚上也跟我們一起加班加到很晚,印象尤其深刻就是朱映老師為了給小胖解決一個(gè)問(wèn)題,臉都變紅了,還在繼續(xù)努力,這點(diǎn)我并不會(huì)覺(jué)得老師知識(shí)儲(chǔ)備不夠,我想應(yīng)該是這個(gè)問(wèn)題的突發(fā)吧,一時(shí)沒(méi)想到怎么處理。相反讓我感覺(jué)更多的就是老師很認(rèn)真,很負(fù)責(zé)。還要感謝就是syz2小組的傾力支持,輔導(dǎo)。
軟件工程的學(xué)習(xí)心得體會(huì)篇三
軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它包括程序、相關(guān)數(shù)據(jù)及其說(shuō)明文檔。軟件工程(softwareengineering,簡(jiǎn)稱(chēng)為se)是針對(duì)軟件這一具有特殊性質(zhì)的產(chǎn)品的工程化方法。se涵蓋了軟件生命周期的所有階段,并提供了一整套工程化的方法,來(lái)指導(dǎo)軟件人員的工作。任何事物都是從無(wú)到有的,軟件當(dāng)然也不例外。上世紀(jì)中期,軟件產(chǎn)業(yè)從零開(kāi)始起步,經(jīng)過(guò)半個(gè)多世紀(jì)的發(fā)展,其大致經(jīng)歷的3個(gè)階段:程序設(shè)計(jì)階段、軟件設(shè)計(jì)階段和軟件工程時(shí)代,現(xiàn)已成為推動(dòng)人類(lèi)社會(huì)發(fā)展的龍頭產(chǎn)業(yè),隨著信息化時(shí)代的發(fā)展,軟件對(duì)人類(lèi)社會(huì)也將越看來(lái)越重要。人們對(duì)軟件的認(rèn)識(shí)自然經(jīng)歷了一個(gè)由淺入深的過(guò)程,在得到巨大需求的同時(shí),也遇到了一系列嚴(yán)重問(wèn)題,即軟件危機(jī)。所謂軟件危機(jī),是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中所遇到的一些嚴(yán)重問(wèn)題,其實(shí)質(zhì)是軟件產(chǎn)品的供應(yīng)趕不上需求的增長(zhǎng)。概括的說(shuō)包含兩方面的問(wèn)題:一、如何開(kāi)發(fā)軟件,以滿(mǎn)足不斷增長(zhǎng),日趨復(fù)雜的要求;二、如何維護(hù)數(shù)量不斷膨脹的軟件產(chǎn)品。為研究和解決軟件危機(jī),一門(mén)新興的學(xué)科軟件工程,應(yīng)運(yùn)而生。
軟件工程的概念是為了有效地控制軟件危機(jī)的發(fā)生而被提出來(lái)的,它的中心目標(biāo)就是把軟件作為一種物理的工業(yè)產(chǎn)品來(lái)開(kāi)發(fā),要求“采用工程化的原理與方法對(duì)軟件進(jìn)行計(jì)劃、開(kāi)發(fā)和維護(hù)”,它的主要對(duì)象是大型軟件,它的最終目的是擺脫手工生產(chǎn)軟件的現(xiàn)狀,逐步實(shí)現(xiàn)軟件開(kāi)發(fā)和維護(hù)的自動(dòng)化。軟件工程的概念自提出來(lái)后,經(jīng)過(guò)幾十年的發(fā)展,雖然軟件危機(jī)沒(méi)有得到徹底的解決,但在軟件開(kāi)發(fā)方法和技術(shù)方面已經(jīng)有了很大的進(jìn)步,提出了軟件工程知識(shí)體系、軟件工程三段論、軟件工程生存期模型、服用原則等等。
軟件開(kāi)發(fā)過(guò)程大致經(jīng)過(guò)7個(gè)階段:可行性分析、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、提交與維護(hù)。接下來(lái)逐一分析本人見(jiàn)解:
一、可行性分析:顧名思義,就是看項(xiàng)目究竟“能不能做”。有3個(gè)方面:技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性。要確定項(xiàng)目,首先要客觀(guān)的、科學(xué)的了解項(xiàng)目的規(guī)模、難度和時(shí)間限制,才可以確定應(yīng)該投入多少人力、物力和財(cái)力去做這個(gè)項(xiàng)目,必須準(zhǔn)確的估計(jì)項(xiàng)目的規(guī)模與難度??错?xiàng)目是否有價(jià)值去做,如果沒(méi)有價(jià)值,就放棄;如果有價(jià)值,就要看目前的資源是否能滿(mǎn)足項(xiàng)目的開(kāi)發(fā)。如果項(xiàng)目有價(jià)值,且有必需的資源,那么就可以確定能做這個(gè)項(xiàng)目了。
2、通過(guò)什么方式去了解:直接與客戶(hù)交談;有些需求客戶(hù)講不清楚,分析人員又猜不透,這是就要請(qǐng)教行家。需求分析是非常重要的階段,如果做不好的話(huà),后果很麻煩。
三、概要設(shè)計(jì):解決“怎么做”的問(wèn)題。將需求描述的“做什么”問(wèn)題變?yōu)橐粋€(gè)實(shí)施方案的創(chuàng)造性過(guò)程,使得整個(gè)項(xiàng)目在邏輯上和物理上能夠得意實(shí)現(xiàn)。概要設(shè)計(jì)是第一個(gè)開(kāi)發(fā)活動(dòng),也是最重要的活動(dòng),是軟件項(xiàng)目實(shí)現(xiàn)的關(guān)鍵階段。設(shè)計(jì)質(zhì)量的高低直接決定了軟件項(xiàng)目的成敗,缺乏或者沒(méi)有軟件設(shè)計(jì)的過(guò)程會(huì)產(chǎn)生一個(gè)不穩(wěn)定的、甚至是失敗的軟件系統(tǒng)。一個(gè)良好的軟件設(shè)計(jì)是進(jìn)行快速軟件開(kāi)發(fā)的根本,沒(méi)有良好的設(shè)計(jì),會(huì)將時(shí)間花在不斷的調(diào)試上,無(wú)法添加新功能,修改時(shí)間越來(lái)越長(zhǎng),隨著給程序打上一個(gè)有一個(gè)的補(bǔ)丁,新的功能需要更多的代碼實(shí)現(xiàn),就變成一個(gè)惡性循環(huán)了。概要設(shè)計(jì)是軟件設(shè)計(jì)級(jí)別中的高級(jí)設(shè)計(jì),是從需求出發(fā),描述了總體上系統(tǒng)架構(gòu)應(yīng)該包含的要素。概要設(shè)計(jì)盡可能模塊化,因此描述了各個(gè)模塊之間的關(guān)聯(lián),主要是根據(jù)需求規(guī)格或規(guī)格定義,合理、有效地實(shí)現(xiàn)產(chǎn)品規(guī)格中定義的各項(xiàng)需求,完成軟件模塊的劃分并描述模塊之間的關(guān)系,并不斷分解系統(tǒng)模塊,從高層分解到低層分解。它注重框架設(shè)計(jì)、總體結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、接口設(shè)計(jì)、網(wǎng)絡(luò)環(huán)境設(shè)計(jì)等,將產(chǎn)品分割成一些可以獨(dú)立設(shè)計(jì)和實(shí)現(xiàn)的部分并保證各個(gè)部分可以和諧的工作。此過(guò)程中畫(huà)數(shù)據(jù)流圖、ipo圖、e-r圖、界面設(shè)計(jì)等。
出程序的詳細(xì)規(guī)格說(shuō)明,這種規(guī)格說(shuō)明類(lèi)似于其他工程領(lǐng)域中工程師經(jīng)常使用的工程藍(lán)圖,程序員根據(jù)其中所包含的必要的細(xì)節(jié)寫(xiě)出實(shí)際的程序代碼。用另一種方式說(shuō)就是,詳細(xì)設(shè)計(jì)是將概要設(shè)計(jì)的框架內(nèi)容具體化、明細(xì)化,將概要設(shè)計(jì)轉(zhuǎn)化為可以操作的軟件模型,但在實(shí)際項(xiàng)目進(jìn)行過(guò)程中,依據(jù)項(xiàng)目的具體情況和項(xiàng)目要求,這個(gè)過(guò)程可能可以省略(邏輯上沒(méi)有省略,表現(xiàn)在概要設(shè)計(jì)階段或者編碼階段),直接按照概要設(shè)計(jì)進(jìn)行編碼;不過(guò),個(gè)人認(rèn)為最好有,有詳細(xì)設(shè)計(jì)可以更好的保證編碼順利的進(jìn)行,可以預(yù)先掃清編碼過(guò)程中的障礙,提高代碼的質(zhì)量和編碼的效率。主要包括模塊描述、算法描述、數(shù)據(jù)描述,可以采用圖形、表格或者文字描述等方式表達(dá)出來(lái)。
代碼的時(shí)候,更不要錯(cuò)過(guò)重構(gòu),另外,重構(gòu)可以和設(shè)計(jì)互補(bǔ)。還有一點(diǎn)值得注意,要在必要的時(shí)候部署編碼文檔。
六、測(cè)試:看軟件是否符合標(biāo)準(zhǔn)。軟件編碼完成之后,將軟件提交給用戶(hù)之前,需要對(duì)軟件進(jìn)行測(cè)試,這是保證軟件產(chǎn)品質(zhì)量的一個(gè)重要標(biāo)準(zhǔn),也是評(píng)估產(chǎn)品質(zhì)量的主要手段。軟件測(cè)試是從軟件工程中演化出來(lái)的一個(gè)分支,有著非常廣泛的內(nèi)容,并且隨著軟件產(chǎn)業(yè)的發(fā)展,它已經(jīng)變得越來(lái)越重要。軟件與生俱來(lái)就可能存在缺陷,為了防止和減少這些可能存在的缺陷,進(jìn)行軟件測(cè)試是有必要的,測(cè)試是最有效的的排錯(cuò)和防止缺陷和故障的手段。最原始的測(cè)試莫過(guò)于直接運(yùn)行軟件了,后來(lái)測(cè)試手段逐漸多樣化。測(cè)試手段有靜態(tài)測(cè)試、動(dòng)態(tài)測(cè)試面向?qū)ο蟮臏y(cè)試、自動(dòng)化測(cè)試等等之分。靜態(tài)測(cè)試或稱(chēng)靜態(tài)分析是指一種不通過(guò)執(zhí)行程序來(lái)進(jìn)行測(cè)試的一種技術(shù),主要是檢查軟件的表示和描述是否一致,覆蓋程序的編碼格式、程序語(yǔ)法、檢查獨(dú)立語(yǔ)句的結(jié)構(gòu)和使用等,主要包括代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量等等,可以通過(guò)人工進(jìn)行,亦可借助工具(如:語(yǔ)法分析器)自動(dòng)進(jìn)行。動(dòng)態(tài)測(cè)試是運(yùn)行被測(cè)試的程序,通過(guò)輸入測(cè)試用例,對(duì)其運(yùn)行情況進(jìn)行分析,以達(dá)到檢測(cè)的目的,顯然動(dòng)態(tài)測(cè)試封像我們通常意義上的“測(cè)試”。動(dòng)態(tài)測(cè)試主要包括白盒測(cè)試、黑盒測(cè)試、灰盒測(cè)試(介于黑盒和白盒之間)。其他測(cè)試不再一一介紹。
打水漂了。為了保證成功地將我們開(kāi)發(fā)的軟件提交給用戶(hù),我們需要對(duì)用戶(hù)進(jìn)行培訓(xùn),同時(shí)提交必要的文檔及用戶(hù)手冊(cè)軟件。維護(hù)就不用多說(shuō)了,就是售后服務(wù)了。維護(hù)需要分析人員、編碼人員和設(shè)計(jì)人員等角色的參與,有糾錯(cuò)行維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)、預(yù)防性維護(hù)等。維護(hù)后,要寫(xiě)軟件維護(hù)過(guò)程文檔,至少提交一個(gè)軟件維護(hù)記錄。以上是軟件工程及其幾個(gè)階段的介紹,知道怎樣開(kāi)發(fā)軟件只是軟件工程的一部分,搞好團(tuán)隊(duì)合作也是很重要的。項(xiàng)目是一個(gè)很大的工程,需要一個(gè)團(tuán)隊(duì)的統(tǒng)籌規(guī)劃,團(tuán)結(jié)協(xié)作,集思廣益,舉一反三,才能夠按預(yù)期完成。
軟件工程的學(xué)習(xí)心得體會(huì)篇四
作為一名軟件工程專(zhuān)業(yè)的學(xué)生,我在近期學(xué)習(xí)的“軟件工程概論”課程中有了很多收獲和體會(huì)。通過(guò)這門(mén)課程,我更加深刻地認(rèn)識(shí)到了軟件工程的重要性和其領(lǐng)域的多樣性。在日后的學(xué)習(xí)和實(shí)踐工作中,我將會(huì)更加努力地掌握相關(guān)知識(shí),提升自己的技能和綜合素質(zhì),做一個(gè)優(yōu)秀的軟件工程師。
本次軟件工程概論的課程主要從軟件過(guò)程、軟件生命周期、軟件質(zhì)量、軟件工程方法學(xué)等方面進(jìn)行了系統(tǒng)的介紹和講解。在學(xué)習(xí)過(guò)程中,我們通過(guò)理論學(xué)習(xí)和實(shí)際案例演示等多種方式,深入了解了軟件開(kāi)發(fā)的全過(guò)程,明確了軟件需求分析、軟件設(shè)計(jì)、編碼與測(cè)試、維護(hù)等各個(gè)環(huán)節(jié)的重要性。同時(shí),學(xué)習(xí)了如何控制項(xiàng)目中的工期、成本和質(zhì)量,如何保證項(xiàng)目進(jìn)度和質(zhì)量的有效管理,以及如何開(kāi)展有效的軟件開(kāi)發(fā)工作。
在學(xué)習(xí)軟件工程概論的課程中,我更加深刻地認(rèn)識(shí)到了軟件工程的重要性和復(fù)雜性。我們需要在整個(gè)軟件開(kāi)發(fā)的過(guò)程中,進(jìn)行需求分析、系統(tǒng)設(shè)計(jì)、開(kāi)發(fā)和測(cè)試等一系列的工作,確保軟件系統(tǒng)能夠滿(mǎn)足預(yù)期目標(biāo)。同時(shí),我們也需要關(guān)注軟件的維護(hù)和更新,隨時(shí)根據(jù)需求進(jìn)行優(yōu)化和改進(jìn)。在實(shí)踐的過(guò)程中,我們還需要進(jìn)行團(tuán)隊(duì)協(xié)作,有效地管理項(xiàng)目進(jìn)度和質(zhì)量等方面的問(wèn)題。只有當(dāng)我們充分理解軟件的復(fù)雜性,并且有一套有效的軟件開(kāi)發(fā)及管理模式時(shí),才能夠順利地推進(jìn)項(xiàng)目工作,取得良好的效果。
學(xué)習(xí)軟件工程概論,不僅能夠?qū)W習(xí)到知識(shí),更能夠培養(yǎng)我們的素質(zhì)和能力。我們通過(guò)學(xué)習(xí)軟件開(kāi)發(fā)的流程和方法,養(yǎng)成了系統(tǒng)化的思維方式,能夠更好地理解問(wèn)題和解決問(wèn)題。同時(shí),我們也學(xué)習(xí)到了互聯(lián)網(wǎng)時(shí)代的軟件開(kāi)發(fā)模式和管理方式,使我們更加適應(yīng)互聯(lián)網(wǎng)時(shí)代的工作環(huán)境。此外,我們對(duì)團(tuán)隊(duì)協(xié)作、進(jìn)度管理和質(zhì)量控制等方面的問(wèn)題也有了更深入的認(rèn)識(shí)。這些都將為我們?nèi)蘸蟮膶W(xué)習(xí)和工作提供極大的幫助。
五、結(jié)語(yǔ)。
軟件工程概論的學(xué)習(xí),使我對(duì)軟件工程有了更深入的了解。我了解了軟件開(kāi)發(fā)的全過(guò)程和軟件項(xiàng)目管理的重要性;同時(shí),我養(yǎng)成了系統(tǒng)化的思維方式,能夠更好地應(yīng)對(duì)未來(lái)的學(xué)習(xí)和工作。在以后的學(xué)習(xí)和實(shí)踐工作中,我將會(huì)更加努力地掌握相關(guān)知識(shí),提升自己的技能和綜合素質(zhì),成為一名優(yōu)秀的軟件工程師。
軟件工程的學(xué)習(xí)心得體會(huì)篇五
談到機(jī)械工程先來(lái)講講機(jī)械,中國(guó)的機(jī)械發(fā)展有著悠久的歷史,五千年前的紡織機(jī)械、晉朝時(shí)期的連機(jī)錐和水碾、西漢時(shí)期的指南車(chē)和鼔車(chē)、東漢的地震儀、秦始皇時(shí)期的銅車(chē)馬??國(guó)外機(jī)械的產(chǎn)生要追溯到18世紀(jì)初,第一次工業(yè)革命產(chǎn)生蒸汽機(jī)和一些以蒸汽機(jī)為動(dòng)力的近代機(jī)械的雛形,再到19世紀(jì)代左右的第二次工業(yè)革命,內(nèi)燃機(jī)的產(chǎn)生帶來(lái)了新的動(dòng)力機(jī)械,開(kāi)始了機(jī)械的迅猛發(fā)展。從機(jī)械和社會(huì)的發(fā)展來(lái)看,一個(gè)社會(huì)機(jī)械水平越高,生產(chǎn)力水平越強(qiáng)?,F(xiàn)代社會(huì)也是一樣,機(jī)械是現(xiàn)代社會(huì)進(jìn)行生產(chǎn)和服務(wù)的六大要素(人、資金、信息、能量、材料和機(jī)械)之一,機(jī)械工業(yè)是國(guó)民經(jīng)濟(jì)的支柱工業(yè)之一,是社會(huì)生產(chǎn)力發(fā)展水平的重要標(biāo)志。綜上可見(jiàn),機(jī)械是一個(gè)國(guó)家發(fā)展、民族復(fù)興的重要保證。
機(jī)械社會(huì)發(fā)展中的地位如此之高,那機(jī)械工程呢?機(jī)械工程是運(yùn)用數(shù)學(xué)、物理等基礎(chǔ)理論和有關(guān)機(jī)械方面的專(zhuān)門(mén)知識(shí),結(jié)合生產(chǎn)實(shí)際經(jīng)驗(yàn),經(jīng)濟(jì)有效地解決在設(shè)計(jì)、研究、制造和運(yùn)行各種機(jī)械中遇到的實(shí)際問(wèn)題。從定義上可以看出,機(jī)械工程是一個(gè)系統(tǒng)性的全面的工程,可以盡可能合理的創(chuàng)造和最大化的利用機(jī)械??梢?jiàn),在21世紀(jì)這樣一個(gè)充滿(mǎn)市場(chǎng)競(jìng)爭(zhēng)和需要不斷創(chuàng)新的時(shí)代,機(jī)械工程運(yùn)用的好與不好,往小一點(diǎn)說(shuō),直接關(guān)系到一個(gè)企業(yè)的存亡問(wèn)題,往大一點(diǎn)說(shuō),直接決定了一個(gè)國(guó)家機(jī)械工業(yè)方面的軟實(shí)力。機(jī)械工程對(duì)國(guó)家發(fā)展如此之重要,對(duì)于未來(lái)希望成為工程師的大學(xué)生的我來(lái)說(shuō),沒(méi)有理由不好好的了解機(jī)械工程。
工程中力學(xué)包含:理論力學(xué)、流體力學(xué)、材料力學(xué)、震動(dòng)力學(xué)、計(jì)算力學(xué)。這些力學(xué)是進(jìn)行機(jī)械設(shè)計(jì)和制造的基礎(chǔ),學(xué)好這些理論才能知道運(yùn)動(dòng)以怎樣的機(jī)構(gòu)傳遞,能量以怎樣的機(jī)器傳遞。
機(jī)械設(shè)計(jì)包含了很多的設(shè)計(jì)方法,除去傳統(tǒng)設(shè)計(jì)方法不說(shuō),現(xiàn)代設(shè)計(jì)方法包含:優(yōu)化設(shè)計(jì)、可靠性設(shè)計(jì)、有限元分析、并行設(shè)計(jì)、綠色設(shè)計(jì)、創(chuàng)新設(shè)計(jì)、模塊化設(shè)計(jì)和反求設(shè)計(jì)。其中有限元分析、綠色設(shè)計(jì)和反求設(shè)計(jì)令我印象深刻。利用電腦軟件對(duì)設(shè)想的機(jī)械部件進(jìn)行有限元分析,可以確保設(shè)計(jì)的合理性和可利用行,如此以來(lái),可以在不做出模型的情況下就可以清楚的了解結(jié)構(gòu)的性能,節(jié)約了時(shí)間不說(shuō)更節(jié)約了大量的人力、物力財(cái)力。在綠色設(shè)計(jì)方面,美國(guó)的廢舊汽車(chē)?yán)每芍^楷模,報(bào)廢汽車(chē)再利用率達(dá)到了百分之九十五,再利用零部件重量超過(guò)舊車(chē)的總重量的百分之七十五,可以說(shuō)節(jié)約了大量的資源,對(duì)環(huán)境有了一個(gè)很好的保護(hù),這點(diǎn)反觀(guān)我的祖國(guó),確實(shí)有必要學(xué)習(xí)一下,我國(guó)現(xiàn)在汽車(chē)每年的購(gòu)買(mǎi)量都在大幅度上漲,隨之而來(lái)的必然會(huì)有大量的報(bào)廢汽車(chē),這是新的產(chǎn)業(yè),也是一個(gè)新的經(jīng)濟(jì)增長(zhǎng)點(diǎn),不但節(jié)約資源保護(hù)環(huán)境,還可以促進(jìn)經(jīng)濟(jì)增長(zhǎng),真是一舉兩得的好事啊。這些設(shè)計(jì)方法中,最讓我眼睛一亮的要數(shù)“反求設(shè)計(jì)”,二戰(zhàn)戰(zhàn)敗國(guó)日本就是運(yùn)用這種方法,以“一代引進(jìn),二代國(guó)產(chǎn)化,三代改進(jìn)口、四代占領(lǐng)國(guó)際市場(chǎng)”方針,迅速的崛起為世界第二大經(jīng)濟(jì)體。日本的成果是對(duì)這種方法實(shí)質(zhì)的最好詮釋?zhuān)袊?guó)也在使用這種方法,不過(guò)是歪曲了的,只顧模仿不懂得吃透他人的技術(shù)再創(chuàng)新,是中國(guó)科學(xué)技術(shù)落后與發(fā)達(dá)國(guó)家的一個(gè)重要因素。模仿不可怕,可怕的是照搬照套!用好“反求設(shè)計(jì)”實(shí)現(xiàn)“比他人做得更好”。
機(jī)械制造技術(shù)包含兩方面含義:
1、指用機(jī)械加工零件的技術(shù);。
2、指制造某種機(jī)械的技術(shù)。在制造技術(shù)方面,先進(jìn)制造技術(shù)顯得更適合現(xiàn)代化,通過(guò)將多方面的技術(shù)進(jìn)行交叉、融合和集成,綜合應(yīng)用于產(chǎn)品全生命周期的制造過(guò)程,可以更經(jīng)濟(jì)更有效率更好的制造出適應(yīng)市場(chǎng)需求的產(chǎn)品。特別是三維打印技術(shù),可以通過(guò)電腦造型,再通過(guò)3d打印機(jī)打印出模型來(lái)觀(guān)察產(chǎn)品的合理性和可用性,方便效率高。
最后談?wù)剻C(jī)電一體化技術(shù),機(jī)器人現(xiàn)在是各個(gè)國(guó)家研究的熱門(mén)項(xiàng)目,每個(gè)國(guó)家都希望在這方面領(lǐng)先全球,機(jī)器人就是典型的利用了機(jī)電一體化技術(shù)的產(chǎn)品,是機(jī)械和電子的有機(jī)結(jié)合。從20世紀(jì)中后期,機(jī)電一體化就代表了現(xiàn)代機(jī)械工程的發(fā)展方向,產(chǎn)生了眾多高新機(jī)械產(chǎn)品,如:火箭、衛(wèi)星、宇宙飛船、航空母艦、深海探測(cè)器??梢?jiàn),機(jī)電一體化的前景非常不錯(cuò),不過(guò)要想學(xué)好這么技術(shù),作為機(jī)械專(zhuān)業(yè)的學(xué)生來(lái)說(shuō),就有必要好好的學(xué)學(xué)計(jì)算機(jī)和信息類(lèi)的知識(shí),畢竟機(jī)電一體化中電子占了很大的比重,為了自己未來(lái)的發(fā)展,也為了趕上現(xiàn)代化的機(jī)械工程方向,我要努力的學(xué)好機(jī)械專(zhuān)業(yè)課的同時(shí),多涉獵一些電子類(lèi)的書(shū)籍,為未來(lái)的發(fā)展奠定基礎(chǔ)。
軟件工程的學(xué)習(xí)心得體會(huì)篇六
軟件工程心得體會(huì)未接觸軟件工程之前一直都很想學(xué)這門(mén)課程,因?yàn)橛X(jué)得這門(mén)課很牛,是那些有工程師稱(chēng)號(hào)的高手才擺弄的東西。學(xué)了一個(gè)學(xué)期的軟件工程課,終于知道了個(gè)軟件工程的大概。學(xué)的時(shí)候總覺(jué)得很抽象,理解起來(lái)好像不難,但總是摸不著頭腦一種很茫然的感覺(jué)。曾經(jīng)以為程序就是軟件,軟件就是程序。學(xué)習(xí)這門(mén)課程第一個(gè)收獲是,知道了二者的不同之處。以前做過(guò)的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個(gè)軟件的說(shuō)明,看來(lái)已經(jīng)很接近作坊了。不過(guò)大的項(xiàng)目沒(méi)有接觸過(guò),用軟件工程的方法還是第一次。我想也是程序的不斷復(fù)雜化導(dǎo)致了軟件危機(jī)的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過(guò)倪老師的講解,理解了軟件工程,就是一套用于軟件的團(tuán)隊(duì)開(kāi)發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對(duì)于軟件開(kāi)發(fā)的5個(gè)重要組成部分:需求分析,設(shè)計(jì),編碼,調(diào)試,維護(hù),如何組織這5個(gè)部分的工作,以及如何完成每一個(gè)工作。吾生也有涯,而知也無(wú)涯,學(xué)習(xí)永無(wú)止境。起初,對(duì)軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學(xué)習(xí)過(guò)程中,知道了團(tuán)隊(duì)合作十分重要,爭(zhēng)議固然存在,但通過(guò)討論、協(xié)商,群策群力,在不斷磨合中能夠達(dá)成一致與默契。團(tuán)隊(duì)成員中能力各有高下,互相尊重,各取所長(zhǎng),不宜妄自菲薄。組長(zhǎng)多加協(xié)調(diào),組員積極配合,才能合作愉快。學(xué)習(xí)能力體現(xiàn)在能盡快接受新的知識(shí),順應(yīng)變化,學(xué)為所用。
上《軟件工程導(dǎo)論》這門(mén)課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。專(zhuān)業(yè)點(diǎn)講,軟件工程最終是為了實(shí)現(xiàn)“軟件制造業(yè)”的社會(huì)化,工業(yè)化大生產(chǎn),提高其勞動(dòng)生產(chǎn)效率。只有如此,軟件業(yè)才能實(shí)現(xiàn)社會(huì)化,工業(yè)化大生產(chǎn),才能“做大做強(qiáng)”。沒(méi)有管理的設(shè)計(jì)是失敗和混亂的設(shè)計(jì),沒(méi)有設(shè)計(jì)指導(dǎo)的編程是無(wú)序的忙碌的。根據(jù)開(kāi)發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運(yùn)用軟件工程化的思想,需要靈活,畢竟我們開(kāi)發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(jiàn)(我是這么認(rèn)為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實(shí)開(kāi)發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。想想自己平時(shí)是怎樣寫(xiě)程序的。首先是要有一個(gè)想法,即我寫(xiě)的這個(gè)程序是要干什么的;然后就是對(duì)要實(shí)現(xiàn)的核心功能大概構(gòu)思一種或多種實(shí)現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來(lái)就是將涉及的各種主要或次要功能分成各個(gè)模塊;最后就是分模塊來(lái)編碼和debug。在我看來(lái),除了第一步外,其余的步驟應(yīng)該是一個(gè)循環(huán)的過(guò)程。在編碼的過(guò)程中,你總是需要不斷地回過(guò)頭來(lái)修改原先的模塊設(shè)計(jì),甚至最初選定的實(shí)現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計(jì),編碼,調(diào)試,維護(hù)這幾部分的工作的時(shí)候,最核心的就是文檔的編寫(xiě)。
1.可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。
2.項(xiàng)目描述這是在決定立項(xiàng)以后,對(duì)當(dāng)前項(xiàng)目的一份扼要說(shuō)明。
3.需求分析就是對(duì)客戶(hù)要求的功能的定義。
4.軟件設(shè)計(jì)這就是對(duì)程序的每一個(gè)模塊的詳細(xì)設(shè)計(jì)的說(shuō)明文檔。
5.開(kāi)發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。開(kāi)發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫(xiě)程序時(shí)突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動(dòng)等,還要對(duì)上述這些修改變動(dòng)作些說(shuō)明。
6.測(cè)試分析用于指出程序存在或潛在的缺陷和錯(cuò)誤,以及程序性能的數(shù)字描述。
軟件工程的學(xué)習(xí)心得體會(huì)篇七
學(xué)習(xí)了這門(mén)課程, 還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實(shí)例,讓理論和實(shí)踐得到了很好的結(jié)合。整一個(gè)學(xué)期下來(lái),總的來(lái)說(shuō)還是學(xué)到了很多東西的,有很多地方是值得肯定的,其實(shí)在我看來(lái),軟件工程與其說(shuō)是一門(mén)課程,不如說(shuō)是一門(mén)思想。是一個(gè)如何去分析和處理問(wèn)題的過(guò)程,應(yīng)該說(shuō)其范疇已經(jīng)遠(yuǎn)遠(yuǎn)不止局限于該門(mén)課程,成為了一個(gè)綜合的一個(gè)能夠解決問(wèn)題的思想集合。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則: 軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。 軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo 圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀(guān)地顯示輸入處理輸出三者之間的聯(lián)系。還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書(shū)、軟件設(shè)計(jì)說(shuō)明書(shū)、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護(hù)又從何談起呢所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
軟件工程的學(xué)習(xí)心得體會(huì)篇八
軟件工程(softwareengineering,簡(jiǎn)稱(chēng)為se)是一門(mén)研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計(jì)語(yǔ)言,數(shù)據(jù)庫(kù),軟件開(kāi)發(fā)工具,系統(tǒng)平臺(tái),標(biāo)準(zhǔn),設(shè)計(jì)模式等方面。在現(xiàn)代社會(huì)中,軟件應(yīng)用于多個(gè)方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機(jī)界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫(kù),游戲等。同時(shí),各個(gè)行業(yè)幾乎都有計(jì)算機(jī)軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門(mén)等。這些應(yīng)用促進(jìn)了經(jīng)濟(jì)和社會(huì)的發(fā)展,使得人們的工作更加高效,同時(shí)提高了生活質(zhì)量。
在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性并且滿(mǎn)足用戶(hù)需求的軟件產(chǎn)品。
是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。軟件工程的原則有以下四項(xiàng)基本原則:1)選取適宜開(kāi)發(fā)范型;2)采用合適的設(shè)計(jì)方法;3)提供高質(zhì)量的工程支持;4)重視開(kāi)發(fā)過(guò)程的管理。
據(jù)說(shuō)上個(gè)世紀(jì)60年代的程序員都是天才,寫(xiě)程式就像寫(xiě)日記一樣,吃過(guò)晚飯沒(méi)事干隨手就可以寫(xiě)幾個(gè)出來(lái)玩,第二天還可以拿去賣(mài)錢(qián)。所以那時(shí)候程序員在大家眼中,跟那些搞美術(shù),音樂(lè)的是一類(lèi)的,被稱(chēng)為“藝術(shù)家”。
但事過(guò)境遷,就像任何人都不會(huì)嫌錢(qián)多一樣,永遠(yuǎn)都不會(huì)有人嫌cpu快的。于是,隨之而來(lái)的就是硬件的迅猛發(fā)展和越來(lái)越變態(tài)的軟件。記得以前常去同學(xué)家拷游戲,通常幾張軟盤(pán)就可以搞定,而現(xiàn)在的游戲,兩三張cd-rom都算少的了。像如此龐大復(fù)雜的怪物,就算你是如何的天才,一個(gè)人肯定是搞不定的,否則,等你把程式寫(xiě)出來(lái),人家intel連奔騰n都開(kāi)發(fā)出來(lái)了。既要開(kāi)發(fā)大型的軟件還要追求速度(這樣才能賺錢(qián)),于是很自然地,合作的概念被提了出來(lái)。
在開(kāi)始合作的初期,由于大家都習(xí)慣了當(dāng)很有個(gè)性的“藝術(shù)家”,結(jié)果可想而知,一個(gè)是畢加索派的,而另一個(gè)是意大利印象派的,再加上一個(gè)畫(huà)潑墨山水畫(huà)的,要是像這樣湊出來(lái)的東西都能不出問(wèn)題的話(huà),那么bill早就轉(zhuǎn)行了。所以,那時(shí)侯的大型軟件,據(jù)說(shuō)“藍(lán)屏”比windows98還多。
馬克思告訴我們,萬(wàn)物都是從量變到質(zhì)變的。隨著問(wèn)題的不斷涌現(xiàn),一些master們開(kāi)始嘗試去總結(jié)經(jīng)驗(yàn),并歸納了一些規(guī)范去指導(dǎo)軟件的分析,設(shè)計(jì),實(shí)現(xiàn),測(cè)試,維護(hù),人員交流協(xié)作,項(xiàng)目預(yù)算及時(shí)限控制等方方面面,這就是軟件工程的前身。
軟件工程到現(xiàn)在已發(fā)展了30多年,可以說(shuō)是相當(dāng)成熟的了。現(xiàn)在開(kāi)發(fā)軟件,據(jù)說(shuō)都是一大幫人排排坐,按著一整套的規(guī)章制度來(lái)干活。于是,軟件開(kāi)發(fā)成了“工程”,程序員也就淪為“工人”了。
軟件工程,說(shuō)白了,就是這樣一套用于軟件的團(tuán)隊(duì)開(kāi)發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對(duì)于軟件開(kāi)發(fā)的5個(gè)重要組成部分:需求分析,設(shè)計(jì),編碼,調(diào)試,維護(hù),如何組織這5個(gè)部分的工作,以及如何完成每一個(gè)工作。簡(jiǎn)單來(lái)說(shuō),就是對(duì)于總體的組織和對(duì)于局部的實(shí)現(xiàn)。
開(kāi)發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。想想自己平時(shí)是怎樣寫(xiě)程序的。首先是要有一個(gè)想法,即我寫(xiě)的這個(gè)程序是要干什么的;然后就是對(duì)要實(shí)現(xiàn)的核心功能大概構(gòu)思一種或多種實(shí)現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來(lái)就是將涉及的各種主要或次要功能分成各個(gè)模塊;最后就是分模塊來(lái)編碼和debug。除了第一步外,其余的步驟應(yīng)該是一個(gè)循環(huán)的過(guò)程。既然軟件開(kāi)發(fā)是一個(gè)具有不可預(yù)知性和變化性的`動(dòng)態(tài)的過(guò)程,那么,對(duì)其每一個(gè)步驟的組織,即周期模型,就必須包容它的這種性質(zhì)。
具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計(jì),編碼,調(diào)試,維護(hù)這幾部分的工作的時(shí)候,最核心的就是文檔的編寫(xiě)。文檔的作用在于以下3個(gè)方面:一是可以幫助整理思路。把要完成的目標(biāo),系統(tǒng)的結(jié)構(gòu),每一個(gè)模塊的功能等整理一下,然后分門(mén)別類(lèi)地寫(xiě)下來(lái),這樣在開(kāi)發(fā)的過(guò)程中,就有據(jù)可依,在需要回過(guò)頭來(lái)修改設(shè)計(jì)的時(shí)候,也有證可考。二是便于交流。想象一下開(kāi)會(huì)時(shí)的情形。一大幫子人爭(zhēng)先恐后,激烈辯論,然后會(huì)終人散,思想靈感也就隨之散了,結(jié)果是開(kāi)了半天會(huì),什么也沒(méi)討論出來(lái)。這就是后來(lái)會(huì)議記錄被發(fā)明出來(lái)的原因。在腦子里的東西一多,就會(huì)散而且亂,用語(yǔ)言表達(dá)的時(shí)候,很容易會(huì)丟三落四,別人也很難把握住你的思想。但經(jīng)過(guò)整理寫(xiě)在紙上以后,則會(huì)清晰得多,無(wú)論是別人還是自己,看起來(lái)都可以一目了然。三是可以作為以后維護(hù)時(shí)的參考資料。有一句名言:“筆和紙永遠(yuǎn)都比大腦可靠”,意思就是說(shuō),放在大腦里的東西說(shuō)不準(zhǔn)哪天就忘了,但寫(xiě)在紙上的東西,只要不發(fā)生什么意外,一般是丟不了的。當(dāng)過(guò)了一段時(shí)間,你需要再回過(guò)頭來(lái)修改你的程序的時(shí)候,你就會(huì)發(fā)現(xiàn),你以前寫(xiě)下的文檔實(shí)在太有價(jià)值了。別指望你的源代碼,對(duì)于復(fù)雜一點(diǎn)的程序來(lái)說(shuō),單純的源代碼幾乎會(huì)扼殺掉你所有的時(shí)間。
可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。主要考慮的方面包括:是否能把這個(gè)項(xiàng)目開(kāi)發(fā)出來(lái);假如可以的話(huà),預(yù)計(jì)需要多少時(shí)間,能否滿(mǎn)足客人的時(shí)間要求;需要多少人力和資金的投入;最重要的是,這個(gè)項(xiàng)目能否賺錢(qián),能賺多少。還要對(duì)可能存在的風(fēng)險(xiǎn)進(jìn)行評(píng)估。
時(shí)間飛逝,不知不覺(jué)間《軟件工程》的學(xué)習(xí)完了。在這將近半學(xué)期的學(xué)習(xí)中,雖然我不能說(shuō)我將《軟件工程》學(xué)習(xí)的有多么的好,但是通過(guò)學(xué)習(xí),我還是受益良多。
在以前,我一直對(duì)軟件存在一些偏見(jiàn)或則是誤解,認(rèn)為軟件就是程序,軟件的開(kāi)發(fā)就是編寫(xiě)程序,只要編完了程序,一切也就ok了,而且我還片面的認(rèn)為只要我掌握了時(shí)下最新的語(yǔ)言和工具,那么我就能寫(xiě)程序了。一個(gè)人,只要會(huì)編程,就能寫(xiě)軟件,就是程序員;一個(gè)公司,只要招聘一些程序員,就能開(kāi)發(fā)好的軟件產(chǎn)品。只要有幾個(gè)有經(jīng)驗(yàn)的程序員,再找些兼職的大學(xué)生,就能組成一個(gè)軟件公司。
但是通過(guò)了《軟件工程》這門(mén)課的學(xué)習(xí),使我認(rèn)識(shí)到了我以前的錯(cuò)誤。軟件其實(shí)不僅僅是程序,軟件開(kāi)發(fā)其實(shí)也不僅僅是編寫(xiě)程序,軟件是思想在硬件上的載體和體現(xiàn),處理的是邏輯和信息。唯有對(duì)軟件和軟件的開(kāi)發(fā)過(guò)程,有充分的認(rèn)識(shí),才能更好的開(kāi)發(fā)出,過(guò)程受控、質(zhì)量受控的軟件產(chǎn)品。
而且在以前,我一直以為軟件的開(kāi)發(fā)其實(shí)是一件很輕松快樂(lè)的事情,只要一天坐在電腦旁敲敲鍵盤(pán),那么一切就可以了,但是現(xiàn)在我才發(fā)現(xiàn),我以前的很多的思想是多么的膚淺可笑。編程其實(shí)是一種樂(lè)趣和苦惱共存的一項(xiàng)創(chuàng)造性活動(dòng)。因?yàn)榫幊滩粌H能夠滿(mǎn)足我們內(nèi)心深處進(jìn)行創(chuàng)造的渴望,而且還能愉悅我們內(nèi)在的情感。
而且通過(guò)學(xué)習(xí)《軟件工程》,我還學(xué)到了很多其他的東西。比如通過(guò)學(xué)習(xí)《軟件工程》,特別是教員的課程講解和每次用實(shí)際的軟件現(xiàn)場(chǎng)的講解,為我提供了一個(gè)盡早接觸世界工作和真實(shí)項(xiàng)目的機(jī)會(huì)。讓我知道如何在以最小的成本中,訓(xùn)練自己的基本工程素質(zhì)和能力,如何激發(fā)自己的積極性等。而且通過(guò)學(xué)習(xí)《軟件工程》,還讓我認(rèn)識(shí)和培養(yǎng)了我的團(tuán)隊(duì)協(xié)作能力,特別是對(duì)于我們這些在校的學(xué)生來(lái)說(shuō),這種學(xué)習(xí)更是能讓我在以后工作中少走很多的彎路。
所以,通過(guò)《軟件工程》的學(xué)習(xí),我是真的學(xué)習(xí)到了很多有用的東西,讓我明白了很多的道理。在此我對(duì)教員的辛勤教育表示感謝,因?yàn)槭悄阕屛覍W(xué)習(xí)到了這些,是我獲益良多。
軟件工程的學(xué)習(xí)心得體會(huì)篇九
軟件工程經(jīng)濟(jì)是近年來(lái)出現(xiàn)的嶄新的研究方向,是軟件工程和經(jīng)濟(jì)學(xué)相互融合深入的產(chǎn)物。下面是本站小編為大家整理的軟件工程。
供你參考!
時(shí)間過(guò)的很快,轉(zhuǎn)眼間已經(jīng)實(shí)習(xí)將近5個(gè)月,其中有2個(gè)月是屬于完全被流放的。最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開(kāi)發(fā)(struts+mysql+spring+hibernate),之后是去做網(wǎng)絡(luò)交換機(jī)軟件的腳本測(cè)試。現(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測(cè)試經(jīng)驗(yàn)。
至少自己做的東西,是真正交付到了客戶(hù)手上,到也稍微有些成就感。
1、淺談測(cè)試。
一直以來(lái),我都認(rèn)為測(cè)試是脫離了軟件工程范圍的工作,不以為屑。但在實(shí)際情況中,測(cè)試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責(zé)任在你,而不在于編碼人員。一般的測(cè)試人員不懂編碼,他們靠的是日以累計(jì)的經(jīng)驗(yàn)總結(jié)和想象力。而要做到高級(jí)測(cè)試工程師,則一定要懂編碼,因?yàn)檫@是你完全掌握整個(gè)系統(tǒng)的方方面面具體運(yùn)作的前提。但占主導(dǎo)地位的,還是大型系統(tǒng)的集成測(cè)試經(jīng)驗(yàn)。實(shí)際項(xiàng)目中,編碼時(shí)間一般只占30%左右,真正耗費(fèi)時(shí)間的是it階段的找bug與對(duì)應(yīng)bug,此階段基本評(píng)定了coder的編碼質(zhì)量。
2、程序員的困惑。
有位同事告訴我:代碼看幾遍都沒(méi)用,要去抄,例如一個(gè)查詢(xún)模塊,在此基礎(chǔ)上去做具體記錄的歷史記錄查詢(xún)模塊,你可能會(huì)覺(jué)得很簡(jiǎn)單,但實(shí)際情況卻往往報(bào)一堆異常,配置問(wèn)題涉及到方方面面,以及數(shù)據(jù)庫(kù)字段,傳值問(wèn)題等等,一大堆對(duì)于新人來(lái)說(shuō)很郁悶的問(wèn)題。但不用怕,只要學(xué)會(huì)調(diào)試,一個(gè)個(gè)問(wèn)題去追蹤,一個(gè)個(gè)去解決,自然而然,那段“源碼”才真正屬于你。
3、如何調(diào)試追蹤。
如果你能在短短的時(shí)間內(nèi)就看到問(wèn)題點(diǎn)在那,放下斷點(diǎn)去追蹤,出去找工作,絕對(duì)沒(méi)問(wèn)題。出現(xiàn)問(wèn)題的時(shí)候,不要光看代碼,要用實(shí)際行動(dòng)去追蹤運(yùn)行期間的具體值,那是最好途徑。eclipse是個(gè)很爽的ide,這點(diǎn)做的很好。例如頁(yè)面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)句去下手,設(shè)置斷點(diǎn),一步一步stepover,讓sql字段(存取最終sql語(yǔ)句的字符串)運(yùn)行到有值,inspect進(jìn)去看,如果還看不出來(lái),就點(diǎn)擊它,copy后在sql客戶(hù)端去實(shí)際運(yùn)行,看看實(shí)際查詢(xún)出來(lái)的表是什么,如果是對(duì)的,有可能就是頁(yè)面調(diào)用的錯(cuò)誤或者action邏輯的傳值問(wèn)題。
頁(yè)面錯(cuò)誤的調(diào)試,基本方法是用右鍵點(diǎn)擊實(shí)際網(wǎng)頁(yè)查看源代碼,copy到editplus,就能看到具體錯(cuò)誤發(fā)生在那幾行。通常有幾種常見(jiàn)的錯(cuò)誤,例如:缺少對(duì)象這種很多時(shí)候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(=null)語(yǔ)句加保護(hù)。追蹤的方法基本就是用alert語(yǔ)句,放在有可能出錯(cuò)的地方。
4、一些習(xí)慣。
遇到問(wèn)題先自己思考,無(wú)從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會(huì)了,不然你一輩子都停留在那種水平,從人身上學(xué)到的東西遠(yuǎn)遠(yuǎn)比書(shū)多的多。
解決了一個(gè)問(wèn)題后,要去究根問(wèn)底去找到問(wèn)題產(chǎn)生的起因,以防你下次遇到類(lèi)似的問(wèn)題再浪費(fèi)同樣的時(shí)間。
把代碼寫(xiě)的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過(guò)一個(gè)高手寫(xiě)的代碼,真的一看就是不同水平的人寫(xiě)的,幾乎很完美,讀起來(lái)很流暢,方便自己也方便別人。
任務(wù)完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務(wù),只要你肯去嘗試,他們就會(huì)對(duì)你另言相看,把三天的任務(wù)一天加班搞定,效率和忠誠(chéng)都有了,路也比較好走了。
一、實(shí)訓(xùn)目的:
通過(guò)對(duì)java語(yǔ)言、sql數(shù)據(jù)庫(kù)的應(yīng)用以及sql語(yǔ)言的復(fù)習(xí)和鍛煉,并且通過(guò)使用myeclipse開(kāi)發(fā)平臺(tái)設(shè)計(jì)管理項(xiàng)目,以達(dá)到充分熟悉開(kāi)發(fā)平臺(tái)及應(yīng)用設(shè)計(jì)。同時(shí)掌握并實(shí)踐軟件項(xiàng)目設(shè)計(jì)規(guī)范及其開(kāi)發(fā)流程:需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫(xiě)等,以便提前適應(yīng)軟件公司開(kāi)發(fā)流程、環(huán)境和工作要求。
二、實(shí)訓(xùn)內(nèi)容:
1.項(xiàng)目:(“當(dāng)當(dāng)網(wǎng)”)。
2.完成(用戶(hù)注冊(cè)、登錄、列表、購(gòu)物車(chē)、刪除、修改)等功能。
3.數(shù)據(jù)庫(kù)設(shè)計(jì)、sql應(yīng)用。
4.項(xiàng)目實(shí)戰(zhàn)。
三、實(shí)訓(xùn)總結(jié):
轉(zhuǎn)眼間實(shí)訓(xùn)已過(guò)去一段時(shí)間,之前的興奮、喜悅?cè)缃褚呀?jīng)讓我熟悉,在實(shí)訓(xùn)的每一天都會(huì)讓我有成為一名真正的財(cái)富者擁有的沖動(dòng)。也許,在這期間不一定會(huì)讓一個(gè)人有著翻天覆地的變化,但變化就是這樣一點(diǎn)一點(diǎn)產(chǎn)生的。通過(guò)這一期的實(shí)訓(xùn),雖然倍感折磨,但是收獲卻是很大的,學(xué)習(xí)中我不但有了學(xué)習(xí)成果的喜悅,而且自己也日漸成熟,有種說(shuō)不出的喜悅。
在實(shí)訓(xùn)的過(guò)程中,我深深的體會(huì)到了自己在專(zhuān)業(yè)知識(shí)方面的欠缺和不足,也意識(shí)到了自己作為計(jì)算機(jī)軟件專(zhuān)業(yè)的學(xué)生,要想在以后的職業(yè)中嶄露頭角,除了要有過(guò)硬的理論知識(shí),健康的體魄之外,還必須具備良好的心理素質(zhì),是自己在以后的途中無(wú)論經(jīng)歷什么樣的困難,都立于不敗之地。通過(guò)實(shí)訓(xùn)老師的課堂講解與企業(yè)文化標(biāo)準(zhǔn)的培訓(xùn),使我加深了對(duì)自己專(zhuān)業(yè)的認(rèn)識(shí),從而確定自己以后的努力方向,要想在短暫的實(shí)訓(xùn)時(shí)間內(nèi)盡多的學(xué)到東西,就需要我們跟老師或同學(xué)進(jìn)行良好的溝通,加深彼此的了解,只有我們跟老師多溝通,讓老師更了解我們,才能更真切的對(duì)我們進(jìn)行培訓(xùn)工作。由此,班級(jí)的文化“共享”就在生活中慢慢形成了。
“紙上得來(lái)終覺(jué)淺,絕知此事要躬行!”在這短短的時(shí)間里,讓我深深的感覺(jué)到自己在實(shí)際應(yīng)用中所學(xué)來(lái)專(zhuān)業(yè)知識(shí)的匱乏。讓我真真領(lǐng)悟到“學(xué)無(wú)止境”這句話(huà)的涵義。而老師在專(zhuān)業(yè)認(rèn)識(shí)周到中所講的,都是課本上沒(méi)有而對(duì)我們非常有實(shí)際意義的。這又給我們的實(shí)訓(xùn)增添了濃墨淡彩的光輝。我懂得了實(shí)際生活中,專(zhuān)業(yè)知識(shí)是怎樣應(yīng)用與實(shí)踐的。在這些過(guò)程中,我不僅知道了職業(yè)生涯所需具備的專(zhuān)業(yè)知識(shí),而且讓我深深體會(huì)到一個(gè)團(tuán)隊(duì)中的各個(gè)成員合作的重要性,要善于團(tuán)隊(duì)合作,善于利用別人的智慧,這才是大智慧??繂我坏牧α渴呛茈y完成一個(gè)大項(xiàng)目的,在進(jìn)行團(tuán)隊(duì)合作的時(shí)候,還要耐心聽(tīng)取每一個(gè)成員的意見(jiàn),是我們的組合達(dá)到更加完美。
這次實(shí)訓(xùn)除了讓我明白工作中需要能力,素質(zhì),知識(shí)之外,更重要的是學(xué)會(huì)了如何去完成一個(gè)任務(wù),懂得了享受工作。當(dāng)遇到問(wèn)題,冷靜,想辦法一點(diǎn)一點(diǎn)的排除障礙,到最后獲取成功,一種自信心就由然而生,這應(yīng)該就是工作的樂(lè)趣。有時(shí)候不懂的就需要問(wèn)別人了,虛心請(qǐng)教,從別人的身上真的能學(xué)到自己沒(méi)有的東西,每一次的挫折都會(huì)使我更接近成功。還有學(xué)會(huì)了在工作中與人的合作與交流,同樂(lè)同累,合作互助,這是團(tuán)體的精神,也是必須學(xué)習(xí)的東西。
經(jīng)過(guò)之前的學(xué)習(xí),對(duì)程序設(shè)計(jì)有了一定的認(rèn)識(shí)與理解。在校期間,一直都是學(xué)習(xí)理論知識(shí),沒(méi)有機(jī)會(huì)去參與項(xiàng)目的開(kāi)發(fā)。所以說(shuō)實(shí)話(huà),這次實(shí)訓(xùn),軟件項(xiàng)目開(kāi)發(fā)對(duì)我來(lái)說(shuō)是比較抽象的,一個(gè)完整的項(xiàng)目要怎么分工以及完成該項(xiàng)目所要的步驟也不是很明確。而經(jīng)過(guò)這次實(shí)訓(xùn),讓我明白了一個(gè)完整項(xiàng)目的開(kāi)發(fā),必須由團(tuán)隊(duì)來(lái)分工合作,并在每個(gè)階段中進(jìn)行必要的總結(jié)與論證。
一個(gè)完整項(xiàng)目的開(kāi)發(fā)它所要經(jīng)歷的階段包括:遠(yuǎn)景范圍規(guī)劃和用例說(shuō)明、項(xiàng)目結(jié)構(gòu)和風(fēng)險(xiǎn)評(píng)估、業(yè)務(wù)功能。
說(shuō)明書(shū)。
詳細(xì)設(shè)計(jì)說(shuō)明書(shū)代碼實(shí)現(xiàn)測(cè)試和安裝包等等。一個(gè)項(xiàng)目的開(kāi)發(fā)所需要的財(cái)力人力都是很多的,如果沒(méi)有一個(gè)好的遠(yuǎn)景規(guī)劃,對(duì)以后的開(kāi)發(fā)進(jìn)度會(huì)有很大的影響,甚至?xí)霈F(xiàn)在預(yù)定時(shí)間內(nèi)不能完成項(xiàng)目或者完成的項(xiàng)目跟原來(lái)預(yù)想的不一樣。一份好的項(xiàng)目結(jié)構(gòu)業(yè)務(wù)功能和詳細(xì)設(shè)計(jì)說(shuō)明書(shū)對(duì)一個(gè)項(xiàng)目的開(kāi)發(fā)有明確的指引作用,它可以使開(kāi)發(fā)人員對(duì)這個(gè)項(xiàng)目所要實(shí)現(xiàn)的功能在總體上有比較明確的認(rèn)識(shí),還能減少在開(kāi)發(fā)過(guò)程中出現(xiàn)不必要的麻煩。代碼的實(shí)現(xiàn)是一個(gè)項(xiàng)目開(kāi)發(fā)成功與否的關(guān)鍵,也就是說(shuō),前期作業(yè)都是為代碼的實(shí)現(xiàn)所做的準(zhǔn)備。
我深刻的認(rèn)識(shí)到要成為一名優(yōu)秀的軟件開(kāi)發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實(shí)的編寫(xiě)代碼基礎(chǔ),必須要有事先對(duì)文檔進(jìn)行可靠性報(bào)告,功能說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū)等的編寫(xiě)和一些風(fēng)險(xiǎn)評(píng)估的編寫(xiě)的能力。
除了圖書(shū)館,最能讓我感覺(jué)到身在大學(xué)的就是實(shí)訓(xùn)機(jī)房,在匆匆過(guò)去的兩個(gè)月內(nèi),我往返于實(shí)訓(xùn)機(jī)房與宿舍之間,使我享受了一個(gè)充實(shí)的學(xué)習(xí)時(shí)期,讓我感受到了大學(xué)的魅力,對(duì)自己充滿(mǎn)信心,對(duì)大學(xué)充滿(mǎn)信心,以積極的心態(tài)迎接明天挑戰(zhàn)。
實(shí)訓(xùn)中要求有扎實(shí)的理論基本知識(shí),操作起來(lái)才順心應(yīng)手,我這時(shí)才明白什么是“書(shū)到用時(shí)方恨少”。這就激發(fā)了學(xué)習(xí)的欲望。“學(xué)以致用”,就是要把學(xué)來(lái)的知識(shí)能運(yùn)用到實(shí)際操作當(dāng)中,用實(shí)踐來(lái)檢驗(yàn)知識(shí)的正確性。我想,這是實(shí)訓(xùn)的最根本目的。
最初在實(shí)訓(xùn)時(shí)自己就有一些不自信,但隨著項(xiàng)目的進(jìn)展,我慢慢的找到了自己的位置,找到自己的目標(biāo),雖然自己與好的同學(xué)還有差距,這也給了我很大壓力,但是我相信沒(méi)有壓力就沒(méi)有動(dòng)力,所以在整個(gè)實(shí)訓(xùn)過(guò)程中我都在不斷地努力。
實(shí)訓(xùn)期間讓我學(xué)到很多東西,不僅在理論上讓我對(duì)it領(lǐng)域有了全新的認(rèn)識(shí),在實(shí)踐能力上也得到了很大的提高,真正的學(xué)到了學(xué)以致用,更學(xué)到很多做人的道理,對(duì)我來(lái)說(shuō)受益匪淺。我意識(shí)到自己知識(shí)的缺少,這激勵(lì)我在以后的學(xué)習(xí)、工作、生活中要不斷了解信息技術(shù)發(fā)展動(dòng)態(tài)以及信息發(fā)展中出現(xiàn)的新的技術(shù)。
除此之外,我還學(xué)到了如何與人相處,如何和人更好的交流,我們組成一個(gè)團(tuán)隊(duì)大家一起開(kāi)發(fā)一個(gè)項(xiàng)目,大家的交流溝通顯得尤為重要,如何將自己的想法清楚明白的告訴隊(duì)友,如何提出自己想法的同時(shí)又不傷害其他的隊(duì)友的面子,這些在我的實(shí)訓(xùn)生活中都有一些體會(huì)??墒钦f(shuō),第一次親身體會(huì)理論與實(shí)際相結(jié)合,讓我大開(kāi)眼界。也是對(duì)以前學(xué)習(xí)的一個(gè)初審吧,相信這次實(shí)訓(xùn)多我以后的學(xué)習(xí)、工作也將會(huì)有很大的影響,在實(shí)訓(xùn)的這段時(shí)間里這些寶貴的經(jīng)驗(yàn)將會(huì)成為我以后工作的基石。
作為即將畢業(yè)走出校園的學(xué)生,經(jīng)過(guò)3年的在校學(xué)習(xí),對(duì)程序設(shè)計(jì)有了一些基本的理性的認(rèn)識(shí)和理解。在校期間一直忙于理論的學(xué)習(xí),沒(méi)有機(jī)會(huì)也沒(méi)有經(jīng)驗(yàn)來(lái)參與我們項(xiàng)目的開(kāi)發(fā),所以在實(shí)習(xí)之前軟件按開(kāi)發(fā)對(duì)我來(lái)說(shuō)是非常抽象的,一個(gè)完整的項(xiàng)目要怎么來(lái)分工以及完成該項(xiàng)目所需要的基本步驟也不明確,通過(guò)這次實(shí)訓(xùn)讓我明白一個(gè)完整項(xiàng)目的完成必須團(tuán)隊(duì)分工合作,并在每個(gè)階段進(jìn)行必要的總結(jié)和檢查。在我們項(xiàng)目的開(kāi)發(fā)過(guò)程中我們項(xiàng)目的步驟:詳細(xì)設(shè)計(jì)、詳細(xì)設(shè)計(jì)review、編碼、編碼。在項(xiàng)目開(kāi)發(fā)過(guò)程中我也深刻的體會(huì)到詳細(xì)設(shè)計(jì)對(duì)一個(gè)項(xiàng)目開(kāi)發(fā)有明確的指引作用,它可以使開(kāi)發(fā)人員對(duì)這個(gè)項(xiàng)目所要實(shí)現(xiàn)的功能在總體上有具體的認(rèn)識(shí),并能減少在開(kāi)發(fā)過(guò)程中出現(xiàn)不必要的脫節(jié)。
這次實(shí)訓(xùn)是對(duì)我們學(xué)習(xí)的一個(gè)檢驗(yàn),雖然項(xiàng)目中很多知識(shí)我們?cè)谌粘5膶W(xué)習(xí)中都沒(méi)有遇到,這同時(shí)提醒我:要想成為一個(gè)合格的程序員就有具備一種自學(xué)能力,在工作中會(huì)遇到很多從未接觸過(guò)的問(wèn)題,當(dāng)有了問(wèn)題時(shí)要去解決,在你不斷努力,尋找答案的過(guò)程中,自己的能力也在潛移默化的提升。有時(shí)遇到問(wèn)題時(shí)可能有很多想法但卻不知道那個(gè)正確,這就讓我們不斷地去探索,不斷地嘗試。
在這次軟件工程課程中,我學(xué)到了很多東西,第一次深刻的體會(huì)到了什么叫做用工程化的思想來(lái)編寫(xiě)軟件,以前自己也寫(xiě)過(guò)一些小型軟件,沒(méi)有做過(guò)大型的項(xiàng)目,直到這次課堂我擔(dān)任組長(zhǎng)并組織組員共同完成“個(gè)人圖書(shū)管理系統(tǒng)”這個(gè)項(xiàng)目,第一次和別人合作,才發(fā)現(xiàn)運(yùn)用工程化的思想來(lái)做是如此的有必要。
從這里,我才真正的意識(shí)到實(shí)施一個(gè)軟件工程并不是說(shuō)簡(jiǎn)單的會(huì)編碼就能夠解決問(wèn)題的,我們更多的精力不是放在編碼上,編碼只是一個(gè)很小的模塊,只占到那么小的一個(gè)部分。這個(gè)事實(shí)在很大程度上顛覆了我以前的思想,在我以前的認(rèn)識(shí)中,似乎整個(gè)軟件就是編碼,除此無(wú)它,還好有老師的指導(dǎo),不然真的會(huì)出現(xiàn)老師所說(shuō)的,撞得頭破血流之后才想起來(lái)用軟件工程的思想來(lái)完成這個(gè)工作。
剛真正開(kāi)始工作之前,我們費(fèi)了很多的時(shí)間來(lái)完成一些前端工作,如需求分析和可行性分析,這塊工作在別人看來(lái)可能是相對(duì)無(wú)關(guān)緊要,甚至是多于的,其實(shí),換做在以前,我也會(huì)這么認(rèn)為??墒?,我現(xiàn)在算是深深地明白了磨刀不誤砍柴工的道理,這些工作的完成太有必要了,太重要了,要想你的軟件有用有市場(chǎng),能被別人接受和認(rèn)可,在進(jìn)行過(guò)程中不會(huì)出現(xiàn)崩潰性的問(wèn)題,這些工作缺一不可。
還有就是接下來(lái)的一些設(shè)計(jì)模塊,此模塊與軟件編碼涉及比較緊密,主要是解決一些參數(shù)傳遞和接口通訊的問(wèn)題,此模塊對(duì)我的觸動(dòng)遠(yuǎn)沒(méi)有上兩個(gè)模塊對(duì)我的影響大,因此再次也不做過(guò)多的介紹。
在整個(gè)活動(dòng)的完成過(guò)程中,作為組長(zhǎng),我收獲很多,我發(fā)現(xiàn),要是組里有個(gè)人不怎么想做事情時(shí),他對(duì)于整個(gè)組織的影響是毀滅性的,正所謂“一顆老鼠屎,能壞一倉(cāng)谷”,以后我的組織里要是出現(xiàn)這樣的人,我絕不會(huì)給他繼續(xù)留下來(lái)的機(jī)會(huì),我會(huì)在第一時(shí)間將他清除出去。還有就是,作為組長(zhǎng),你要做的最重要的事情,不是發(fā)揮自己的聰明才智,而是創(chuàng)造出一個(gè)平臺(tái),讓別人去發(fā)揮,你所要做得,出了保證這個(gè)平臺(tái)的完整性和公平性外,還有就是協(xié)調(diào)好各組員之間的關(guān)系。
軟件工程的學(xué)習(xí)心得體會(huì)篇十
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫(huà)分層的數(shù)據(jù)流圖、e—r圖以及狀態(tài)圖式本節(jié)的重點(diǎn)。第四章結(jié)構(gòu)化分析方法,這一章重點(diǎn)講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點(diǎn)講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說(shuō)帶來(lái)的好處,并告誡我們將來(lái)一點(diǎn)要形成好的編碼風(fēng)格。第六章軟件測(cè)試方法,本章講解了軟件測(cè)試相關(guān)的概念及重要性,軟件測(cè)試與開(kāi)發(fā)各個(gè)階段的關(guān)系;還介紹了白盒測(cè)試技術(shù)以及黑河測(cè)試技術(shù)。第七章統(tǒng)一建模語(yǔ)言u(píng)ml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時(shí)用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動(dòng)態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計(jì)模式,本章對(duì)軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計(jì),本章的重點(diǎn)是對(duì)面向?qū)ο蠓治鰰r(shí)建立的對(duì)象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動(dòng)以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。包括程序流程圖、n—s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱(chēng)之為程序框圖,它是軟件開(kāi)發(fā)者最熟悉的一種算法表達(dá)工具。它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀(guān)和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n—s圖:一種符合結(jié)構(gòu)化程序設(shè)計(jì)原則的圖形描述工具,稱(chēng)為盒圖,又稱(chēng)為n—s圖。在n—s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀(guān)地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書(shū)、軟件設(shè)計(jì)說(shuō)明書(shū)、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。
動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
軟件工程的學(xué)習(xí)心得體會(huì)篇十一
學(xué)習(xí)軟件工程一個(gè)學(xué)期以來(lái),我在陳燁老師的教導(dǎo)下確實(shí)獲益匪淺。軟件工程這門(mén)課,讓我對(duì)軟件的認(rèn)識(shí)有了大大的提升,從一開(kāi)始對(duì)軟件工程的一無(wú)所知,到現(xiàn)在一學(xué)期下來(lái)的不斷學(xué)習(xí),懂得了許多的知識(shí)。
軟件不僅僅是程序,而是思想在硬件上的載體和體現(xiàn),軟件工程與其說(shuō)是一門(mén)課程,不如說(shuō)是一門(mén)思想。讓我懂得如何去分析和處理問(wèn)題的過(guò)程,綜合解決問(wèn)題。
在這段時(shí)間的學(xué)習(xí)中,我明白了一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告等多個(gè)文檔,而軟件的生存周期可分為八個(gè)階段,分別是問(wèn)題定義,可行性研究,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),程序設(shè)計(jì),測(cè)試,文檔,技術(shù)支持,售后服務(wù)。而可行性包括經(jīng)濟(jì),技術(shù),法律和社會(huì)。了解了許多軟件開(kāi)發(fā)模型,比如瀑布模型,增量模型和螺旋模型,也了解了uml對(duì)象面向?qū)ο蠼?,知道如何?huà)流圖,碩果累累。其實(shí)軟件和程序是兩個(gè)不同的概念,軟件除了程序還要有使用和維護(hù)該程序所需要的全部文檔。包括需求文檔、設(shè)計(jì)文檔、測(cè)試文檔、維護(hù)文檔以及使用手冊(cè)。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,需要很好的基礎(chǔ)知識(shí)的理解和掌握,所以說(shuō)學(xué)好軟件工程不是僅僅書(shū)多看幾遍就可以成功,而是要多注意結(jié)合實(shí)際,多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決,然后舉一反三。
軟件工程這門(mén)課在我們畢業(yè)之后,是我們實(shí)際要運(yùn)用的一項(xiàng)非常有用的技能,這門(mén)課讓我意識(shí)到理論學(xué)習(xí)很重要,而實(shí)踐更重要,實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),只有實(shí)踐和理論相結(jié)合,才能使效益最大化。軟件工程的課雖然快要結(jié)束了,但是我對(duì)軟件工程的學(xué)習(xí)才剛剛開(kāi)始,有了這些基本知識(shí)做鋪墊,在以后做項(xiàng)目的時(shí)候?qū)?huì)是解決問(wèn)題的有效措施。
軟件工程的學(xué)習(xí)心得體會(huì)篇十二
對(duì)于一個(gè)軟件系統(tǒng)的開(kāi)發(fā),第一步就是問(wèn)題定義,了解所開(kāi)發(fā)系統(tǒng)的行業(yè)背景,制定計(jì)劃。當(dāng)我們計(jì)劃確定以后就要對(duì)項(xiàng)目系統(tǒng)本身進(jìn)行可行性研究,主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性三個(gè)方面著手。就比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的行業(yè)背景說(shuō)明文檔中非常詳細(xì)地分析了當(dāng)下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務(wù)說(shuō)明、應(yīng)用背景、未來(lái)發(fā)展趨勢(shì)以及相關(guān)應(yīng)用案例等四個(gè)方面,項(xiàng)目團(tuán)隊(duì)中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關(guān)的調(diào)查資料對(duì)將要開(kāi)發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來(lái)我們寫(xiě)這類(lèi)文檔的時(shí)候就是草草了事,不會(huì)做得這么詳細(xì),而這次看到大型項(xiàng)目的行業(yè)背景說(shuō)明也是這么詳細(xì),也讓自己認(rèn)識(shí)到不管是軟件開(kāi)發(fā)的那個(gè)階段都要認(rèn)真對(duì)待,這些瑣碎的文檔都是后期開(kāi)發(fā)項(xiàng)目的支撐,只要它們做的透徹,后面的開(kāi)發(fā)工作才能更順利的進(jìn)行。
第二、項(xiàng)目需求說(shuō)明方面
這部分項(xiàng)目需求說(shuō)明就是軟件定義時(shí)期中需求分析階段,而該階段的主要目的就是了解用戶(hù)的需要,根據(jù)用戶(hù)的需要確定系統(tǒng)必須完成那些工作,并對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫(xiě)出一份需求規(guī)格說(shuō)明,即為《物聯(lián)網(wǎng)物流倉(cāng)儲(chǔ)管理系統(tǒng)》項(xiàng)目需求說(shuō)明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項(xiàng)目時(shí)寫(xiě)的需求規(guī)格說(shuō)明書(shū)就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀(guān)整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來(lái)它不是很重要,寫(xiě)文檔的時(shí)候也不知道怎么寫(xiě)就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒(méi)有把自己項(xiàng)目的需求寫(xiě)明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗(yàn)教訓(xùn)我會(huì)對(duì)這部分更加重視。
第三、系統(tǒng)概要設(shè)計(jì)方面
這部分內(nèi)容分說(shuō)的是軟件設(shè)計(jì)時(shí)期的概要設(shè)計(jì)階段,該階段的主要目的就是實(shí)現(xiàn)系統(tǒng)的功能、設(shè)計(jì)軟件的結(jié)構(gòu)、模塊組成以及模塊之間的關(guān)系。在概要設(shè)計(jì)階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對(duì)比多種可能的系統(tǒng)實(shí)現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的結(jié)構(gòu)。在這個(gè)階段還會(huì)具體畫(huà)出e-r圖、數(shù)據(jù)流圖等方面的設(shè)計(jì)。
比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的系統(tǒng)概要設(shè)計(jì)從項(xiàng)目概述、設(shè)計(jì)約束、功能單元與功能模塊設(shè)計(jì)、數(shù)據(jù)e-r圖設(shè)計(jì)、總體設(shè)計(jì)、界面設(shè)計(jì)等六個(gè)方面介紹,通過(guò)讀這個(gè)文檔,我覺(jué)得最重要的還是總體設(shè)計(jì),分別從邏輯架構(gòu)設(shè)計(jì)、物理架構(gòu)設(shè)計(jì)、技術(shù)架構(gòu)設(shè)計(jì)設(shè)計(jì)系統(tǒng)。在這個(gè)階段中模塊要做到高內(nèi)聚低耦合,這樣開(kāi)發(fā)出來(lái)的系統(tǒng)才會(huì)具有更高的獨(dú)立性。
在原來(lái)做項(xiàng)目時(shí)沒(méi)有編寫(xiě)過(guò)這類(lèi)文檔,在該階段只是畫(huà)了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對(duì)該類(lèi)文檔尚未重視。通過(guò)張老師的講解和自己的學(xué)習(xí),我相信在以后做項(xiàng)目的時(shí)候一定會(huì)注意到這類(lèi)文檔的編寫(xiě)。
第四、詳細(xì)設(shè)計(jì)與分析方面
詳細(xì)設(shè)計(jì)階段就是把概要設(shè)計(jì)階段的每個(gè)模塊進(jìn)一步設(shè)計(jì),確定每個(gè)模塊所需要的算法和數(shù)據(jù)結(jié)構(gòu)。在這個(gè)階段還是需要我們?cè)O(shè)計(jì)出程序的詳細(xì)規(guī)格說(shuō)明,而不是編寫(xiě)程序。在詳細(xì)設(shè)計(jì)階段,系統(tǒng)設(shè)計(jì)人員可以通過(guò)使用程序流程圖、盒圖、pad圖等過(guò)程設(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ì)接口等,這些對(duì)于以后的編碼工作都是極其重要的。
第五、編碼和測(cè)試方案方面
關(guān)于編碼,我認(rèn)為編碼要想做的完美必備條件就是前面的軟件定義和軟件設(shè)計(jì)時(shí)期要按部就班的做,文檔一定要按要求書(shū)寫(xiě),不能偷懶也不能草草書(shū)寫(xiě)。對(duì)于編碼也要有相應(yīng)的文檔書(shū)寫(xiě)規(guī)范,要使源程序代碼的邏輯簡(jiǎn)明清晰、易讀易懂。這樣盡管我們不是設(shè)計(jì)系統(tǒng)的人員,當(dāng)看到源程序代碼的時(shí)候也能容易讀懂代碼的意思。
其次就是測(cè)試的內(nèi)容,從測(cè)試的文檔中我們可以得出,其實(shí)測(cè)試在軟件開(kāi)發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問(wèn)題并排除其中的潛藏的錯(cuò)誤,最終把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶(hù)使用。它要求測(cè)試人員也要有很高的技術(shù)水平。
軟件工程的學(xué)習(xí)心得體會(huì)篇十三
軟件工程師作為現(xiàn)代社會(huì)中越來(lái)越重要的職業(yè)之一,隨著信息技術(shù)的不斷發(fā)展,其職責(zé)也越來(lái)越廣泛和重要。作為一名軟件工程師,我在這個(gè)行業(yè)里摸爬滾打多年,深感自己的成長(zhǎng)離不開(kāi)各種經(jīng)驗(yàn)和心得的積累。在接下來(lái)的文字中,我將從個(gè)人視角談?wù)勛约涸谲浖_(kāi)發(fā)過(guò)程中的心得體會(huì)。
第二段:選擇質(zhì)量。
在軟件開(kāi)發(fā)的過(guò)程中,我最關(guān)注的是軟件的質(zhì)量。因?yàn)檐浖枰L(zhǎng)期運(yùn)行,不僅要滿(mǎn)足用戶(hù)需求,還要兼顧安全性和可維護(hù)性等方面,這需要我們?cè)陂_(kāi)發(fā)過(guò)程中嚴(yán)格控制每一個(gè)環(huán)節(jié),做好每一個(gè)細(xì)節(jié)。因此,我在項(xiàng)目開(kāi)發(fā)前會(huì)認(rèn)真分析需求和可能的風(fēng)險(xiǎn),對(duì)技術(shù)框架和工具的選擇非常謹(jǐn)慎。我也會(huì)定期進(jìn)行代碼復(fù)審和單元測(cè)試等工作,確保代碼質(zhì)量達(dá)標(biāo)。當(dāng)然,在不斷優(yōu)化的過(guò)程中,我也意識(shí)到代碼質(zhì)量的提高不僅僅在于個(gè)人級(jí)別,而更應(yīng)該顧及團(tuán)隊(duì)整體水平,因此深感技術(shù)學(xué)習(xí)和交流的重要性。只有不斷積累、分享,才能讓團(tuán)隊(duì)的發(fā)展更加健康和持久。
第三段:溝通協(xié)作。
作為一名軟件工程師,我們的工作不僅僅是編寫(xiě)代碼,更包括與產(chǎn)品經(jīng)理、UI設(shè)計(jì)師、測(cè)試工程師等各個(gè)角色之間的溝通協(xié)作。這就需要我們具備更多的軟技能。比如,要善于傾聽(tīng)和引導(dǎo),以便更好地理解產(chǎn)品需求和用戶(hù)痛點(diǎn);要有清晰的表達(dá)能力,能夠清楚地向其他角色描述自己的想法和意圖;在開(kāi)發(fā)過(guò)程中,也要非常注重團(tuán)隊(duì)合作,及時(shí)溝通和協(xié)調(diào)出現(xiàn)的問(wèn)題。整個(gè)軟件開(kāi)發(fā)過(guò)程需要涵蓋從需求分析、規(guī)劃和設(shè)計(jì),再到編碼、測(cè)試和上線(xiàn)等各個(gè)環(huán)節(jié),期間需要負(fù)責(zé)人與團(tuán)隊(duì)的全面協(xié)作才能保證項(xiàng)目的順利完成。
第四段:學(xué)習(xí)成長(zhǎng)。
軟件開(kāi)發(fā)是一個(gè)知識(shí)密集型的工作,要時(shí)刻緊跟技術(shù)的發(fā)展趨勢(shì)才能在激烈的競(jìng)爭(zhēng)中取得優(yōu)勢(shì)。因此,我認(rèn)為軟件工程師需要具備持續(xù)學(xué)習(xí)的能力和自我提升的意識(shí)。我會(huì)在業(yè)余時(shí)間去了解新的技術(shù),參加相關(guān)的技術(shù)社群和活動(dòng),不斷學(xué)習(xí)和嘗試新東西,以此來(lái)增強(qiáng)自己的核心競(jìng)爭(zhēng)力和解決實(shí)際問(wèn)題的能力。同樣,我也會(huì)時(shí)刻關(guān)注團(tuán)隊(duì)的成長(zhǎng)和發(fā)展,希望能為團(tuán)隊(duì)帶來(lái)更多的經(jīng)驗(yàn)和技術(shù)積累。
第五段:總結(jié)回顧。
在軟件開(kāi)發(fā)的過(guò)程中,我覺(jué)得最重要的是要保持持之以恒的熱情和精神狀態(tài)。無(wú)論是在技術(shù)領(lǐng)域還是在團(tuán)隊(duì)管理中,不停地學(xué)習(xí)和成長(zhǎng),分享并培育團(tuán)隊(duì)的創(chuàng)新精神和專(zhuān)業(yè)精神,才能不斷提高自己和團(tuán)隊(duì)的能力和素質(zhì),做出更好的產(chǎn)品。取得成功需要獨(dú)立思考和勇于探索,但更需要承認(rèn)團(tuán)隊(duì)的重要性,在各方面展現(xiàn)出自己領(lǐng)導(dǎo)團(tuán)隊(duì)的能力和擔(dān)當(dāng)。在今后的工作和生活中,我也將持續(xù)關(guān)注自己的成長(zhǎng)需求,堅(jiān)定地走好自己的職業(yè)道路。