每一次總結(jié)都是我們提高自己的機會。寫總結(jié)時,我們應(yīng)該注重在內(nèi)容上的準(zhǔn)確和簡潔。下面是一些總結(jié)寫作的方法和技巧,希望對大家有所幫助。
軟件工程的收獲體會心得篇一
軟件工程(softwareengineering,簡稱為se)是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實用的和高質(zhì)量的軟件的學(xué)科。它涉及到程序設(shè)計語言,數(shù)據(jù)庫,軟件開發(fā)工具,系統(tǒng)平臺,標(biāo)準(zhǔn),設(shè)計模式等方面。在現(xiàn)代社會中,軟件應(yīng)用于多個方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。同時,各個行業(yè)幾乎都有計算機軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。這些應(yīng)用促進(jìn)了經(jīng)濟(jì)和社會的發(fā)展,使得人們的工作更加高效,同時提高了生活質(zhì)量。
二、軟件工程的目標(biāo)
在給定成本、進(jìn)度的前提下,開發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性并且滿足用戶需求的軟件產(chǎn)品。
三、軟件工程的原則
是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。軟件工程的原則有以下四項基本原則:1)選取適宜開發(fā)范型;2)采用合適的設(shè)計方法;3)提供高質(zhì)量的工程支持;4)重視開發(fā)過程的管理。
四、軟件工程的由來
據(jù)說上個世紀(jì)60年代的程序員都是天才,寫程式就像寫日記一樣,吃過晚飯沒事干隨手就可以寫幾個出來玩,第二天還可以拿去賣錢。所以那時候程序員在大家眼中,跟那些搞美術(shù),音樂的是一類的,被稱為“藝術(shù)家”。
但事過境遷,就像任何人都不會嫌錢多一樣,永遠(yuǎn)都不會有人嫌cpu快的。于是,隨之而來的就是硬件的迅猛發(fā)展和越來越變態(tài)的軟件。記得以前常去同學(xué)家拷游戲,通常幾張軟盤就可以搞定,而現(xiàn)在的游戲,兩三張cd-rom都算少的了。像如此龐大復(fù)雜的怪物,就算你是如何的天才,一個人肯定是搞不定的,否則,等你把程式寫出來,人家intel連奔騰n都開發(fā)出來了。既要開發(fā)大型的軟件還要追求速度(這樣才能賺錢),于是很自然地,合作的概念被提了出來。
在開始合作的初期,由于大家都習(xí)慣了當(dāng)很有個性的“藝術(shù)家”,結(jié)果可想而知,一個是畢加索派的,而另一個是意大利印象派的,再加上一個畫潑墨山水畫的,要是像這樣湊出來的東西都能不出問題的話,那么bill早就轉(zhuǎn)行了。所以,那時侯的大型軟件,據(jù)說“藍(lán)屏”比windows98還多。
馬克思告訴我們,萬物都是從量變到質(zhì)變的。隨著問題的不斷涌現(xiàn),一些master們開始嘗試去總結(jié)經(jīng)驗,并歸納了一些規(guī)范去指導(dǎo)軟件的分析,設(shè)計,實現(xiàn),測試,維護(hù),人員交流協(xié)作,項目預(yù)算及時限控制等方方面面,這就是軟件工程的前身。
軟件工程到現(xiàn)在已發(fā)展了30多年,可以說是相當(dāng)成熟的了?,F(xiàn)在開發(fā)軟件,據(jù)說都是一大幫人排排坐,按著一整套的規(guī)章制度來干活。于是,軟件開發(fā)成了“工程”,程序員也就淪為“工人”了。
五、軟件工程的核心
軟件工程,說白了,就是這樣一套用于軟件的團(tuán)隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設(shè)計,編碼,調(diào)試,維護(hù),如何組織這5個部分的工作,以及如何完成每一個工作。簡單來說,就是對于總體的組織和對于局部的實現(xiàn)。
六、軟件開發(fā)過程
開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構(gòu)思一種或多種實現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。除了第一步外,其余的步驟應(yīng)該是一個循環(huán)的過程。既然軟件開發(fā)是一個具有不可預(yù)知性和變化性的`動態(tài)的過程,那么,對其每一個步驟的組織,即周期模型,就必須包容它的這種性質(zhì)。
具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計,編碼,調(diào)試,維護(hù)這幾部分的工作的時候,最核心的就是文檔的編寫。文檔的作用在于以下3個方面:一是可以幫助整理思路。把要完成的目標(biāo),系統(tǒng)的結(jié)構(gòu),每一個模塊的功能等整理一下,然后分門別類地寫下來,這樣在開發(fā)的過程中,就有據(jù)可依,在需要回過頭來修改設(shè)計的時候,也有證可考。二是便于交流。想象一下開會時的情形。一大幫子人爭先恐后,激烈辯論,然后會終人散,思想靈感也就隨之散了,結(jié)果是開了半天會,什么也沒討論出來。這就是后來會議記錄被發(fā)明出來的原因。在腦子里的東西一多,就會散而且亂,用語言表達(dá)的時候,很容易會丟三落四,別人也很難把握住你的思想。但經(jīng)過整理寫在紙上以后,則會清晰得多,無論是別人還是自己,看起來都可以一目了然。三是可以作為以后維護(hù)時的參考資料。有一句名言:“筆和紙永遠(yuǎn)都比大腦可靠”,意思就是說,放在大腦里的東西說不準(zhǔn)哪天就忘了,但寫在紙上的東西,只要不發(fā)生什么意外,一般是丟不了的。當(dāng)過了一段時間,你需要再回過頭來修改你的程序的時候,你就會發(fā)現(xiàn),你以前寫下的文檔實在太有價值了。別指望你的源代碼,對于復(fù)雜一點的程序來說,單純的源代碼幾乎會扼殺掉你所有的時間。
可行性分析就是關(guān)于當(dāng)前項目能不能干的分析結(jié)果。主要考慮的方面包括:是否能把這個項目開發(fā)出來;假如可以的話,預(yù)計需要多少時間,能否滿足客人的時間要求;需要多少人力和資金的投入;最重要的是,這個項目能否賺錢,能賺多少。還要對可能存在的風(fēng)險進(jìn)行評估。
七、軟件工程學(xué)習(xí)感悟
時間飛逝,不知不覺間《軟件工程》的學(xué)習(xí)完了。在這將近半學(xué)期的學(xué)習(xí)中,雖然我不能說我將《軟件工程》學(xué)習(xí)的有多么的好,但是通過學(xué)習(xí),我還是受益良多。
在以前,我一直對軟件存在一些偏見或則是誤解,認(rèn)為軟件就是程序,軟件的開發(fā)就是編寫程序,只要編完了程序,一切也就ok了,而且我還片面的認(rèn)為只要我掌握了時下最新的語言和工具,那么我就能寫程序了。一個人,只要會編程,就能寫軟件,就是程序員;一個公司,只要招聘一些程序員,就能開發(fā)好的軟件產(chǎn)品。只要有幾個有經(jīng)驗的程序員,再找些兼職的大學(xué)生,就能組成一個軟件公司。
但是通過了《軟件工程》這門課的學(xué)習(xí),使我認(rèn)識到了我以前的錯誤。軟件其實不僅僅是程序,軟件開發(fā)其實也不僅僅是編寫程序,軟件是思想在硬件上的載體和體現(xiàn),處理的是邏輯和信息。唯有對軟件和軟件的開發(fā)過程,有充分的認(rèn)識,才能更好的開發(fā)出,過程受控、質(zhì)量受控的軟件產(chǎn)品。
而且在以前,我一直以為軟件的開發(fā)其實是一件很輕松快樂的事情,只要一天坐在電腦旁敲敲鍵盤,那么一切就可以了,但是現(xiàn)在我才發(fā)現(xiàn),我以前的很多的思想是多么的膚淺可笑。編程其實是一種樂趣和苦惱共存的一項創(chuàng)造性活動。因為編程不僅能夠滿足我們內(nèi)心深處進(jìn)行創(chuàng)造的渴望,而且還能愉悅我們內(nèi)在的情感。
而且通過學(xué)習(xí)《軟件工程》,我還學(xué)到了很多其他的東西。比如通過學(xué)習(xí)《軟件工程》,特別是教員的課程講解和每次用實際的軟件現(xiàn)場的講解,為我提供了一個盡早接觸世界工作和真實項目的機會。讓我知道如何在以最小的成本中,訓(xùn)練自己的基本工程素質(zhì)和能力,如何激發(fā)自己的積極性等。而且通過學(xué)習(xí)《軟件工程》,還讓我認(rèn)識和培養(yǎng)了我的團(tuán)隊協(xié)作能力,特別是對于我們這些在校的學(xué)生來說,這種學(xué)習(xí)更是能讓我在以后工作中少走很多的彎路。
所以,通過《軟件工程》的學(xué)習(xí),我是真的學(xué)習(xí)到了很多有用的東西,讓我明白了很多的道理。在此我對教員的辛勤教育表示感謝,因為是你讓我學(xué)習(xí)到了這些,是我獲益良多。
軟件工程的收獲體會心得篇二
曾經(jīng)看過一本書叫《道法自然》,內(nèi)容略記得一二,但我最欣賞的是它的.書名。軟件設(shè)計沒什么太神秘有東西,只要用心體會,其實一切都很自然。軟件的設(shè)計之“道”,也不在于設(shè)計有多么的華麗、精巧,而在于其樸實、自然,最終達(dá)到“以無招勝有招”,進(jìn)入一個全新的境界。
一、軟件設(shè)計理論的層次
以我的拙見,軟件設(shè)計領(lǐng)域中的各種概念,可以分為以下幾個層次來進(jìn)行理解:
1、軟件設(shè)計的目的:重用性、擴展性。
這是最高的層次,是應(yīng)對軟件危機的需要。
2、設(shè)計原則:低耦合、高聚合。
各種軟件設(shè)計的原則,如依賴倒置原則、單一職則原則、面向接口等,以及各種設(shè)計模式,其根本的目的其實只是為了降低耦合這么簡單。因為只有低耦合才能更好的適應(yīng)變化,更好的重用和擴展。
3、實現(xiàn)方法:運用設(shè)計模式封裝變化、降低耦合。
設(shè)計模式只是用來“封裝變化、降低耦合”的工具而已。它是面向?qū)ο笤O(shè)計時代的產(chǎn)物,其本質(zhì)就是充分運用面向?qū)ο蟮娜齻€特性,即:封裝、繼承和多態(tài),進(jìn)行靈活的組合運用。
二、關(guān)于耦合
1、耦合的粒度
耦合無論如何也是不可避免的。當(dāng)我們實現(xiàn)接口、繼承父類的時候,就會不可避免的產(chǎn)生耦合。耦合是有不同粒度的,我們解耦到什么粒度為止,我認(rèn)為應(yīng)以模塊的重用粒度為準(zhǔn)。盡量解除重用模塊或?qū)ο笾g的耦合。而重用模塊之內(nèi)的耦合,應(yīng)屬于聚合的范疇,所以不要盲目的去解耦,否則就陷入了誤區(qū)。
2、解耦的原理
怎樣才能解耦呢,或者說為什么各種設(shè)計模式能達(dá)到解耦的目的呢?我覺得有以下幾個思路:
(1)將具體的東西抽象處理
(2)將分散的東西集中處理
而面向?qū)ο笾械慕涌?、繼承正為我們提供了這樣的一種機制。通過訪問接口或基類或抽象類,而不是具體的實現(xiàn)類,從而與具體的實現(xiàn)類達(dá)到了解耦的目的。我們還可以設(shè)計一些控制類,像潤滑劑一樣,協(xié)調(diào)各實現(xiàn)類之間的訪問,也可以達(dá)到耦的目的。
事實上,各種設(shè)計模式的基本思想也就是這樣。創(chuàng)建型模式是為了解除創(chuàng)建對象時產(chǎn)生的耦合,實際上是解除對類稱名的依賴,而結(jié)構(gòu)型和行為型是為了解除對象屬性或方法的直接調(diào)用。不管什么設(shè)計模式,都是將對具體實現(xiàn)類的訪問提升為對接口、基類或用于協(xié)調(diào)的控制類的訪問。
三、關(guān)于接口
這一節(jié)更具體,談一談接口,因為使用接口是軟件設(shè)計的重要手段,但已經(jīng)不屬于“道”了。
1、接口與繼承
接口描述的是對象某一個方面行為特征。使用接口與使用繼承關(guān)系各有優(yōu)缺點,使用子類繼承可以繼承父類的功能,體現(xiàn)了重用的精神。而接品更加靈活,因為它解除了子類與父類之間的高度耦合,它體現(xiàn)在靈活擴展的精神。
2、接口與純虛類
接口存在的理由就是它更加靈活,關(guān)系簡單,易于理解。比如一個類可以實現(xiàn)十幾個甚至幾十個接口,但一般開發(fā)工具只支持單繼承(由于多繼承太容易導(dǎo)致混亂和沖突),如果要繼承十幾層,系統(tǒng)結(jié)構(gòu)想必會無法理解了,我以為這是接口存在的最重要的原因。
如果接口和虛類繼承結(jié)合使用,可以產(chǎn)生強大的威力,這也是許多設(shè)計模式的“殺手锏”。
以上算是總結(jié)一下自己的心得。肯定有不少片面之處,請各位指教。
軟件工程的收獲體會心得篇三
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(shù)據(jù)流圖、e—r圖以及狀態(tài)圖式本節(jié)的重點。第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風(fēng)格。第六章軟件測試方法,本章講解了軟件測試相關(guān)的概念及重要性,軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。第七章統(tǒng)一建模語言uml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計模式,本章對軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度??捎眯灾杠浖窘Y(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。
軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計的方法,其原則是過程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計與代碼完全一致。包括程序流程圖、n—s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。它獨立于任何一種程序設(shè)計語言,比較直觀和清晰地描述過程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n—s圖:一種符合結(jié)構(gòu)化程序設(shè)計原則的圖形描述工具,稱為盒圖,又稱為n—s圖。在n—s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設(shè)計中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測試方法:按照測試過程是否在實際應(yīng)用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析說明書、軟件設(shè)計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。
動態(tài)測試技術(shù):當(dāng)把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會慢慢的完善的。
軟件工程對于初學(xué)者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(xì)致地看幾遍,然后上機練習(xí)幾次就可以成功,學(xué)習(xí)過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學(xué)習(xí)面向?qū)ο蠓治龅臅r候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學(xué)到的知識通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細(xì)設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進(jìn)度報告,項目開發(fā)總結(jié)報告,軟件維護(hù)手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨特的規(guī)范的編碼風(fēng)格是非常重要的事。因為這影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們在今后的學(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計和問題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴散開來,應(yīng)用于今后的實踐。不斷鍛煉自己,向一名合格的程序設(shè)計師邁進(jìn)。
軟件工程的收獲體會心得篇四
軟件工程心得體會未接觸軟件工程之前一直都很想學(xué)這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。學(xué)了一個學(xué)期的軟件工程課,終于知道了個軟件工程的大概。學(xué)的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經(jīng)以為程序就是軟件,軟件就是程序。學(xué)習(xí)這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復(fù)雜化導(dǎo)致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團(tuán)隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設(shè)計,編碼,調(diào)試,維護(hù),如何組織這5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學(xué)習(xí)永無止境。起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學(xué)習(xí)過程中,知道了團(tuán)隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達(dá)成一致與默契。團(tuán)隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協(xié)調(diào),組員積極配合,才能合作愉快。學(xué)習(xí)能力體現(xiàn)在能盡快接受新的知識,順應(yīng)變化,學(xué)為所用。
上《軟件工程導(dǎo)論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠??上面已?jīng)給出了一些原因。專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。沒有管理的設(shè)計是失敗和混亂的設(shè)計,沒有設(shè)計指導(dǎo)的編程是無序的忙碌的。根據(jù)開發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認(rèn)為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構(gòu)思一種或多種實現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。在我看來,除了第一步外,其余的步驟應(yīng)該是一個循環(huán)的過程。在編碼的'過程中,你總是需要不斷地回過頭來修改原先的模塊設(shè)計,甚至最初選定的實現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計,編碼,調(diào)試,維護(hù)這幾部分的工作的時候,最核心的就是文檔的編寫。
1、可行性分析就是關(guān)于當(dāng)前項目能不能干的分析結(jié)果。
2、項目描述這是在決定立項以后,對當(dāng)前項目的一份扼要說明。
3、需求分析就是對客戶要求的功能的定義。
4、軟件設(shè)計這就是對程序的每一個模塊的詳細(xì)設(shè)計的說明文檔。
5、開發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。開發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動等,還要對上述這些修改變動作些說明。
6、測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。
軟件工程的收獲體會心得篇五
軟件工程心得體會未接觸軟件工程之前一直都很想學(xué)這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。
學(xué)了一個學(xué)期的軟件工程課,終于知道了個軟件工程的大概。
學(xué)的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。
曾經(jīng)以為程序就是軟件,軟件就是程序。
學(xué)習(xí)這門課程第一個收獲是,知道了二者的不同之處。
以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。
不過大的項目沒有接觸過,用軟件工程的方法還是第一次。
我想也是程序的不斷復(fù)雜化導(dǎo)致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團(tuán)隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。
其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設(shè)計,編碼,調(diào)試,維護(hù),如何組織這5個部分的工作,以及如何完成每一個工作。
吾生也有涯,而知也無涯,學(xué)習(xí)永無止境。
起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。
在學(xué)習(xí)過程中,知道了團(tuán)隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達(dá)成一致與默契。
團(tuán)隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。
組長多加協(xié)調(diào),組員積極配合,才能合作愉快。
學(xué)習(xí)能力體現(xiàn)在能盡快接受新的知識,順應(yīng)變化,學(xué)為所用。
上《軟件工程導(dǎo)論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。
專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。
只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。
沒有管理的設(shè)計是失敗和混亂的設(shè)計,沒有設(shè)計指導(dǎo)的編程是無序的忙碌的。
根據(jù)開發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認(rèn)為的)。
但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實開發(fā)軟件,就像是解決一個邏輯問題。
想想自己平時是怎樣寫程序的。
首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構(gòu)思一種或多種實現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。
在我看來,除了第一步外,其余的步驟應(yīng)該是一個循環(huán)的過程。
在編碼的過程中,你總是需要不斷地回過頭來修改原先的模塊設(shè)計,甚至最初選定的實現(xiàn)算法。
具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。
在進(jìn)行分析,設(shè)計,編碼,調(diào)試,維護(hù)這幾部分的工作的時候,最核心的就是文檔的編寫。
1.可行性分析就是關(guān)于當(dāng)前項目能不能干的分析結(jié)果。
2.項目描述這是在決定立項以后,對當(dāng)前項目的一份扼要說明。
3.需求分析就是對客戶要求的功能的定義。
4.軟件設(shè)計這就是對程序的每一個模塊的詳細(xì)設(shè)計的說明文檔。
5.開發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。
開發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動等,還要對上述這些修改變動作些說明。
6.測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。
第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。
第二章軟件工程方法與工具,這一章主要對軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法?/p>
還引出了工具uml。
第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點。
第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。
第五章編碼,這一章重點講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風(fēng)格。
第六章軟件測試方法,本章講解了軟件測試相關(guān)的概念及重要性,軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。
第七章統(tǒng)一建模語言uml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時用到的各種圖進(jìn)行了介紹。
第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。
第九章軟件體系結(jié)構(gòu)與設(shè)計模式,本章對軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。
第十章面向?qū)ο笤O(shè)計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進(jìn)行調(diào)整和細(xì)化。
第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。
開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。
這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。
它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。
需求活動包括問題分析和需求分析。
問題分析獲取需求定義,又稱軟件需求規(guī)約。
需求分析生成功能規(guī)約。
設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。
概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。
詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。
實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。
確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。
維護(hù)活動包括使用過程中的擴充、修改與完善。
伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。
軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計的方法,其原則是過程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。
軟件工程的收獲體會心得篇六
學(xué)習(xí)軟件工程一個學(xué)期以來,我在陳燁老師的教導(dǎo)下確實獲益匪淺。軟件工程這門課,讓我對軟件的認(rèn)識有了大大的提升,從一開始對軟件工程的一無所知,到現(xiàn)在一學(xué)期下來的不斷學(xué)習(xí),懂得了許多的知識。
軟件不僅僅是程序,而是思想在硬件上的載體和體現(xiàn),軟件工程與其說是一門課程,不如說是一門思想。讓我懂得如何去分析和處理問題的過程,綜合解決問題。
在這段時間的學(xué)習(xí)中,我明白了一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細(xì)設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告等多個文檔,而軟件的生存周期可分為八個階段,分別是問題定義,可行性研究,需求分析,概要設(shè)計,詳細(xì)設(shè)計,程序設(shè)計,測試,文檔,技術(shù)支持,售后服務(wù)。而可行性包括經(jīng)濟(jì),技術(shù),法律和社會。了解了許多軟件開發(fā)模型,比如瀑布模型,增量模型和螺旋模型,也了解了uml對象面向?qū)ο蠼?,知道如何畫流圖,碩果累累。其實軟件和程序是兩個不同的概念,軟件除了程序還要有使用和維護(hù)該程序所需要的全部文檔。包括需求文檔、設(shè)計文檔、測試文檔、維護(hù)文檔以及使用手冊。
軟件工程對于初學(xué)者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,需要很好的基礎(chǔ)知識的理解和掌握,所以說學(xué)好軟件工程不是僅僅書多看幾遍就可以成功,而是要多注意結(jié)合實際,多思考,面對錯誤不要一范就問,要嘗試自己去解決,然后舉一反三。
軟件工程這門課在我們畢業(yè)之后,是我們實際要運用的一項非常有用的技能,這門課讓我意識到理論學(xué)習(xí)很重要,而實踐更重要,實踐是檢驗真理的唯一標(biāo)準(zhǔn),只有實踐和理論相結(jié)合,才能使效益最大化。軟件工程的課雖然快要結(jié)束了,但是我對軟件工程的學(xué)習(xí)才剛剛開始,有了這些基本知識做鋪墊,在以后做項目的時候?qū)墙鉀Q問題的有效措施。
軟件工程的收獲體會心得篇七
軟件工程,就是一套用于軟件的團(tuán)隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。你知道軟件工程
心得體會
是什么嗎?接下來就是本站小編為大家整理的關(guān)于軟件工程心得體會,供大家閱讀!時間飛逝,不知不覺間《軟件工程》的學(xué)習(xí)已經(jīng)過了大半了。在這將近半學(xué)期的學(xué)習(xí)中,雖然我不能說我將《軟件工程》學(xué)習(xí)的有多么的好,但是通過學(xué)習(xí),我還是受益良多。
在以前,我一直對軟件存在一些偏見或則是誤解,認(rèn)為軟件就是程序,軟件的開發(fā)就是編寫程序,只要編完了程序,一切也就ok了,而且我還片面的認(rèn)為只要我掌握了時下最新的語言和工具,那么我就能寫程序了。一個人,只要會編程,就能寫軟件,就是程序員;一個公司,只要招聘一些程序員,就能開發(fā)好的軟件產(chǎn)品。只要有幾個有經(jīng)驗的程序員,再找些兼職的大學(xué)生,就能組成一個軟件公司。
但是通過了《軟件工程》這門課的學(xué)習(xí),使我認(rèn)識到了我以前的錯誤。軟件其實不僅僅是程序,軟件開發(fā)其實也不僅僅是編寫程序,軟件是思想在硬件上的載體和體現(xiàn),處理的是邏輯和信息。唯有對軟件和軟件的開發(fā)過程,有充分的認(rèn)識,才能更好的開發(fā)出,過程受控、質(zhì)量受控的軟件產(chǎn)品。
而且在以前,我一直以為軟件的開發(fā)其實是一件很輕松快樂的事情,只要一天坐在電腦旁敲敲鍵盤,那么一切就可以了,但是現(xiàn)在我才發(fā)現(xiàn),我以前的很多的思想是多么的膚淺可笑。編程其實是一種樂趣和苦惱共存的一項創(chuàng)造性活動。因為編程不僅能夠滿足我們內(nèi)心深處進(jìn)行創(chuàng)造的渴望,而且還能愉悅我們內(nèi)在的情感。
而且通過學(xué)習(xí)《軟件工程》,我還學(xué)到了很多其他的東西。比如通過學(xué)習(xí)《軟件工程》,特別是老師每次用實際的軟件現(xiàn)場的講解,為我提供了一個盡早接觸世界工作和真實項目的機會。讓我知道如何在以最小的成本中,訓(xùn)練自己的基本工程素質(zhì)和能力,如何激發(fā)自己的積極性等。而且通過學(xué)習(xí)《軟件工程》,還讓我認(rèn)識和培養(yǎng)了我的團(tuán)隊協(xié)作能力,特別是對于我們這些在校的學(xué)生來說,這種學(xué)習(xí)更是能讓我在以后工作中少走很多的彎路。
所以,通過《軟件工程》的學(xué)習(xí),我是真的學(xué)習(xí)到了很多有用的東西,讓我明白了很多的道理。在此我對老師的辛勤教育表示感謝,因為是你讓我學(xué)習(xí)到了這些,是我獲益良多。
軟件工程心得體會未接觸軟件工程之前一直都很想學(xué)這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。學(xué)了一個學(xué)期的軟件工程課,終于知道了個軟件工程的大概。學(xué)的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經(jīng)以為程序就是軟件,軟件就是程序。學(xué)習(xí)這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經(jīng)很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復(fù)雜化導(dǎo)致了軟件危機的發(fā)生,使得人們不得不探索新的解決方法。
經(jīng)過倪老師的講解,理解了軟件工程,就是一套用于軟件的團(tuán)隊開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對于軟件開發(fā)的5個重要組成部分:需求分析,設(shè)計,編碼,調(diào)試,維護(hù),如何組織這5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學(xué)習(xí)永無止境。起初,對軟件工程處于一知半解的狀態(tài),分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環(huán)。在學(xué)習(xí)過程中,知道了團(tuán)隊合作十分重要,爭議固然存在,但通過討論、協(xié)商,群策群力,在不斷磨合中能夠達(dá)成一致與默契。團(tuán)隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協(xié)調(diào),組員積極配合,才能合作愉快。學(xué)習(xí)能力體現(xiàn)在能盡快接受新的知識,順應(yīng)變化,學(xué)為所用。
上《軟件工程導(dǎo)論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。專業(yè)點講,軟件工程最終是為了實現(xiàn)“軟件制造業(yè)”的社會化,工業(yè)化大生產(chǎn),提高其勞動生產(chǎn)效率。只有如此,軟件業(yè)才能實現(xiàn)社會化,工業(yè)化大生產(chǎn),才能“做大做強”。沒有管理的設(shè)計是失敗和混亂的設(shè)計,沒有設(shè)計指導(dǎo)的編程是無序的忙碌的。根據(jù)開發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認(rèn)為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實開發(fā)軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現(xiàn)的核心功能大概構(gòu)思一種或多種實現(xiàn)方法,并從中選出一種自認(rèn)為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和debug。在我看來,除了第一步外,其余的步驟應(yīng)該是一個循環(huán)的過程。在編碼的過程中,你總是需要不斷地回過頭來修改原先的模塊設(shè)計,甚至最初選定的實現(xiàn)算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進(jìn)行分析,設(shè)計,編碼,調(diào)試,維護(hù)這幾部分的工作的時候,最核心的就是文檔的編寫。1.可行性分析就是關(guān)于當(dāng)前項目能不能干的分析結(jié)果。
2.項目描述這是在決定立項以后,對當(dāng)前項目的一份扼要說明。
3.需求分析就是對客戶要求的功能的定義。
4.軟件設(shè)計這就是對程序的每一個模塊的詳細(xì)設(shè)計的說明文檔。
5.開發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。開發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動等,還要對上述這些修改變動作些說明。
6.測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數(shù)字描述。
共
2
頁,當(dāng)前第1
頁1
2
軟件工程的收獲體會心得篇八
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點。第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風(fēng)格。第六章軟件測試方法,本章講解了軟件測試相關(guān)的概念及重要性,軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。第七章統(tǒng)一建模語言uml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治觯@一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計模式,本章對軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度??捎眯灾杠浖窘Y(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。
軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。它獨立于任何一種程序設(shè)計語言,比較直觀和清晰地描述過程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n-s圖:一種符合結(jié)構(gòu)化程序設(shè)計原則的圖形描述工具,稱為盒圖,又稱為n-s圖。在n-s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設(shè)計中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測試方法:按照測試過程是否在實際應(yīng)用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析
說明書
、軟件設(shè)計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術(shù):當(dāng)把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會慢慢的完善的。
軟件工程對于初學(xué)者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(xì)致地看幾遍,然后上機練習(xí)幾次就可以成功,學(xué)習(xí)過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學(xué)習(xí)面向?qū)ο蠓治龅臅r候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學(xué)到的知識通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細(xì)設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進(jìn)度報告,項目開發(fā)總結(jié)報告,軟件維護(hù)手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨特的規(guī)范的編碼風(fēng)格是非常重要的事。因為這影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們在今后的學(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計和問題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴散開來,應(yīng)用于今后的實踐。不斷鍛煉自己,向一名合格的程序設(shè)計師邁進(jìn)。
共
2
頁,當(dāng)前第2
頁1
2
軟件工程的收獲體會心得篇九
軟件工程及未來發(fā)展趨勢心得體會軟件工程是一門研究用工程方法構(gòu)建和維護(hù)有效的、實用的和高質(zhì)量的軟件的學(xué)科。它的成果是為軟件設(shè)計和開發(fā)人員提供思想方法和工具。
商業(yè)形態(tài)從最開始的硬件輔助到代碼核心競爭力到后來的服務(wù)階段。30多年來,隨著軟件工程的研究和實踐取得了跨越性的進(jìn)步,it和制造業(yè)以及各種行業(yè)的結(jié)合,進(jìn)入軟件定義時代的階段。同時獲得了一些具有里程碑意義的進(jìn)展,盡管目前離徹底解決“軟件危機”還有一些差距,但軟件工程的方法對軟件產(chǎn)業(yè)的發(fā)展還是起到了很大的推動作用。軟件產(chǎn)業(yè)也邁入了高質(zhì)量發(fā)展的階段,并且有一定的成績。
20xx年中國軟件產(chǎn)業(yè)年會的召開以“軟件定義的時代-數(shù)字、融合與生態(tài)”為主題,中國工程院院士孫家廣在主旨演講中表示,“軟件是信息技術(shù)之魂,經(jīng)濟(jì)轉(zhuǎn)型之擎、網(wǎng)絡(luò)安全之盾、數(shù)字社會之基、大國博弈之焦、高質(zhì)量發(fā)展的抓手,軟件賦能、賦值、賦智作用日益明顯?!彼硎荆浖_源是我國成為軟件強國的根本舉措和保障。中國工程院院士廖湘科也在報告中提出,工業(yè)軟件要向建設(shè)信息技術(shù)和先進(jìn)制造技術(shù)深度融合、控制管理整個生產(chǎn)模式的基礎(chǔ)軟件平臺發(fā)展。在真實世界感知的數(shù)據(jù)進(jìn)入到虛擬世界,進(jìn)行關(guān)聯(lián)和跨域關(guān)聯(lián)的分析,在進(jìn)行智能處理之后,再反饋到真實世界。運行平臺基于云端的硬件結(jié)構(gòu),在未來設(shè)計軟件的過程中,我們要考慮的是不再針對一臺服務(wù)器設(shè)計軟件,在設(shè)計的時候需要考慮云端,在這樣的前提下去設(shè)計軟件??偟膩碚f,整個軟件體系就是一個生態(tài)鏈,市場通過軟件平臺來控制,所有的技術(shù)和商業(yè)模式的競爭都堆積在it軟件平臺,各個行業(yè)的it從業(yè)人員可以協(xié)同,硬件追求越來越快,軟件追求規(guī)模。生態(tài)鏈需要協(xié)同創(chuàng)新,學(xué)科交叉。軟件是靈魂的載體,它具體應(yīng)用在知識領(lǐng)域在生活智能方面的應(yīng)用。東軟集團(tuán)股份有限公司董事長兼ceo劉積仁作題為“軟件的賦能時代”,表明,企業(yè)也是軟件的載體。軟件在今后具有無限的發(fā)展空間,我們應(yīng)該為從事這個行業(yè)而感到幸運。軟件在今后的發(fā)展中不僅僅表現(xiàn)的是licenseip的價值,軟件可以承載一個嶄新的創(chuàng)業(yè)的公司創(chuàng)造資本市場的奇跡。核心就是軟件表達(dá)的方式從我們單純賣解決方案、賣服務(wù),軟件從我們過去依賴于軟件工程師,最后我們要成為在新經(jīng)濟(jì)的發(fā)展、新消費發(fā)展的一個新的平臺。
信息革命的核心體現(xiàn)在,集成電路是細(xì)胞,通訊網(wǎng)絡(luò)是動脈,計算機工具是大腦,信息資源是血漿,應(yīng)用需求是心臟,安全是免疫系統(tǒng),軟件是靈魂。軟件產(chǎn)業(yè)是第一大產(chǎn)業(yè),面向?qū)ο笫擒浖夹g(shù)的基本指導(dǎo)思想,它的發(fā)展過程從最初的個人技巧,到結(jié)構(gòu)化,再到最終的面向?qū)ο?,覆蓋范圍也發(fā)展到運行技術(shù)、工具技術(shù)、到過程技術(shù)。軟件理論方法技術(shù)應(yīng)用于x應(yīng)用場景。應(yīng)用場景的'構(gòu)建主要是體現(xiàn)在,可感知+可編程+可計算+可調(diào)控等方面。軟件很大程度上改變了我們的生產(chǎn)生活方式,在現(xiàn)在社會中,對于軟件的開發(fā),我們不在只是單純的系統(tǒng)開發(fā),文檔手冊,還要考慮到所處的環(huán)境以及大數(shù)據(jù),智能算法等多方面的綜合考量。
軟件同時也在驅(qū)動著世界經(jīng)濟(jì)的變革。在世界經(jīng)濟(jì)全球化發(fā)展的趨勢下,軟件行業(yè)也在向全球化發(fā)展,在今天,軟件的開發(fā)也不再是一個國家或者一個行業(yè)自身的發(fā)展而是整個社會的發(fā)展趨勢。當(dāng)前軟件行業(yè)無論國內(nèi)還是國際上整體處于手工作坊式階段,以項目組或產(chǎn)品組為單位組織開發(fā)人員,圍繞一個項目或者一個產(chǎn)品的某一迭代版本進(jìn)行收工作業(yè)。其服務(wù)模式始終停留在并行開發(fā)多個無關(guān)的小型項目。對于這樣的情況,單單只是依靠某個國家自身的實力是很難實現(xiàn)軟件技術(shù)全面提升的。微觀層面來看,光學(xué)相機被數(shù)碼相機取代,移動磁盤、光盤基本上被u盤取代。智能手機的出現(xiàn)也帶來了it產(chǎn)業(yè)格局的重塑。it產(chǎn)業(yè)巨變的核心動力是用戶群體的快速增加以及it擴散的范圍迅速。繼智能手機、平板電腦被軟件重新定義后,其他it產(chǎn)品也在不斷被軟件重新定義,增加一個操作系統(tǒng)之后,物理功能被無限的簡化,功能被無限的拓展,不斷地豐富。整個經(jīng)濟(jì)社會加快在網(wǎng)絡(luò)空間的映射,形成現(xiàn)實與網(wǎng)絡(luò)交融的數(shù)字世界。信息物理系統(tǒng)(cps)實現(xiàn)大型工程系統(tǒng)的實時感知、動態(tài)控制和信息服務(wù)。
數(shù)據(jù)表征、智能處理、軟件定義,三元融合將打造一個全新的世界。大數(shù)據(jù)在消費it領(lǐng)域的作用更加明顯,只要用pc上網(wǎng)或者手機瀏覽信息,性別、年齡、愛好、蹤跡等等便被大數(shù)據(jù)刻畫,從而根據(jù)現(xiàn)有信息推斷出你可能要做的事??偟膩碚f,大數(shù)據(jù)不僅是傳統(tǒng)產(chǎn)業(yè)升級的助推器,同時也是新興產(chǎn)業(yè)的催化劑。軟件的定位已經(jīng)從服務(wù)軟件發(fā)展到定義硬件,也許在不久的將來,軟件不僅僅是改變世界,而是重新定義我們已知的世界,正如大數(shù)據(jù)的出現(xiàn),或許不久的將來,產(chǎn)品經(jīng)銷商會比我們更了解自己的需求。
隨著軟件市場的競爭壓力越來越大,我們所面臨的it環(huán)境更為復(fù)雜化,為了應(yīng)對來自各方面的挑戰(zhàn)問題,我們需要更多的創(chuàng)新能力和業(yè)務(wù)靈活性。提高模塊化思想,從根本上解決所面臨的問題。
軟件工程的收獲體會心得篇十
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。
第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。
第二章軟件工程方法與工具,這一章主要對軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法?/p>
還引出了工具uml。
第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點。
第四章結(jié)構(gòu)化分析方法,這一章重點講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。
第五章編碼,這一章重點講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說帶來的好處,并告誡我們將來一點要形成好的編碼風(fēng)格。
第六章軟件測試方法,本章講解了軟件測試相關(guān)的概念及重要性,軟件測試與開發(fā)各個階段的關(guān)系;還介紹了白盒測試技術(shù)以及黑河測試技術(shù)。
第七章統(tǒng)一建模語言uml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時用到的各種圖進(jìn)行了介紹。
第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動態(tài)模型。
第九章軟件體系結(jié)構(gòu)與設(shè)計模式,本章對軟件體系結(jié)構(gòu)的'基本概念、典型風(fēng)格等進(jìn)行了講解。
第十章面向?qū)ο笤O(shè)計,本章的重點是對面向?qū)ο蠓治鰰r建立的對象模型進(jìn)行調(diào)整和細(xì)化。
第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。
開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。
這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。
它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。
需求活動包括問題分析和需求分析。
問題分析獲取需求定義,又稱軟件需求規(guī)約。
需求分析生成功能規(guī)約。
設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。
概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。
詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。
實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。
確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。
維護(hù)活動包括使用過程中的擴充、修改與完善。
伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。
軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計的方法,其原則是過程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。
它獨立于任何一種程序設(shè)計語言,比較直觀和清晰地描述過程的控制流程,易于學(xué)習(xí)掌握。
軟件工程的收獲體會心得篇十一
對于一個軟件系統(tǒng)的開發(fā),第一步就是問題定義,了解所開發(fā)系統(tǒng)的行業(yè)背景,制定計劃。當(dāng)我們計劃確定以后就要對項目系統(tǒng)本身進(jìn)行可行性研究,主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性三個方面著手。就比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的行業(yè)背景說明文檔中非常詳細(xì)地分析了當(dāng)下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務(wù)說明、應(yīng)用背景、未來發(fā)展趨勢以及相關(guān)應(yīng)用案例等四個方面,項目團(tuán)隊中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關(guān)的調(diào)查資料對將要開發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來我們寫這類文檔的時候就是草草了事,不會做得這么詳細(xì),而這次看到大型項目的行業(yè)背景說明也是這么詳細(xì),也讓自己認(rèn)識到不管是軟件開發(fā)的那個階段都要認(rèn)真對待,這些瑣碎的文檔都是后期開發(fā)項目的支撐,只要它們做的透徹,后面的開發(fā)工作才能更順利的進(jìn)行。
第二、項目需求說明方面
這部分項目需求說明就是軟件定義時期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據(jù)用戶的需要確定系統(tǒng)必須完成那些工作,并對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫出一份需求規(guī)格說明,即為《物聯(lián)網(wǎng)物流倉儲管理系統(tǒng)》項目需求說明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項目時寫的需求規(guī)格說明書就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來它不是很重要,寫文檔的時候也不知道怎么寫就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒有把自己項目的需求寫明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗教訓(xùn)我會對這部分更加重視。
第三、系統(tǒng)概要設(shè)計方面
這部分內(nèi)容分說的是軟件設(shè)計時期的概要設(shè)計階段,該階段的主要目的就是實現(xiàn)系統(tǒng)的功能、設(shè)計軟件的結(jié)構(gòu)、模塊組成以及模塊之間的關(guān)系。在概要設(shè)計階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對比多種可能的系統(tǒng)實現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的結(jié)構(gòu)。在這個階段還會具體畫出e-r圖、數(shù)據(jù)流圖等方面的設(shè)計。
比如《物聯(lián)網(wǎng)物流倉庫管理系統(tǒng)》的系統(tǒng)概要設(shè)計從項目概述、設(shè)計約束、功能單元與功能模塊設(shè)計、數(shù)據(jù)e-r圖設(shè)計、總體設(shè)計、界面設(shè)計等六個方面介紹,通過讀這個文檔,我覺得最重要的還是總體設(shè)計,分別從邏輯架構(gòu)設(shè)計、物理架構(gòu)設(shè)計、技術(shù)架構(gòu)設(shè)計設(shè)計系統(tǒng)。在這個階段中模塊要做到高內(nèi)聚低耦合,這樣開發(fā)出來的系統(tǒng)才會具有更高的獨立性。
在原來做項目時沒有編寫過這類文檔,在該階段只是畫了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對該類文檔尚未重視。通過張老師的講解和自己的學(xué)習(xí),我相信在以后做項目的時候一定會注意到這類文檔的編寫。
第四、詳細(xì)設(shè)計與分析方面
詳細(xì)設(shè)計階段就是把概要設(shè)計階段的每個模塊進(jìn)一步設(shè)計,確定每個模塊所需要的算法和數(shù)據(jù)結(jié)構(gòu)。在這個階段還是需要我們設(shè)計出程序的詳細(xì)規(guī)格說明,而不是編寫程序。在詳細(xì)設(shè)計階段,系統(tǒng)設(shè)計人員可以通過使用程序流程圖、盒圖、pad圖等過程設(shè)計的工具和jackson圖等面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計工具進(jìn)一步設(shè)計系統(tǒng)相關(guān)接口,主要包括界面設(shè)計接口、業(yè)務(wù)單設(shè)計接口、單元模塊設(shè)計接口等,這些對于以后的編碼工作都是極其重要的。
第五、編碼和測試方案方面
關(guān)于編碼,我認(rèn)為編碼要想做的完美必備條件就是前面的軟件定義和軟件設(shè)計時期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對于編碼也要有相應(yīng)的文檔書寫規(guī)范,要使源程序代碼的邏輯簡明清晰、易讀易懂。這樣盡管我們不是設(shè)計系統(tǒng)的人員,當(dāng)看到源程序代碼的時候也能容易讀懂代碼的意思。
其次就是測試的內(nèi)容,從測試的文檔中我們可以得出,其實測試在軟件開發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問題并排除其中的潛藏的錯誤,最終把一個高質(zhì)量的軟件系統(tǒng)交給用戶使用。它要求測試人員也要有很高的技術(shù)水平。
軟件工程的收獲體會心得篇十二
畢業(yè)實習(xí)是教學(xué)過程中一個重要的實踐性教學(xué)環(huán)節(jié),是一次綜合性學(xué)習(xí)。通過實習(xí)加深對專業(yè)理論知識的理解,培養(yǎng)和提高實際操作動手的能力,使所學(xué)理論知識與編程實踐緊密結(jié)合,為畢業(yè)后從事計算機相關(guān)工作打下良好的基礎(chǔ)。實習(xí)期間讓我學(xué)到很多東西,不僅在理論上讓我對it領(lǐng)域有了全新的認(rèn)識,在實踐能力上也得到了很大的提高,真正的學(xué)到了學(xué)以致用,更學(xué)到很多做人的道理,對我來說受益匪淺。同時,我還學(xué)到了如何與人相處,怎樣與人進(jìn)行更好的交流。我們幾個人組成一個團(tuán)隊,大家一起學(xué)習(xí)開發(fā)一個項目,彼此之間的交流溝通就顯得尤為重要,如何將自己的想法清楚明白的告訴隊友,如何提出自己想法的同時又不傷害其他的隊友的面子,這些在我的實習(xí)生活中都有一些體會。相信這次實習(xí)對我以后的學(xué)習(xí)、工作將會產(chǎn)生很大的影響,在短短的二十幾天里學(xué)到的這些寶貴的經(jīng)驗將會成為我以后工作的基石。
一、實習(xí)內(nèi)容和過程
實習(xí)期間,我主要在軟件開發(fā)部進(jìn)行學(xué)習(xí),同時對其他如人事部、檢測部門進(jìn)行了了解,通過與有關(guān)項目負(fù)責(zé)人的學(xué)習(xí)交流,從而對it行業(yè)最近的發(fā)展及對人才需求、能力要求等方面有所了解,對自己的未來發(fā)展和規(guī)劃有很大意義。
實習(xí)的開始幾天主要是對公司工作流程和員工工作習(xí)慣的了解和適應(yīng),對自己作出調(diào)整,使自己盡快進(jìn)入工作狀態(tài)。
接下來幾天,主要是對自己將要面臨和接受的工作的接觸了解,思考如何將自己所學(xué)的知識運用到工作中去。
中間的幾天主要是進(jìn)行有關(guān)項目中幾個小功能模塊的學(xué)習(xí)和實現(xiàn),簡單的對自己的工作有一個體會。
最后的幾天主要就是真正的參與到工作中去,通過自己的實際動手去做項目,對分配到的任務(wù)的完成及其中遇到困難的解決,發(fā)現(xiàn)自己的不足,鍛煉自己的能力。
1.1公司概況
____軟件有限公司成立于20__年1月,公司以軟件產(chǎn)品開發(fā)、軟件項目實習(xí)培訓(xùn)為主要目標(biāo),公司以先進(jìn)的技術(shù)開發(fā)體系為基礎(chǔ),已經(jīng)成功地開發(fā)了多個軟件產(chǎn)品和軟件項目。公司自成立以來發(fā)展迅速,已獲取軟件高新技術(shù)企業(yè)認(rèn)證,正在進(jìn)行iso-9002體系認(rèn)證,以市場為先導(dǎo)、研發(fā)為后盾、服務(wù)為宗旨,全面服務(wù)于我國的軟件事業(yè)。
公司愿景:使__成為社會認(rèn)可和尊敬的優(yōu)秀軟件公司
公司核心價值觀:團(tuán)隊合作、不斷創(chuàng)新、社會責(zé)任感、客戶為本、誠實正直
公司使命:在公司軟件產(chǎn)品及軟件服務(wù)的幫助下,讓人們愉快工作、快樂生活。__對品質(zhì)有著執(zhí)著的追求,但是高品質(zhì)的設(shè)計并不意味著高成本,我們有著長期為知名客戶服務(wù)的經(jīng)驗,應(yīng)用國際通用的標(biāo)準(zhǔn)化建模體系等先進(jìn)技術(shù),建立了完善的質(zhì)量控制流程,因此,我們能夠在高品質(zhì)的基礎(chǔ)上,保持富有競爭力的低報價。
__具有優(yōu)秀的技術(shù)實力:在大型數(shù)據(jù)庫oracle、db2、_ml、webservices、internet/intranet、java、php、c#、c應(yīng)用等方面擁有的技術(shù);在web應(yīng)用程序、辦公自動化、商業(yè)智能、電子商務(wù)、電子政務(wù)、企業(yè)資源管理、知識管理、商業(yè)網(wǎng)站、手機應(yīng)用、游戲和多媒體電子出版等方面具有豐富的開發(fā)實施經(jīng)驗。這些技術(shù)和實施經(jīng)驗是倬威達(dá)的客戶獲得高性能、低成本的產(chǎn)品和服務(wù)的重要保證。
__秉承以人為本的管理理念人性化管理,并強調(diào)規(guī)范的開發(fā)流程,以及業(yè)內(nèi)的開發(fā)技術(shù),為員工的發(fā)展提供充分的發(fā)展和上升空間。穩(wěn)定且高素質(zhì)的團(tuán)隊,是我們提供優(yōu)質(zhì)軟件和服務(wù)的基礎(chǔ)。
為了滿足軟件企業(yè)對軟件實用人才的需求,公司與__多所高校建立校企合作關(guān)系,極大的增強了畢業(yè)生在求職中的項目經(jīng)驗及工作中的實際動手能力,促進(jìn)高校就業(yè),實訓(xùn)效果顯著受到高校領(lǐng)導(dǎo)、畢業(yè)生及用人單位的一致好評。公司經(jīng)過幾年的實訓(xùn)經(jīng)驗的累積,深深認(rèn)識到實用人才是企業(yè)選人用人時的關(guān)鍵因素,所以公司實訓(xùn)致力于軟件實用人才培養(yǎng),重視與院校建立長期合作關(guān)系。通過校企合作,優(yōu)勢互補,互利共贏,支持院校教育事業(yè)。
在二十一世紀(jì),__軟件公司將進(jìn)一步發(fā)展壯大,未來五年內(nèi),__將實施戰(zhàn)略性結(jié)構(gòu)調(diào)整,瞄準(zhǔn)國內(nèi)外一流軟件公司,使之成為較有影響的軟件公司。
軟件工程的收獲體會心得篇十三
轉(zhuǎn)眼之間,20__年兩個月的實習(xí)期即將結(jié)束,回顧這兩個月的實習(xí)工作,感觸很深,收獲頗豐。這兩個月,在領(lǐng)導(dǎo)和同事們的悉心關(guān)懷和指導(dǎo)下,通過我自身的不懈努力,我學(xué)到了人生難得的工作經(jīng)驗和社會見識。我將從以下幾個方面總結(jié)計算機通信崗位工作實習(xí)這段時間自己體會和心得:
一、努力學(xué)習(xí),理論結(jié)合實踐,不斷提高自身工作能力
在計算機通信崗位工作的實習(xí)過程中,我始終把學(xué)習(xí)作為獲得新知識、掌握方法、提高能力、解決問題的一條重要途徑和方法,切實做到用理論武裝頭腦、指導(dǎo)實踐、推動工作。思想上積極進(jìn)取,積極的把自己現(xiàn)有的知識用于社會實踐中,在實踐中也才能檢驗知識的有用性。在這兩個月的實習(xí)工作中給我的感觸就是:我們在學(xué)校學(xué)到了很多的理論知識,但很少用于社會實踐中,這樣理論和實踐就大大的脫節(jié)了,以至于在以后的學(xué)習(xí)和生活中找不到方向,無法學(xué)以致用。同時,在工作中不斷的學(xué)習(xí)也是彌補自己的不足的有效方式。信息時代,瞬息萬變,社會在變化,人也在變化,所以你一天不學(xué)習(xí),你就會落伍。通過這兩個月的實習(xí),并結(jié)合計算機通信崗位工作的實際情況,認(rèn)真學(xué)習(xí)的計算機通信崗位工作各項政策制度、管理制度和工作條例,使工作中的困難有了最有力地解決武器。通過這些工作條例的學(xué)習(xí)使我進(jìn)一步加深了對各項工作的理解,可以求真務(wù)實的開展各項工作。
二、圍繞工作,突出重點,盡心盡力履行職責(zé)
三、轉(zhuǎn)變角色,以極大的熱情投入到工作中
從大學(xué)校門跨入到計算機通信崗位工作崗位,一開始我難以適應(yīng)角色的轉(zhuǎn)變,不能發(fā)現(xiàn)問題,從而解決問題,認(rèn)為沒有多少事情可以做,我就有一點失望,開始的熱情有點消退,完全找不到方向。但我還是盡量保持當(dāng)初的那份熱情,想干有用的事的態(tài)度,不斷的做好一些雜事,同時也勇于協(xié)助同事做好各項工作,慢慢的就找到了自己的角色,明白自己該干什么,這就是一個熱情的問題,只要我保持極大的熱情,相信自己一定會得到認(rèn)可,沒有不會做,沒有做不好,只有你愿不愿意做。轉(zhuǎn)變自己的角色,從一位學(xué)生到一位工作人員的轉(zhuǎn)變,不僅僅是角色的變化,更是思想觀念的轉(zhuǎn)變。
四、發(fā)揚團(tuán)隊精神,在完成本職工作的同時協(xié)同其他同事
在工作間能得到領(lǐng)導(dǎo)的充分信任,并在按時完成上級分配給我的各項工作的同時,還能積極主動地協(xié)助其他同事處理一些內(nèi)務(wù)工作。個人的能力只有融入團(tuán)隊,才能實現(xiàn)的價值。實習(xí)期的工作,讓我充分認(rèn)識到團(tuán)隊精神的重要性。
團(tuán)隊的精髓是共同進(jìn)步。沒有共同進(jìn)步,相互合作,團(tuán)隊如同一盤散沙。相互合作,團(tuán)隊就會齊心協(xié)力,成為一個強有力的集體。很多人經(jīng)常把團(tuán)隊和工作團(tuán)體混為一談,其實兩者之間存在本質(zhì)上的區(qū)別。優(yōu)秀的工作團(tuán)體與團(tuán)隊一樣,具有能夠一起分享信息、觀點和創(chuàng)意,共同決策以幫助每個成員能夠更好地工作,同時強化個人工作標(biāo)準(zhǔn)的特點。但工作團(tuán)體主要是把工作目標(biāo)分解到個人,其本質(zhì)上是注重個人目標(biāo)和責(zé)任,工作團(tuán)體目標(biāo)只是個人目標(biāo)的簡單總和,工作團(tuán)體的成員不會為超出自己義務(wù)范圍的結(jié)果負(fù)責(zé),也不會嘗試那種因為多名成員共同工作而帶來的增值效應(yīng)。
五、存在的問題
幾個月來,我雖然努力做了一些工作,但距離領(lǐng)導(dǎo)的要求還有不小差距,如理論水平、工作能力上還有待進(jìn)一步提高,對計算機通信崗位工作崗位還不夠熟悉等等,這些問題,我決心實習(xí)報告在今后的工作和學(xué)習(xí)中努力加以改進(jìn)和解決,使自己更好地做好本職工作。
針對實習(xí)期工作存在的不足和問題,在以后的工作中我打算做好以下幾點
1.做好實習(xí)期工作計劃,繼續(xù)加強對計算機通信崗位工作崗位各種制度和業(yè)務(wù)的學(xué)習(xí),做到全面深入的了解各種制度和業(yè)務(wù)。
2.以實踐帶學(xué)習(xí)全方位提高自己的工作能力。在注重學(xué)習(xí)的同時狠抓實踐,在實踐中利用所學(xué)知識用知識指導(dǎo)實踐全方位的提高自己的工作能力和工作水平。
3.踏實做好本職工作。在以后的工作和學(xué)習(xí)中,我將以更加積極的工作態(tài)度更加熱情的工作作風(fēng)把自己的本職工作做好。在工作中任勞任怨力爭“沒有只有更好”。
4.繼續(xù)在做好本職工作的同時,為單位做一些力所能及的工作,為單位做出自己應(yīng)有的貢獻(xiàn)。
軟件工程的收獲體會心得篇十四
學(xué)習(xí)了這門課程,還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實例,讓理論和實踐得到了很好的結(jié)合。整一個學(xué)期下來,總的來說還是學(xué)到了很多東西的,有很多地方是值得肯定的,其實在我看來,軟件工程與其說是一門課程,不如說是一門思想。是一個如何去分析和處理問題的過程,應(yīng)該說其范疇已經(jīng)遠(yuǎn)遠(yuǎn)不止局限于該門課程,成為了一個綜合的一個能夠解決問題的思想集合。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設(shè)計中使用的主要表達(dá)工具。hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入處理輸出三者之間的聯(lián)系。還有測試方法:按照測試過程是否在實際應(yīng)用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析說明書、軟件設(shè)計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術(shù):當(dāng)把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學(xué)習(xí)了其他很多工具、語言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會慢慢的完善的。
軟件工程對于初學(xué)者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(xì)致地看幾遍,然后上機練習(xí)幾次就可以成功,學(xué)習(xí)過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學(xué)習(xí)面向?qū)ο蠓治龅臅r候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學(xué)到的知識通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細(xì)設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進(jìn)度報告,項目開發(fā)總結(jié)報告,軟件維護(hù)手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨特的規(guī)范的編碼風(fēng)格是非常重要的事。因為這影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護(hù)又從何談起呢所以,我們在今后的學(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計和問題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴散開來,應(yīng)用于今后的實踐。不斷鍛煉自己,向一名合格的程序設(shè)計師邁進(jìn)。
1.大一工廠實習(xí)心得體會
2.軟件工程實習(xí)心得
3.大一會計專業(yè)實習(xí)心得
4.認(rèn)知實習(xí)實習(xí)心得體會
5.實習(xí)心得體會
6.電工實習(xí)心得體會
7.工程管理實習(xí)心得體會
8.關(guān)于小學(xué)實習(xí)心得體會
9.實習(xí)心得體會怎么寫
10.在實驗室實習(xí)心得體會
軟件工程的收獲體會心得篇十五
軟件工程是一個復(fù)雜的過程,其中需求是關(guān)鍵的一環(huán)。在實踐過程中,我積累了一些關(guān)于軟件工程需求的心得體會。本文將從需求的重要性、需求分析的方法、需求的管理、需求變更的處理以及與客戶的溝通等方面來進(jìn)行分享和探討。
第二段:需求的重要性
需求在軟件工程中是至關(guān)重要的一環(huán)。過去曾發(fā)生過許多項目失敗的案例,其中很大一部分是因為需求未能準(zhǔn)確地被捕獲、理解和分析。因此,我們需要充分認(rèn)識到需求在整個軟件開發(fā)過程中的關(guān)鍵作用。只有了解了需求,我們才能確保軟件的功能、性能和用戶體驗都能達(dá)到預(yù)期的目標(biāo)。
第三段:需求分析的方法
需求分析是需求工程的核心環(huán)節(jié)。要提取和分析的需求是多樣的,如功能需求、非功能需求、用戶需求和系統(tǒng)需求等。因此,我們需要采用適當(dāng)?shù)姆椒▉磉M(jìn)行需求分析。常用的方法有面談、問卷調(diào)查、原型設(shè)計、用戶故事等。通過這些方法的應(yīng)用,我們可以更好地了解用戶的需求,確保需求的全面性和準(zhǔn)確性。
第四段:需求的管理
需求的管理對于軟件工程項目的成功十分關(guān)鍵。需求的變更和演化是不可避免的,但如何管理好這些變更將決定項目的成敗。在管理需求時,我們需要建立一個有效的需求管理流程,包括變更申請、評審、優(yōu)先級設(shè)定以及變更控制等環(huán)節(jié)。同時,跟蹤需求的狀態(tài)和進(jìn)展也是十分重要的,這可以幫助我們及時發(fā)現(xiàn)和解決問題,確保項目的順利進(jìn)行。
第五段:與客戶的溝通
與客戶的溝通是需求工程的核心要素之一??蛻敉亲盍私庾约盒枨蟮娜?,與他們的有效溝通可以幫助我們更好地理解和滿足他們的需求。在與客戶溝通時,我們不僅需要傾聽和理解他們的需求,還需要及時與他們進(jìn)行反饋和確認(rèn)。同時,我們也需要積極與客戶溝通預(yù)期的交付時間、項目成本等重要因素,以保持客戶的滿意度和項目的成功。
結(jié)尾段:總結(jié)
通過實踐和經(jīng)驗,我認(rèn)識到需求在軟件工程中的重要性,以及需求分析、管理和與客戶的溝通對于項目成功的關(guān)鍵作用。只有充分認(rèn)識和理解這些關(guān)鍵點,我們才能在軟件工程項目中更好地滿足用戶需求,確保項目的順利進(jìn)行和成功交付。因此,在未來的工作中,我將繼續(xù)深入研究和學(xué)習(xí)軟件工程需求方面的知識,不斷提升自己的能力和技術(shù)水平。
軟件工程的收獲體會心得篇十六
20__年_月,我離開了學(xué)校,進(jìn)入了最后一學(xué)期的頂崗實習(xí)階段。從離開學(xué)校的那天起,我就當(dāng)自己是一個正式的員工,做好了經(jīng)歷重重困難的準(zhǔn)備,我始終堅信,我的努力與堅持不懈不會白費,我的未來不是夢。
一、實習(xí)單位介紹
南京__有限公司是我現(xiàn)在實習(xí)的單位,它成立于__年,是從事教育軟件、數(shù)字化教學(xué)資源、多媒體產(chǎn)品等開發(fā)、制作的專業(yè)公司;是江蘇省信息產(chǎn)業(yè)廳認(rèn)定的雙軟企業(yè)、江蘇省新聞出版局審核認(rèn)定的電子出版物開發(fā)制作單位。公司長期承擔(dān)高校及教育管理部門的數(shù)字化教學(xué)資源、教務(wù)教學(xué)、實驗科研等管理系統(tǒng)的開發(fā)和信息化項目建設(shè)。如:《數(shù)字化教學(xué)資源庫-名師名課網(wǎng)系統(tǒng)》、《oa辦公系統(tǒng)》等多個系統(tǒng)平臺。智風(fēng)公司多年來致力于網(wǎng)絡(luò)課程的建設(shè)服務(wù)工作,擁有一支專業(yè)化的開發(fā)團(tuán)隊,通過嚴(yán)格的開發(fā)流程和創(chuàng)新的教學(xué)理念為廣大院校提供優(yōu)質(zhì)的服務(wù)。專業(yè)化的研發(fā)隊伍:從教學(xué)設(shè)計、技術(shù)開發(fā),到交互設(shè)計、視覺設(shè)計、資源素材制作等各個方面,全面解決您的后顧之憂;豐富的開發(fā)經(jīng)驗:業(yè)已開發(fā)的課程中有42門被評為精品課程,累計開發(fā)的網(wǎng)絡(luò)課程已逾1000門。
二、實習(xí)崗位、主要過程、主要內(nèi)容、主要工作、收獲
我在該公司任職軟件開發(fā)工程師,剛實習(xí)的第一個星期,主要的工作是熟悉公司的開發(fā)框架及開發(fā)流程,及時完成項目經(jīng)理派發(fā)的任務(wù)。從第二個星期開始,我就開始接觸公司的開發(fā)項目。令我印象最深、體會也最深的一個項目是《南京大學(xué)110周年校慶系統(tǒng)》。該項目不僅開發(fā)時間短(只有一個月的時間),最主要的是需求不清。在客戶與公司的雙重壓力下,我們這組人(共5人)在與客戶只溝通了兩次的需求下,我們就開始動工。該項目的用戶主要分為校領(lǐng)導(dǎo)和嘉賓。針對校領(lǐng)導(dǎo)和嘉賓進(jìn)行相應(yīng)的車輛、餐廳、賓館、會場、時間、志愿者的安排,要有沖突提示功能。如:在一個重疊的時間段內(nèi),一個人不能同時參加兩項及以上活動;一輛車安排的人數(shù)不能超過他的承載數(shù)等等。在做這些功能的時候,我們有過以人為基礎(chǔ),分配車輛、餐廳等資源,也有考慮過以資源為主,分配人員等種.種意見。在每一次意見有了分歧以后,我們都要討論,各抒己見。這種方式使我樂于表達(dá)自己的想法,當(dāng)我的想法得到了其他同事的認(rèn)可時,那種感覺無法用言語來表達(dá)。即使是自己的想法錯了,但聽到同事的另一番看法,使我茅塞頓開,也有了收獲的喜悅。由于項目太緊,我們經(jīng)常加班,每晚都要坐末班車回去,好幾次回來后倒頭就睡,周末也沒得休息。正是有了這些無以言表的感覺才使我對這個項目,對這個階段很難忘。在項目的功能方面,我負(fù)責(zé)所有基礎(chǔ)信息的添加與列表顯示。在做這些的時候,與我在學(xué)校做的項目的不同是分頁都是用的存儲過程,驗證要做到客戶端和服務(wù)端同時驗證。還涉及到站內(nèi)信互發(fā)、打印、導(dǎo)出、發(fā)郵件等這些我以前看似很神奇的東西,現(xiàn)在我已把神奇變?yōu)榱爽F(xiàn)實。
在這半年多的工作實踐中,我學(xué)到了很多,這些都是作為學(xué)生學(xué)不到的,如:
1、我參與的都是團(tuán)隊合作的項目,無論是在自己公司,還是在合作公司,我們都講究團(tuán)隊精神。在信任自己和他人的基礎(chǔ)上,思想統(tǒng)一,行動一致,這樣的團(tuán)隊一定會攻無不克、戰(zhàn)無不勝。我們的很多工作是一起完成的,在這個過程中,大家互相提醒和補充,大大提高了工作效率,所有的工作中溝通是最重要的,一定要把信息處理的及時、有效和清晰。
2、每一個項目在開始著手的第一步,一定要和客戶把需求溝通清楚,只有了解了項目的需求,才有可能真正做好一個項目。我們需要向客戶提出要求客戶提供所有涉及該項目的資料,每次與客戶見面都需要熟悉業(yè)務(wù)與程序的最少一至兩個程序員隨時記錄需求。
3、工作中,有一個無論是技術(shù),還是經(jīng)驗都比較讓人肯定的前輩帶領(lǐng),將任務(wù)詳細(xì)化,詳細(xì)到每個頁面、甚至是一個頁面中的圖片什么時候做好,做到什么程度,這樣把工作進(jìn)度有計劃有方向的暫定下來,做事很有效率。
4、每天的工作小結(jié)真的很重要,這讓我們每天都有計劃的知道自己干了什么,不是漫無目的的工作。
5、工作并不是一成不變的,也許有一天你要去其他崗位幫忙,所以同事之間的技術(shù)要互相學(xué)習(xí),也許有一天,公司需要你發(fā)揮其他的技能幫忙,所以互相學(xué)習(xí)也是很重要的,我在公司,深有感觸,除編程之外,切圖、界面設(shè)計等工作都干過。
三、體會
轉(zhuǎn)眼,出來社會都已大半年,已是半個社會人了。不能再向?qū)W生那樣,某些時候可以隨心隨意。頂崗實習(xí),為我們提供了一個很好的實踐機會,可以讓我們更好的把理論應(yīng)用于實踐,在實踐中領(lǐng)悟理論,更可以學(xué)習(xí)到很多書本上學(xué)習(xí)不到的、甚至比理論知識更實用的業(yè)務(wù)知識。而且,這些實習(xí)經(jīng)驗,無疑是我們畢業(yè)后就業(yè)的一大籌碼。作為一個成年人,作為一個社會職業(yè)人,任何時候都要守規(guī)矩,做好自己的本分,承擔(dān)起自己所需要承擔(dān)的責(zé)任。經(jīng)歷了2家公司的工作,我漸漸的認(rèn)識到,每一份工作或每一個工作環(huán)境都無法盡善盡美,但每一份工作中都有許多寶貴的經(jīng)驗和資源,如失敗的沮喪、自我成長的喜悅、溫馨的工作伙伴、值得感謝的客戶等等,這些都是工作成功者必須體驗的感受和必備的財富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會收獲很多很多。在你收獲很多很多的同時,你會發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅強,樂觀,闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
軟件工程的收獲體會心得篇十七
我實習(xí)的單位是xx學(xué)院,這是一所全日制中等專業(yè)學(xué)校。我在學(xué)校里主要是負(fù)責(zé)校內(nèi)內(nèi)網(wǎng)的管理,其涉及到校內(nèi)網(wǎng)網(wǎng)站的正常登陸和訪問,校內(nèi)內(nèi)各系部主機是否正常互聯(lián),有無被病毒感染、傳播。使得校內(nèi)網(wǎng)內(nèi)的計算機可以正常運行,做好校內(nèi)網(wǎng)的管理和維護(hù)工作。
從同學(xué)到實習(xí)工程師,短短幾個月的工作過程使我受益匪淺。不僅是在專業(yè)學(xué)問方面,最主要是在為人處事方面。社會在加速度地發(fā)生變化,對人才的要求也越來越高,要用進(jìn)展的目光看問題,得不斷進(jìn)步思想熟悉,完善自己。作為一名it從業(yè)者,所受的社會壓力將比其他行業(yè)更加沉重,要學(xué)會創(chuàng)新求變,以適應(yīng)社會的需要。在單位里,小到計算機的組裝修理,大到效勞器的維護(hù)與測試,都需要一個人獨立完成??梢哉f,近3個月的工作使我成長了不少,從中有不少感悟,下面就是我的一點心得:
你可以假裝你的面孔你的心,但絕不行以無視真誠的力氣。第一天去網(wǎng)絡(luò)中心實習(xí),心里不行避開的有些疑心:不知道教師怎么樣,應(yīng)當(dāng)去怎么做啊,要去干些什么呢等等吧!踏進(jìn)辦公室,只見幾個陌生的臉孔。我微笑著和他們打招呼。
從那天起,我養(yǎng)成了一個習(xí)慣,每天早上見到他們都要微笑的說聲:“教師早〞,那是我心底真誠的問候。我總覺得,常常有一些微小的東西簡單被我們無視,比方輕輕的一聲問候,但它卻表達(dá)了對教師同事對伴侶的`敬重關(guān)心,也讓別人感覺到被重視與被關(guān)心。僅僅幾天的時間,我就和教師們打成一片,很好的跟他們溝通溝通學(xué)習(xí),我想,應(yīng)當(dāng)是我的真誠,換得了教師的信任。他們把我當(dāng)伴侶也情愿指導(dǎo)我,情愿安排給我任務(wù)。
要想在短暫的實習(xí)時間內(nèi),盡可能多的學(xué)一些東西,這就需要跟教師有很好的溝通,加深彼此的理解,剛到網(wǎng)絡(luò)中心,教師并不理解你的工作學(xué)習(xí)力量,不明晰你會做那些工作,不明晰你想理解的學(xué)問,所以跟教師很好的溝通是很必要的。同時我覺得這也是我們將來走上社會的一把不行缺少的鑰匙。通過溝通理解,教師我我有了大體理解,邊有針對性的教我一些學(xué)問,我對網(wǎng)絡(luò)部線,電腦硬件安裝,網(wǎng)絡(luò)故障排解,工作原理應(yīng)用比叫感愛好,所以教師就讓我獨立的完成校內(nèi)大小部門的網(wǎng)絡(luò)檢修與電腦故障排解工作。如秘書處的辦公室內(nèi)局域網(wǎng)的組件,中心效勞機房的效勞器監(jiān)測等,直接或間接保證了校內(nèi)網(wǎng)的正常運行和使用,在這方面的工作中,真正學(xué)到了計算機教科書上所沒有或者真正用到了課本上的學(xué)問,穩(wěn)固了舊學(xué)問,把握了新學(xué)問,甚至在理論中驗證了書本上舊有的不合實際的學(xué)問,這才真正表達(dá)了學(xué)問的真正價值,學(xué)以致用。
激情與急躁,就像火與冰,看似兩種完全不同的東西,卻能碰撞出最漂亮的火花。在中心時,教師就跟我說,想做電腦網(wǎng)絡(luò)這一塊,激情與急躁必不行少,在產(chǎn)品更新方面,這一行業(yè)就像做新聞工作,補斷的更新,這就需要你有激情,急躁的去不斷的學(xué)習(xí)進(jìn)步自己的專業(yè)程度。
問教師,查資料,一個個問題迎刃而解,自己在這方面的學(xué)問得到了充實。這些在平常的書本上僅僅是獲得感性的熟悉在這里真的理論了,才算是真正的把握了,也讓我熟悉到了自己的缺乏,告誡自己,不管做什么,切忌眼高手低,要擅長鉆研。
還有我感受比擬深的就是查看log日志記錄,因為效勞器的維護(hù)是簡單又艱辛的,既要保障物理平安又要保證系統(tǒng)平安,這就需要通過查詢log日志記錄,每一分鐘的效勞器狀況都有l(wèi)og日志記錄,而且它一是數(shù)據(jù)量大、二是有大量無用信息,所以查看log使特別“苦痛〞的事情。像這些工作我熬深深地感覺到每有激情與急躁是做不好的。
軟件工程的收獲體會心得篇十八
學(xué)習(xí)了這門課程,還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實例,讓理論和實踐得到了很好的結(jié)合。整一個學(xué)期下來,總的來說還是學(xué)到了很多東西的,有很多地方是值得肯定的,其實在我看來,軟件工程與其說是一門課程,不如說是一門思想。是一個如何去分析和處理問題的過程,應(yīng)該說其范疇已經(jīng)遠(yuǎn)遠(yuǎn)不止局限于該門課程,成為了一個綜合的一個能夠解決問題的思想集合。
要學(xué)習(xí)軟件工程,學(xué)會如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運行的整個開銷滿足用戶要求的程度。這些目標(biāo)的實現(xiàn)不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
軟件工程過程:生產(chǎn)一個最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過程主要包括開發(fā)過程、運作過程、維護(hù)過程。它們覆蓋了需求、設(shè)計、實現(xiàn)、確認(rèn)以及維護(hù)等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計活動一般包括概要設(shè)計和詳細(xì)設(shè)計。概要設(shè)計建立整個軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說明、每一模塊的接口定義。詳細(xì)設(shè)計產(chǎn)生程序員可用的模塊說明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說明及加工描述。實現(xiàn)活動把設(shè)計結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動貫穿于整個開發(fā)過程,實現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓(xùn)過程等。軟件工程的原則是指圍繞工程設(shè)計、工程支持以及工程管理在軟件開發(fā)過程中必須遵循的原則。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國ibm公司在軟件設(shè)計中使用的主要表達(dá)工具。hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個模塊,均可用一張ipo圖來描述。ipo圖由輸入、處理和輸出三個框組成,需要時還可以增加一個數(shù)據(jù)文件框,這種圖形的優(yōu)點,是能夠直觀地顯示輸入處理輸出三者之間的聯(lián)系。還有測試方法:按照測試過程是否在實際應(yīng)用環(huán)境中來分,有靜態(tài)分析與動態(tài)測試。測試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。靜態(tài)分析技術(shù):不執(zhí)行被測軟件,可對需求分析說明書、軟件設(shè)計說明書、源程序做結(jié)構(gòu)檢查、流程分析、符號執(zhí)行來找出軟件錯誤。動態(tài)測試技術(shù):當(dāng)把程序作為一個函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學(xué)習(xí)了其他很多工具、語言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會慢慢的完善的。
軟件工程對于初學(xué)者來說,知識基礎(chǔ)較薄弱,對一些應(yīng)用操作、概念、工具方法等理解起來較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(xì)致地看幾遍,然后上機練習(xí)幾次就可以成功,學(xué)習(xí)過程中要注意多看多練要注意結(jié)合實際,更要多思考,面對錯誤不要一范就問,要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實際工作出發(fā),有針對性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們在學(xué)習(xí)面向?qū)ο蠓治龅臅r候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語言時,要看看與c語言的聯(lián)系,多思多想,把從各個科目學(xué)到的知識通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡單,在開發(fā)軟件的過程中,編寫代碼的工作量其實只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個完整的項目規(guī)劃須包括,軟件的定義,可行性分析報告,項目開發(fā)計劃,軟件需求說明書,概要設(shè)計說明書,詳細(xì)設(shè)計說明書,用戶操作手冊,測試計劃,測試分析報告,開發(fā)進(jìn)度報告,項目開發(fā)總結(jié)報告,軟件維護(hù)手冊,軟件問題報告,軟件修改報告,等多個文檔,每個文檔都要上級驗收審查,而文檔數(shù)量眾多,要做好這點真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長的軟件,再加上各個階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個浩大的工程的一個小小的過程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨特的規(guī)范的編碼風(fēng)格是非常重要的事。因為這影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護(hù)又從何談起呢所以,我們在今后的學(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點,例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計和問題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴散開來,應(yīng)用于今后的實踐。不斷鍛煉自己,向一名合格的程序設(shè)計師邁進(jìn)。
軟件工程的收獲體會心得篇十九
轉(zhuǎn)眼,出來社會都已大半年,已是半個社會人了。不能再向?qū)W生那樣,某些時候可以隨心隨意。頂崗實習(xí),為我們提供了一個很好的實踐機會,可以讓我們更好的把理論應(yīng)用于實踐,在實踐中領(lǐng)悟理論,更可以學(xué)習(xí)到很多書本上學(xué)習(xí)不到的、甚至比理論知識更實用的業(yè)務(wù)知識。而且,這些實習(xí)經(jīng)驗,無疑是我們畢業(yè)后就業(yè)的一大籌碼。作為一個成年人,作為一個社會職業(yè)人,任何時候都要守規(guī)矩,做好自己的本分,承擔(dān)起自己所需要承擔(dān)的責(zé)任。經(jīng)歷了2家公司的工作,我漸漸的認(rèn)識到,每一份工作或每一個工作環(huán)境都無法盡善盡美,但每一份工作中都有許多寶貴的經(jīng)驗和資源,如失敗的沮喪、自我成長的喜悅、溫馨的工作伙伴、值得感謝的客戶等等,這些都是工作成功者必須體驗的感受和必備的財富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會收獲很多很多。在你收獲很多很多的同時,你會發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅強,樂觀,闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
軟件工程的收獲體會心得篇二十
時間過的很快,轉(zhuǎn)眼間已經(jīng)實習(xí)將近5個月,其中有2個月是屬于完全被流放的。最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開發(fā)(struts+mysql+spring+hibernate),之后是去做網(wǎng)絡(luò)交換機軟件的腳本測試?,F(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測試經(jīng)驗。
至少自己做的東西,是真正交付到了客戶手上,到也稍微有些成就感。
1、淺談測試
一直以來,我都認(rèn)為測試是脫離了軟件工程范圍的工作,不以為屑。但在實際情況中,測試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責(zé)任在你,而不在于編碼人員。一般的測試人員不懂編碼,他們靠的是日以累計的經(jīng)驗總結(jié)和想象力。而要做到高級測試工程師,則一定要懂編碼,因為這是你完全掌握整個系統(tǒng)的方方面面具體運作的前提。但占主導(dǎo)地位的,還是大型系統(tǒng)的集成測試經(jīng)驗。實際項目中,編碼時間一般只占30%左右,真正耗費時間的是it階段的找bug與對應(yīng)bug,此階段基本評定了coder的編碼質(zhì)量。
2、程序員的困惑
有些人,以為教學(xué)視頻和代碼看多,自己就懂的多,實際做起來,卻不知從何下手,
有位同事告訴我:代碼看幾遍都沒用,要去抄,例如一個查詢模塊,在此基礎(chǔ)上去做具體記錄的歷史記錄查詢模塊,你可能會覺得很簡單,但實際情況卻往往報一堆異常,配置問題涉及到方方面面,以及數(shù)據(jù)庫字段,傳值問題等等,一大堆對于新人來說很郁悶的問題。但不用怕,只要學(xué)會調(diào)試,一個個問題去追蹤,一個個去解決,自然而然,那段“源碼”才真正屬于你。
3、如何調(diào)試追蹤
如果你能在短短的時間內(nèi)就看到問題點在那,放下斷點去追蹤,出去找工作,絕對沒問題。出現(xiàn)問題的時候,不要光看代碼,要用實際行動去追蹤運行期間的具體值,那是最好途徑。eclipse是個很爽的ide,這點做的很好。例如頁面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫查詢語句去下手,設(shè)置斷點,一步一步stepover,讓sql字段(存取最終sql語句的字符串)運行到有值,inspect進(jìn)去看,如果還看不出來,就點擊它,copy后在sql客戶端去實際運行,看看實際查詢出來的表是什么,如果是對的,有可能就是頁面調(diào)用的錯誤或者action邏輯的傳值問題。
頁面錯誤的調(diào)試,基本方法是用右鍵點擊實際網(wǎng)頁查看源代碼,copy到editplus,就能看到具體錯誤發(fā)生在那幾行。通常有幾種常見的錯誤,例如:缺少對象這種很多時候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(xxx=null)語句加保護(hù)。追蹤的方法基本就是用alert語句,放在有可能出錯的地方。
4、一些習(xí)慣
遇到問題先自己思考,無從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會了,不然你一輩子都停留在那種水平,從人身上學(xué)到的東西遠(yuǎn)遠(yuǎn)比書多的多。
解決了一個問題后,要去究根問底去找到問題產(chǎn)生的起因,以防你下次遇到類似的問題再浪費同樣的時間。
把代碼寫的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過一個高手寫的代碼,真的一看就是不同水平的人寫的,幾乎很完美,讀起來很流暢,方便自己也方便別人。
任務(wù)完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務(wù),只要你肯去嘗試,他們就會對你另言相看,把三天的任務(wù)一天加班搞定,效率和忠誠都有了,路也比較好走了。
[]
【本文地址:http://www.mlvmservice.com/zuowen/4992822.html】