軟件工程心得

| 新華0

基于本次暑期實習的情況,我收獲很大。

從實訓目的來看,本次實訓主要是在VS2012開發(fā)平臺上實現(xiàn)對C#語言、SQL數(shù)據(jù)庫的應用,就我所在小組的項目工作內(nèi)容來看,還需要掌握水晶報表和MDI多窗口應用技術(shù)。除了要充分熟悉開發(fā)平臺及應用設計之外,還要掌握并實踐軟件項目設計規(guī)范及其開發(fā)流程即需求階段、分析和設計階段、編碼階段和測試階段,以便能按時交付作業(yè)。

從實訓的內(nèi)容來看,我小組的項目是“人事工資管理系統(tǒng)”,主要實現(xiàn)公司企業(yè)對內(nèi)部員工檔案、工資、獎罰考勤等一系列的管理,這在當今不斷壯大的企業(yè)用人單位是亟待需要的,總的來說,項目的難度系數(shù)不是很高,但也是相當困難。

在校外實習之前,老師先在校內(nèi)培訓了5天。5天實訓中,著重講解了c#語言應用,并布置編寫“通訊錄”工作臺程序,windows應用程序和WPF程序,數(shù)據(jù)先是用文本保存,然后練習用數(shù)據(jù)庫保存,期間每天需上交當日作業(yè)。5天的時間里,通過不斷地學習,我從完全不懂c#語言成長到初步掌握了這門語言,當然在具體應用中還是會遇到些問題,但我還在學習。其實在實習的前一個月里,老師就上傳了一些關(guān)于c#語言的資料并通知我們需要配置哪些軟件環(huán)境,對于這一點,我是相當感謝何老師的,當然在校外的實習里,公司也全都把開發(fā)項目用到的一系列軟件上傳到公共文件夾里,從而免去了我們下載軟件的麻煩,在此,感謝眾老師。

校內(nèi)實習要上交的作業(yè)我是在校外實習中補充完成的,因為之前上交的作業(yè)由于時間倉促大都有錯誤,所以借著校外實習中對c#語言的進一步應用和講師的詳細講解后,我重新改正了錯誤,希望何老師能諒解采納。

校外實習是從7月12號開始,歷時15天,15天的最后一天要回校評審。我對本次校外實習的各個方面都十分滿意。相比上次實習,首先這里的住宿學習條件非常好,住宿和實習地都安裝了空調(diào),實習地方環(huán)境清幽寬敞明亮,伙食也非常好。然后就是實習講師非常專業(yè)和負責,他事先把所有有關(guān)實習的資料軟件存放在公共文件夾,且規(guī)劃入微。一開始先是對我們進行C#測試分好組安排好每組項目任務,又指導我們每個小組安裝SVN軟件,方便小組文件上傳與統(tǒng)一,整體一氣呵成,不似之前實習的凌亂,這一點我十分敬佩。之后每天都先安排好任務工作,認真且非常詳細的給我們操作示范并細心地制作成word文檔供小組之后查看。每隔幾天都會有小組評審,主要針對小組所編文檔的規(guī)范程度和不足提出修改建議。作為小組的PM,我必須承認一開始工作任務安排不當,沒有完全發(fā)揮各成員的優(yōu)勢,以致文檔編寫的有些瑕疵,不過在小組評審過后,我便及時更改了項目工作的分工,而之后小組項目工作進行的非常順利,每個人的能力都得到了最大的發(fā)揮和升華,當然這完全得力于小組成員的高度配合。

我小組是c#軟件開發(fā)第一組,組內(nèi)有6名成員,兩個主要負責項目核心代碼的編寫,其余負責簡單模塊代碼的編寫,我主要負責填寫與修改相關(guān)項目文檔并督促小組進度和團結(jié)組內(nèi)成員、合理分配組員任務并及時調(diào)節(jié)組內(nèi)安排的各種不適與問題。校外實習的過程中,小組成員高度團結(jié),協(xié)調(diào)合作,對所有問題都能及時探討并高效解決,有時遇到分歧,不過在全體討論后,都能找到合理的統(tǒng)一方案,如在界面設計環(huán)節(jié)中,就登陸界面和模塊界面的設計中,組員有很多不同建議,在詢問老師和權(quán)衡實現(xiàn)困難程度后,我們達成了一致意見,統(tǒng)一后的界面相比之前更加規(guī)整明晰,且功能更加健全,當然這是我們小組齊心合力的結(jié)果。在開發(fā)的過程中,出現(xiàn)過項目分工不明確的問題,其原因源于我考慮到組員能力的不同,所以就把大部分的工作安排給能力高的人身上,其他能力低的只暫讓他們自由學習希望能盡早跟上小組步伐,不過事實證明我錯了。讓部分組員自由學習而不參與項目的工作中本身就拖累了小組的整體速度,而且在短暫的時間里,他們也實在學不到任何實際的東西,所以后來我更改了戰(zhàn)略。我先讓能力低的組員嘗試參照模板編寫一些文檔的簡單部分,然后讓能力稍高點的組員繼續(xù)補充文檔的核心部分,最后由我修改格式和內(nèi)容,最后讓老師審閱。這個方案實施過后,小組的效率整體上明顯提高,每個人各司其職,全組團結(jié)一致,共同為項目的完成發(fā)揮自己的聰明才智。而之后,在項目編碼階段,我們小組的TL負責對項目整個框架的構(gòu)建,即設計好主要的窗口原型,然后指導小組成員在自己所負責的模塊上添加具體事件代碼,最后再進行修改,這樣做不僅將組員團結(jié)在一起提高組內(nèi)效率,更直接提高了組員的編程能力。

需求分析階段和設計階段很快結(jié)束了,我們小組齊心協(xié)力按時完成了相關(guān)文檔的編寫,包括需求規(guī)約、實現(xiàn)規(guī)約、界面設計word圖形文檔、數(shù)據(jù)庫設計說明書、詳細設計說明書和概要說明書,在老師評審過后,發(fā)現(xiàn)問題還是有很多,作為項目經(jīng)理的我本該對這些文檔進行及時修改和更正,但由于時間倉促且我們是第一組需第一個評審,所以就馬馬虎虎的拿未精確修改的文檔進行審評了,老師著重對系統(tǒng)模塊圖和模塊功能描述那塊提出了些許建議,并讓演示了小組編寫的代碼程序,對其中錯誤問題提出了解決方案。之后進行一番修改過后,我小組正式進入了編碼階段,編碼只有短暫的3天,后兩天老師分小組評審并提出改進意見,小組修正和改進代碼結(jié)構(gòu)語句,完善項目要求,緊接著進入測試階段,老師又著重介紹了一些測試工具方便小組測試,填寫并修改好測試文檔后,整個實習就將要進入尾聲了。再回校進行最后評審項目PPT和提交作業(yè)后,暑期實習就正式結(jié)束。

短短半個月的實習中,我深深的感受到自己在實際應用中專業(yè)知識的匱乏和短時間學習掌握一門新知識和新技術(shù)的困難,這是我非常畏懼的兩大難題。就自身來說,我喜歡有所準備,不喜歡臨陣磨槍,盡管之前對實習要求的知識技能有些了解,但到真正實施時,還是不免有些不知所措,而之后能慢慢克服畏懼慌張并團結(jié)小組成員按時且高效的完成作業(yè),這都得力于實習老師和組員對我的巨大幫助,在此,由衷感謝他們,也感謝我自己。

