體會(huì)是指將學(xué)習(xí)的東西運(yùn)用到實(shí)踐中去,通過(guò)實(shí)踐反思學(xué)習(xí)內(nèi)容并記錄下來(lái)的文字,近似于經(jīng)驗(yàn)總結(jié)。心得體會(huì)是我們對(duì)于所經(jīng)歷的事件、經(jīng)驗(yàn)和教訓(xùn)的總結(jié)和反思。那么下面我就給大家講一講心得體會(huì)怎么寫(xiě)才比較好,我們一起來(lái)看一看吧。
軟件工程的心得體會(huì)篇一
隨著科技的不斷發(fā)展,信息化已經(jīng)成為了現(xiàn)代社會(huì)中不可或缺的一部分。而軟件工程作為信息化的核心技術(shù)之一,對(duì)于現(xiàn)代社會(huì)的發(fā)展和進(jìn)步起到了至關(guān)重要的作用。在軟件工程的開(kāi)發(fā)過(guò)程中,需求是其基礎(chǔ)和核心,合理、準(zhǔn)確的需求分析和需求管理對(duì)于軟件項(xiàng)目的成功與否至關(guān)重要。以下是我在軟件工程需求方面的一些心得體會(huì)。
首先,需求的準(zhǔn)確性是軟件項(xiàng)目成功的關(guān)鍵。在軟件工程開(kāi)發(fā)過(guò)程中,需求的準(zhǔn)確性對(duì)于軟件項(xiàng)目的整體規(guī)劃和功能設(shè)計(jì)起著決定性的作用。在需求分析階段,我們需要盡可能了解客戶(hù)的需求,并將其準(zhǔn)確地轉(zhuǎn)化為功能要求和開(kāi)發(fā)目標(biāo)。在此過(guò)程中,我們應(yīng)該盡可能與客戶(hù)多進(jìn)行交流,采用各種溝通方式,以確保需求的準(zhǔn)確性。此外,我們還應(yīng)該運(yùn)用各種技術(shù)手段和工具,例如原型設(shè)計(jì)、用例分析等,提高需求的準(zhǔn)確性和可靠性。
其次,需求的變更是常態(tài)。在軟件工程的開(kāi)發(fā)過(guò)程中,需求經(jīng)常會(huì)因各種原因而發(fā)生變化。這是不可避免的,在軟件項(xiàng)目中,客戶(hù)需求經(jīng)常在項(xiàng)目的不同階段發(fā)生調(diào)整和變更。所以,我們應(yīng)該保持靈活性和適應(yīng)性,以應(yīng)對(duì)這種變化。在需求管理方面,我們可以采用迭代開(kāi)發(fā)的方式,將需求分成多個(gè)階段,每個(gè)階段都允許變更。另外,我們還可以采用變更控制和配置管理手段,確保變更的追蹤和管理,以避免變更對(duì)項(xiàng)目進(jìn)度和質(zhì)量的不利影響。
再次,團(tuán)隊(duì)的合作是實(shí)現(xiàn)需求成功的關(guān)鍵。軟件工程的需求管理不是一個(gè)人的事情,而是一個(gè)團(tuán)隊(duì)的協(xié)作過(guò)程。在項(xiàng)目的需求分析和需求管理過(guò)程中,我們需要協(xié)作完成各種工作任務(wù),例如需求的收集、需求的分析、需求的驗(yàn)證等等。在此過(guò)程中,每個(gè)團(tuán)隊(duì)成員都需要發(fā)揮自己的專(zhuān)業(yè)知識(shí)和經(jīng)驗(yàn),充分傾聽(tīng)他人的意見(jiàn)和建議,共同協(xié)商確定需求方案,以達(dá)到最佳效果。此外,團(tuán)隊(duì)的溝通和協(xié)調(diào)也是十分重要的,團(tuán)隊(duì)成員之間要積極互相配合,及時(shí)解決問(wèn)題和分配任務(wù),以確保需求的順利實(shí)施和項(xiàng)目的成功完成。
最后,在軟件工程的需求管理中,用戶(hù)參與是至關(guān)重要的。雖然我們?cè)谛枨蠓治鲭A段盡可能詳盡地了解用戶(hù)的需求,但真正的用戶(hù)體驗(yàn)和滿(mǎn)意感需要用戶(hù)參與來(lái)驗(yàn)證和確認(rèn)。用戶(hù)的參與可以通過(guò)各種途徑實(shí)現(xiàn),例如用戶(hù)需求調(diào)研、用戶(hù)反饋收集、用戶(hù)測(cè)試、用戶(hù)培訓(xùn)等等。通過(guò)用戶(hù)的參與,我們可以更加準(zhǔn)確地了解用戶(hù)的需求和期望,及時(shí)修正和調(diào)整需求方案,從而將軟件工程的開(kāi)發(fā)結(jié)果更好地貼近用戶(hù)的需求和期望,提高軟件的質(zhì)量和可用性。
總之,軟件工程的需求管理是保證軟件項(xiàng)目成功的關(guān)鍵一環(huán)。在軟件工程的需求管理過(guò)程中,我們需要關(guān)注需求的準(zhǔn)確性、變更管理、團(tuán)隊(duì)的合作以及用戶(hù)的參與。只有通過(guò)科學(xué)的方法和良好的管理,才能最大限度地滿(mǎn)足用戶(hù)的需求,推動(dòng)軟件工程的快速發(fā)展和進(jìn)步。
軟件工程的心得體會(huì)篇二
軟件工程及未來(lái)發(fā)展趨勢(shì)心得體會(huì)軟件工程是一門(mén)研究用工程方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。它的成果是為軟件設(shè)計(jì)和開(kāi)發(fā)人員提供思想方法和工具。
商業(yè)形態(tài)從最開(kāi)始的硬件輔助到代碼核心競(jìng)爭(zhēng)力到后來(lái)的服務(wù)階段。30多年來(lái),隨著軟件工程的研究和實(shí)踐取得了跨越性的進(jìn)步,it和制造業(yè)以及各種行業(yè)的結(jié)合,進(jìn)入軟件定義時(shí)代的階段。同時(shí)獲得了一些具有里程碑意義的進(jìn)展,盡管目前離徹底解決“軟件危機(jī)”還有一些差距,但軟件工程的方法對(duì)軟件產(chǎn)業(yè)的發(fā)展還是起到了很大的推動(dòng)作用。軟件產(chǎn)業(yè)也邁入了高質(zhì)量發(fā)展的階段,并且有一定的成績(jī)。
20xx年中國(guó)軟件產(chǎn)業(yè)年會(huì)的召開(kāi)以“軟件定義的時(shí)代-數(shù)字、融合與生態(tài)”為主題,中國(guó)工程院院士孫家廣在主旨演講中表示,“軟件是信息技術(shù)之魂,經(jīng)濟(jì)轉(zhuǎn)型之擎、網(wǎng)絡(luò)安全之盾、數(shù)字社會(huì)之基、大國(guó)博弈之焦、高質(zhì)量發(fā)展的抓手,軟件賦能、賦值、賦智作用日益明顯?!彼硎?,軟件開(kāi)源是我國(guó)成為軟件強(qiáng)國(guó)的根本舉措和保障。中國(guó)工程院院士廖湘科也在報(bào)告中提出,工業(yè)軟件要向建設(shè)信息技術(shù)和先進(jìn)制造技術(shù)深度融合、控制管理整個(gè)生產(chǎn)模式的基礎(chǔ)軟件平臺(tái)發(fā)展。在真實(shí)世界感知的數(shù)據(jù)進(jìn)入到虛擬世界,進(jìn)行關(guān)聯(lián)和跨域關(guān)聯(lián)的分析,在進(jìn)行智能處理之后,再反饋到真實(shí)世界。運(yùn)行平臺(tái)基于云端的硬件結(jié)構(gòu),在未來(lái)設(shè)計(jì)軟件的過(guò)程中,我們要考慮的是不再針對(duì)一臺(tái)服務(wù)器設(shè)計(jì)軟件,在設(shè)計(jì)的時(shí)候需要考慮云端,在這樣的前提下去設(shè)計(jì)軟件??偟膩?lái)說(shuō),整個(gè)軟件體系就是一個(gè)生態(tài)鏈,市場(chǎng)通過(guò)軟件平臺(tái)來(lái)控制,所有的技術(shù)和商業(yè)模式的競(jìng)爭(zhēng)都堆積在it軟件平臺(tái),各個(gè)行業(yè)的it從業(yè)人員可以協(xié)同,硬件追求越來(lái)越快,軟件追求規(guī)模。生態(tài)鏈需要協(xié)同創(chuàng)新,學(xué)科交叉。軟件是靈魂的載體,它具體應(yīng)用在知識(shí)領(lǐng)域在生活智能方面的應(yīng)用。東軟集團(tuán)股份有限公司董事長(zhǎng)兼ceo劉積仁作題為“軟件的賦能時(shí)代”,表明,企業(yè)也是軟件的載體。軟件在今后具有無(wú)限的發(fā)展空間,我們應(yīng)該為從事這個(gè)行業(yè)而感到幸運(yùn)。軟件在今后的發(fā)展中不僅僅表現(xiàn)的是licenseip的價(jià)值,軟件可以承載一個(gè)嶄新的創(chuàng)業(yè)的公司創(chuàng)造資本市場(chǎng)的奇跡。核心就是軟件表達(dá)的方式從我們單純賣(mài)解決方案、賣(mài)服務(wù),軟件從我們過(guò)去依賴(lài)于軟件工程師,最后我們要成為在新經(jīng)濟(jì)的發(fā)展、新消費(fèi)發(fā)展的一個(gè)新的平臺(tái)。
信息革命的核心體現(xiàn)在,集成電路是細(xì)胞,通訊網(wǎng)絡(luò)是動(dòng)脈,計(jì)算機(jī)工具是大腦,信息資源是血漿,應(yīng)用需求是心臟,安全是免疫系統(tǒng),軟件是靈魂。軟件產(chǎn)業(yè)是第一大產(chǎn)業(yè),面向?qū)ο笫擒浖夹g(shù)的基本指導(dǎo)思想,它的發(fā)展過(guò)程從最初的個(gè)人技巧,到結(jié)構(gòu)化,再到最終的面向?qū)ο螅采w范圍也發(fā)展到運(yùn)行技術(shù)、工具技術(shù)、到過(guò)程技術(shù)。軟件理論方法技術(shù)應(yīng)用于x應(yīng)用場(chǎng)景。應(yīng)用場(chǎng)景的'構(gòu)建主要是體現(xiàn)在,可感知+可編程+可計(jì)算+可調(diào)控等方面。軟件很大程度上改變了我們的生產(chǎn)生活方式,在現(xiàn)在社會(huì)中,對(duì)于軟件的開(kāi)發(fā),我們不在只是單純的系統(tǒng)開(kāi)發(fā),文檔手冊(cè),還要考慮到所處的環(huán)境以及大數(shù)據(jù),智能算法等多方面的綜合考量。
軟件同時(shí)也在驅(qū)動(dòng)著世界經(jīng)濟(jì)的變革。在世界經(jīng)濟(jì)全球化發(fā)展的趨勢(shì)下,軟件行業(yè)也在向全球化發(fā)展,在今天,軟件的開(kāi)發(fā)也不再是一個(gè)國(guó)家或者一個(gè)行業(yè)自身的發(fā)展而是整個(gè)社會(huì)的發(fā)展趨勢(shì)。當(dāng)前軟件行業(yè)無(wú)論國(guó)內(nèi)還是國(guó)際上整體處于手工作坊式階段,以項(xiàng)目組或產(chǎn)品組為單位組織開(kāi)發(fā)人員,圍繞一個(gè)項(xiàng)目或者一個(gè)產(chǎn)品的某一迭代版本進(jìn)行收工作業(yè)。其服務(wù)模式始終停留在并行開(kāi)發(fā)多個(gè)無(wú)關(guān)的小型項(xiàng)目。對(duì)于這樣的情況,單單只是依靠某個(gè)國(guó)家自身的實(shí)力是很難實(shí)現(xiàn)軟件技術(shù)全面提升的。微觀層面來(lái)看,光學(xué)相機(jī)被數(shù)碼相機(jī)取代,移動(dòng)磁盤(pán)、光盤(pán)基本上被u盤(pán)取代。智能手機(jī)的出現(xiàn)也帶來(lái)了it產(chǎn)業(yè)格局的重塑。it產(chǎn)業(yè)巨變的核心動(dòng)力是用戶(hù)群體的快速增加以及it擴(kuò)散的范圍迅速。繼智能手機(jī)、平板電腦被軟件重新定義后,其他it產(chǎn)品也在不斷被軟件重新定義,增加一個(gè)操作系統(tǒng)之后,物理功能被無(wú)限的簡(jiǎn)化,功能被無(wú)限的拓展,不斷地豐富。整個(gè)經(jīng)濟(jì)社會(huì)加快在網(wǎng)絡(luò)空間的映射,形成現(xiàn)實(shí)與網(wǎng)絡(luò)交融的數(shù)字世界。信息物理系統(tǒng)(cps)實(shí)現(xiàn)大型工程系統(tǒng)的實(shí)時(shí)感知、動(dòng)態(tài)控制和信息服務(wù)。
數(shù)據(jù)表征、智能處理、軟件定義,三元融合將打造一個(gè)全新的世界。大數(shù)據(jù)在消費(fèi)it領(lǐng)域的作用更加明顯,只要用pc上網(wǎng)或者手機(jī)瀏覽信息,性別、年齡、愛(ài)好、蹤跡等等便被大數(shù)據(jù)刻畫(huà),從而根據(jù)現(xiàn)有信息推斷出你可能要做的事??偟膩?lái)說(shuō),大數(shù)據(jù)不僅是傳統(tǒng)產(chǎn)業(yè)升級(jí)的助推器,同時(shí)也是新興產(chǎn)業(yè)的催化劑。軟件的定位已經(jīng)從服務(wù)軟件發(fā)展到定義硬件,也許在不久的將來(lái),軟件不僅僅是改變世界,而是重新定義我們已知的世界,正如大數(shù)據(jù)的出現(xiàn),或許不久的將來(lái),產(chǎn)品經(jīng)銷(xiāo)商會(huì)比我們更了解自己的需求。
隨著軟件市場(chǎng)的競(jìng)爭(zhēng)壓力越來(lái)越大,我們所面臨的it環(huán)境更為復(fù)雜化,為了應(yīng)對(duì)來(lái)自各方面的挑戰(zhàn)問(wèn)題,我們需要更多的創(chuàng)新能力和業(yè)務(wù)靈活性。提高模塊化思想,從根本上解決所面臨的問(wèn)題。
軟件工程的心得體會(huì)篇三
隨著信息技術(shù)的快速發(fā)展,軟件工程在各個(gè)行業(yè)中起到了不可忽視的作用。作為軟件工程師,理解和滿(mǎn)足用戶(hù)需求是我們工作的核心。在長(zhǎng)期的軟件工程需求分析實(shí)踐中,我深深感受到了需求分析的重要性和挑戰(zhàn)。下面,我將從需求分析的重要性、需求分析的方法和技巧、需求變更的管理、和用戶(hù)需求的理解四個(gè)方面來(lái)談一下我對(duì)軟件工程需求的心得體會(huì)。
首先,需求分析的重要性不可忽視。軟件開(kāi)發(fā)的成功與否往往取決于是否準(zhǔn)確理解并滿(mǎn)足用戶(hù)的實(shí)際需求。需求分析過(guò)程中,我們要深入了解用戶(hù)的業(yè)務(wù)流程、工作環(huán)境和使用習(xí)慣,從而充分理解用戶(hù)需求。只有在需求分析過(guò)程中對(duì)用戶(hù)需求進(jìn)行準(zhǔn)確描述和分析,才能避免開(kāi)發(fā)過(guò)程中的返工和需求的不匹配,從而提高軟件開(kāi)發(fā)的效率和質(zhì)量。
其次,需求分析的方法和技巧十分重要。在需求分析過(guò)程中,我們可以運(yùn)用需求采集、需求建模、需求驗(yàn)證等方法和技巧,以確保我們完整、準(zhǔn)確地捕獲用戶(hù)需求。需求采集通過(guò)面對(duì)面的用戶(hù)訪談、問(wèn)卷調(diào)查、需求工作坊等方式,可以深入了解用戶(hù)需求。需求建模通過(guò)使用UML(統(tǒng)一建模語(yǔ)言)或其他建模工具,能夠?qū)τ脩?hù)需求進(jìn)行形式化的描述和分析。需求驗(yàn)證通過(guò)原型開(kāi)發(fā)、功能測(cè)試等方式,可以驗(yàn)證需求的正確性和完整性。通過(guò)合理運(yùn)用這些方法和技巧,我們可以更好地進(jìn)行需求分析,為軟件開(kāi)發(fā)提供準(zhǔn)確的需求基礎(chǔ)。
此外,需求變更的管理是軟件工程需求分析的一項(xiàng)重要任務(wù)。在軟件開(kāi)發(fā)的過(guò)程中,用戶(hù)的需求是可能發(fā)生變化的。因此,我們需要及時(shí)處理和管理需求變更。在需求變更管理中,我們要與用戶(hù)進(jìn)行充分的溝通,了解變更的原因和影響,并對(duì)變更進(jìn)行評(píng)估和管理。合理處理需求變更可以減少不必要的返工和開(kāi)發(fā)延期,同時(shí)也能保持軟件的持續(xù)演化能力。
最后,理解用戶(hù)需求是軟件工程需求分析的核心。在軟件開(kāi)發(fā)中,我們要關(guān)注用戶(hù)的真實(shí)需求,而不僅僅是用戶(hù)的表面需求。有時(shí)用戶(hù)可能難以準(zhǔn)確表達(dá)自己的需求,我們需要通過(guò)深入的觀察和溝通,去理解用戶(hù)背后的真正需求。只有準(zhǔn)確理解用戶(hù)需求,我們才能開(kāi)發(fā)出滿(mǎn)足用戶(hù)期望的軟件產(chǎn)品。
總之,軟件工程需求分析是軟件開(kāi)發(fā)中不可或缺的環(huán)節(jié)。在需求分析過(guò)程中,我意識(shí)到需求分析的重要性,學(xué)習(xí)并應(yīng)用了各種需求分析的方法和技巧,掌握了需求變更的管理方法,并培養(yǎng)了對(duì)用戶(hù)需求的敏感性。通過(guò)不斷地實(shí)踐和總結(jié),我相信自己將能夠在軟件工程領(lǐng)域取得更大的成就。
軟件工程的心得體會(huì)篇四
對(duì)于一個(gè)軟件系統(tǒng)的開(kāi)發(fā),第一步就是問(wèn)題定義,了解所開(kāi)發(fā)系統(tǒng)的行業(yè)背景,制定計(jì)劃。當(dāng)我們計(jì)劃確定以后就要對(duì)項(xiàng)目系統(tǒng)本身進(jìn)行可行性研究,主要從技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性三個(gè)方面著手。就比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的行業(yè)背景說(shuō)明文檔中非常詳細(xì)地分析了當(dāng)下物聯(lián)網(wǎng)物流行業(yè)的整體業(yè)務(wù)說(shuō)明、應(yīng)用背景、未來(lái)發(fā)展趨勢(shì)以及相關(guān)應(yīng)用案例等四個(gè)方面,項(xiàng)目團(tuán)隊(duì)中系統(tǒng)分析員就可以根據(jù)這份文檔以及相關(guān)的調(diào)查資料對(duì)將要開(kāi)發(fā)系統(tǒng)的進(jìn)行定義等工作。
原來(lái)我們寫(xiě)這類(lèi)文檔的時(shí)候就是草草了事,不會(huì)做得這么詳細(xì),而這次看到大型項(xiàng)目的行業(yè)背景說(shuō)明也是這么詳細(xì),也讓自己認(rèn)識(shí)到不管是軟件開(kāi)發(fā)的那個(gè)階段都要認(rèn)真對(duì)待,這些瑣碎的文檔都是后期開(kāi)發(fā)項(xiàng)目的支撐,只要它們做的透徹,后面的開(kāi)發(fā)工作才能更順利的進(jìn)行。
第二、項(xiàng)目需求說(shuō)明方面
這部分項(xiàng)目需求說(shuō)明就是軟件定義時(shí)期中需求分析階段,而該階段的主要目的就是了解用戶(hù)的需要,根據(jù)用戶(hù)的需要確定系統(tǒng)必須完成那些工作,并對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析結(jié)束之前系統(tǒng)分析人員要寫(xiě)出一份需求規(guī)格說(shuō)明,即為《物聯(lián)網(wǎng)物流倉(cāng)儲(chǔ)管理系統(tǒng)》項(xiàng)目需求說(shuō)明文檔。我們可以看出該文檔也是非常詳細(xì),相比之下我們之前做項(xiàng)目時(shí)寫(xiě)的需求規(guī)格說(shuō)明書(shū)就非常不合格,不僅格式不正確內(nèi)容也是少之又少。
在這方面,這篇文檔給我啟發(fā)很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內(nèi)容,原來(lái)它不是很重要,寫(xiě)文檔的時(shí)候也不知道怎么寫(xiě)就借鑒下網(wǎng)上的內(nèi)容,結(jié)果根本就沒(méi)有把自己項(xiàng)目的需求寫(xiě)明白,以至于自己最后都有些糊涂,所以根據(jù)以前的經(jīng)驗(yàn)教訓(xùn)我會(huì)對(duì)這部分更加重視。
第三、系統(tǒng)概要設(shè)計(jì)方面
這部分內(nèi)容分說(shuō)的是軟件設(shè)計(jì)時(shí)期的概要設(shè)計(jì)階段,該階段的主要目的就是實(shí)現(xiàn)系統(tǒng)的功能、設(shè)計(jì)軟件的結(jié)構(gòu)、模塊組成以及模塊之間的關(guān)系。在概要設(shè)計(jì)階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對(duì)比多種可能的系統(tǒng)實(shí)現(xiàn)方案和軟件結(jié)構(gòu),從中選出最佳方案和最合理的結(jié)構(gòu)。在這個(gè)階段還會(huì)具體畫(huà)出e-r圖、數(shù)據(jù)流圖等方面的設(shè)計(jì)。
比如《物聯(lián)網(wǎng)物流倉(cāng)庫(kù)管理系統(tǒng)》的系統(tǒng)概要設(shè)計(jì)從項(xiàng)目概述、設(shè)計(jì)約束、功能單元與功能模塊設(shè)計(jì)、數(shù)據(jù)e-r圖設(shè)計(jì)、總體設(shè)計(jì)、界面設(shè)計(jì)等六個(gè)方面介紹,通過(guò)讀這個(gè)文檔,我覺(jué)得最重要的還是總體設(shè)計(jì),分別從邏輯架構(gòu)設(shè)計(jì)、物理架構(gòu)設(shè)計(jì)、技術(shù)架構(gòu)設(shè)計(jì)設(shè)計(jì)系統(tǒng)。在這個(gè)階段中模塊要做到高內(nèi)聚低耦合,這樣開(kāi)發(fā)出來(lái)的系統(tǒng)才會(huì)具有更高的獨(dú)立性。
在原來(lái)做項(xiàng)目時(shí)沒(méi)有編寫(xiě)過(guò)這類(lèi)文檔,在該階段只是畫(huà)了結(jié)構(gòu)圖、層次圖以及相關(guān)的模塊劃分,對(duì)該類(lèi)文檔尚未重視。通過(guò)張老師的講解和自己的學(xué)習(xí),我相信在以后做項(xiàng)目的時(shí)候一定會(huì)注意到這類(lèi)文檔的編寫(xiě)。
第四、詳細(xì)設(shè)計(jì)與分析方面
詳細(xì)設(shè)計(jì)階段就是把概要設(shè)計(jì)階段的每個(gè)模塊進(jìn)一步設(shè)計(jì),確定每個(gè)模塊所需要的算法和數(shù)據(jù)結(jié)構(gòu)。在這個(gè)階段還是需要我們?cè)O(shè)計(jì)出程序的詳細(xì)規(guī)格說(shuō)明,而不是編寫(xiě)程序。在詳細(xì)設(shè)計(jì)階段,系統(tǒng)設(shè)計(jì)人員可以通過(guò)使用程序流程圖、盒圖、pad圖等過(guò)程設(shè)計(jì)的工具和jackson圖等面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)工具進(jìn)一步設(shè)計(jì)系統(tǒng)相關(guān)接口,主要包括界面設(shè)計(jì)接口、業(yè)務(wù)單設(shè)計(jì)接口、單元模塊設(shè)計(jì)接口等,這些對(duì)于以后的編碼工作都是極其重要的。
第五、編碼和測(cè)試方案方面
關(guān)于編碼,我認(rèn)為編碼要想做的完美必備條件就是前面的軟件定義和軟件設(shè)計(jì)時(shí)期要按部就班的做,文檔一定要按要求書(shū)寫(xiě),不能偷懶也不能草草書(shū)寫(xiě)。對(duì)于編碼也要有相應(yīng)的文檔書(shū)寫(xiě)規(guī)范,要使源程序代碼的邏輯簡(jiǎn)明清晰、易讀易懂。這樣盡管我們不是設(shè)計(jì)系統(tǒng)的人員,當(dāng)看到源程序代碼的時(shí)候也能容易讀懂代碼的意思。
其次就是測(cè)試的內(nèi)容,從測(cè)試的文檔中我們可以得出,其實(shí)測(cè)試在軟件開(kāi)發(fā)中同樣占據(jù)了重要的地位,它主要就是盡可能多的找到問(wèn)題并排除其中的潛藏的錯(cuò)誤,最終把一個(gè)高質(zhì)量的軟件系統(tǒng)交給用戶(hù)使用。它要求測(cè)試人員也要有很高的技術(shù)水平。
軟件工程的心得體會(huì)篇五
在本學(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)化分析方法,畫(huà)分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點(diǎn)。
第四章結(jié)構(gòu)化分析方法,這一章重點(diǎn)講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。
第五章編碼,這一章重點(diǎn)講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說(shuō)帶來(lái)的好處,并告誡我們將來(lái)一點(diǎn)要形成好的編碼風(fēng)格。
第六章軟件測(cè)試方法,本章講解了軟件測(cè)試相關(guān)的概念及重要性,軟件測(cè)試與開(kāi)發(fā)各個(gè)階段的關(guān)系;還介紹了白盒測(cè)試技術(shù)以及黑河測(cè)試技術(shù)。
第七章統(tǒng)一建模語(yǔ)言u(píng)ml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時(shí)用到的各種圖進(jìn)行了介紹。
第八章面向?qū)ο蠓治?,這一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動(dòng)態(tài)模型。
第九章軟件體系結(jié)構(gòu)與設(shè)計(jì)模式,本章對(duì)軟件體系結(jié)構(gòu)的'基本概念、典型風(fēng)格等進(jìn)行了講解。
第十章面向?qū)ο笤O(shè)計(jì),本章的重點(diǎn)是對(duì)面向?qū)ο蠓治鰰r(shí)建立的對(duì)象模型進(jìn)行調(diào)整和細(xì)化。
第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動(dòng)以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。
正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度。
可用性指軟件基本結(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。
開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。
這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。
軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。
它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。
需求活動(dòng)包括問(wèn)題分析和需求分析。
問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。
需求分析生成功能規(guī)約。
設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。
概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。
詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。
實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。
確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。
維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。
伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。
包括程序流程圖、n-s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱(chēng)之為程序框圖,它是軟件開(kāi)發(fā)者最熟悉的一種算法表達(dá)工具。
它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。
軟件工程的心得體會(huì)篇六
作為軟件工程師,我一直對(duì)自己在軟件開(kāi)發(fā)領(lǐng)域的發(fā)展感到自豪。近年來(lái),我一直致力于提高自己的技能,并在實(shí)踐中不斷探索和學(xué)習(xí)。在這個(gè)過(guò)程中,我收獲了許多寶貴的經(jīng)驗(yàn)和體會(huì),讓我更好地理解了軟件工程師的角色和職責(zé),特別是在團(tuán)隊(duì)合作方面的重要性。
第二段:個(gè)人成長(zhǎng)。
我的軟件開(kāi)發(fā)之路始于大學(xué)時(shí)期學(xué)習(xí)編程語(yǔ)言,并在一家創(chuàng)業(yè)公司中獲得了第一份實(shí)習(xí)工作。在這一階段,我經(jīng)歷了許多挑戰(zhàn)和學(xué)習(xí)機(jī)會(huì),計(jì)劃和設(shè)計(jì)軟件解決方案成為我的長(zhǎng)項(xiàng)。在后來(lái)的工作中,我不斷提高自己的團(tuán)隊(duì)合作技能,學(xué)會(huì)協(xié)調(diào)和溝通,特別是在多功能項(xiàng)目中尤為重要。
第三段:貢獻(xiàn)團(tuán)隊(duì)。
作為軟件工程師,我有責(zé)任在團(tuán)隊(duì)中發(fā)揮重要作用,同時(shí)也需要學(xué)會(huì)尊重其他專(zhuān)業(yè)人員的意見(jiàn)和建議。我的目標(biāo)是成為一名優(yōu)秀的團(tuán)隊(duì)成員,通過(guò)協(xié)作和討論尋求最優(yōu)解決方案。在項(xiàng)目中,我總是盡力爭(zhēng)取更高的質(zhì)量和效率,發(fā)現(xiàn)和解決問(wèn)題,對(duì)團(tuán)隊(duì)的發(fā)展做出貢獻(xiàn)。
第四段:重視學(xué)習(xí)。
隨著軟件技術(shù)的不斷發(fā)展,我們必須與時(shí)俱進(jìn),不斷學(xué)習(xí)新知識(shí)和技能。我經(jīng)常參加工作坊、研討會(huì)等活動(dòng),與同行交流經(jīng)驗(yàn),并積極閱讀相關(guān)書(shū)籍和文章。通過(guò)不斷學(xué)習(xí),我擴(kuò)大了自己的技能和知識(shí)范圍,更好地服務(wù)于團(tuán)隊(duì)和客戶(hù)。
第五段:結(jié)語(yǔ)。
軟件工程師的工作需要我們具備多種技能和素養(yǎng),而不僅僅是編程。我們需要協(xié)作,溝通和解決問(wèn)題能力,同時(shí)也需要開(kāi)放心態(tài)和持續(xù)學(xué)習(xí)的意愿。我相信通過(guò)不斷的積累經(jīng)驗(yàn)和體會(huì),我們將不斷提高自身能力,為軟件行業(yè)的發(fā)展做出更大的貢獻(xiàn)。
軟件工程的心得體會(huì)篇七
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒?、形式化方法。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫(huà)分層的數(shù)據(jù)流圖、e-r圖以及狀態(tài)圖式本節(jié)的重點(diǎn)。第四章結(jié)構(gòu)化分析方法,這一章重點(diǎn)講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點(diǎn)講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說(shuō)帶來(lái)的好處,并告誡我們將來(lái)一點(diǎn)要形成好的編碼風(fēng)格。第六章軟件測(cè)試方法,本章講解了軟件測(cè)試相關(guān)的概念及重要性,軟件測(cè)試與開(kāi)發(fā)各個(gè)階段的關(guān)系;還介紹了白盒測(cè)試技術(shù)以及黑河測(cè)試技術(shù)。第七章統(tǒng)一建模語(yǔ)言u(píng)ml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時(shí)用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治觯@一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動(dòng)態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計(jì)模式,本章對(duì)軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計(jì),本章的重點(diǎn)是對(duì)面向?qū)ο蠓治鰰r(shí)建立的對(duì)象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動(dòng)以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度??捎眯灾杠浖窘Y(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
程序流程圖:程序流程圖又稱(chēng)之為程序框圖,它是軟件開(kāi)發(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ì)原則的圖形描述工具,稱(chēng)為盒圖,又稱(chēng)為n-s圖。在n-s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析。
說(shuō)明書(shū)。
軟件設(shè)計(jì)說(shuō)明書(shū)源程序做結(jié)構(gòu)檢查流程分析符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。
動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。
共
2
頁(yè),當(dāng)前第。
2
頁(yè)
1
2
軟件工程的心得體會(huì)篇八
在本學(xué)期的軟件工程課程的學(xué)習(xí)中,我們學(xué)習(xí)了十一章的內(nèi)容。第一章軟件與軟件工程的概念,這一章主要講解的是一些概念性和基礎(chǔ)性的內(nèi)容,例如軟件的概念、特性,軟件危機(jī)的主要表現(xiàn),軟件工程的概念以及軟件生存期、典型生存期模型等等。第二章軟件工程方法與工具,這一章主要對(duì)軟件工程方法進(jìn)行介紹,包括三種方法:傳統(tǒng)方法、面向?qū)ο蠓椒ā⑿问交椒?。還引出了工具uml。第三章軟件需求獲取與結(jié)構(gòu)化分析方法,本章詳細(xì)介紹了需求獲取與需求分析階段的任務(wù)以及結(jié)構(gòu)化分析方法,畫(huà)分層的數(shù)據(jù)流圖、e—r圖以及狀態(tài)圖式本節(jié)的重點(diǎn)。第四章結(jié)構(gòu)化分析方法,這一章重點(diǎn)講解了使用變換型映射方法和事務(wù)型映射方法生成初始的模塊結(jié)構(gòu)以及模塊結(jié)構(gòu)的改進(jìn)。第五章編碼,這一章重點(diǎn)講解了編碼的風(fēng)格及規(guī)范,還告訴我們編碼規(guī)范說(shuō)帶來(lái)的好處,并告誡我們將來(lái)一點(diǎn)要形成好的編碼風(fēng)格。第六章軟件測(cè)試方法,本章講解了軟件測(cè)試相關(guān)的概念及重要性,軟件測(cè)試與開(kāi)發(fā)各個(gè)階段的關(guān)系;還介紹了白盒測(cè)試技術(shù)以及黑河測(cè)試技術(shù)。第七章統(tǒng)一建模語(yǔ)言u(píng)ml概述,本章詳細(xì)介紹了uml的基本模式、事物、關(guān)系及建模時(shí)用到的各種圖進(jìn)行了介紹。第八章面向?qū)ο蠓治觯@一章主要講解了面向?qū)ο蠓治龅?種模型,包括功能模型、靜態(tài)模型和動(dòng)態(tài)模型。第九章軟件體系結(jié)構(gòu)與設(shè)計(jì)模式,本章對(duì)軟件體系結(jié)構(gòu)的基本概念、典型風(fēng)格等進(jìn)行了講解。第十章面向?qū)ο笤O(shè)計(jì),本章的重點(diǎn)是對(duì)面向?qū)ο蠓治鰰r(shí)建立的對(duì)象模型進(jìn)行調(diào)整和細(xì)化。第十一章軟件維護(hù),本章主要介紹軟件維護(hù)的任務(wù)、軟件維護(hù)活動(dòng)以及軟件維護(hù)方法進(jìn)行了介紹。
要學(xué)習(xí)軟件工程,學(xué)會(huì)如何系統(tǒng)的思考,以及養(yǎng)成良好的編碼習(xí)慣,想學(xué)好軟件工程,就必須知道軟件工程的目標(biāo)、過(guò)程和原則:軟件工程目標(biāo):生產(chǎn)具有正確性、可用性以及開(kāi)銷(xiāo)合宜的產(chǎn)品。正確性指軟件產(chǎn)品達(dá)到預(yù)期功能的程度??捎眯灾杠浖窘Y(jié)構(gòu)、實(shí)現(xiàn)及文檔為用戶(hù)可用的程度。開(kāi)銷(xiāo)合宜是指軟件開(kāi)發(fā)、運(yùn)行的整個(gè)開(kāi)銷(xiāo)滿(mǎn)足用戶(hù)要求的程度。這些目標(biāo)的實(shí)現(xiàn)不論在理論上還是在實(shí)踐中均存在很多待解決的問(wèn)題,它們形成了對(duì)過(guò)程、過(guò)程模型及工程方法選取的約束。
軟件工程過(guò)程:生產(chǎn)一個(gè)最終能滿(mǎn)足需求且達(dá)到工程目標(biāo)的軟件產(chǎn)品所需要的步驟。軟件工程過(guò)程主要包括開(kāi)發(fā)過(guò)程、運(yùn)作過(guò)程、維護(hù)過(guò)程。它們覆蓋了需求、設(shè)計(jì)、實(shí)現(xiàn)、確認(rèn)以及維護(hù)等活動(dòng)。需求活動(dòng)包括問(wèn)題分析和需求分析。問(wèn)題分析獲取需求定義,又稱(chēng)軟件需求規(guī)約。需求分析生成功能規(guī)約。設(shè)計(jì)活動(dòng)一般包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)建立整個(gè)軟件系統(tǒng)結(jié)構(gòu),包括子系統(tǒng)、模塊以及相關(guān)層次的說(shuō)明、每一模塊的接口定義。詳細(xì)設(shè)計(jì)產(chǎn)生程序員可用的模塊說(shuō)明,包括每一模塊中數(shù)據(jù)結(jié)構(gòu)說(shuō)明及加工描述。實(shí)現(xiàn)活動(dòng)把設(shè)計(jì)結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。確認(rèn)活動(dòng)貫穿于整個(gè)開(kāi)發(fā)過(guò)程,實(shí)現(xiàn)完成后的確認(rèn),保證最終產(chǎn)品滿(mǎn)足用戶(hù)的要求。維護(hù)活動(dòng)包括使用過(guò)程中的擴(kuò)充、修改與完善。伴隨以上過(guò)程,還有管理過(guò)程、支持過(guò)程、培訓(xùn)過(guò)程等。
軟件工程的原則是指圍繞工程設(shè)計(jì)、工程支持以及工程管理在軟件開(kāi)發(fā)過(guò)程中必須遵循的原則。
我們學(xué)習(xí)了詳細(xì)設(shè)計(jì)的方法,其原則是過(guò)程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過(guò)程描述能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。包括程序流程圖、n—s圖、pad圖、hipo圖。
程序流程圖:程序流程圖又稱(chēng)之為程序框圖,它是軟件開(kāi)發(fā)者最熟悉的一種算法表達(dá)工具。它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀和清晰地描述過(guò)程的控制流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu):順序型;選擇型;while型循環(huán);until型循環(huán);多情況型選擇。
n—s圖:一種符合結(jié)構(gòu)化程序設(shè)計(jì)原則的圖形描述工具,稱(chēng)為盒圖,又稱(chēng)為n—s圖。在n—s圖中,為了表示五種基本控制結(jié)構(gòu),規(guī)定了五種圖形構(gòu)件。順序型;選擇型;while重復(fù)型;until重復(fù)型;多分支選擇型。
pad圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。pad也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。
hipo圖:hipo圖是由一組ipo圖加一張hc圖組成。它是美國(guó)ibm公司在軟件設(shè)計(jì)中使用的主要表達(dá)工具。
hc圖既是層次圖,用于表示軟件的分層結(jié)構(gòu)。hc圖中的每一個(gè)模塊,均可用一張ipo圖來(lái)描述。ipo圖由輸入、處理和輸出三個(gè)框組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀地顯示輸入—處理—輸出三者之間的聯(lián)系。
還有測(cè)試方法:按照測(cè)試過(guò)程是否在實(shí)際應(yīng)用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱(chēng)黑盒法)。
靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書(shū)、軟件設(shè)計(jì)說(shuō)明書(shū)、源程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。
動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱(chēng)為函數(shù)的定義域,輸出的全體稱(chēng)為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。
還學(xué)習(xí)了其他很多工具、語(yǔ)言、方法等,雖然不是都學(xué)得很透徹,但我相信在今后的學(xué)習(xí)中一定會(huì)慢慢的完善的。
軟件工程對(duì)于初學(xué)者來(lái)說(shuō),知識(shí)基礎(chǔ)較薄弱,對(duì)一些應(yīng)用操作、概念、工具方法等理解起來(lái)較為困難,要能從整體概念上較好地理解和把握、學(xué)好軟件工程,不是僅僅把幾本專(zhuān)業(yè)書(shū)籍細(xì)致地看幾遍,然后上機(jī)練習(xí)幾次就可以成功,學(xué)習(xí)過(guò)程中要注意多看多練要注意結(jié)合實(shí)際,更要多思考,面對(duì)錯(cuò)誤不要一范就問(wèn),要嘗試自己去解決。但是還要注意什么都學(xué),肯定是什么都學(xué)不透的,要集中精力打攻堅(jiān)戰(zhàn),學(xué)習(xí)軟件工程首先要明白自己的學(xué)習(xí)目標(biāo)究竟是什么,根據(jù)自己的實(shí)際工作出發(fā),有針對(duì)性的在相應(yīng)的學(xué)習(xí)方向上進(jìn)行提高,制定出詳細(xì)的學(xué)習(xí)規(guī)劃。還要注意與其他科目的相輔相成,就像我們?cè)趯W(xué)習(xí)面向?qū)ο蠓治龅臅r(shí)候要結(jié)合大一學(xué)習(xí)的面向?qū)ο蠹捌浞椒▽W(xué)這一專(zhuān)業(yè)科目進(jìn)行研究拓展;在學(xué)習(xí)語(yǔ)言時(shí),要看看與c語(yǔ)言的聯(lián)系,多思多想,把從各個(gè)科目學(xué)到的知識(shí)通匯貫通。
在軟件工程的學(xué)習(xí)中,我了解到了軟件并非是一些代碼這么簡(jiǎn)單,在開(kāi)發(fā)軟件的過(guò)程中,編寫(xiě)代碼的工作量其實(shí)只占不到所有工程量的30%,而后期的管理和維護(hù)更是占了60%到80%之多。一個(gè)完整的項(xiàng)目規(guī)劃須包括,軟件的定義,可行性分析報(bào)告,項(xiàng)目開(kāi)發(fā)計(jì)劃,軟件需求說(shuō)明書(shū),概要設(shè)計(jì)說(shuō)明書(shū),詳細(xì)設(shè)計(jì)說(shuō)明書(shū),用戶(hù)操作手冊(cè),測(cè)試計(jì)劃,測(cè)試分析報(bào)告,開(kāi)發(fā)進(jìn)度報(bào)告,項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告,軟件維護(hù)手冊(cè),軟件問(wèn)題報(bào)告,軟件修改報(bào)告,等多個(gè)文檔,每個(gè)文檔都要上級(jí)驗(yàn)收審查,而文檔數(shù)量眾多,要做好這點(diǎn)真的不是很容易,而恰恰寫(xiě)好文檔正能保證完成軟件工程其中一個(gè)目的的關(guān)鍵,既研究如何用最小的開(kāi)銷(xiāo)做出生存期較長(zhǎng)的軟件,再加上各個(gè)階段都要進(jìn)行周密的策劃、詳細(xì)的分工部署和人員安排,且各階段要據(jù)具體情況不斷的反復(fù)才能達(dá)成,所以代碼只是開(kāi)發(fā)軟件這個(gè)浩大的工程的一個(gè)小小的過(guò)程。
而編碼的學(xué)習(xí)中,我更了解到形成自己獨(dú)特的規(guī)范的編碼風(fēng)格是非常重要的事。因?yàn)檫@影響到了軟件后期繁重的維護(hù),大家都要閱讀你的程序,如果你寫(xiě)的程序毫無(wú)規(guī)范可言,那么別人怎么能讀懂你的程序?讀不懂程序,維護(hù)又從何談起呢?所以,我們?cè)诮窈蟮膶W(xué)習(xí)中,一定要注意這方面的培養(yǎng),在寫(xiě)程序的過(guò)程中,要逐步的在規(guī)范的基礎(chǔ)上形成屬于自己的風(fēng)格,即方便自己的修改,也方便日后他人的閱讀。
在學(xué)習(xí)中,我們還要注意比較三種方法的優(yōu)缺點(diǎn),例如:傳統(tǒng)方法雖然使軟件擺脫了混亂和無(wú)序,但其在適應(yīng)需求變化的方面不夠靈活,而且傳統(tǒng)方法要么面向行為,要么面向數(shù)據(jù),缺乏兩者的有機(jī)結(jié)合。而面向?qū)ο蠓椒ǖ某绦蛟O(shè)計(jì)和問(wèn)題求解更符合人們?nèi)粘W匀坏乃季S習(xí)慣,適合大型、復(fù)雜及交互性比較強(qiáng)的系統(tǒng)。形式化方法則是一中基于形式化數(shù)學(xué)變換的軟件開(kāi)發(fā)方法,它可將系統(tǒng)的規(guī)格說(shuō)明轉(zhuǎn)換為可執(zhí)行的程序。
在今后的學(xué)習(xí)中要注意多讀書(shū)、多思考、多練習(xí)、多討論,不斷熟悉書(shū)本的基礎(chǔ),并以此為基礎(chǔ)將其擴(kuò)散開(kāi)來(lái),應(yīng)用于今后的實(shí)踐。不斷鍛煉自己,向一名合格的程序設(shè)計(jì)師邁進(jìn)。