通過(guò)寫學(xué)習(xí)心得,我們可以更好地反思和總結(jié)學(xué)習(xí)中的經(jīng)驗(yàn)和教訓(xùn),為今后的學(xué)習(xí)提供指導(dǎo)和啟示。小編為大家收集的培訓(xùn)心得范文涵蓋了不同的培訓(xùn)領(lǐng)域和內(nèi)容,可以滿足不同人的學(xué)習(xí)需求。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇一
軟件工程心得體會(huì)未接觸軟件工程之前一直都很想學(xué)這門課程,因?yàn)橛X(jué)得這門課很牛,是那些有工程師稱號(hào)的高手才擺弄的東西。
學(xué)了一個(gè)學(xué)期的軟件工程課,終于知道了個(gè)軟件工程的大概。
學(xué)的時(shí)候總覺(jué)得很抽象,理解起來(lái)好像不難,但總是摸不著頭腦一種很茫然的感覺(jué)。
曾經(jīng)以為程序就是軟件,軟件就是程序。
學(xué)習(xí)這門課程第一個(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ì)開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。
其核心就是,對(duì)于軟件開發(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)論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠?上面已經(jīng)給出了一些原因。
專業(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ù)開發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運(yùn)用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認(rèn)為的)。
但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實(shí)開發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。
想想自己平時(shí)是怎樣寫程序的。
首先是要有一個(gè)想法,即我寫的這個(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í)候,最核心的就是文檔的編寫。
1.可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。
2.項(xiàng)目描述這是在決定立項(xiàng)以后,對(duì)當(dāng)前項(xiàng)目的一份扼要說(shuō)明。
3.需求分析就是對(duì)客戶要求的功能的定義。
4.軟件設(shè)計(jì)這就是對(duì)程序的每一個(gè)模塊的詳細(xì)設(shè)計(jì)的說(shuō)明文檔。
5.開發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。
開發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時(shí)突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動(dòng)等,還要對(duì)上述這些修改變動(dòng)作些說(shuō)明。
6.測(cè)試分析用于指出程序存在或潛在的缺陷和錯(cuò)誤,以及程序性能的數(shù)字描述。
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。
第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。
第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒ā⑿问交椒ā?/p>
還引出了工具uml。
第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(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è)試與開發(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)具有正確性、可用性以及開銷合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶可用的程度。
開銷合宜是指軟件開發(fā)、運(yùn)行的整個(gè)開銷滿足用戶要求的程度。
這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
軟件工程過(guò)程主要包括開發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。
它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。
需求活動(dòng)包括問(wèn)題分析和需求分析。
問(wèn)題分析獲取需求定義,又稱軟件需求規(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è)開發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。
維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。
伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇二
轉(zhuǎn)眼,出來(lái)社會(huì)都已大半年,已是半個(gè)社會(huì)人了。不能再向?qū)W生那樣,某些時(shí)候可以隨心隨意。頂崗實(shí)習(xí),為我們提供了一個(gè)很好的實(shí)踐機(jī)會(huì),可以讓我們更好的把理論應(yīng)用于實(shí)踐,在實(shí)踐中領(lǐng)悟理論,更可以學(xué)習(xí)到很多書本上學(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)的喜悅、溫馨的工作伙伴、值得感謝的客戶等等,這些都是工作成功者必須體驗(yàn)的感受和必備的財(cái)富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會(huì)收獲很多很多。在你收獲很多很多的同時(shí),你會(huì)發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅(jiān)強(qiáng),樂(lè)觀,闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇三
20__年_月,我離開了學(xué)校,進(jìn)入了最后一學(xué)期的頂崗實(shí)習(xí)階段。從離開學(xué)校的那天起,我就當(dāng)自己是一個(gè)正式的員工,做好了經(jīng)歷重重困難的準(zhǔn)備,我始終堅(jiān)信,我的努力與堅(jiān)持不懈不會(huì)白費(fèi),我的未來(lái)不是夢(mèng)。
南京__有限公司是我現(xiàn)在實(shí)習(xí)的單位,它成立于__年,是從事教育軟件、數(shù)字化教學(xué)資源、多媒體產(chǎn)品等開發(fā)、制作的專業(yè)公司;是江蘇省信息產(chǎn)業(yè)廳認(rèn)定的雙軟企業(yè)、江蘇省新聞出版局審核認(rèn)定的電子出版物開發(fā)制作單位。公司長(zhǎng)期承擔(dān)高校及教育管理部門的數(shù)字化教學(xué)資源、教務(wù)教學(xué)、實(shí)驗(yàn)科研等管理系統(tǒng)的開發(fā)和信息化項(xiàng)目建設(shè)。如:《數(shù)字化教學(xué)資源庫(kù)-名師名課網(wǎng)系統(tǒng)》、《oa辦公系統(tǒng)》等多個(gè)系統(tǒng)平臺(tái)。智風(fēng)公司多年來(lái)致力于網(wǎng)絡(luò)課程的建設(shè)服務(wù)工作,擁有一支專業(yè)化的開發(fā)團(tuán)隊(duì),通過(guò)嚴(yán)格的開發(fā)流程和創(chuàng)新的教學(xué)理念為廣大院校提供優(yōu)質(zhì)的服務(wù)。專業(yè)化的研發(fā)隊(duì)伍:從教學(xué)設(shè)計(jì)、技術(shù)開發(fā),到交互設(shè)計(jì)、視覺(jué)設(shè)計(jì)、資源素材制作等各個(gè)方面,全面解決您的后顧之憂;豐富的開發(fā)經(jīng)驗(yàn):業(yè)已開發(fā)的課程中有42門被評(píng)為精品課程,累計(jì)開發(fā)的網(wǎng)絡(luò)課程已逾1000門。
二、實(shí)習(xí)崗位、主要過(guò)程、主要內(nèi)容、主要工作、收獲。
我在該公司任職軟件開發(fā)工程師,剛實(shí)習(xí)的第一個(gè)星期,主要的工作是熟悉公司的開發(fā)框架及開發(fā)流程,及時(shí)完成項(xiàng)目經(jīng)理派發(fā)的任務(wù)。從第二個(gè)星期開始,我就開始接觸公司的開發(fā)項(xiàng)目。令我印象最深、體會(huì)也最深的一個(gè)項(xiàng)目是《南京大學(xué)110周年校慶系統(tǒng)》。該項(xiàng)目不僅開發(fā)時(shí)間短(只有一個(gè)月的時(shí)間),最主要的是需求不清。在客戶與公司的雙重壓力下,我們這組人(共5人)在與客戶只溝通了兩次的需求下,我們就開始動(dòng)工。該項(xiàng)目的用戶主要分為校領(lǐng)導(dǎo)和嘉賓。針對(duì)校領(lǐng)導(dǎo)和嘉賓進(jìn)行相應(yīng)的車輛、餐廳、賓館、會(huì)場(chǎng)、時(shí)間、志愿者的安排,要有沖突提示功能。如:在一個(gè)重疊的時(shí)間段內(nèi),一個(gè)人不能同時(shí)參加兩項(xiàng)及以上活動(dòng);一輛車安排的人數(shù)不能超過(guò)他的承載數(shù)等等。在做這些功能的時(shí)候,我們有過(guò)以人為基礎(chǔ),分配車輛、餐廳等資源,也有考慮過(guò)以資源為主,分配人員等種.種意見。在每一次意見有了分歧以后,我們都要討論,各抒己見。這種方式使我樂(lè)于表達(dá)自己的想法,當(dāng)我的想法得到了其他同事的認(rèn)可時(shí),那種感覺(jué)無(wú)法用言語(yǔ)來(lái)表達(dá)。即使是自己的想法錯(cuò)了,但聽到同事的另一番看法,使我茅塞頓開,也有了收獲的喜悅。由于項(xiàng)目太緊,我們經(jīng)常加班,每晚都要坐末班車回去,好幾次回來(lái)后倒頭就睡,周末也沒(méi)得休息。正是有了這些無(wú)以言表的感覺(jué)才使我對(duì)這個(gè)項(xiàng)目,對(duì)這個(gè)階段很難忘。在項(xiàng)目的功能方面,我負(fù)責(zé)所有基礎(chǔ)信息的添加與列表顯示。在做這些的時(shí)候,與我在學(xué)校做的項(xiàng)目的不同是分頁(yè)都是用的存儲(chǔ)過(guò)程,驗(yàn)證要做到客戶端和服務(wù)端同時(shí)驗(yàn)證。還涉及到站內(nèi)信互發(fā)、打印、導(dǎo)出、發(fā)郵件等這些我以前看似很神奇的東西,現(xiàn)在我已把神奇變?yōu)榱爽F(xiàn)實(shí)。
在這半年多的工作實(shí)踐中,我學(xué)到了很多,這些都是作為學(xué)生學(xué)不到的,如:
1、我參與的都是團(tuán)隊(duì)合作的項(xiàng)目,無(wú)論是在自己公司,還是在合作公司,我們都講究團(tuán)隊(duì)精神。在信任自己和他人的基礎(chǔ)上,思想統(tǒng)一,行動(dòng)一致,這樣的團(tuán)隊(duì)一定會(huì)攻無(wú)不克、戰(zhàn)無(wú)不勝。我們的很多工作是一起完成的,在這個(gè)過(guò)程中,大家互相提醒和補(bǔ)充,大大提高了工作效率,所有的工作中溝通是最重要的,一定要把信息處理的及時(shí)、有效和清晰。
2、每一個(gè)項(xiàng)目在開始著手的第一步,一定要和客戶把需求溝通清楚,只有了解了項(xiàng)目的需求,才有可能真正做好一個(gè)項(xiàng)目。我們需要向客戶提出要求客戶提供所有涉及該項(xiàng)目的資料,每次與客戶見面都需要熟悉業(yè)務(wù)與程序的最少一至兩個(gè)程序員隨時(shí)記錄需求。
3、工作中,有一個(gè)無(wú)論是技術(shù),還是經(jīng)驗(yàn)都比較讓人肯定的前輩帶領(lǐng),將任務(wù)詳細(xì)化,詳細(xì)到每個(gè)頁(yè)面、甚至是一個(gè)頁(yè)面中的圖片什么時(shí)候做好,做到什么程度,這樣把工作進(jìn)度有計(jì)劃有方向的暫定下來(lái),做事很有效率。
4、每天的工作小結(jié)真的很重要,這讓我們每天都有計(jì)劃的知道自己干了什么,不是漫無(wú)目的的工作。
5、工作并不是一成不變的,也許有一天你要去其他崗位幫忙,所以同事之間的技術(shù)要互相學(xué)習(xí),也許有一天,公司需要你發(fā)揮其他的技能幫忙,所以互相學(xué)習(xí)也是很重要的,我在公司,深有感觸,除編程之外,切圖、界面設(shè)計(jì)等工作都干過(guò)。
三、體會(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í)到很多書本上學(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)的喜悅、溫馨的工作伙伴、值得感謝的客戶等等,這些都是工作成功者必須體驗(yàn)的感受和必備的財(cái)富。如果每天懷著感恩的心情去工作,在工作中始終牢記“擁有一份工作,就要懂得感恩”的道理,你一定會(huì)收獲很多很多。在你收獲很多很多的同時(shí),你會(huì)發(fā)現(xiàn)自己已經(jīng)在鍛煉中變得勇敢,堅(jiān)強(qiáng),樂(lè)觀,闊達(dá)。這樣的你,是不斷前進(jìn)的走在成功的路上的。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇四
軟件工程是一個(gè)復(fù)雜的過(guò)程,其中需求是關(guān)鍵的一環(huán)。在實(shí)踐過(guò)程中,我積累了一些關(guān)于軟件工程需求的心得體會(huì)。本文將從需求的重要性、需求分析的方法、需求的管理、需求變更的處理以及與客戶的溝通等方面來(lái)進(jìn)行分享和探討。
第二段:需求的重要性。
需求在軟件工程中是至關(guān)重要的一環(huán)。過(guò)去曾發(fā)生過(guò)許多項(xiàng)目失敗的案例,其中很大一部分是因?yàn)樾枨笪茨軠?zhǔn)確地被捕獲、理解和分析。因此,我們需要充分認(rèn)識(shí)到需求在整個(gè)軟件開發(fā)過(guò)程中的關(guān)鍵作用。只有了解了需求,我們才能確保軟件的功能、性能和用戶體驗(yàn)都能達(dá)到預(yù)期的目標(biāo)。
第三段:需求分析的方法。
需求分析是需求工程的核心環(huán)節(jié)。要提取和分析的需求是多樣的,如功能需求、非功能需求、用戶需求和系統(tǒng)需求等。因此,我們需要采用適當(dāng)?shù)姆椒▉?lái)進(jìn)行需求分析。常用的方法有面談、問(wèn)卷調(diào)查、原型設(shè)計(jì)、用戶故事等。通過(guò)這些方法的應(yīng)用,我們可以更好地了解用戶的需求,確保需求的全面性和準(zhǔn)確性。
第四段:需求的管理。
需求的管理對(duì)于軟件工程項(xiàng)目的成功十分關(guān)鍵。需求的變更和演化是不可避免的,但如何管理好這些變更將決定項(xiàng)目的成敗。在管理需求時(shí),我們需要建立一個(gè)有效的需求管理流程,包括變更申請(qǐng)、評(píng)審、優(yōu)先級(jí)設(shè)定以及變更控制等環(huán)節(jié)。同時(shí),跟蹤需求的狀態(tài)和進(jìn)展也是十分重要的,這可以幫助我們及時(shí)發(fā)現(xiàn)和解決問(wèn)題,確保項(xiàng)目的順利進(jìn)行。
第五段:與客戶的溝通。
與客戶的溝通是需求工程的核心要素之一。客戶往往是最了解自己需求的人,與他們的有效溝通可以幫助我們更好地理解和滿足他們的需求。在與客戶溝通時(shí),我們不僅需要傾聽和理解他們的需求,還需要及時(shí)與他們進(jìn)行反饋和確認(rèn)。同時(shí),我們也需要積極與客戶溝通預(yù)期的交付時(shí)間、項(xiàng)目成本等重要因素,以保持客戶的滿意度和項(xiàng)目的成功。
結(jié)尾段:總結(jié)。
通過(guò)實(shí)踐和經(jīng)驗(yàn),我認(rèn)識(shí)到需求在軟件工程中的重要性,以及需求分析、管理和與客戶的溝通對(duì)于項(xiàng)目成功的關(guān)鍵作用。只有充分認(rèn)識(shí)和理解這些關(guān)鍵點(diǎn),我們才能在軟件工程項(xiàng)目中更好地滿足用戶需求,確保項(xiàng)目的順利進(jìn)行和成功交付。因此,在未來(lái)的工作中,我將繼續(xù)深入研究和學(xué)習(xí)軟件工程需求方面的知識(shí),不斷提升自己的能力和技術(shù)水平。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇五
隨著信息技術(shù)的快速發(fā)展,軟件工程在各個(gè)行業(yè)中起到了不可忽視的作用。作為軟件工程師,理解和滿足用戶需求是我們工作的核心。在長(zhǎng)期的軟件工程需求分析實(shí)踐中,我深深感受到了需求分析的重要性和挑戰(zhàn)。下面,我將從需求分析的重要性、需求分析的方法和技巧、需求變更的管理、和用戶需求的理解四個(gè)方面來(lái)談一下我對(duì)軟件工程需求的心得體會(huì)。
首先,需求分析的重要性不可忽視。軟件開發(fā)的成功與否往往取決于是否準(zhǔn)確理解并滿足用戶的實(shí)際需求。需求分析過(guò)程中,我們要深入了解用戶的業(yè)務(wù)流程、工作環(huán)境和使用習(xí)慣,從而充分理解用戶需求。只有在需求分析過(guò)程中對(duì)用戶需求進(jìn)行準(zhǔn)確描述和分析,才能避免開發(fā)過(guò)程中的返工和需求的不匹配,從而提高軟件開發(fā)的效率和質(zhì)量。
其次,需求分析的方法和技巧十分重要。在需求分析過(guò)程中,我們可以運(yùn)用需求采集、需求建模、需求驗(yàn)證等方法和技巧,以確保我們完整、準(zhǔn)確地捕獲用戶需求。需求采集通過(guò)面對(duì)面的用戶訪談、問(wèn)卷調(diào)查、需求工作坊等方式,可以深入了解用戶需求。需求建模通過(guò)使用UML(統(tǒng)一建模語(yǔ)言)或其他建模工具,能夠?qū)τ脩粜枨筮M(jìn)行形式化的描述和分析。需求驗(yàn)證通過(guò)原型開發(fā)、功能測(cè)試等方式,可以驗(yàn)證需求的正確性和完整性。通過(guò)合理運(yùn)用這些方法和技巧,我們可以更好地進(jìn)行需求分析,為軟件開發(fā)提供準(zhǔn)確的需求基礎(chǔ)。
此外,需求變更的管理是軟件工程需求分析的一項(xiàng)重要任務(wù)。在軟件開發(fā)的過(guò)程中,用戶的需求是可能發(fā)生變化的。因此,我們需要及時(shí)處理和管理需求變更。在需求變更管理中,我們要與用戶進(jìn)行充分的溝通,了解變更的原因和影響,并對(duì)變更進(jìn)行評(píng)估和管理。合理處理需求變更可以減少不必要的返工和開發(fā)延期,同時(shí)也能保持軟件的持續(xù)演化能力。
最后,理解用戶需求是軟件工程需求分析的核心。在軟件開發(fā)中,我們要關(guān)注用戶的真實(shí)需求,而不僅僅是用戶的表面需求。有時(shí)用戶可能難以準(zhǔn)確表達(dá)自己的需求,我們需要通過(guò)深入的觀察和溝通,去理解用戶背后的真正需求。只有準(zhǔn)確理解用戶需求,我們才能開發(fā)出滿足用戶期望的軟件產(chǎn)品。
總之,軟件工程需求分析是軟件開發(fā)中不可或缺的環(huán)節(jié)。在需求分析過(guò)程中,我意識(shí)到需求分析的重要性,學(xué)習(xí)并應(yīng)用了各種需求分析的方法和技巧,掌握了需求變更的管理方法,并培養(yǎng)了對(duì)用戶需求的敏感性。通過(guò)不斷地實(shí)踐和總結(jié),我相信自己將能夠在軟件工程領(lǐng)域取得更大的成就。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇六
基于本次暑期實(shí)習(xí)的情況,我收獲很大。
從實(shí)訓(xùn)目的來(lái)看,本次實(shí)訓(xùn)主要是在vs2012開發(fā)平臺(tái)上實(shí)現(xiàn)對(duì)c#語(yǔ)言、sql數(shù)據(jù)庫(kù)的應(yīng)用,就我所在小組的項(xiàng)目工作內(nèi)容來(lái)看,還需要掌握水晶報(bào)表和mdi多窗口應(yīng)用技術(shù)。除了要充分熟悉開發(fā)平臺(tái)及應(yīng)用設(shè)計(jì)之外,還要掌握并實(shí)踐軟件項(xiàng)目設(shè)計(jì)規(guī)范及其開發(fā)流程即需求階段、分析和設(shè)計(jì)階段、編碼階段和測(cè)試階段,以便能按時(shí)交付作業(yè)。
從實(shí)訓(xùn)的內(nèi)容來(lái)看,我小組的項(xiàng)目是“人事工資管理系統(tǒng)”,主要實(shí)現(xiàn)公司企業(yè)對(duì)內(nèi)部員工檔案、工資、獎(jiǎng)罰考勤等一系列的管理,這在當(dāng)今不斷壯大的企業(yè)用人單位是亟待需要的,總的來(lái)說(shuō),項(xiàng)目的難度系數(shù)不是很高,但也是相當(dāng)困難。
在校外實(shí)習(xí)之前,老師先在校內(nèi)培訓(xùn)了5天。5天實(shí)訓(xùn)中,著重講解了c#語(yǔ)言應(yīng)用,并布置編寫“通訊錄”工作臺(tái)程序,windows應(yīng)用程序和wpf程序,數(shù)據(jù)先是用文本保存,然后練習(xí)用數(shù)據(jù)庫(kù)保存,期間每天需上交當(dāng)日作業(yè)。5天的時(shí)間里,通過(guò)不斷地學(xué)習(xí),我從完全不懂c#語(yǔ)言成長(zhǎng)到初步掌握了這門語(yǔ)言,當(dāng)然在具體應(yīng)用中還是會(huì)遇到些問(wèn)題,但我還在學(xué)習(xí)。其實(shí)在實(shí)習(xí)的前一個(gè)月里,老師就上傳了一些關(guān)于c#語(yǔ)言的資料并通知我們需要配置哪些軟件環(huán)境,對(duì)于這一點(diǎn),我是相當(dāng)感謝何老師的,當(dāng)然在校外的實(shí)習(xí)里,公司也全都把開發(fā)項(xiàng)目用到的一系列軟件上傳到公共文件夾里,從而免去了我們下載軟件的麻煩,在此,感謝眾老師。
校內(nèi)實(shí)習(xí)要上交的作業(yè)我是在校外實(shí)習(xí)中補(bǔ)充完成的,因?yàn)橹吧辖坏淖鳂I(yè)由于時(shí)間倉(cāng)促大都有錯(cuò)誤,所以借著校外實(shí)習(xí)中對(duì)c#語(yǔ)言的進(jìn)一步應(yīng)用和講師的詳細(xì)講解后,我重新改正了錯(cuò)誤,希望何老師能諒解采納。
校外實(shí)習(xí)是從7月12號(hào)開始,歷時(shí)15天,15天的最后一天要回校評(píng)審。我對(duì)本次校外實(shí)習(xí)的各個(gè)方面都十分滿意。相比上次實(shí)習(xí),首先這里的住宿學(xué)習(xí)條件非常好,住宿和實(shí)習(xí)地都安裝了空調(diào),實(shí)習(xí)地方環(huán)境清幽寬敞明亮,伙食也非常好。然后就是實(shí)習(xí)講師非常專業(yè)和負(fù)責(zé),他事先把所有有關(guān)實(shí)習(xí)的資料軟件存放在公共文件夾,且規(guī)劃入微。一開始先是對(duì)我們進(jìn)行c#測(cè)試分好組安排好每組項(xiàng)目任務(wù),又指導(dǎo)我們每個(gè)小組安裝svn軟件,方便小組文件上傳與統(tǒng)一,整體一氣呵成,不似之前實(shí)習(xí)的凌亂,這一點(diǎn)我十分敬佩。之后每天都先安排好任務(wù)工作,認(rèn)真且非常詳細(xì)的給我們操作示范并細(xì)心地制作成word文檔供小組之后查看。每隔幾天都會(huì)有小組評(píng)審,主要針對(duì)小組所編文檔的規(guī)范程度和不足提出修改建議。作為小組的pm,我必須承認(rèn)一開始工作任務(wù)安排不當(dāng),沒(méi)有完全發(fā)揮各成員的優(yōu)勢(shì),以致文檔編寫的有些瑕疵,不過(guò)在小組評(píng)審過(guò)后,我便及時(shí)更改了項(xiàng)目工作的分工,而之后小組項(xiàng)目工作進(jìn)行的非常順利,每個(gè)人的能力都得到了最大的發(fā)揮和升華,當(dāng)然這完全得力于小組成員的高度配合。
我小組是c#軟件開發(fā)第一組,組內(nèi)有6名成員,兩個(gè)主要負(fù)責(zé)項(xiàng)目核心代碼的編寫,其余負(fù)責(zé)簡(jiǎn)單模塊代碼的編寫,我主要負(fù)責(zé)填寫與修改相關(guān)項(xiàng)目文檔并督促小組進(jìn)度和團(tuán)結(jié)組內(nèi)成員、合理分配組員任務(wù)并及時(shí)調(diào)節(jié)組內(nèi)安排的各種不適與問(wèn)題。校外實(shí)習(xí)的過(guò)程中,小組成員高度團(tuán)結(jié),協(xié)調(diào)合作,對(duì)所有問(wèn)題都能及時(shí)探討并高效解決,有時(shí)遇到分歧,不過(guò)在全體討論后,都能找到合理的統(tǒng)一方案,如在界面設(shè)計(jì)環(huán)節(jié)中,就登陸界面和模塊界面的設(shè)計(jì)中,組員有很多不同建議,在詢問(wèn)老師和權(quán)衡實(shí)現(xiàn)困難程度后,我們達(dá)成了一致意見,統(tǒng)一后的界面相比之前更加規(guī)整明晰,且功能更加健全,當(dāng)然這是我們小組齊心合力的結(jié)果。在開發(fā)的過(guò)程中,出現(xiàn)過(guò)項(xiàng)目分工不明確的問(wèn)題,其原因源于我考慮到組員能力的不同,所以就把大部分的工作安排給能力高的人身上,其他能力低的只暫讓他們自由學(xué)習(xí)希望能盡早跟上小組步伐,不過(guò)事實(shí)證明我錯(cuò)了。讓部分組員自由學(xué)習(xí)而不參與項(xiàng)目的工作中本身就拖累了小組的整體速度,而且在短暫的時(shí)間里,他們也實(shí)在學(xué)不到任何實(shí)際的東西,所以后來(lái)我更改了戰(zhàn)略。我先讓能力低的組員嘗試參照模板編寫一些文檔的簡(jiǎn)單部分,然后讓能力稍高點(diǎn)的組員繼續(xù)補(bǔ)充文檔的核心部分,最后由我修改格式和內(nèi)容,最后讓老師審閱。這個(gè)方案實(shí)施過(guò)后,小組的效率整體上明顯提高,每個(gè)人各司其職,全組團(tuán)結(jié)一致,共同為項(xiàng)目的完成發(fā)揮自己的聰明才智。而之后,在項(xiàng)目編碼階段,我們小組的tl負(fù)責(zé)對(duì)項(xiàng)目整個(gè)框架的構(gòu)建,即設(shè)計(jì)好主要的窗口原型,然后指導(dǎo)小組成員在自己所負(fù)責(zé)的模塊上添加具體事件代碼,最后再進(jìn)行修改,這樣做不僅將組員團(tuán)結(jié)在一起提高組內(nèi)效率,更直接提高了組員的編程能力。
需求分析階段和設(shè)計(jì)階段很快結(jié)束了,我們小組齊心協(xié)力按時(shí)完成了相關(guān)文檔的編寫,包括需求規(guī)約、實(shí)現(xiàn)規(guī)約、界面設(shè)計(jì)word圖形文檔、數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書、詳細(xì)設(shè)計(jì)說(shuō)明書和概要說(shuō)明書,在老師評(píng)審過(guò)后,發(fā)現(xiàn)問(wèn)題還是有很多,作為項(xiàng)目經(jīng)理的我本該對(duì)這些文檔進(jìn)行及時(shí)修改和更正,但由于時(shí)間倉(cāng)促且我們是第一組需第一個(gè)評(píng)審,所以就馬馬虎虎的拿未精確修改的文檔進(jìn)行審評(píng)了,老師著重對(duì)系統(tǒng)模塊圖和模塊功能描述那塊提出了些許建議,并讓演示了小組編寫的代碼程序,對(duì)其中錯(cuò)誤問(wèn)題提出了解決方案。之后進(jìn)行一番修改過(guò)后,我小組正式進(jìn)入了編碼階段,編碼只有短暫的3天,后兩天老師分小組評(píng)審并提出改進(jìn)意見,小組修正和改進(jìn)代碼結(jié)構(gòu)語(yǔ)句,完善項(xiàng)目要求,緊接著進(jìn)入測(cè)試階段,老師又著重介紹了一些測(cè)試工具方便小組測(cè)試,填寫并修改好測(cè)試文檔后,整個(gè)實(shí)習(xí)就將要進(jìn)入尾聲了。再回校進(jìn)行最后評(píng)審項(xiàng)目ppt和提交作業(yè)后,暑期實(shí)習(xí)就正式結(jié)束。
短短半個(gè)月的實(shí)習(xí)中,我深深的感受到自己在實(shí)際應(yīng)用中專業(yè)知識(shí)的匱乏和短時(shí)間學(xué)習(xí)掌握一門新知識(shí)和新技術(shù)的困難,這是我非常畏懼的兩大難題。就自身來(lái)說(shuō),我喜歡有所準(zhǔn)備,不喜歡臨陣磨槍,盡管之前對(duì)實(shí)習(xí)要求的知識(shí)技能有些了解,但到真正實(shí)施時(shí),還是不免有些不知所措,而之后能慢慢克服畏懼慌張并團(tuán)結(jié)小組成員按時(shí)且高效的完成作業(yè),這都得力于實(shí)習(xí)老師和組員對(duì)我的巨大幫助,在此,由衷感謝他們,也感謝我自己。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇七
對(duì)于一個(gè)軟件系統(tǒng)的開發(fā),第一步就是問(wèn)題定義,了解所開發(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ì)將要開發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來(lái)我們寫這類文檔的時(shí)候就是草草了事,不會(huì)做得這么詳細(xì),而這次看到大型項(xiàng)目的行業(yè)背景說(shuō)明也是這么詳細(xì),也讓自己認(rèn)識(shí)到不管是軟件開發(fā)的那個(gè)階段都要認(rèn)真對(duì)待,這些瑣碎的文檔都是后期開發(fā)項(xiàng)目的支撐,只要它們做的透徹,后面的開發(fā)工作才能更順利的進(jìn)行。
第二、項(xiàng)目需求說(shuō)明方面
這部分項(xiàng)目需求說(shuō)明就是軟件定義時(shí)期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據(jù)用戶的需要確定系統(tǒng)必須完成那些工作,并對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫出一份需求規(guī)格說(shuō)明,即為《物聯(lián)網(wǎng)物流倉(cāng)儲(chǔ)管理系統(tǒng)》項(xiàng)目需求說(shuō)明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項(xiàng)目時(shí)寫的需求規(guī)格說(shuō)明書就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來(lái)它不是很重要,寫文檔的時(shí)候也不知道怎么寫就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒(méi)有把自己項(xiàng)目的需求寫明白,以至于自己最后都有些糊涂,所以根據(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ì)具體畫出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)聚低耦合,這樣開發(fā)出來(lái)的系統(tǒng)才會(huì)具有更高的獨(dú)立性。
在原來(lái)做項(xiàng)目時(shí)沒(méi)有編寫過(guò)這類文檔,在該階段只是畫了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對(duì)該類文檔尚未重視。通過(guò)張老師的講解和自己的學(xué)習(xí),我相信在以后做項(xiàng)目的時(shí)候一定會(huì)注意到這類文檔的編寫。
第四、詳細(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ō)明,而不是編寫程序。在詳細(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í)期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對(duì)于編碼也要有相應(yīng)的文檔書寫規(guī)范,要使源程序代碼的邏輯簡(jiǎn)明清晰、易讀易懂。這樣盡管我們不是設(shè)計(jì)系統(tǒng)的人員,當(dāng)看到源程序代碼的時(shí)候也能容易讀懂代碼的意思。
其次就是測(cè)試的內(nèi)容,從測(cè)試的文檔中我們可以得出,其實(shí)測(cè)試在軟件開發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問(wèn)題并排除其中的潛藏的錯(cuò)誤,最終把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶使用。它要求測(cè)試人員也要有很高的技術(shù)水平。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇八
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。
第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。
第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒ā⑿问交椒ā?/p>
還引出了工具uml。
第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫分層的數(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è)試與開發(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)具有正確性、可用性以及開銷合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶可用的程度。
開銷合宜是指軟件開發(fā)、運(yùn)行的整個(gè)開銷滿足用戶要求的程度。
這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
軟件工程過(guò)程主要包括開發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。
它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。
需求活動(dòng)包括問(wèn)題分析和需求分析。
問(wèn)題分析獲取需求定義,又稱軟件需求規(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è)開發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。
維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。
伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。
它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇九
軟件工程心得體會(huì)未接觸軟件工程之前一直都很想學(xué)這門課程,因?yàn)橛X(jué)得這門課很牛,是那些有工程師稱號(hào)的高手才擺弄的東西。學(xué)了一個(gè)學(xué)期的軟件工程課,終于知道了個(gè)軟件工程的大概。學(xué)的時(shí)候總覺(jué)得很抽象,理解起來(lái)好像不難,但總是摸不著頭腦一種很茫然的感覺(jué)。曾經(jīng)以為程序就是軟件,軟件就是程序。學(xué)習(xí)這門課程第一個(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ì)開發(fā),以提高軟件質(zhì)量和程序員工作效率為目的的規(guī)范。其核心就是,對(duì)于軟件開發(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)論》這門課,我的收獲大概如下:我們?yōu)槭裁葱枰浖こ棠兀可厦嬉呀?jīng)給出了一些原因。專業(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ù)開發(fā)的軟件的規(guī)模,應(yīng)該適當(dāng)程度的運(yùn)用軟件工程化的思想,需要靈活,畢竟我們開發(fā)的軟件大多數(shù)是中小型的,大型的并不多見(我是這么認(rèn)為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩(wěn)定。
其實(shí)開發(fā)軟件,就像是解決一個(gè)邏輯問(wèn)題。想想自己平時(shí)是怎樣寫程序的。首先是要有一個(gè)想法,即我寫的這個(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í)候,最核心的就是文檔的編寫。
1、可行性分析就是關(guān)于當(dāng)前項(xiàng)目能不能干的分析結(jié)果。
2、項(xiàng)目描述這是在決定立項(xiàng)以后,對(duì)當(dāng)前項(xiàng)目的一份扼要說(shuō)明。
3、需求分析就是對(duì)客戶要求的功能的定義。
4、軟件設(shè)計(jì)這就是對(duì)程序的每一個(gè)模塊的詳細(xì)設(shè)計(jì)的說(shuō)明文檔。
5、開發(fā)日志我一直都認(rèn)為這是文檔中最有趣的部分。開發(fā)日志相當(dāng)于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時(shí)突然萌發(fā)的靈感,或?qū)Υa的一些微小的修改,或?qū)Τ绦蚪Y(jié)構(gòu)的一些微小變動(dòng)等,還要對(duì)上述這些修改變動(dòng)作些說(shuō)明。
6、測(cè)試分析用于指出程序存在或潛在的缺陷和錯(cuò)誤,以及程序性能的數(shù)字描述。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇十
學(xué)習(xí)了這門課程, 還有老師們的多元化教課,不但讓我從理論上掌握軟件工程,還有從不同的實(shí)例,讓理論和實(shí)踐得到了很好的結(jié)合。整一個(gè)學(xué)期下來(lái),總的來(lái)說(shuō)還是學(xué)到了很多東西的,有很多地方是值得肯定的,其實(shí)在我看來(lái),軟件工程與其說(shuō)是一門課程,不如說(shuō)是一門思想。是一個(gè)如何去分析和處理問(wèn)題的過(guò)程,應(yīng)該說(shuō)其范疇已經(jīng)遠(yuǎn)遠(yuǎn)不止局限于該門課程,成為了一個(gè)綜合的一個(gè)能夠解決問(wèn)題的思想集合。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則: 軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運(yùn)行的整個(gè)開銷滿足用戶要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱軟件需求規(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è)開發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。 軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開發(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),是能夠直觀地顯示輸入處理輸出三者之間的聯(lián)系。還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書、軟件設(shè)計(jì)說(shuō)明書、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(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é)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開發(fā)軟件的過(guò)程中,編寫代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開發(fā)計(jì)劃,軟件需求說(shuō)明書,概要設(shè)計(jì)說(shuō)明書,詳細(xì)設(shè)計(jì)說(shuō)明書,用戶操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開發(fā)進(jìn)度報(bào)告,項(xiàng)目開發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序讀不懂程序,維護(hù)又從何談起呢所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過(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é)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
專業(yè)軟件工程心得體會(huì)(模板12篇)篇十一
在本學(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)化分析方法,畫分層的數(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è)試與開發(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)具有正確性、可用性以及開銷合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶可用的程度。開銷合宜是指軟件開發(fā)、運(yùn)行的整個(gè)開銷滿足用戶要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱軟件需求規(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è)開發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿足用戶的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開發(fā)過(guò)程中必須遵循的原則。
程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n-s圖:一種符合結(jié)構(gòu)化程序設(shè)計(jì)原則的圖形描述工具,稱為盒圖,又稱為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),是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析。
說(shuō)明書。
軟件設(shè)計(jì)說(shuō)明書源程序做結(jié)構(gòu)檢查流程分析符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。
動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱為函數(shù)的定義域,輸出的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專業(yè)書籍細(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é)這一專業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開發(fā)軟件的過(guò)程中,編寫代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開發(fā)計(jì)劃,軟件需求說(shuō)明書,概要設(shè)計(jì)說(shuō)明書,詳細(xì)設(shè)計(jì)說(shuō)明書,用戶操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開發(fā)進(jìn)度報(bào)告,項(xiàng)目開發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開銷做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫程序的過(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é)變換的軟件開發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書、多思考、多練習(xí)、多討論,不斷熟悉書本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
共
2
頁(yè),當(dāng)前第。
2
頁(yè)
1
2
專業(yè)軟件工程心得體會(huì)(模板12篇)篇十二
曾經(jīng)看過(guò)一本書叫《道法自然》,內(nèi)容略記得一二,但我最欣賞的是它的.書名。軟件設(shè)計(jì)沒(méi)什么太神秘有東西,只要用心體會(huì),其實(shí)一切都很自然。軟件的設(shè)計(jì)之“道”,也不在于設(shè)計(jì)有多么的華麗、精巧,而在于其樸實(shí)、自然,最終達(dá)到“以無(wú)招勝有招”,進(jìn)入一個(gè)全新的境界。
一、軟件設(shè)計(jì)理論的層次。
以我的拙見,軟件設(shè)計(jì)領(lǐng)域中的各種概念,可以分為以下幾個(gè)層次來(lái)進(jìn)行理解:
1、軟件設(shè)計(jì)的目的:重用性、擴(kuò)展性。
這是最高的層次,是應(yīng)對(duì)軟件危機(jī)的需要。
2、設(shè)計(jì)原則:低耦合、高聚合。
各種軟件設(shè)計(jì)的原則,如依賴倒置原則、單一職則原則、面向接口等,以及各種設(shè)計(jì)模式,其根本的目的其實(shí)只是為了降低耦合這么簡(jiǎn)單。因?yàn)橹挥械婉詈喜拍芨玫倪m應(yīng)變化,更好的重用和擴(kuò)展。
3、實(shí)現(xiàn)方法:運(yùn)用設(shè)計(jì)模式封裝變化、降低耦合。
設(shè)計(jì)模式只是用來(lái)“封裝變化、降低耦合”的工具而已。它是面向?qū)ο笤O(shè)計(jì)時(shí)代的產(chǎn)物,其本質(zhì)就是充分運(yùn)用面向?qū)ο蟮娜齻€(gè)特性,即:封裝、繼承和多態(tài),進(jìn)行靈活的組合運(yùn)用。
二、關(guān)于耦合。
1、耦合的粒度。
耦合無(wú)論如何也是不可避免的。當(dāng)我們實(shí)現(xiàn)接口、繼承父類的時(shí)候,就會(huì)不可避免的產(chǎn)生耦合。耦合是有不同粒度的,我們解耦到什么粒度為止,我認(rèn)為應(yīng)以模塊的重用粒度為準(zhǔn)。盡量解除重用模塊或?qū)ο笾g的耦合。而重用模塊之內(nèi)的耦合,應(yīng)屬于聚合的范疇,所以不要盲目的去解耦,否則就陷入了誤區(qū)。
2、解耦的原理。
怎樣才能解耦呢,或者說(shuō)為什么各種設(shè)計(jì)模式能達(dá)到解耦的目的呢?我覺(jué)得有以下幾個(gè)思路:
(1)將具體的東西抽象處理。
(2)將分散的東西集中處理。
而面向?qū)ο笾械慕涌凇⒗^承正為我們提供了這樣的一種機(jī)制。通過(guò)訪問(wèn)接口或基類或抽象類,而不是具體的實(shí)現(xiàn)類,從而與具體的實(shí)現(xiàn)類達(dá)到了解耦的目的。我們還可以設(shè)計(jì)一些控制類,像潤(rùn)滑劑一樣,協(xié)調(diào)各實(shí)現(xiàn)類之間的訪問(wèn),也可以達(dá)到耦的目的。
事實(shí)上,各種設(shè)計(jì)模式的基本思想也就是這樣。創(chuàng)建型模式是為了解除創(chuàng)建對(duì)象時(shí)產(chǎn)生的耦合,實(shí)際上是解除對(duì)類稱名的依賴,而結(jié)構(gòu)型和行為型是為了解除對(duì)象屬性或方法的直接調(diào)用。不管什么設(shè)計(jì)模式,都是將對(duì)具體實(shí)現(xiàn)類的訪問(wèn)提升為對(duì)接口、基類或用于協(xié)調(diào)的控制類的訪問(wèn)。
三、關(guān)于接口。
這一節(jié)更具體,談一談接口,因?yàn)槭褂媒涌谑擒浖O(shè)計(jì)的重要手段,但已經(jīng)不屬于“道”了。
1、接口與繼承。
接口描述的是對(duì)象某一個(gè)方面行為特征。使用接口與使用繼承關(guān)系各有優(yōu)缺點(diǎn),使用子類繼承可以繼承父類的功能,體現(xiàn)了重用的精神。而接品更加靈活,因?yàn)樗獬俗宇惻c父類之間的高度耦合,它體現(xiàn)在靈活擴(kuò)展的精神。
2、接口與純虛類。
接口存在的理由就是它更加靈活,關(guān)系簡(jiǎn)單,易于理解。比如一個(gè)類可以實(shí)現(xiàn)十幾個(gè)甚至幾十個(gè)接口,但一般開發(fā)工具只支持單繼承(由于多繼承太容易導(dǎo)致混亂和沖突),如果要繼承十幾層,系統(tǒng)結(jié)構(gòu)想必會(huì)無(wú)法理解了,我以為這是接口存在的最重要的原因。
如果接口和虛類繼承結(jié)合使用,可以產(chǎn)生強(qiáng)大的威力,這也是許多設(shè)計(jì)模式的“殺手锏”。
以上算是總結(jié)一下自己的心得。肯定有不少片面之處,請(qǐng)各位指教。