軟件工程心得篇2

這次軟件工程實訓是從20__.12.26號開始的,截至20__.12.31號。實訓內(nèi)容是用java相關(guān)知識(主要是jsp)做一個物流配送系統(tǒng)。下面談談對這次實訓的看法。

因為自己平時對java知識儲備不足,特別是jsp這一塊基本不了解怎么回事,所以一拿到這個項目,我心里都是沒有底的,再加上我被分到的那個組,我知道就意味著是我一個人在戰(zhàn)斗了。呵呵,26號,實訓開始了,我們的老師是來自中軟國際公司的程序員,一個是周褀,一個是朱映,都是一身樸素的著裝,讓我感覺做軟件的也沒什么兩樣。老師介紹了自己之后,就直接切入正題了,分析了下我們各個組的系統(tǒng),即將用到的知識,然后就總體把覺得需要補充的知識(jsp和數(shù)據(jù)庫連接等這幾塊)給我們實際操作了下,因為當時看到用jsp,還講的那么認真,當時我就后悔了,平時要是多聽點,現(xiàn)在老師這么認真的給我們講,這是一個多么難得的機會啊。后悔也沒用啊,開始還勉強能理解一點,后來就直接暈了。然后再給大家介紹了一些即將用到的工具,比如rationalRose,SVN,MyEclipse等等。接下來的幾天就不再細講了。下面談談通過這次實訓的心得體會吧。

通過這次實訓,讓我了解到工程開發(fā)的過程,可行性分析——>需求分析——>概要設計——>詳細設計——>代碼編寫——>測試——>驗收。從技術(shù)方面上,我開始jsp基礎基本上就是零的,在老師和syz2(另外一個物流小組,我一個人基本上是跟她們做的,或者說是看著她們做的)的幫助下,對jsp有了一個大概的認識。其實實訓開始前,我還以為做個系統(tǒng)沒什么大不了,可是當真正拿到一個項目,我卻真的無從下手了,而且就是在知道需求分析和詳細設計,在代碼編寫時,一樣寸步難行。通過這個實訓,也讓我了解到,團隊協(xié)作是多么的重要。一個人的精力是多么的有限。進一步理解到,企業(yè)為什么如此重視團隊協(xié)作。同時借用老師的話就是團隊協(xié)作固然重要,但是是建立在個人素質(zhì)的基礎上,假設你個人素質(zhì)不行,將會影響到整個團隊,就別提對團隊作更多貢獻了。__老師說這幾句話的時候,朝向了我,估計是有特殊意義的吧,所以,我將謹記老師的教導。

還有一個收獲是從一個同學(小胖)那里得到的,他的那組成員跟我的這組大體一樣,我倒是覺得沒什么了,不過他倒是很重視這個問題吧。然后他說出來,我也覺得這個問題確實其實是個大的問題。就是不管你會不會這門技術(shù),會不會做這個東西,態(tài)度要正確才好,就算你不會做,你也應該認真的對待,將來 出身到社會,就不是說像你現(xiàn)在,不會做就不做,跑去玩游戲了。小胖說出了這段話,也在我身上有了一個印證,雖然我jsp技術(shù)知識為0,但我也還是在認真的跟著他們一起做,不會做,就多問,畢竟現(xiàn)在我們是學生,可以毫不顧忌的詢問各種問題,老師也會盡力為你回答。將來出身社會就不一樣了。雖然,我就算個打醬油的水平,但是這個醬油也要打得有涵量啊。不管怎么樣,我能對自己有個交待,雖然我不會,但是這次實訓我確實是認真對待了,六天的實訓,除了晚上加班外,還花了2個通宵來完成不同階段的任務,完成與否也不重要了,我至少我做了,這點,是這次我應該對自己的一個肯定。

這次實訓的心得基本上就是這些了,最后特別感謝中軟國際帶我們的那兩個老師(周褀,朱映),這兩個老師對待我們很平易近人,對我們提出的問題,總是不光解決了,還進行了擴展,晚上也跟我們一起加班加到很晚,印象尤其深刻就是朱映老師為了給小胖解決一個問題,臉都變紅了,還在繼續(xù)努力,這點我并不會覺得老師知識儲備不夠,我想應該是這個問題的突發(fā)吧,一時沒想到怎么處理。相反讓我感覺更多的就是老師很認真,很負責。還要感謝就是syz2小組的傾力支持,輔導。

軟件工程心得篇3

學習了這門課程, 還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實例,讓理論和實踐得到了很好的結(jié)合。整一個學期下來,總的來說還是學到了很多東西的,有很多地方是值得肯定的,其實在我看來,軟件工程與其說是一門課程,不如說是一門思想。是一個如何去分析和處理問題的過程,應該說其范疇已經(jīng)遠遠不止局限于該門課程,成為了一個綜合的一個能夠解決問題的思想集合。

整本書的內(nèi)容邏輯很清晰明了,由淺入深循序漸進,首先我就大概描述下我們所學的內(nèi)容,第一章是從整體分析軟件工程這門學科的發(fā)展和所處的社會環(huán)境,接著后面的幾章深入分析了軟件開放過程和模式、軟件項目管理、計算機工程、需求分析、結(jié)構(gòu)化分析建模以及基于UML面向?qū)ο蠓治鼋5?。接著我就詳細介紹下我對這門課程知識點的理解概括:

軟件:軟件是能夠完成預定功能和性能的可執(zhí)行的計算機程序和使程序正常執(zhí)行所需要的數(shù)據(jù),加上描述程序的操作和使用的文檔。軟件的特征:①軟件是一種邏輯實體,而不是具體的物理實體,因而它具有抽象性。②軟件是通過人們的智力活動,把知識與技術(shù)轉(zhuǎn)化成信息的一種產(chǎn)品。③軟件成為產(chǎn)品后,其生產(chǎn)只是簡單的拷貝,不同于硬件制造。④維護過程比硬件復雜的多,甚至會引發(fā)新的錯誤。軟件危機:指的是軟件開發(fā)和維護過程中遇到的一系列嚴重問題。出現(xiàn)軟件危機的原因:①軟件維護費用急劇上升,直接威脅計算機應用的擴大。②軟件生產(chǎn)技術(shù)進步緩慢。軟件工程是指導計算機軟件開發(fā)和維護的工程學科。 軟件生存周期:一個軟件從定義到開發(fā)、使用和維護,直到最終被棄用,要經(jīng)歷一個漫長的時期,通常把軟件經(jīng)歷的這個漫長的時期稱為生存周期。軟件的生存周期可分為八個階段:①問題定義;②可行性研究;③需求分析;④總體(概要)設計;⑤詳細設計;⑥編碼與單元測試;⑦綜合測試;⑧軟件維護;

