第一篇:軟件工程導(dǎo)學(xué)課報(bào)告
淺談大數(shù)據(jù)潮流下的軟件工程
--從一個(gè)局外人的角度 作為一個(gè)商學(xué)院的學(xué)生,經(jīng)過一個(gè)學(xué)期的軟件工程導(dǎo)學(xué)課的學(xué)習(xí),終于對軟件工程輪廓有一個(gè)大致的印象,更是進(jìn)一步產(chǎn)生了興趣。經(jīng)過課堂上前輩們的介紹,在我心目中,軟件工程從業(yè)者也從辛苦的碼農(nóng)變?yōu)樽咴趧?chuàng)新最前沿的精英。在現(xiàn)代社會中,軟件應(yīng)用于多個(gè)方面。典型的軟件比如有電子郵件,嵌入式系統(tǒng),人機(jī)界面,辦公套件,操作系統(tǒng),編譯器,數(shù)據(jù)庫,游戲等。同時(shí),各個(gè)行業(yè)幾乎都有計(jì)算機(jī)軟件的應(yīng)用,比如工業(yè),農(nóng)業(yè),銀行,航空,政府部門等。這些應(yīng)用促進(jìn)了經(jīng)濟(jì)和社會的發(fā)展,提高人們的工作效率,同時(shí)提升了生活質(zhì)量。而在如今這樣一個(gè)信息化社會,互聯(lián)網(wǎng)飛速發(fā)展,其衍生產(chǎn)品如雨后春筍,軟件工程與虛擬現(xiàn)實(shí),大數(shù)據(jù),人工智能的結(jié)合尤為引人注目。因此,了解大數(shù)據(jù)洪流下的軟件工程發(fā)展有著重要意義。
從軟件定義網(wǎng)絡(luò)(software defined network, SDN)開始,軟件的作用向計(jì)算、存儲、數(shù)據(jù)中心架構(gòu)甚至整個(gè)IT環(huán)境蔓延,以往基于硬件平臺實(shí)現(xiàn)的許多功能逐漸通過軟件實(shí)現(xiàn),軟件的地位越來越突出。被軟件定義的世界正在“大數(shù)據(jù)化”。圖靈獎(jiǎng)與諾貝爾獎(jiǎng)雙料得主司馬賀(Herbert A Simon)在其《人工科學(xué)》一書中講到:“我們今天生活的世界與其說是自然的世界,不如說是人類的或人為的世界。在我們周圍,幾乎每樣?xùn)|西都有人工技能的痕跡”。大數(shù)據(jù)是人類活動的產(chǎn)物,來自人們認(rèn)識與改造客觀世界的過程中,是生產(chǎn)與生活在網(wǎng)絡(luò)空間的投影,因此大數(shù)據(jù)正成為信息時(shí)代的寶貴財(cái)富。但是由于大數(shù)據(jù)的數(shù)據(jù)量過于龐大,信息種類過于繁瑣,人工信息篩選與信息識別基本不可能。然而,在大數(shù)據(jù)分析上軟件工程將會成為人類的有力助手。
在對密集型數(shù)據(jù)進(jìn)分析時(shí),傳統(tǒng)的數(shù)據(jù)生命期信息學(xué)流程已經(jīng)難以適用,無法對大數(shù)據(jù)進(jìn)行有效的模擬。要由原本的數(shù)據(jù)、信息、模型、模擬推演的過程逐漸轉(zhuǎn)變?yōu)閿?shù)據(jù)、信息、知識、價(jià)值服務(wù)、策略意義的第四范式模型。在全新的研究模式中,要對數(shù)據(jù)整合驅(qū)動、需求度量價(jià)值、情境約束等進(jìn)行分析。其中,知識及價(jià)值服務(wù)是整個(gè)研究的基礎(chǔ)和重點(diǎn),要針對密集型數(shù)據(jù)整合服務(wù)領(lǐng)域,對密集型數(shù)據(jù)將的處理、管理、分析、應(yīng)用等多個(gè)方面進(jìn)行研究,建立統(tǒng)一的理論體系和研究方法,提高密集型數(shù)據(jù)生命期信息學(xué)流程驅(qū)動軟件的服務(wù)生命期,對目前第四范式建立存在的問題進(jìn)行針對性的解決,適應(yīng)大數(shù)據(jù)時(shí)代的發(fā)展。
此外,軟件不僅不易用來分析大數(shù)據(jù),本身也是大數(shù)據(jù)源頭之一。很多軟件都具有收集數(shù)據(jù),上傳數(shù)據(jù)的后臺功能。因此,在數(shù)據(jù)終端可以進(jìn)行對用戶數(shù)據(jù)的收集整理,以便于分析用戶的偏好于等實(shí)際情況。因此,如果有效利用軟件作為大數(shù)據(jù)的源頭,企業(yè)將會有著更充分的信息,有效把握市場動態(tài)。
總而言之,在大數(shù)據(jù)時(shí)代下,軟件工程的發(fā)展涉及到多個(gè)領(lǐng)域,需要具備高度的專業(yè)性和實(shí)踐性。在軟件工程中,要在實(shí)踐中進(jìn)行研究,而不是在研究中進(jìn)行實(shí)踐,核心在于如何對傳統(tǒng)的軟件理論進(jìn)行創(chuàng)新突破。在其中就涉及到有關(guān)大數(shù)據(jù)理論和研究方法的問題,如何將理論、算法、技術(shù)標(biāo)準(zhǔn)等進(jìn)行融合。大數(shù)據(jù)在最初提出時(shí)具備三種特征:體量、增速和多樣。隨著時(shí)代的不斷發(fā)展,大數(shù)據(jù)的特征也越來越多,如價(jià)值、真?zhèn)涡?、可證性、可變性等,對軟件工程的發(fā)展有著重要的影響。在軟件工程的研究中,要不斷的創(chuàng)新傳統(tǒng)的軟件技術(shù),解決限制軟件工程發(fā)展的客觀條件,結(jié)合互聯(lián)網(wǎng)的發(fā)展,對大數(shù)據(jù)時(shí)代下的密集型數(shù)據(jù)進(jìn)行有效的處理,促進(jìn)行業(yè)發(fā)展。
第二篇:軟件工程課 心得體會
心得體會
通過本學(xué)期的學(xué)習(xí),獨(dú)立完成了軟件工程方法實(shí)踐與案例的作業(yè),同時(shí)也收獲了學(xué)習(xí)方法和思維方式。由于我是從電氣專業(yè)調(diào)劑到計(jì)算機(jī)專業(yè),幾乎沒有基礎(chǔ),所以在剛開始進(jìn)入學(xué)習(xí)時(shí)感覺非常的困難。但是,李老師每節(jié)課都循序漸進(jìn)的引導(dǎo)教學(xué),讓我慢慢理解了軟件工程的學(xué)習(xí)思維,并且堅(jiān)持學(xué)習(xí),逐漸找到了學(xué)習(xí)軟件工程的方法。在整個(gè)的學(xué)習(xí)中,一點(diǎn)一點(diǎn)的學(xué)習(xí):上網(wǎng)搜索、問同學(xué)和老師、找參考書、查文獻(xiàn),甚至下倉庫管理的軟件進(jìn)行使用研究,用了很多方法,也終于對軟件工程的整體設(shè)計(jì)有了深刻概念和理解。
老師給我們分組分配任務(wù),同時(shí)又每個(gè)人有不同的具體任務(wù),這樣既鍛煉了我們的合作溝通的能力,同時(shí)也強(qiáng)調(diào)了獨(dú)立自主的思考。我們倉庫管理小組進(jìn)行過好幾次集體討論,大家互相討論,共同學(xué)習(xí),也曾出現(xiàn)過意見不統(tǒng)一,通過探討,共同解決,我覺得這也是學(xué)習(xí)提升的過程。明確了自己的任務(wù)后,就努力去完成,按時(shí)完成自己的任務(wù)。
在完成作業(yè)的同時(shí),學(xué)到了很多的數(shù)據(jù)庫知識和軟件使用方法。首先接觸了visio軟件,發(fā)現(xiàn)了它畫圖比較方便,之后老師介紹用rose軟件后,發(fā)現(xiàn)其功能更加強(qiáng)大。由于rose軟件是英文版,所以剛開始用的時(shí)候比較吃力,經(jīng)過搜索使用教程和多次使用練習(xí)后,終于可以熟練使用了。
整個(gè)設(shè)計(jì)過程,包括調(diào)研設(shè)計(jì)、需求分析、概要設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)、詳細(xì)設(shè)計(jì)等。其中,我對UML圖印象最為深刻,也是從這個(gè)地方開始,我對軟件設(shè)計(jì)有了質(zhì)的改變,體會和理解了軟件設(shè)計(jì)應(yīng)該樹立的思維方式,對以后的學(xué)習(xí)和任務(wù)有有很大幫助,后期做作業(yè)時(shí)也沒有那么困難了。
在這整個(gè)課程學(xué)習(xí)和完成作業(yè)過程中,收獲知識,提高能力的同時(shí),我也學(xué)到了很多人生習(xí)慣,懂得怎么樣去制定計(jì)劃,怎么樣去實(shí)現(xiàn)這個(gè)計(jì)劃,并掌握了在執(zhí)行過程中怎么樣去克服心理上的不良情緒。因此在以后的生活和學(xué)習(xí)的過程中,我一定會把這種習(xí)慣帶到生活中,不畏,勇往直前!
最后感謝李老師對我們耐心的教育和指導(dǎo),認(rèn)真細(xì)心的給我們批改作業(yè),給予我們這些沒有基礎(chǔ)的學(xué)生耐心指導(dǎo),謝謝老師!
第三篇:軟件工程報(bào)告
軟件工程實(shí)訓(xùn)(論文)
論文題目
學(xué) 院應(yīng)用數(shù)學(xué)學(xué)院 專業(yè)信息與計(jì)算科學(xué)
年級班別12級2班 學(xué) 號3212008007 學(xué)生姓名 洪春暉
指導(dǎo)老師 李小英
2015 年12月
對軟件工程的認(rèn)識
摘要:
軟件工程:顧名思義就是用工程化的方法生產(chǎn)軟件的一門學(xué)科。軟件產(chǎn)業(yè)作為信息產(chǎn)業(yè)的核心是國民經(jīng)濟(jì)信息化的基礎(chǔ),已經(jīng)涉足工業(yè),農(nóng)業(yè),商業(yè),金融,科教文衛(wèi),國防和百姓生活等各個(gè)領(lǐng)域。采用先進(jìn)的工程化方法進(jìn)行軟件開發(fā)和生產(chǎn)是實(shí)現(xiàn)軟件產(chǎn)業(yè)化的關(guān)鍵技術(shù)手段。因此,為積極促進(jìn)我國軟件產(chǎn)業(yè)的發(fā)展,加速我國信息化建設(shè),增強(qiáng)其國際競爭力,國家急需培養(yǎng)大批軟件工程領(lǐng)域的實(shí)用型,復(fù)合型軟件工程技術(shù)人才和軟件工程管理人才。軟件工程專業(yè)需要一定的專業(yè)技能,只有有能力的人才能在社會上立足,所以,所以學(xué)習(xí)軟件工程這門課程不能放松,要按照學(xué)習(xí)計(jì)劃按部就班的學(xué)習(xí),不能盲從也不能懈怠。每個(gè)階段都要有明確的目標(biāo),并把目標(biāo)細(xì)化,付諸實(shí)踐,要立長志不能常立志。這樣才能提高自己的學(xué)習(xí)效率,增強(qiáng)專業(yè)技能,成為真正的軟件人。
關(guān)鍵詞:測試、過程、能力
一、軟件測試
軟件測試是軟件生產(chǎn)的重要環(huán)節(jié)。軟件質(zhì)量正確的內(nèi)涵包括三方面,完整的需求、正確的代碼和最少的缺陷。軟件測試就是在軟件開發(fā)的整個(gè)生命周期中對這三方面進(jìn)行有效控制的重要手段,是軟件質(zhì)量的安全副駕駛。據(jù)統(tǒng)計(jì),通過必要測試,軟件缺陷數(shù)可至少降低75%,而軟件的投資回報(bào)率能達(dá)到350%。,軟件測試的方式也開始由手工向自動化測試方向轉(zhuǎn)變,測試工具包括白盒、黑盒、嵌入式等七大類。軟件測試的蓬勃發(fā)展在促進(jìn)質(zhì)量提升的同時(shí),也將軟件產(chǎn)業(yè)帶進(jìn)發(fā)展的新時(shí)代。
測試方法術(shù)語:
1.測試用例:根據(jù)測試需求和設(shè)計(jì)所設(shè)計(jì)的測試輸入、測試操作和預(yù)期結(jié)果。
2.軟件測試:是根據(jù)軟件開發(fā)各階段的文檔和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)一批測試用例(即輸入數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并利用這些測試用例去運(yùn)行程序,以發(fā)現(xiàn)程序缺陷的過程。3.黑盒測試:把程序看成一只黑盒子,測試者完全不考慮程序的結(jié)構(gòu)和處理過程。它根據(jù)需求說明書規(guī)定的功能來設(shè)計(jì)測試用例,檢查程序的功能是否符合需求,又稱“功能測試”。4.集成測試:主要對系統(tǒng)內(nèi)部的相互服務(wù)進(jìn)行測試,是由底向上通過集成完成的功能模塊,對程序內(nèi)部具體單一功能模塊的測試。
5.系統(tǒng)測試:將軟件作為整個(gè)計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素結(jié)合在一起,在實(shí)際運(yùn)行環(huán)境下,對計(jì)算機(jī)系統(tǒng)進(jìn)行的一系列的測試。
6.驗(yàn)收測試:驗(yàn)收測試是以用戶為主的測試。由用戶設(shè)計(jì)測試用例,使用真實(shí)數(shù)據(jù)進(jìn)行測試,分析測試的結(jié)果。
7.回歸測試:指在第一次系統(tǒng)測試完,開發(fā)小組已經(jīng)將所有的缺陷處理后,進(jìn)行得第二次系統(tǒng)測試。流程圖:
:
1.制定測試計(jì)劃:軟件項(xiàng)目經(jīng)理在制定開發(fā)計(jì)劃時(shí)(參見《軟件項(xiàng)目策劃過程》),應(yīng)同時(shí)與測試質(zhì)保部一起考慮項(xiàng)目的測試計(jì)劃。測試質(zhì)保部制定測試計(jì)劃,協(xié)商安排集成測試和系統(tǒng)測試等工作。測試計(jì)劃內(nèi)容包括測試人員安排,測試方案、測試用例設(shè)計(jì)工作安排和測試執(zhí)行工作安排等內(nèi)容,按照《軟件測試計(jì)劃》模板制定。執(zhí)行人有:軟件項(xiàng)目經(jīng)理、測試人員。
2.評審測試計(jì)劃:制定完成的測試計(jì)劃,軟件項(xiàng)目經(jīng)理要組織人員進(jìn)行評審,評審參照《評審過程》進(jìn)行。
執(zhí)行人有:軟件項(xiàng)目經(jīng)理。3.編制和評審測試用例:
集成測試用例編制:測試人員根據(jù)《概要設(shè)計(jì)說明書》文檔安排人員制定集成測試方案和測試用例,考慮需要集成的關(guān)鍵模塊、集成的次序和需要測試的接口和測試的環(huán)境要求等工作。系統(tǒng)測試用例編制:測試人員根據(jù)項(xiàng)目的《軟件需求規(guī)格說明書》,參考項(xiàng)目設(shè)計(jì)文檔,編寫測試方案和測試用例,規(guī)定測試數(shù)據(jù)、測試預(yù)期結(jié)果、測試充分性評價(jià)等,重點(diǎn)在功能測試,兼顧性能測試,如確認(rèn)需要測試的功能和不必測試功能;用戶界面的確認(rèn);硬件、軟件和通信接口的確認(rèn)等等,完成后的測試用例交給軟件項(xiàng)目經(jīng)理審核,并組織有關(guān)人員參加評審,通過評審后入配置管理庫進(jìn)行管理。
執(zhí)行人有:軟件項(xiàng)目經(jīng)理、開發(fā)人員、測試人員。4.準(zhǔn)備測試:
檢查是否可以進(jìn)行測試:集成測試的代碼是否已完成單元測試;系統(tǒng)測試的代碼是否已完成集成測試。
代碼及測試文檔準(zhǔn)備:集成測試和系統(tǒng)測試前開發(fā)或配置管理人員應(yīng)向配置管理庫歸檔最新測試代碼及測試所必須的文檔。
測試環(huán)境搭建:對自己可以搭建測試環(huán)境的軟件項(xiàng)目,測試時(shí)應(yīng)從配置管理庫中提取程序及測試所必需的文檔,并根據(jù)測試方案搭建測試環(huán)境;對自己無法搭建測試環(huán)境,可以到現(xiàn)場進(jìn)行測試,但必須采取措施保證不影響用戶原有的系統(tǒng)(做測試方案時(shí)應(yīng)給予考慮)。執(zhí)行人有:開發(fā)人員、配置管理人員、測試人員。5.實(shí)施測試:
集成測試:測試人員根據(jù)設(shè)計(jì)說明書和測試方案進(jìn)行集成測試.系統(tǒng)測試: 系統(tǒng)測試應(yīng)盡量在與實(shí)際運(yùn)行(使用)環(huán)境一致的環(huán)境下進(jìn)行(如果不行,就要在與實(shí)際環(huán)境有可比性的模擬環(huán)境下進(jìn)行),與計(jì)算機(jī)硬件、外設(shè)、支持軟件、資料和人員等其它系統(tǒng)元素結(jié)合在一起,測試軟件需求規(guī)格說明書列出的所有需求,確保所有的軟件功能需求都能得到滿足,所有的軟件性能需求都能達(dá)到,所有的文檔都是正確且便于使用;同時(shí)在測試過程中,應(yīng)當(dāng)按照顧客手冊或操作手冊中規(guī)定的使用步驟,以便檢查這些文件資料的完整性和正確性。執(zhí)行人員有:測試人員。6.缺陷跟蹤:
使用Test Director作為測試管理工具,記錄并跟蹤缺陷,統(tǒng)計(jì)缺陷數(shù)據(jù)。執(zhí)行人員有:測試人員及開發(fā)人員。7.回歸測試:
缺陷跟蹤結(jié)束,或者項(xiàng)目組重新提交,測試人員應(yīng)做回歸測試,若第一次測試時(shí)的資料未進(jìn)行修改,例如:用戶手冊、系統(tǒng)需求說明書、測試計(jì)劃、開發(fā)規(guī)范等,測試組將不進(jìn)行重復(fù)測試。
執(zhí)行人員有:測試人員。8.報(bào)告/評價(jià)測試結(jié)果:
測試結(jié)束后,測試人員對測試結(jié)果和測試過程等內(nèi)容進(jìn)行整理,形成《測試分析報(bào)告》,由軟件項(xiàng)目經(jīng)理組織有關(guān)部門進(jìn)行評審,并把評審結(jié)果提交軟件項(xiàng)目經(jīng)理及研發(fā)經(jīng)理評價(jià)測試的有效性、充分性;如果使用模擬測試環(huán)境,還應(yīng)評價(jià)模擬環(huán)境與現(xiàn)實(shí)環(huán)境的差異,確認(rèn)軟件是否通過測試,如果認(rèn)為軟件沒有通過測試,可對軟件進(jìn)行修改并修改測試計(jì)劃進(jìn)行重新測試或經(jīng)產(chǎn)品總經(jīng)理批準(zhǔn),得到顧客的認(rèn)可后讓步放行、使用或接受不合格品。執(zhí)行人員有:軟件項(xiàng)目經(jīng)理及有關(guān)人員 9.報(bào)告、測試結(jié)果置于配置管理之下。執(zhí)行人員:配置管理人員。
二、軟件工程過程及所需能力
軟件工程過程:軟件工程過程包含軟件開發(fā)、維護(hù)以及軟件開發(fā)和維護(hù)時(shí)所需的管理活動。軟件生命周期:軟件生命周期是指軟件產(chǎn)品從考慮其概念開始,到該軟件產(chǎn)品不再能使用為止的整個(gè)時(shí)期。具體地說,軟件生命周期是指從時(shí)間角度對軟件開發(fā)和維護(hù)的復(fù)雜問題進(jìn)行分解,把軟件生命的漫長周期依次劃分為若干個(gè)階段,每個(gè)階段都有相對獨(dú)立的任務(wù),然后逐步完成每個(gè)階段的任務(wù)。一般將軟件生命周期劃分為六個(gè)階段:計(jì)劃、需求分析、設(shè)計(jì)、編碼、測試、運(yùn)行維護(hù)。
軟件工程專業(yè)本科生應(yīng)掌握科學(xué)方法與工程方法;掌握扎實(shí)的軟件基礎(chǔ)理論知識和較寬廣的軟件工程專業(yè)知識,具有技術(shù)創(chuàng)新能力;受到良好的軟件工程訓(xùn)練,具有較強(qiáng)的工程實(shí)踐能力和團(tuán)隊(duì)協(xié)作能力;熟悉軟件應(yīng)用和工具,具備運(yùn)用先進(jìn)的工程化方法、技術(shù)和工具從事某一應(yīng)用領(lǐng)域軟件分析、設(shè)計(jì)、開發(fā)、維護(hù)等工作的能力。軟件工程專業(yè)本科畢業(yè)生應(yīng)達(dá)到基本的數(shù)學(xué)和語言要求;熟練掌握英語,具備良好的閱讀、理解和撰寫外語資料的能力和進(jìn)行交流的能力;擁有較好的溝通技巧和團(tuán)隊(duì)工作能力,通曉和遵守法律與職業(yè)道德。軟件畢業(yè)生應(yīng)獲得以下幾方面的知識和能力:1。具有扎實(shí)的自然科學(xué)基礎(chǔ)和較好的人文社會科學(xué)基礎(chǔ);2.對軟件系統(tǒng)、計(jì)算機(jī)系統(tǒng)、信息系統(tǒng)及計(jì)算機(jī)軟件相關(guān)系統(tǒng)的認(rèn)識能力;3.具備扎實(shí)的理論基礎(chǔ),能夠全面通曉計(jì)算機(jī)軟件和軟件工程的基礎(chǔ)知識,較深入理解至少一個(gè)計(jì)算機(jī)軟件應(yīng)用領(lǐng)域;4.有較強(qiáng)的動手能力,能夠具有一定的系統(tǒng)分析和軟件設(shè)計(jì)的能力,熟練使用一種以上主流的操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)和程序設(shè)計(jì)語言,做到理論與實(shí)踐相結(jié)合;5.有實(shí)際項(xiàng)目的工作經(jīng)驗(yàn);6.具備自學(xué)習(xí)的能力以適應(yīng)軟件技術(shù)的快速變化,能夠通過自學(xué)的方式在較短時(shí)間內(nèi)掌握系統(tǒng)軟件的使用;并且具有熟練使用各類流行軟件解決實(shí)際問題的能力;7.能夠綜合應(yīng)用各類方法、技術(shù)和工具,運(yùn)用工程技術(shù)方法解決復(fù)雜性軟件問題的能力;8.掌握一門外語,具有聽、說、譯、寫以及熟練閱讀外文文獻(xiàn)能力,以此具備語言、交流、寫作等基本的軟件從業(yè)能力,認(rèn)同現(xiàn)行的法律、道德和倫理。軟件工程課程應(yīng)該加強(qiáng)理論與實(shí)踐的結(jié)合,在學(xué)習(xí)的過程中實(shí)踐所學(xué)理論。
第四篇:軟件工程報(bào)告格式
程序設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)(2)
綜合性項(xiàng)目報(bào)告
課目:
學(xué)院:
班級:
學(xué)生:
指導(dǎo)教師:
完成時(shí)間:
課程設(shè)計(jì)(論文)評審意見
(1)課程設(shè)計(jì)過程(20分):優(yōu)()、良()、中()、一般()、差();
(2)是否完成調(diào)試,系統(tǒng)運(yùn)行效果(30分):優(yōu)()、良()、中()、一般()、差();
(3)回答問題(20分):優(yōu)()、良()、中()、一般()、差();
(4)課程設(shè)計(jì)報(bào)告(30分):優(yōu)()、良()、中()、一般()、差();
(5)格式規(guī)范性及考勤是否降等級:是()、否()
目錄
1、項(xiàng)目內(nèi)容、要求與分組情況總體介紹..錯(cuò)誤!未定義書簽。
2、概要設(shè)計(jì)..............錯(cuò)誤!未定義書簽。
2.1開發(fā)工具及環(huán)境.....錯(cuò)誤!未定義書簽。
2.2 任務(wù)及需求分析.....錯(cuò)誤!未定義書簽。
2.3 功能模塊設(shè)計(jì).......錯(cuò)誤!未定義書簽。
2.4 工作原理...........錯(cuò)誤!未定義書簽。
3、具體實(shí)現(xiàn)............錯(cuò)誤!未定義書簽。
3.1 類設(shè)計(jì)......錯(cuò)誤!未定義書簽。
3.2 模塊及實(shí)現(xiàn)代碼介紹........錯(cuò)誤!未定義書簽。
4、運(yùn)行調(diào)試與分析討論........錯(cuò)誤!未定義書簽。
5、設(shè)計(jì)體會與小結(jié).........錯(cuò)誤!未定義書簽。
6、參考文獻(xiàn)..............錯(cuò)誤!未定義書簽。附錄:(源程序).............錯(cuò)誤!未定義書簽。
第五篇:軟件工程課設(shè)心得
軟件工程是一門實(shí)踐性很強(qiáng)、交叉性很強(qiáng)的學(xué)科,它提供給我們的不僅是一種方法論,更是一種世界觀。
在沒有接觸軟件工程這門課時(shí),我一直認(rèn)為軟件就是程序。能編出解決問題的程序就ok了,從沒有想過,在寫一個(gè)程序之前還要構(gòu)思幾份文檔(可行性分析、需求分析、概要設(shè)計(jì))。不過對于那些大型軟件如植物僵尸大戰(zhàn)(至少對于我來說是比較大型的了)怎么去實(shí)現(xiàn)它,想得我一頭霧水。絢麗的界面、40種植物、一大堆不同類型的僵尸,怎樣編代碼去實(shí)現(xiàn)它呢?
第一次上軟件工程的課,裴老師問“軟件是什么?” 我的第一想法是:這個(gè)問題太過愚昧了!誰不知道軟件就是程序呀? “軟件是由計(jì)算機(jī)程序、數(shù)據(jù)及文檔組成?!甭牭竭@句話,我心里先是一驚,慌忙翻了下書“軟件是程序和所有使程序正確運(yùn)行所需的相關(guān)文檔和配置信息?!焙杖挥橙胛已酆?。突然間我發(fā)現(xiàn),就算是植物僵尸大戰(zhàn)這樣復(fù)雜的游戲,如果設(shè)計(jì)者實(shí)現(xiàn)分模塊把每一部分如何實(shí)現(xiàn)用文檔描敘出來,那這個(gè)軟件實(shí)現(xiàn)起來不是很容易嗎?
第一次課后我明白了軟件工程是致力于專業(yè)化軟件開發(fā)的理論、方法和工具的研究。雖然我從初中開始信息奧賽,高中繼續(xù)這個(gè)愛好,但在大學(xué)二年級下學(xué)期才接觸在軟件開發(fā)中這么有引導(dǎo)意義的學(xué)科,不覺有種相見恨晚的感覺。自然它的方法學(xué)三要素:方法、工具、過程,我牢記于心。
短短的四周,裴老師的課給我留下了深刻的印象,印象尤深的是:
做軟件我們首先考慮的是團(tuán)隊(duì)的實(shí)力。
如果別人給你50萬讓你們團(tuán)隊(duì)開發(fā)一個(gè)軟件,如果他要求你們團(tuán)隊(duì)給這個(gè)軟件永久維護(hù),那么你要去跟他協(xié)商付100萬。很多軟件公司倒閉就是因?yàn)榫S護(hù)上的問題。至此我才明白維護(hù)軟件是軟件生存周期中時(shí)間最長的一個(gè)階段,它是最花費(fèi)精力與錢財(cái)?shù)囊粋€(gè)階段。
如果將來你們碰到了我,你跟我說你是se那么我會很高興,如果你告訴我你是軟件工程師,我只會“嗯嗯”兩下。
其實(shí)在我接觸軟件后,渴望的是當(dāng)一名軟件工程師?,F(xiàn)在才知道學(xué)軟件工程專業(yè)后,去當(dāng)一名軟件工程師是最低層的也是最沒“技術(shù)”含量的。要做就做系統(tǒng)構(gòu)架師,當(dāng)然這需要我們的不懈努力才能達(dá)到。系統(tǒng)構(gòu)架師的職責(zé)是設(shè)計(jì)一個(gè)公司的基礎(chǔ)構(gòu)架,并提供關(guān)于怎樣建立和維護(hù)系統(tǒng)的指導(dǎo)方針?;腥话l(fā)現(xiàn)學(xué)軟件不僅是學(xué)軟件,相關(guān)的管理能力也是需要具備的。
當(dāng)然理論知識是用來指導(dǎo)實(shí)踐的,親身體驗(yàn)才能領(lǐng)悟軟件工程的妙用。課設(shè)我們選擇了圖書館管理系統(tǒng),主要是這個(gè)系統(tǒng)我們接觸比較多,對于它的流程還是比較清楚的。雖然如此我們還是花了很大的時(shí)間去完成它。記得當(dāng)時(shí)我們定下這個(gè)題目是晚上,在討論用什么語言實(shí)現(xiàn)時(shí),大家各自說出自己比較善于的語言。然后均衡了下,定下用java做開發(fā)語言。在實(shí)現(xiàn)過程中,突然發(fā)現(xiàn)java環(huán)境連接數(shù)據(jù)庫和tomcat超級麻煩且數(shù)據(jù)庫老是連接不上。趁時(shí)間還早我們?nèi)俅斡懻?,決定用c#做開發(fā)語言,主要是c#相對于c++與java來說簡易寫。同時(shí)我們定下不管以后遇到什么困難都要堅(jiān)持下去的準(zhǔn)則。在課設(shè)期間我們沒少跑圖書館,查閱各種資料,對比各本書上實(shí)現(xiàn)圖書館管理系統(tǒng)的代碼。終于在4月11日把所有課設(shè)的所有事情弄好了。當(dāng)然這只是個(gè)概述。
我印象尤深記憶深厚的是最初實(shí)現(xiàn)文檔那塊。剛開始,軟件工程這門課還沒學(xué)多少,基本的設(shè)計(jì)理念就很模糊。文檔到底該怎么寫,很糾結(jié)。于是我從網(wǎng)上狂下相關(guān)文檔。通過粘貼與復(fù)制終于一份內(nèi)容亂七八糟的需求分析文檔出來了,當(dāng)然這只是用來借鑒的。后來孟陽分享了十三份關(guān)于文檔這方面的模板。我們照著那個(gè)樣子在結(jié)合團(tuán)隊(duì)項(xiàng)目的相關(guān)實(shí)例開始了文檔的寫作。我們的文檔總是一個(gè)人先寫好,再拿給另一個(gè)人改,最后由第三個(gè)人評審。大家都覺的可以了,才過關(guān)。測試報(bào)告雖然是我一個(gè)人完成了,但也經(jīng)歷了不少時(shí)間,當(dāng)然這時(shí)間是按小時(shí)算的。首先把大體寫出了,然后修改,再增加信息。大量的截圖以及思考怎樣用例超費(fèi)腦子,兩天的通宵,徹底把我搞垮了,不過在文檔出爐后,心里異常開心。
軟件工程課程雖已結(jié)束,但我對于軟件工程的學(xué)習(xí)才剛剛開始,裴老師的課讓我受益匪淺。我體會到項(xiàng)目管理的重要性,隨著軟件規(guī)模、復(fù)雜度的不斷增加,項(xiàng)目開發(fā)中更多的是協(xié)作、管理和控制。我學(xué)習(xí)到很多一般性的方法,例如:需求獲取、模塊化、分治、估算、計(jì)劃等等。同時(shí),我也認(rèn)識到使用計(jì)算機(jī)解決實(shí)際問題的復(fù)雜性,在圖靈機(jī)模型和馮·諾依曼體系的計(jì)算機(jī)框架下,人們認(rèn)識表達(dá)的過程(不斷反復(fù)、逐步深化)和計(jì)算機(jī)的實(shí)現(xiàn)過程(順序執(zhí)行)相差甚遠(yuǎn),軟件工程方法要提供給程序員們一種更加有效的對客觀世界問題域進(jìn)行形式化的過程方法。
向se進(jìn)軍!至少這是現(xiàn)在的目標(biāo)。
謝謝裴老師!您的課通俗易懂,舉的例子貼近生活,讓我們易于接受。