瀑布模式:是傳統(tǒng)的軟件開發(fā)模式,其中的“瀑布”是對這個模式的形象表達,由山頂傾瀉下來的水,自頂向下、逐漸細化。其特點是:線性化過程;分為分析、設計、編碼、集成等幾個階段,并且各階段逐級推進,不允許跨越。里程碑管理;階段評審;文檔驅(qū)動;簡潔便于工程應用的線性化過程步驟,并可以通過里程碑管理機制而使項目進程量化。其明顯的優(yōu)點就是沒個階段結(jié)束前都要對所完成的階段成果進行評審,這使得軟件的錯誤能夠在個階段內(nèi)盡早發(fā)現(xiàn)并盡早解決,總的來說瀑布模式具有良好的質(zhì)量保證機制,有很強的生命力。

原型進化模式:對軟件進行直接模擬或仿真,只需要分析需求框架后進行原型創(chuàng)建,再對原型系統(tǒng)進行逐步細化與完善,通過版本更新逐步滿足用戶對于軟件的多方面需要。

增量模式:開發(fā)過程有三個任務域,分別是設計結(jié)構(gòu)、開發(fā)構(gòu)件和集成系統(tǒng),它既有完善的工程管理機制,又能適應用戶需求變更,有利于質(zhì)量的監(jiān)控,并且各局部基于構(gòu)件構(gòu)造,有利于逐步構(gòu)建與完善;由于先交付核心構(gòu)件可利于降低項目的技術(shù)風險。

螺旋模式:是一種可較好的規(guī)避開發(fā)風險過程的模式,項目是基于任務的螺旋式推進,每個螺旋由內(nèi)之外分別是需求分析、軟件設計、系統(tǒng)集成、驗證與交付。

軟件開發(fā)的整個過程:①需要項目團隊,組建優(yōu)秀的團隊可以開發(fā)出更搞質(zhì)量的軟件產(chǎn)品。任務開發(fā)團隊要求小而精,成員大多在8人以內(nèi),主要成員有項目負責人、開發(fā)人員、資料管理員和軟件測試員。②項目計劃是為了使軟件開發(fā)各項工作有秩序地進行,包括任務分配和基于里程碑的進度安排,甘特圖和任務網(wǎng)絡圖是用來描述進度計劃的工具。項目計劃書可以作為軟件開發(fā)的工作指南。③項目成本估算,由于項目有來自各方面的成本包括工資開支、場地費、差旅費、設備費和資料費等,但是軟件主要是對人力成本的估算,常用的方法有程序代碼成本估算法等。④軟件風險管理包括很多不確定的風險因素,如計劃風險、管理風險、需求風險、技術(shù)風險、人員風險、產(chǎn)品風險、用戶風險和商業(yè)風險等等,而風險管理的主要任務是:風險識別、風險評估、和風險防范。⑤軟件文檔管理,軟件文檔是工程模式軟件開發(fā)的成果體現(xiàn),包括技術(shù)文檔、管理文檔和用戶文檔。 ⑥軟件配置管理與軟件質(zhì)量管理,包括配置規(guī)劃、軟件變更控制、軟件版本控制和質(zhì)量控制計劃。

計算機系統(tǒng)由硬件、軟件、數(shù)據(jù)資源、網(wǎng)絡資源、使用系統(tǒng)的人等諸多元素。有三種典型的計算機體系結(jié)構(gòu):①主機結(jié)構(gòu),主機集中了全部智能,并依靠終端接口與外部設備連接。②Client/Server結(jié)構(gòu),智能分布于服務器與客戶機,并依靠網(wǎng)絡連接成系統(tǒng),其中,服務器處于核心位置,提供被動核心服務;客戶機處于邊緣位置,可主動訪問服務器,尋求服務支持。③Browser/server結(jié)構(gòu),可適應互聯(lián)網(wǎng)遠程交互的特殊結(jié)構(gòu),基于Web服務器構(gòu)建。

需求分析:系統(tǒng)開發(fā)前期需求分析很重要,它是為了有效解決用戶問題的需要進行的一項工程活動,所需要考慮的需求問題是功能需求、數(shù)據(jù)需求、性能需求和接口需求,開發(fā)者承擔分析任務,核心是用戶。其步驟有三個:①獲取客戶需求,客戶泛指某個人或機構(gòu)部門等,一般方法是調(diào)查,包括訪談、座談、問卷、跟班和收集資料,需求規(guī)約可表達用戶的軟件價值。②建立需求模型,它是用戶需求的圖解,一些常用的模型有:業(yè)務樹圖、用例圖、活動圖。分別用于結(jié)構(gòu)化需求建模、系統(tǒng)業(yè)務舉例和反映系統(tǒng)工作流程。③進行需求驗證,要驗證的主要內(nèi)容有:有效性驗證、一致性驗證、完整性驗證、現(xiàn)實性驗證和可檢驗性驗證。 結(jié)構(gòu)化分析建模:它是建立在需求規(guī)約基礎上的,對軟件問題進行全面解說,包括四個方面:①數(shù)據(jù)建模,它與數(shù)據(jù)庫設計密切相關(guān),ER圖涉及實體、關(guān)系、屬性等圖形元素,在業(yè)務層面建立數(shù)據(jù)庫概念模型,一般用于前期的建模構(gòu)想。②功能建模,是對系統(tǒng)數(shù)據(jù)加工的圖解,數(shù)據(jù)流程圖是常用的建模工具,涉及數(shù)據(jù)接口、數(shù)據(jù)處理、數(shù)據(jù)流、數(shù)據(jù)存儲等圖形元素,用于描述系統(tǒng)數(shù)據(jù)加工細節(jié)。③行為建模,行為模型用于說哦名軟件系統(tǒng)與環(huán)境的交互,狀態(tài)轉(zhuǎn)換圖常用的軟件行為建模工具涉及狀態(tài)、事件等圖形元素。⑤數(shù)據(jù)字典,是用于定義軟件的元素,使軟件元素獲得嚴肅的、詳密的、精確的規(guī)格說明。需求分析模型中的數(shù)據(jù)、功能、行為等諸多方面的元素,都有必要通過數(shù)據(jù)字典給予細節(jié)說明,以達到對系統(tǒng)較完整全面的規(guī)格定義。

基于UML對象面向?qū)ο蠓治鼋#篣ML是統(tǒng)一建模語言,有統(tǒng)一的語法、語義和語用規(guī)則,其建模過程的特點是:用例驅(qū)動、以構(gòu)架為中心和增量迭代,通過包實現(xiàn)對模型的有效的一體化管理。包括三部分:①用例建模,它面向用戶需求的,能夠反映系統(tǒng)的用戶價值,用例圖的基本元素有用例、參與者、交流;用例之間有泛化、延伸和包含關(guān)系。②活動建模,活動圖用于描述系統(tǒng)動態(tài)過程,主要圖形元素有:活動、轉(zhuǎn)換、起點、終點、判斷、并發(fā)、同步、泳道等。可描述高層業(yè)務級活動,涉及整個業(yè)務流程,針對每個用例活動建模,反映用例內(nèi)部活動細節(jié)。③類分析建模,這里就只考慮實體類,實體類所代表的數(shù)據(jù)相互之間通常有一定的關(guān)系,依靠這種關(guān)系可形成有組織的程序數(shù)據(jù)結(jié)構(gòu)。實體類之間的主要數(shù)據(jù)關(guān)系有:關(guān)聯(lián)、聚類、泛化。

接下來我就簡單說下我上這門課的簡單的心得體會,我們是大四的學生了,也只有這個學期有課了,剛開始課表安排出來的時候覺得挺意外的,只有前八周有課,當時我還是有點小感動的,大四事情很多,有要考研的和工作的,大家也都有各自的事情,如果有16周的課,那么每周課不是特別多,但是時間特別分散,也不能集中某段時間去做什么事情。但是相對于老師的壓力也有,課程壓縮了相當于每節(jié)課的教學任務大大增加了,在加上有些假期沖掉課,就感覺我們好像上課學不到什么東西,也只是一些關(guān)鍵的和考試掛鉤的才重點講,完全沒有擴展的時間和空間了。但是總的來說,學校開了這門課,我們上了這門課,總是學到了點東西的,不可能明明上了軟件工程這門課,卻像沒上一樣什么都不懂。在上課的時候我還是很認真地去聽老師所講述的內(nèi)容的,我覺得他的思想和我一向而來的培養(yǎng)計算機學生綜合素質(zhì)的理解還是在一定程度上不謀而合了,所謂的需求獲取,那就是一個談判,辯論,交流的過程,已經(jīng)不是單純的編編程序就能解決的問題了。從我所看到的聽到的來說,我最怕的就是計算機系的學生被別人說成是個帶著厚眼鏡的,只能夠在電腦前編編程序的,在交際場上不知道說什么而一個字都說不出來的人。我覺得這樣的人進入社會之后是沒有什么前途的,起碼他們?nèi)狈α伺c人溝通交流的能力。而這門課程在一定程度上給了我們這些學生一個機會來鍛煉自己在另一方面的能力,設想一下,一個又有技術(shù)又能夠與人交流合作的人所取得的成就自然要比一個單單只會編程序的人要大得多。其次,這門課程教給了我們在完成一個實際項目時的一般程序及過程,我認為這是一份非常具有實際意義的教學內(nèi)容。當我們在畢業(yè)之后,這是我們實際要運用的一項非常有用的技能,而且不僅僅局限于軟件工程的范疇,我們即使是從事與其它行業(yè),不也是要從需求獲取開始,一直有條有理地到最后成品的出爐嗎?應該說這就是這門課的價值所在。無論是在上課,還是在學生會里面做學生工作,我都深深地感覺到,技術(shù)性的工作就好比變魔術(shù),其實原理是非常簡單的,甚至可以說簡單的可笑,但是當你就是做出這么一個簡單的東西出來之后,一些外行們有時候會用崇拜的眼光看著你,覺得你很厲害,很高深莫測。但是制作的過程他們卻不知道,也許知道之后他們只是會啞然失笑,原來這個東西的制作過程是如此的簡單。這個可以說就是技術(shù)的魅力了,而作為需求獲取及之后的一系列過程則是類似于魔術(shù)揭秘的過程,但是作為這個秘密我們并不需要一揭到底,至于揭的程度如何那就是我們那就是我們學出的程度如何了,我們要讓對方知道我們在做什么?以及如何去做?這些東西需要我們以一定的技巧敘述出來,所起到的作用就是能夠讓對方了解自己的進度,卻又能夠不讓對方來干涉自己的工作過程。因為我們是技術(shù)員,對方只是外行,即使對方知道了這個魔術(shù)的操作過程,也并不代表他們就能夠向變著魔術(shù)的我們來隨便修改這個魔術(shù)的變法,況且我們能夠用不同的過程來得出一個同樣的結(jié)果,這個過程的得出的主動權(quán)如何掌握在我們的手上,就看我們?nèi)绾我愿呙鞯姆绞絹斫议_這個魔術(shù)的謎底了。當然了,在純粹的理論上,我覺得開設這樣一門課程是很成功的。但是畢竟現(xiàn)實里有太多的不確定的因素。最重要的因素就是授課的老師和聽課的學生。這兩個可以說是這門課成與敗的決定性的因素。

作為我們學生來說,應該負起比較主要的責任。在大學里有了太多的基礎課程,基礎課程大多都比較枯燥無味,也許在第一個學期里我們還能夠保持著新鮮感,但是在6學期之后,可以說再有新鮮感就是一件比較困難的事情了,我們都已經(jīng)開始變得遲鈍了。其次的,沒有認識到這門課程的價值。這門課的價值我已經(jīng)在上面說過了,是不言而喻的。但是并不是每個同學畢業(yè)之后都回從事計算機行業(yè),也不是每個同學都知道這門課程的意義已經(jīng)不僅僅局限于計算機這個范疇?;蛟S有些人覺得反正以后不是這個發(fā)展方向,也就不在乎這個課程吧。我個人覺得這門課確實是挺好的,如果認真學必能學到很多東西,動手實踐能力和從整個大體分析系統(tǒng)開發(fā)的邏輯性思維也會明顯增強,不管以后從事哪個方面的工作,這對以后來說都是一筆很大的隱性財富。說到我自己對這么課的學習,還是有點愧疚的,前面四周我每周每節(jié)課都去上的,并且上課也認真聽,一邊聽老師講課一邊自己看書本的介紹,但是后來我上這門課的次數(shù)就降低了,因為覺得時間很緊吧,而且老師上課的節(jié)奏我個人覺得有點慢,我都可以自己預習看到后面去了,但是這門課我還是每周至少上一節(jié)課的,雖然我早上7點多一點就出門,在自習室,但是有時候明明知道到了上課的時間,明明上課的地方離自習的地方不遠也不太想去。我記得有次上課時候老師生氣了,說來上課的人少,我仔細環(huán)顧了下四周發(fā)現(xiàn)確實人很少,稀稀疏疏的分散著,看起來確實不太舒服,讓我不得不反思了,這大學的教育到底怎么了,怎么到了大四大家都不來上課,雖然我不是每節(jié)課都來,但是我還是時不時來上課的,可能是比較浮躁吧,快畢業(yè)了,覺得上課學不到什么實際的東西,要么實際一點好好考研繼續(xù)深造,要么去培訓增強實踐能力這樣才能較好的為找個滿意的工作做好鋪墊。

《軟件工程》課程既強調(diào)基本概念和基本知識的理解和掌握,又側(cè)重軟件項目的分析、設計、實現(xiàn)和維護的基本技能。比較注意“點”和“面”的結(jié)合。我還是蠻喜歡這門課的,通過對這門課的學習讓我意識到理論學習很重要,實踐更重要,實踐是檢驗真理的唯一標準,只有將理論與實際結(jié)合,才更能發(fā)揮我們所學的知識的作用,更能直接的創(chuàng)造效益,社會和國家做出貢獻。

軟件工程心得篇4

在這次軟件工程課程中,我學到了很多東西,第一次深刻的體會到了什么叫做用工程化的思想來編寫軟件,以前自己也寫過一些小型軟件,沒有做過大型的項目,直到這次課堂我擔任組長并組織組員共同完成“個人圖書管理系統(tǒng)”這個項目,第一次和別人合作,才發(fā)現(xiàn)運用工程化的思想來做是如此的有必要。

從這里,我才真正的意識到實施一個軟件工程并不是說簡單的會編碼就能夠解決問題的,我們更多的精力不是放在編碼上,編碼只是一個很小的模塊,只占到那么小的一個部分。這個事實在很大程度上顛覆了我以前的思想,在我以前的認識中,似乎整個軟件就是編碼,除此無它,還好有老師的指導,不然真的會出現(xiàn)老師所說的,撞得頭破血流之后才想起來用軟件工程的思想來完成這個工作。

剛真正開始工作之前,我們費了很多的時間來完成一些前端工作,如需求分析和可行性分析,這塊工作在別人看來可能是相對無關(guān)緊要,甚至是多于的,其實,換做在以前,我也會這么認為??墒牵椰F(xiàn)在算是深深地明白了磨刀不誤砍柴工的道理,這些工作的完成太有必要了,太重要了,要想你的軟件有用有市場,能被別人接受和認可,在進行過程中不會出現(xiàn)崩潰性的問題,這些工作缺一不可。

還有就是接下來的一些設計模塊,此模塊與軟件編碼涉及比較緊密,主要是解決一些參數(shù)傳遞和接口通訊的問題,此模塊對我的觸動遠沒有上兩個模塊對我的影響大,因此再次也不做過多的介紹。

在整個活動的完成過程中,作為組長,我收獲很多,我發(fā)現(xiàn),要是組里有個人不怎么想做事情時,他對于整個組織的影響是毀滅性的,正所謂“一顆老鼠屎,能壞一倉谷”,以后我的組織里要是出現(xiàn)這樣的人,我絕不會給他繼續(xù)留下來的機會,我會在第一時間將他清除出去。還有就是,作為組長,你要做的最重要的事情,不是發(fā)揮自己的聰明才智,而是創(chuàng)造出一個平臺,讓別人去發(fā)揮,你所要做得,出了保證這個平臺的完整性和公平性外,還有就是協(xié)調(diào)好各組員之間的關(guān)系。

軟件工程心得篇5

我們是20__年3月7號進入宏天實訓公司參加軟件開發(fā)實訓的,在此次實訓中,除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學會了如何去完成一個任務,懂得了享受工作。當遇到問題,冷靜,想辦法一點一點的排除障礙,到最后獲取成功,一種自信心就由然而生,這應該就是工作的樂趣。有時候不懂的就需要問別人了,虛心請教,從別人的身上真的能學到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學會了在工作中與人的合作與交流,同樂同累,合作互助,這是團體的精神,也是必須學習的東西。

經(jīng)過之前的在校學習,對程序設計有了一定的認識與理解。在校期間,一直都是學習理論知識,沒有機會去參與項目的開發(fā)。所以說實話,在實訓之前,軟件項目開發(fā)對我來說是比較抽象的,一個完整的項目要怎么分工以及完成該項目所要的步驟也不是很明確。而經(jīng)過這次實訓,讓我明白了一個完整項目的開發(fā),必須由團隊來分工合作,并在每個階段中進行必要的總結(jié)與論證。

一個完整項目的開發(fā)它所要經(jīng)歷的階段包括:遠景范圍規(guī)劃和用例說明、項目結(jié)構(gòu)和風險評估、業(yè)務功能說明書、詳細設計說明書、代碼實現(xiàn)、測試和安裝包等等。一個項目的開發(fā)所需要的財力、人力都是很多的,如果沒有一個好的遠景規(guī)劃,對以后的開發(fā)進度會有很大的影響,甚至會出現(xiàn)在預定時間內(nèi)不能完成項目或者完成的項目跟原來預想的不一樣。一份好的項目結(jié)構(gòu)、業(yè)務功能和詳細設計說明書對一個項目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有比較明確的認識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實現(xiàn)是一個項目開發(fā)成功與否的關(guān)鍵,也就是說,前期作業(yè)都是為代碼的實現(xiàn)所做的準備。

我深刻的認識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實的編寫代碼基礎,必須要有事先對文檔進行可靠性報告,功能說明書,詳細設計說明書等的編寫和一些風險評估的編寫的能力。

除了圖書館,最能讓我感覺到身在大學的就是實訓機房,在匆匆過去的兩個月內(nèi),我往返于實訓機房與宿舍之間,使我享受了一個充實的學習時期,讓我感受到了大學的魅力,對自己充滿信心,對大學充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。

實訓中要求有扎實的理論基本知識,操作起來才順心應手,我這時才明白什么是“書到用時方恨少”。這就激發(fā)了學習的欲望。

“學以致用”,就是要把學來的知識能運用到實際操作當中,用實踐來檢驗知識的正確性。我想,這是實訓的最根本目的。

“紙上得來終覺淺,絕知此事要躬行!”,在短暫的實訓過程中,讓我深深感受到自己在實際運用中專業(yè)知識的匱乏。以前總以為自己學的還不錯,一旦應用到實際就大不一樣了,這時才真正領(lǐng)悟“學無止境”的含義。

經(jīng)過為期兩個月的電子政務服務平臺系統(tǒng)開發(fā)的實訓,我對Visual 軟件開發(fā)平臺有了更深一步的了解,對微軟基礎類庫的認識與使用也有了大大的提高。以及如何使用SQL Server數(shù)據(jù)庫進行連接操作方面有了本質(zhì)的提高。

短短的實訓結(jié)束了,為我將來的就業(yè)打下了良好的基礎,也提高了我的軟件開發(fā)的水平,今后我將會更加努力的學習,不斷提高自身素質(zhì),開拓創(chuàng)新,與時俱進,做一個優(yōu)秀的軟件開發(fā)工程師。

軟件工程心得篇6

我們是20__年3月7號進入宏天實訓公司參加軟件開發(fā)實訓的,在此次實訓中,除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學會了如何去完成一個任務,懂得了享受工作。當遇到問題,冷靜,想辦法一點一點的排除障礙,到最后獲取成功,一種自信心就由然而生,這應該就是工作的樂趣。有時候不懂的就需要問別人了,虛心請教,從別人的身上真的能學到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學會了在工作中與人的合作與交流,同樂同累,合作互助,這是團體的精神,也是必須學習的東西。

經(jīng)過之前的在校學習,對程序設計有了一定的認識與理解。在校期間,一直都是學習理論知識,沒有機會去參與項目的開發(fā)。所以說實話,在實訓之前,軟件項目開發(fā)對我來說是比較抽象的,一個完整的項目要怎么分工以及完成該項目所要的步驟也不是很明確。而經(jīng)過這次實訓,讓我明白了一個完整項目的開發(fā),必須由團隊來分工合作,并在每個階段中進行必要的總結(jié)與論證。

一個完整項目的開發(fā)它所要經(jīng)歷的階段包括:遠景范圍規(guī)劃和用例說明、項目結(jié)構(gòu)和風險評估、業(yè)務功能說明書、詳細設計說明書、代碼實現(xiàn)、測試和安裝包等等。一個項目的開發(fā)所需要的財力、人力都是很多的,如果沒有一個好的遠景規(guī)劃,對以后的開發(fā)進度會有很大的影響,甚至會出現(xiàn)在預定時間內(nèi)不能完成項目或者完成的項目跟原來預想的不一樣。一份好的項目結(jié)構(gòu)、業(yè)務功能和詳細設計說明書對一個項目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有比較明確的認識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實現(xiàn)是一個項目開發(fā)成功與否的關(guān)鍵,也就是說,前期作業(yè)都是為代碼的實現(xiàn)所做的準備。

我深刻的認識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實的編寫代碼基礎,必須要有事先對文檔進行可靠性報告,功能說明書,詳細設計說明書等的編寫和一些風險評估的編寫的能力。

除了圖書館,最能讓我感覺到身在大學的就是實訓機房,在匆匆過去的兩個月內(nèi),我往返于實訓機房與宿舍之間,使我享受了一個充實的學習時期,讓我感受到了大學的魅力,對自己充滿信心,對大學充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。

實訓中要求有扎實的理論基本知識,操作起來才順心應手,我這時才明白什么是“書到用時方恨少”。這就激發(fā)了學習的欲望。

“學以致用”,就是要把學來的知識能運用到實際操作當中,用實踐來檢驗知識的正確性。我想,這是實訓的最根本目的。

“紙上得來終覺淺,絕知此事要躬行!”,在短暫的實訓過程中,讓我深深感受到自己在實際運用中專業(yè)知識的匱乏。以前總以為自己學的還不錯,一旦應用到實際就大不一樣了,這時才真正領(lǐng)悟“學無止境”的含義。

經(jīng)過為期兩個月的電子政務服務平臺系統(tǒng)開發(fā)的實訓,我對Visual 軟件開發(fā)平臺有了更深一步的了解,對微軟基礎類庫的認識與使用也有了大大的提高。以及如何使用SQL Server數(shù)據(jù)庫進行連接操作方面有了本質(zhì)的提高。

短短的實訓結(jié)束了,為我將來的就業(yè)打下了良好的基礎,也提高了我的軟件開發(fā)的水平,今后我將會更加努力的學習,不斷提高自身素質(zhì),開拓創(chuàng)新,與時俱進,做一個優(yōu)秀的軟件開發(fā)工程師。

軟件工程心得篇7

時間過的很快,轉(zhuǎn)眼間已經(jīng)實習將近5個月,其中有2個月是屬于完全被流放的。 最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開發(fā)(struts+mysql+spring+hibernate),之后是去做網(wǎng)絡交換機軟件的腳本測試。現(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測試經(jīng)驗。

至少自己做的東西,是真正交付到了客戶手上,到也稍微有些成就感。

1、淺談測試

一直以來,我都認為測試是脫離了軟件工程范圍的工作,不以為屑。但在實際情況中,測試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責任在你,而不在于編碼人員。一般的測試人員不懂編碼,他們靠的是日以累計的經(jīng)驗總結(jié)和想象力。而要做到高級測試工程師,則一定要懂編碼,因為這是你完全掌握整個系統(tǒng)的方方面面具體運作的前提。但占主導地位的,還是大型系統(tǒng)的集成測試經(jīng)驗。實際項目中,編碼時間一般只占30%左右,真正耗費時間的是IT階段的找 bug與對應bug,此階段基本評定了coder的編碼質(zhì)量。

2、程序員的困惑

有些人,以為教學視頻和代碼看多,自己就懂的多,實際做起來,卻不知從何下手,問題在那?如何定位?如何解決?通通跟一樣能力有關(guān),debug追蹤能力,也稱調(diào)試。在項目組工作不愁源碼資源,但問題是蛋糕擺在面前,你如何去消化?

有位同事告訴我:代碼看幾遍都沒用,要去抄,例如一個查詢模塊,在此基礎上去做具體記錄的歷史記錄查詢模塊,你可能會覺得很簡單,但實際情況卻往往報一堆異常,配置問題涉及到方方面面,以及數(shù)據(jù)庫字段,傳值問題等等,一大堆對于新人來說很郁悶的問題。但不用怕,只要學會調(diào)試,一個個問題去追蹤,一個個去解決,自然而然,那段“源碼”才真正屬于你。

3、如何調(diào)試追蹤

如果你能在短短的時間內(nèi)就看到問題點在那,放下斷點去追蹤,出去找工作,絕對沒問題。出現(xiàn)問題的時候,不要光看代碼,要用實際行動去追蹤運行期間的具體值,那是最好途徑。eclipse是個很爽的ide,這點做的很好。例如頁面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫查詢語句去下手,設置斷點,一步一步step over,讓sql字段(存取最終sql語句的字符串)運行到有值,inspect進去看,如果還看不出來,就點擊它,copy后在sql客戶端去實際運行,看看實際查詢出來的表是什么,如果是對的,有可能就是頁面調(diào)用的錯誤或者action邏輯的傳值問題。

頁面錯誤的調(diào)試,基本方法是用右鍵點擊實際網(wǎng)頁查看源代碼,copy到editplus,就能看到具體錯誤發(fā)生在那幾行。通常有幾種常見的錯誤,例如:缺少對象這種很多時候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(___=null)語句加保護。追蹤的方法基本就是用alert語句,放在有可能出錯的地方。

4、一些習慣

遇到問題先自己思考,無從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會了,不然你一輩子都停留在那種水平,從人身上學到的東西遠遠比書多的多。

解決了一個問題后,要去究根問底去找到問題產(chǎn)生的起因,以防你下次遇到類似的問題再浪費同樣的時間。

把代碼寫的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過一個高手寫的代碼,真的一看就是不同水平的人寫的,幾乎很完美,讀起來很流暢,方便自己也方便別人。

任務完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務,只要你肯去嘗試,他們就會對你另言相看,把三天的任務一天加班搞定,效率和忠誠都有了,路也比較好走了。

軟件工程心得篇8

在本學期的軟件工程課程的學習中,我們學習了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對軟件工程方法進行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒ā⑿问交椒?。還引出了工具UML。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細介紹了需求獲取與需求分析階段的任務以及結(jié)構(gòu)化分析方法,畫分層的數(shù)據(jù)流圖、E-R圖以及狀態(tài)圖式本節(jié)的重點。第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進。第五章編碼,這一章重點講解了編碼的風格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風格。第六章軟件測試方法,本章講解了軟件測試相關(guān)的概念及重要性,軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。第七章統(tǒng)一建模語言UML概述,本章詳細介紹了UML的基本模式、事物、關(guān)系及建模時用到的各種圖進行了介紹。第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。第九章軟件體系結(jié)構(gòu)與設計模式,本章對軟件體系結(jié)構(gòu)的基本概念、典型風格等進行了講解。第十章面向?qū)ο笤O計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進行調(diào)整和細化。第十一章軟件維護,本章主要介紹軟件維護的任務、軟件維護活動以及軟件維護方法進行了介紹。

要學習軟件工程,學會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習慣,想學好軟件工程,就必須知道軟件工程的目標、過程和原則:軟件工程目標:生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達到預期功能的程度??捎眯灾杠浖窘Y(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。

軟件工程過程:生產(chǎn)一個最終能滿足需求且達到工程目標的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護過程。它們覆蓋了需求、設計、實現(xiàn)、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細設計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認,保證最終產(chǎn)品滿足用戶的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。

軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。

我們學習了詳細設計的方法,其原則是過程描述是否易于理解、復審和維護,進而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細設計與代碼完全一致。包括程序流程圖、N-S圖、PAD圖、HIPO圖

程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達工具。它獨立于任何一種程序設計語言,比較直觀和清晰地描述過程的控制流程,易于學習掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。

N-S圖:一種符合結(jié)構(gòu)化程序設計原則的圖形描述工具,稱為盒圖,又稱為N-S圖。在N-S圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;WHILE重復型;UNTIL重復型;多分支選擇型。

PAD圖:它是用結(jié)構(gòu)化程序設計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。PAD也設置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。

HIPO圖:HIPO圖是由一組IPO圖加一張HC圖組成。它是美國IBM公司在軟件設計中使用的主要表達工具。

HC圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。HC圖中的每一個模塊,均可用一張IPO圖來描述。IPO圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。

還有測試方法:按照測試過程是否在實際應用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。

靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析說明書、軟件設計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。

動態(tài)測試技術(shù):當把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。

還學習了其他很多工具、語言、方法等,雖然不是都學得很透徹,但我相信在今后的學習中一定會慢慢的完善的。

軟件工程對于初學者來說,知識基礎較薄弱,對一些應用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學好軟件工程,不是僅僅把幾本專業(yè)書籍細致地看幾遍,然后上機練習幾次就可以成功,學習過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學,肯定是什么都學不透的,要集中精力打攻堅戰(zhàn),學習軟件工程首先要明白自己的學習目標究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應的學習方向上進行提高,制定出詳細的學習規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學習面向?qū)ο蠓治龅臅r候要結(jié)合大一學習的面向?qū)ο蠹捌浞椒▽W這一專業(yè)科目進行研究拓展;在學習語言時,要看看與C語言的聯(lián)系,多思多想,把從各個科目學到的知識通匯貫通。

在軟件工程的學習中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設計說明書,詳細設計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進度報告,項目開發(fā)總結(jié)報告,軟件維護手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進行周密的策劃、詳細的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復才能達成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。

而編碼的學習中,我更了解到形成自己獨特的規(guī)范的編碼風格是非常重要的事。因為這影響到了軟件后期繁重的維護,大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護又從何談起呢?所以,我們在今后的學習中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎上形成屬于自己的風格,即方便自己的修改,也方便日后他人的閱讀。

在學習中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O計和問題求解更符合人們?nèi)粘W匀坏乃季S習慣,適合大型、復雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。

在今后的學習中要注意多讀書、多思考、多練習、多討論,不斷熟悉書本的基礎,并以此為基礎將其擴散開來,應用于今后的實踐。不斷鍛煉自己,向一名合格的程序設計師邁進。

軟件工程心得篇9

一、關(guān)于實習公司

我所實習的南京__軟件有限公司簡稱__公司,公司成立于__年,主營軟件開發(fā)和信息系統(tǒng)集成,專門從事工程建設項目管理信息系統(tǒng)開發(fā)和實施,具有自主知識產(chǎn)權(quán)的項目管理軟件產(chǎn)品__項目管理系列軟件(包括__投資控制合同管理軟件、進度控制計劃管理軟件、__質(zhì)量控制安全管理軟件、__項目管理門戶、__城建項目管理平臺等),并已經(jīng)在全世界第一大橋蘇通長江大橋、國內(nèi)最大的開發(fā)區(qū)蘇州工業(yè)園區(qū)以及南水北調(diào)工程實施和應用,目前正與南京城建集團合作,開發(fā)城建項目管理平臺。

二、實習的內(nèi)容

今年__月__日開始,我正式走進__開始了實習工作,并被調(diào)到了江蘇省建筑質(zhì)量檢測中心,參加正在進行的一個檢測項目。由于我才大三,本身對企業(yè)的經(jīng)營方式等都很陌生,公司讓我們的王工帶我學習,以師傅帶徒弟的方式,指導我的日常實習。在王工的熱心指導下,我依次對此次項目的業(yè)務流程和大概框架進行了了解,并積極參與相關(guān)工作,注意把書本上學到的理論知識對照實際工作,用理論知識加深對實際工作的認識,用實踐驗證大學所學確實有用。以雙重身份完成了學習與工作兩重任務。跟公司同事一樣上下班,協(xié)助同事完成部門工作;又以學生身份虛心學習,努力汲取實踐知識。我心里明白我要以良好的工作態(tài)度以及較強的工作能力和勤奮好學來適應公司的工作,完成公司的任務。

三、實習的提高與收獲

實習收獲,主要有四個方面:

一是通過直接參與企業(yè)的運作過程,學到了實踐知識,同時進一步加深了對理論知識的理解,使理論與實踐知識都有所提高,圓滿地完成了本科教學的實踐任務。

二是提高了實際工作能力,為就業(yè)和將來的工作取得了一些寶貴的實踐經(jīng)驗。

三是一些學生在實習單位受到認可并促成就業(yè)。

四是為畢業(yè)后的正式工作做好了準備。

四、結(jié)語

到公司實習并沒有我想象中的難以融入,通過慢慢的學習,發(fā)現(xiàn)在公司用的到得知識在我們的學校學習中都會遇到。至暑期結(jié)束,從不懂到漸漸的做了幾個檢測項目。學到不少的東西。實習生活還沒結(jié)束,開學了我還是會繼續(xù)留在公司我的學習和探索。

軟件工程心得篇10

一、 實訓目的:

通過對java語言、sql數(shù)據(jù)庫的應用以及sql語言的復習和鍛煉,并且通過使用MyEclipse開發(fā)平臺設計管理項目,以達到充分熟悉開發(fā)平臺及應用設計。同時掌握并實踐軟件項目設計規(guī)范及其開發(fā)流程:需求分析、概要設計、詳細設計、代碼編寫等,以便提前適應軟件公司開發(fā)流程、環(huán)境和工作要求。

二、實訓內(nèi)容:

1. 項目:(“當當網(wǎng)”)

2. 完成(用戶注冊、登錄、列表、購物車、刪除、修改)等功能

3. 數(shù)據(jù)庫設計、SQL應用

4. 項目實戰(zhàn)

三、實訓總結(jié):

轉(zhuǎn)眼間實訓已過去一段時間,之前的興奮、喜悅?cè)缃褚呀?jīng)讓我熟悉,在實訓的每一天都會讓我有成為一名真正的財富者擁有的沖動。也許,在這期間不一定會讓一個人有著翻天覆地的變化,但變化就是這樣一點一點產(chǎn)生的。通過這一期的實訓,雖然倍感折磨,但是收獲卻是很大的,學習中我不但有了學習成果的喜悅,而且自己也日漸成熟,有種說不出的喜悅。

在實訓的過程中,我深深的體會到了自己在專業(yè)知識方面的欠缺和不足,也意識到了自己作為計算機軟件專業(yè)的學生,要想在以后的職業(yè)中嶄露頭角,除了要有過硬的理論知識,健康的體魄之外,還必須具備良好的心理素質(zhì),是自己在以后的途中無論經(jīng)歷什么樣的困難,都立于不敗之地。通過實訓老師的課堂講解與企業(yè)文化標準的培訓,使我加深了對自己專業(yè)的認識,從而確定自己以后的努力方向,要想在短暫的實訓時間內(nèi)盡多的學到東西,就需要我們跟老師或同學進行良好的溝通,加深彼此的了解,只有我們跟老師多溝通,讓老師更了解我們,才能更真切的對我們進行培訓工作。由此,班級的文化“共享”就在生活中慢慢形成了。

“紙上得來終覺淺,絕知此事要躬行!”在這短短的時間里,讓我深深的感覺到自己在實際應用中所學來專業(yè)知識的匱乏。讓我真真領(lǐng)悟到“學無止境”這句話的涵義。而老師在專業(yè)認識周到中所講的,都是課本上沒有而對我們非常有實際意義的。這又給我們的實訓增添了濃墨淡彩的光輝。我懂得了實際生活中,專業(yè)知識是怎樣應用與實踐的。在這些過程中,我不僅知道了職業(yè)生涯所需具備的專業(yè)知識,而且讓我深深體會到一個團隊中的各個成員合作的重要性,要善于團隊合作,善于利用別人的智慧,這才是大智慧??繂我坏牧α渴呛茈y完成一個大項目的,在進行團隊合作的時候,還要耐心聽取每一個成員的意見,是我們的組合達到更加完美。

這次實訓除了讓我明白工作中需要能力,素質(zhì),知識之外,更重要的是學會了如何去完成一個任務,懂得了享受工作。當遇到問題,冷靜,想辦法一點一點的排除障礙,到最后獲取成功,一種自信心就由然而生,這應該就是工作的樂趣。有時候不懂的就需要問別人了,虛心請教,從別人的身上真的能學到自己沒有的東西,每一次的挫折都會使我更接近成功。還有學會了在工作中與人的合作與交流,同樂同累,合作互助,這是團體的精神,也是必須學習的東西。

經(jīng)過之前的學習,對程序設計有了一定的認識與理解。在校期間,一直都是學習理論知識,沒有機會去參與項目的開發(fā)。所以說實話,這次實訓,軟件項目開發(fā)對我來說是比較抽象的,一個完整的項目要怎么分工以及完成該項目所要的步驟也不是很明確。而經(jīng)過這次實訓,讓我明白了一個完整項目的開發(fā),必須由團隊來分工合作,并在每個階段中進行必要的總結(jié)與論證。

一個完整項目的開發(fā)它所要經(jīng)歷的階段包括:遠景范圍規(guī)劃和用例說明、項目結(jié)構(gòu)和風險評估、業(yè)務功能說明書、詳細設計說明書、代碼實現(xiàn)、測試和安裝包等等。一個項目的開發(fā)所需要的財力、人力都是很多的,如果沒有一個好的遠景規(guī)劃,對以后的開發(fā)進度會有很大的影響,甚至會出現(xiàn)在預定時間內(nèi)不能完成項目或者完成的項目跟原來預想的不一樣。一份好的項目結(jié)構(gòu)、業(yè)務功能和詳細設計說明書對一個項目的開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有比較明確的認識,還能減少在開發(fā)過程中出現(xiàn)不必要的麻煩。代碼的實現(xiàn)是一個項目開發(fā)成功與否的關(guān)鍵,也就是說,前期作業(yè)都是為代碼的實現(xiàn)所做的準備。

我深刻的認識到要成為一名優(yōu)秀的軟件開發(fā)人員不是一件容易的事情,不僅要有足夠的干勁和熱情,還要有扎實的編寫代碼基礎,必須要有事先對文檔進行可靠性報告,功能說明書,詳細設計說明書等的編寫和一些風險評估的編寫的能力。

除了圖書館,最能讓我感覺到身在大學的就是實訓機房,在匆匆過去的兩個月內(nèi),我往返于實訓機房與宿舍之間,使我享受了一個充實的學習時期,讓我感受到了大學的魅力,對自己充滿信心,對大學充滿信心,以積極的心態(tài)迎接明天挑戰(zhàn)。

實訓中要求有扎實的理論基本知識,操作起來才順心應手,我這時才明白什么是“書到用時方恨少”。這就激發(fā)了學習的欲望。 “學以致用”,就是要把學來的知識能運用到實際操作當中,用實踐來檢驗知識的正確性。我想,這是實訓的最根本目的。

最初在實訓時自己就有一些不自信,但隨著項目的進展,我慢慢的找到了自己的位置,找到自己的目標,雖然自己與好的同學還有差距,這也給了我很大壓力,但是我相信沒有壓力就沒有動力,所以在整個實訓過程中我都在不斷地努力。

實訓期間讓我學到很多東西,不僅在理論上讓我對IT領(lǐng)域有了全新的認識,在實踐能力上也得到了很大的提高,真正的學到了學以致用,更學到很多做人的道理,對我來說受益匪淺。我意識到自己知識的缺少,這激勵我在以后的學習、工作、生活中要不斷了解信息技術(shù)發(fā)展動態(tài)以及信息發(fā)展中出現(xiàn)的新的技術(shù)。

除此之外,我還學到了如何與人相處,如何和人更好的交流,我們組成一個團隊大家一起開發(fā)一個項目,大家的交流溝通顯得尤為重要,如何將自己的想法清楚明白的告訴隊友,如何提出自己想法的同時又不傷害其他的隊友的面子,這些在我的實訓生活中都有一些體會??墒钦f,第一次親身體會理論與實際相結(jié)合,讓我大開眼界。也是對以前學習的一個初審吧,相信這次實訓多我以后的學習、工作也將會有很大的影響,在實訓的這段時間里這些寶貴的經(jīng)驗將會成為我以后工作的基石。

作為即將畢業(yè)走出校園的學生,經(jīng)過3年的在校學習,對程序設計有了一些基本的理性的認識和理解。在校期間一直忙于理論的學習,沒有機會也沒有經(jīng)驗來參與我們項目的開發(fā),所以在實習之前軟件按開發(fā)對我來說是非常抽象的,一個完整的項目要怎么來分工以及完成該項目所需要的基本步驟也不明確,通過這次實訓讓我明白一個完整項目的完成必須團隊分工合作,并在每個階段進行必要的總結(jié)和檢查。在我們項目的開發(fā)過程中我們項目的步驟:詳細設計、詳細設計review、編碼、編碼。在項目開發(fā)過程中我也深刻的體會到詳細設計對一個項目開發(fā)有明確的指引作用,它可以使開發(fā)人員對這個項目所要實現(xiàn)的功能在總體上有具體的認識,并能減少在開發(fā)過程中出現(xiàn)不必要的脫節(jié)。

這次實訓是對我們學習的一個檢驗,雖然項目中很多知識我們在日常的學習中都沒有遇到,這同時提醒我:要想成為一個合格的程序員就有具備一種自學能力,在工作中會遇到很多從未接觸過的問題,當有了問題時要去解決,在你不斷努力,尋找答案的過程中,自己的能力也在潛移默化的提升。有時遇到問題時可能有很多想法但卻不知道那個正確,這就讓我們不斷地去探索,不斷地嘗試。

339185