關于軟件創新的心得體會
軟件測試在整個軟件周期中的重要性,它存在于整個項目周期,在項目開始之初需求調研的時候就開始了,在形成需求規格說明書的時候就需要針對文檔進行測試。這個環節在后續整個項目中占了很大的比重,能主導整個項目的走向,成敗與否全在于開始階段的決策。
體會一:軟件測試的真正意義在于發現錯誤,而不在于驗證軟件是正確的。
再嚴密的測試也不能完全發現軟件當中所有的錯誤,但是測試還是能發現大部分的錯誤,能確保軟件基本是可用的,所以在后續使用的過程中還需要加強快速響應的環節。結合軟件測試的理論,故障暴露在最終客戶端之前及時主動的去發現并解決。這一點就需要加強研發隊伍的建設。
體會二:在系統性能測試方面需要重視。
經過這次培訓中多個案例的講解,讓我了解到系統在上線之后會有很多不能預知的性能問題,需要在上線之前實現進行模擬,以規避風險,包括大數據量訪問,高并發數等等。
當然也有很多應對手段,沒有哪種手段可稱為最完美,只有最合適的,需要靈活掌握,綜合運用以達到最優程度,這是個很值得研究的領域。
下面是本人的幾點想法:
想法一:加強系統上線前的性能測試。
目前我們在項目建設過程中對性能壓力測試的重視程度還不太高,廠家也很少有雇傭第三方的測試機構。而是在現網進行試用,遇到問題再解決,可能會產生滯后問題,影響客戶使用。希望以后能在性能測試方面提高重視程度,加大人力投入,以保證系統上線后能夠穩定運行。
想法二:適當介入相關項目研發
對于快速響應這塊,我們不能一味依賴廠家,而希望自己就能快速響應,及時將問題解決。這也是一個比較長遠的問題,需要加強研發力量的投入。
我個人是做開發出身,有此類經驗,當時是在客戶現場,因為了解系統內部結構,能夠在第一時間排查解決客戶所反饋問題。
現在系統完全由廠家開發,很難了解內部結構,或許會造成后期維護困難。所以,是否應該針對某些項目介入廠家研發工作,比如請廠家提供源代碼等相關要素,以增進維護人員對系統的了解。
最后再次感謝公司提供的平臺,感謝領導的信任,讓我有機會得到更深層次的學習以及展示自己能力的機會,我也會盡我所能來完善工作的系統,提高整體工作效率,為南方電網的發展建設提供更堅實,優秀的支撐服務平臺。
關于軟件創新的心得體會篇2
15天的實訓結束了,今天做的是紙牌游戲軟件和趣味打字游戲。今天的東西對我來說有點難度,最后沒有能過完全做完。但是我還是覺得這是一個不錯的實訓,在這種集體的環境里和同學們一起學習,每天的生活過的也是非常的充實。
此次實踐課我的收獲很多。我和同學們這一次真正自己動手制作了一個小軟件,雖然還存在很多的問題,而且我做的軟件在使用起來還是很不可行的,但是我們從中受到了很多知識,不僅是專業的知識,更讓我明白了一個軟件從設計到實現的每一個環節真的很不容易,不僅需要扎實的專業知識,更需要一個團隊的配合,這才是一個軟件成功的關鍵。這就告訴我們,一個人的出色不算什么,一個團隊的出色才是真正有用的。
剛開始拿到題目我們組員都不知如何下手,經過小組成員一起查找資料,并且開會討論,我們確定了設計的設計目標以及具體實現方式,包括如何將Java的思想運用到實際系統的詳細設計之中。
在實驗課上,我學會了很多學習的方法。而這是日后最實用的。要面對社會的挑戰,只有不斷的學習、實踐,再學習、再實踐。這對于我的將來也有很大的幫助。以后,不管有多苦,我想我都能變苦為樂,找尋有趣的事情,發現其中珍貴的事情。就像中國提倡的艱苦奮斗一樣,我都可以在實驗結束之后變的更加成熟,會面對需要面對的事情,以及學會遇到問題,不急不慌,慢慢解決它。
雖然過程辛苦是不可避免,但收獲還是令人感到尤其的欣慰。在這次的軟件設計中不僅檢驗了我所學習的知識,也培養了我的實踐能力,讓我知道遇到一個問題,如何去尋找思路,如何去解決問題,最終完成整個事情。在設計過程中,與同學分工設計,和同學們相互探討,相互學習,相互監督。學會了合作,學會了寬容,學會了理解,也學會了做人與處世。課程設計是我們專業課程知識綜合應用的實踐訓練,是我們邁向社會,從事職業工作前一個必不少的過程。實驗過程中,也十分感謝實驗指導老師陳中育老師的指點與教導。這次軟件設計不僅是對這學期所學知識的一種綜合檢驗,而且也是對自己動手能力的一種提高,增強了自己實踐能力。通過這次課程設計使我明白了自己知識還比較欠缺,只是學習書本知識還是遠遠不夠的,自己不會的東西還有太多,學習需要自己長期的積累,在以后的學習、工作中都應該不斷的學習,將課本的理論知識與生活中的實踐知識相結合,不斷提高自己文化知識和實踐能力。
關于軟件創新的心得體會篇3
轉眼已經在東軟實訓這樣的大家庭中生活快10個月時間了,之前的興奮、喜悅如今已經讓我熟悉,在這里的每一天都會讓我有成為一名真正“財富”擁有者的沖動。也許對別人來說,一定不能體會為什么在這不到10個月的時間會讓一個人有翻天覆地的變化,但是變化就是這樣一點一點產生的。
在東軟的實訓生活中,我深深體會到了自己在專業知識方面的欠缺和不足,也意識到了自己做為計算機軟件工程專業的學生,要想在以后的職業中嶄露頭角,除了要有過硬的理論知識,健康的體魄外,還必須具備良好的心理素質,使自己在以后的途中無論經歷什么樣的困難,都立于不敗之地。這正是本次實訓的根本目的。
通過實訓中心老師的課堂講解與企業化標準的培訓,使我加深了對自己專業的認識。從而確定自己以后的努力方向。要想在短暫的實訓時間內,盡可能多的學到東西,就需要我們跟老師或同學進行很好的溝通,加深彼此的了解。只有我們跟老師多溝通,讓老師更了解我們,才能跟真切的對我們進行培訓工作。由此,班級的文化“共享”就在生活中慢慢形成了。
“紙上得來終覺淺,絕知此事要躬行!”在這短短的時間里,讓我深深的感覺到自己在實際應用中所學專業知識的匱乏。讓我真真領悟到“學無止境”這句話的涵義。而老師在專業認識周中所講的,都是課本上沒有而對我們又非常實用的東西,這又給我們的實訓增加了濃墨淡采的光輝。我懂得了實際生活中,專業知識是怎樣應用與實踐的。在這些過程中,我不僅知道了職業生涯所需具備的專業知識,而且讓我深深體會到一個團隊中各成員合作的重要性,要善于團隊合作,善于利用別人的智慧,這才是大智慧。靠單一的力量是很難完成一個大項目的,在進行團隊合作的時候,還要耐心聽取每個成員的意見,使我們的組合達到更加完美。
這次實訓帶給我太多的感觸,它讓我知道工作上的辛苦,事業途中的艱辛。讓我知道了實際的工作并不像在學校學習那樣輕松。
人非生而知之,雖然我現在的知識結構還很差,但是我知道要學的知識,一靠努力學習,二靠潛心實踐。沒有實踐,學習就是無源之水,無本之木。這次實訓讓我在一瞬間長大:我們不可能永遠呆在象牙塔中,過著一種無憂無慮的生活,我們總是要走上社會的,而社會,就是要靠我們這些年輕的一代來推動。這就是我們不遠千里來實訓的心得和感受,而不久后的我,面臨是就業壓力,還是繼續深造,我想我都應該好好經營自己的時間,充實、完善自我,不要讓自己的人生留下任何空白!
實訓中除了學到不少專業知識,也了解一些社會的現實性,包括人際交往,溝通方式及相關禮節方面的內容,對于團隊開發來說,團結一致使我深有體會。團隊的合作注重溝通和信任,不能不屑于做小事,永遠都要保持親和誠信,把專業理論運用到具體實踐中,不僅加深我對理論的掌握和運用,還讓我擁有了一次又一次難忘的開發經理,這是也是實訓最大的收獲。
現在我對“一個人最大的財富是他的人生經歷和關系網絡”這句話非常的有感情,因為它確實幫了我們不少。除此課本上的知識畢竟有限。通過實訓,我班同學都有這樣一個感覺,課本上的理論知識與實際工作有很大差距,只有知識是遠遠不夠的,專業技能急需提高。
從最初的笨手笨腳,到現在可以熟練的按照流程開發軟件,這都與我班每個人的努力是分不開的。十個月的實訓,教會了我們很多東西,同時也鍛煉了大家踏實、穩重的能力,每個人都很珍惜這來之不易的實訓機會。
在實際工作中經常會和不同的人打交道,然而他們的態度是不可恭維的,你會感覺
到他的不耐煩以及他的高傲,所以這就需要學會溝通的方式及說話技巧,學會靈活面對。通過這十個月的實訓,我班同學都收獲頗豐,總體來說對這次實訓還是很滿意的。盡管實訓很累,每天早出晚歸。但真的很感謝學校能夠提供我們這樣好的實訓機會,以及東軟給予我們的實訓平臺。我們深刻的了解到,只有經歷過,才知道其中的滋味。對于我而言,喜歡體驗生活,可以說通過這次實訓,真真切切的讓我了解了什么是軟件開發,什么是軟件工程,讓我對于軟件最初的觀點也有了本質性的改變!程序員不僅僅是一份職業,更是一份細心+一份耐心+一份責任心=人生價值的詮釋。即將走向工作崗位的我們更要不斷加強自己的專業技能,社會不會要一個一無是處的人,所以我們要更多更快的從一個學校人向社會人轉變。為此我們將會在以后的日子里繼續努力,不斷激勵經驗,不斷磨礪自己,早日走向工作崗位。
關于軟件創新的心得體會篇4
在這次軟件工程課程中,我學到了很多東西,第一次深刻的體會到了什么叫做用工程化的思想來編寫軟件,以前自己也寫過一些小型軟件,沒有做過大型的項目,直到這次課堂我擔任組長并組織組員共同完成“個人圖書管理系統”這個項目,第一次和別人合作,才發現運用工程化的思想來做是如此的有必要。
從這里,我才真正的意識到實施一個軟件工程并不是說簡單的會編碼就能夠解決問題的,我們更多的精力不是放在編碼上,編碼只是一個很小的模塊,只占到那么小的一個部分。這個事實在很大程度上顛覆了我以前的思想,在我以前的認識中,似乎整個軟件就是編碼,除此無它,還好有老師的指導,不然真的會出現老師所說的,撞得頭破血流之后才想起來用軟件工程的思想來完成這個工作。
剛真正開始工作之前,我們費了很多的時間來完成一些前端工作,如需求分析和可行性分析,這塊工作在別人看來可能是相對無關緊要,甚至是多于的,其實,換做在以前,我也會這么認為。可是,我現在算是深深地明白了磨刀不誤砍柴工的道理,這些工作的完成太有必要了,太重要了,要想你的軟件有用有市場,能被別人接受和認可,在進行過程中不會出現崩潰性的問題,這些工作缺一不可。
還有就是接下來的一些設計模塊,此模塊與軟件編碼涉及比較緊密,主要是解決一些參數傳遞和接口通訊的問題,此模塊對我的觸動遠沒有上兩個模塊對我的影響大,因此再次也不做過多的介紹。
在整個活動的完成過程中,作為組長,我收獲很多,我發現,要是組里有個人不怎么想做事情時,他對于整個組織的影響是毀滅性的,正所謂“一顆老鼠屎,能壞一倉谷”,以后我的組織里要是出現這樣的人,我絕不會給他繼續留下來的機會,我會在第一時間將他清除出去。還有就是,作為組長,你要做的最重要的事情,不是發揮自己的聰明才智,而是創造出一個平臺,讓別人去發揮,你所要做得,出了保證這個平臺的完整性和公平性外,還有就是協調好各組員之間的關系。
關于軟件創新的心得體會篇5
一直以來期望從事自己喜歡的事業的我,對軟件開發有者及大的興趣,可由說種.種原因使我從事工作以來走了好幾年彎路,心中的夢想遲遲不能得以實現,可程序員的夢想從來沒有從我的心中抹去,但這扇大門好像并沒有向我敞開,今天,貴公司給了我敲開這扇大門的機會,讓我真實體驗了程序員的誕生過程。早就聽說,程序員的前幾個月是最苦的,可從來沒有感受到,海馬實習基地讓我提前感受到了剛剛進入軟件行業的壓力和困惑,再也沒有在自己家里隨便寫段小程序后的那種“自豪”感了。要面對每天必須面對的問題,再也不可能以“逃避”而了之了。也讓我感覺到做為一個程序員所應該具備的基本素質在這不到一個月的實習過程中也讓我深深體會到了作為一個合格的程序員應該具備的基本素質。
團隊精神和協作能力是程序員應該具備的基本素質,最近的工作中讓我深深休會到了這一點,由于小組成員配合不好,使本來很方便的cvs給自己的工作帶來的及大的麻煩,一不小心自己寫的的東西就會被小組別的成員在上傳文件的時候給覆蓋掉,一整天的工作可能就這樣被反工,我們小組這次就是因為協作不好,導致各模塊之間不法連接,給工作帶來了及大的麻煩,消耗了大量的勞動力還沒有提高工作效率。這使我深深的體會到:一個成功商業性軟件的開發必須有一個有強大凝聚力的團隊,個人的力量是有限的,團隊精神和良好的協作會使我們做出優秀的軟件。
良好的文檔是正規研發流程中非常重要的環節,作為代碼程序員,30%的工作時間寫技術文檔是很正常的,缺乏文檔,一個軟件系統就缺乏生命力,在未來的查錯,升級以及模塊的復用時就都會遇到極大的麻煩。這次的這個小小的項目,就因為文檔上的一點點理解錯誤讓我們花了很大的工夫去改代碼,改頁面。很慶幸的是,這是一個小項目,要是大項目,這種問題可能就會導致大量的代碼修改,可見文檔在一個項目中起者巨大的做用。
此外,良好的代碼編寫習慣,不但有助于代碼的移植和糾錯,也有助于不同技術人員之間的協作。作為一個程序員,對需求的理解能力也是很重要的,只有真正理解了一個模塊的作用,才會寫出高效率的代碼,才能使整個軟件項目作出來更加優秀,具備更好的安全性和穩定性,我在寫代碼的過程中就遇到了需求理解上的問題,使得寫出來的代碼功能不全,幸好不是給客戶發現在,要不,這個軟件的商業價值可能就會打折扣了。單元測試對于一個程序員來說是不可不做的一項工作,不做好測試就會給后期的集成工作帶來麻煩,往往為了一個小問題會讓我們查找好多模塊,給后期工作帶來很大麻煩。
這一段時間的工作也讓我明白了一點:一個優秀的程序員必須不斷的學習,隨時總結,找到自己的不足,這樣逐步提高,才能讓自己很快的成長起來。
關于軟件創新的心得體會篇6
本著對IT業的憧憬,走進了中城泰信(北京)信息技術有限公司,我在公司所從事的工作是軟件測試,在真正投入到工作之前,我在網上查詢了許多測試員的相關要求,了解了作為一個測試人員必須耐心,細心和平和的心態,他的目標是盡可能早一些找出軟件缺陷,提高產品的質量,降低維護的成本,盡可能的達到客戶的需求。
軟件測試員的一個基本素質是:打破沙鍋問到底。另外還必須具備探索精神,有創造性,追求完美,判斷準確,老練穩重,強的說服力以及受過編程方面的教育等素質,同時也還必須是個故障排除能手,等等。還沒看完就發現自己離這些要求真的好遠,更進一步認識到自己必須要全心全意投入工作,虛心請教,一切都得從頭開始。另外,測試并不是單純意思上的機械的"測試",它首先要求對產品非常熟悉,不管是從功能上還是操作上。更為重要的還有就是我們要了解客戶的需求,根據客戶的要求來測試,看看產品是否能達到他們的要求。
而從這些方面考慮則要求我們必須比任何人都要熟悉產品的一切。公司的主要產品是電腦還原軟硬件和電腦鎖等一些電腦安全周邊的產品,在真正的投入到測試這個工作之前,我們首先該做的就是熟悉產品,而最最直接的途徑便是查看說明書,剛開始每天都是打開電腦,看產品說明書,重復的看,本以為看幾遍就都記住,但是到公司進行考核的時候,才發現原來自己真的什么都沒有掌握,第一次考核不及格,雖然具體的分數沒有看到,但是那份心情,卻使自己始終無法忘懷,也更讓自己認識到要虛心的,按部就班的好好熟悉產品,要做到對產品耳熟能詳。
在我實習期間公司給北京市自來水集團負責查表稅費稽查等系統,它主要應用是水費的業務管理。對于我們來說,它是一個全然陌生的產品,老總要求我和跟我一起實習的同事三天之內迅速熟悉產品的各種功能及完成測試。當時聽了嚇一跳,一個對于我們來說全新的產品,一天就要全部掌握而且要測試出它尚存在的問題,這似乎很不可能,而且也有點不相信自己有這樣的能力。但是一天下來,我們竟然可以從什么都不懂,到熟練的掌握。并且也完成了一些簡單的測試,發現了一些界面錯誤。但是對它的具體性能和功能的測試還沒有完成,不過老板并沒有責怪我們,只是讓我們明天接著做,聽了心里有些安慰。因為本以為他會大發雷霆呢。
那一天對于我來說最大的收獲便是,要相信自己,不要被沒有去真正實踐的事情而嚇倒,其實如果你真的去嘗試,你會發現一切都沒有你想象的那么難,只要你努力,沒有什么不可以。最后在我們的努力下,共用了不到三天的時間,熟練的掌握了的白板的操作,對它的界面、功能、性能等做完了全面的測試,及時做了總結,反饋給北京的公司,讓他們對存在的錯誤做了修改,而且我們還協助老總教會了銷售人員,以便他們能夠在11月29日 的會議上能夠熟練的操作,把產品展現給自來水集團的工作人員。后來聽說得到了很大的反響,公司同事聽了都非常的高興,想想那兩天的班算是沒有白加。
實習結果幾個月的實習下來,讓自己走進了一個全新的領域,開始了自己真正的工作生涯。實習無所謂結果而言,更確切的說,它是一個開端,一個讓自己學會成長的地方,當然也確實讓自己長大了許多。不管是從工作技能上還是從為人處事上,我都感覺到了有很大的提高。首先,在工作技能上,因為從事的是測試工作,對于自己來說是一個全新的概念,一切都是從頭開始的,而更需要自己的努力、耐心和細心。這些都是自己欠缺的,但是在工作了這幾個月后,真的發現自己有了很大的改善。雖然離真正的軟件測試人員的要求還有很大的距離,但是自己一定會努力,向著自己的目標前進。其次,在為人處事方面,也讓自己成熟了許多。雖然不能用語言來描述,但是確實可以從生活中的點點滴滴感覺得到。經歷使人成長,只有真正的經歷過,才可以讓自己真的成熟起來,要想真的出人頭地,好的為人是前提。
實習總結說來自己真的算是很幸運吧,我應聘的職位是軟件測試員,當初在大家包括我自己的眼里都認為軟件測試的要求非常高,而且似乎有一種可望不可及的感覺,但是當自己真正的接觸了這個行業之后,發現其實并沒有那么的高不可攀。不過后來發現自己所從事的,并不是真正意義上的軟件測試,只是一種"手腦"測試罷了,不過雖然如此,但依然學到了很多,尤其是對計算機的硬件知識和底層操作有了更深的一步了解。還記得剛剛走入公司的時候,感覺很奇妙,一切都是那么新奇,那么陌生,不敢隨便講話,凡事都小心翼翼的,這對于性格開朗的我來說,簡直到了折磨的程度,不過幸運的是很快就跟所在部門的同事混熟啦,公司雖然很小,但是工作的氛圍卻非常的輕松。也許大家都是年輕人,且都是剛剛進入社會不久,所以有很多的共同話題,在工作之余,和同事之間的關系相處的很融洽,完全化解我當初的煌煌不安。
總之,通過這次實習,確實讓自己成長了許多。在實習期間,我學到了許多東西,遇到了一些困難,也看到了自己本身存在著許多問題。在測試時要想使自己的測試更加周全。總會遇到這樣那樣的問題,當前的軟件的功能日趨復雜,不學到一定的深度和廣度是難以在實際工作中應付自如的。因此反映
出學習的還不夠,缺點疏漏。需再加以刻苦鉆研及學習,不斷開拓視野,增強自己的實踐操作技能,為以后能做好測試工作而努力。
關于軟件創新的心得體會篇7
軟件工程心得體會未接觸軟件工程之前一直都很想學這門課程,因為覺得這門課很牛,是那些有工程師稱號的高手才擺弄的東西。學了一個學期的軟件工程課,終于知道了個軟件工程的大概。學的時候總覺得很抽象,理解起來好像不難,但總是摸不著頭腦一種很茫然的感覺。曾經以為程序就是軟件,軟件就是程序。學習這門課程第一個收獲是,知道了二者的不同之處。以前做過的一些小型的軟件比如加密軟件,我也只是在程序旁邊附上一個軟件的說明,看來已經很接近作坊了。不過大的項目沒有接觸過,用軟件工程的方法還是第一次。我想也是程序的不斷復雜化導致了軟件危機的發生,使得人們不得不探索新的解決方法。
經過倪老師的講解,理解了軟件工程,就是一套用于軟件的團隊開發,以提高軟件質量和程序員工作效率為目的的規范。其核心就是,對于軟件開發的5個重要組成部分:需求分析,設計,編碼,調試,維護,如何組織這5個部分的工作,以及如何完成每一個工作。吾生也有涯,而知也無涯,學習永無止境。起初,對軟件工程處于一知半解的狀態,分工比較混亂。
在劃分模塊后明確了各自分工,漸漸形成良性循環。在學習過程中,知道了團隊合作十分重要,爭議固然存在,但通過討論、協商,群策群力,在不斷磨合中能夠達成一致與默契。團隊成員中能力各有高下,互相尊重,各取所長,不宜妄自菲薄。組長多加協調,組員積極配合,才能合作愉快。學習能力體現在能盡快接受新的知識,順應變化,學為所用。
上《軟件工程導論》這門課,我的收獲大概如下:我們為什么需要軟件工程呢?上面已經給出了一些原因。專業點講,軟件工程最終是為了實現“軟件制造業”的社會化,工業化大生產,提高其勞動生產效率。只有如此,軟件業才能實現社會化,工業化大生產,才能“做大做強”。沒有管理的設計是失敗和混亂的設計,沒有設計指導的編程是無序的忙碌的。根據開發的軟件的規模,應該適當程度的運用軟件工程化的思想,需要靈活,畢竟我們開發的軟件大多數是中小型的,大型的并不多見(我是這么認為的)。但只要涉及人員間的交流和溝通,或多或少都要需要軟件工程才能更有效率,工作成果更穩定。
其實開發軟件,就像是解決一個邏輯問題。想想自己平時是怎樣寫程序的。首先是要有一個想法,即我寫的這個程序是要干什么的;然后就是對要實現的核心功能大概構思一種或多種實現方法,并從中選出一種自認為是較好的;接下來就是將涉及的各種主要或次要功能分成各個模塊;最后就是分模塊來編碼和DEBUG。在我看來,除了第一步外,其余的步驟應該是一個循環的過程。在編碼的過程中,你總是需要不斷地回過頭來修改原先的模塊設計,甚至最初選定的實現算法。具體到每一步的工作要怎樣完成,是非常靈活的,只要把握住大體的方向就行。在進行分析,設計,編碼,調試,維護這幾部分的工作的時候,最核心的就是文檔的編寫。1.可行性分析就是關于當前項目能不能干的分析結果。
2.項目描述這是在決定立項以后,對當前項目的一份扼要說明。
3.需求分析就是對客戶要求的功能的定義。
4.軟件設計這就是對程序的每一個模塊的詳細設計的說明文檔。
5.開發日志我一直都認為這是文檔中最有趣的部分。開發日志相當于編碼階段的文檔,它的形式可以很隨意,主要是記錄一些在寫程序時突然萌發的靈感,或對代碼的一些微小的修改,或對程序結構的一些微小變動等,還要對上述這些修改變動作些說明。
6.測試分析用于指出程序存在或潛在的缺陷和錯誤,以及程序性能的數字描述。
關于軟件創新的心得體會篇8
這學期學習了軟件工程實踐這門課,我覺得這是對上學期的軟件工程課程學習的檢驗,上學期學習軟件工程只是我們淺顯的認識,相比之下,這學期就更加全面的說明了開發一個項目所需要的步驟以及開發項目過程中所需要注意的諸多細節。如果說上學期的課程注重理論基礎的話,那么這學期的軟工實踐,顧名思義,就是側重我們動手操作的能力。
原來我認為開發一個項目最重要的就是寫代碼,似乎整個軟件都是編代碼,因為自己動手能力不強所以就很排斥做項目。可是經過我們學習軟工課程到團隊做項目再到學習軟件工程實踐課程之后,我才真正意識到實施一個軟件工程項目并不是說簡單的會編碼就能夠解決問題的,因為一個軟件的生命周期分為三個時期:軟件定義時期、開發時期、維護時期,而這三個時期整體又分為七個階段,他們分別是:問題定義、可行性研究、需求分析、總體設計、詳細設計、編碼和單元測試、綜合測試,由此可看出,當我們開發一個項目時,更多的精力不是放在編碼上,編碼只是一個很小的模塊,而是項目的整體結構上。
在寫軟工實踐體會之前,我想在這里總結一下上學期三人團隊做 項目的相關事宜。上學期我們三人團隊根據軟件開發的步驟開發一個名為“西大老鄉‘薈’”的社交系統,主要是為西大學子提供一個找老鄉的平臺。雖然只進行到詳細設計階段,沒有進一步實現,但是我還是從中學到很多東西的。首先要先確定項目主題,也就是這個項目用來做什么,可以解決什么問題。接著就是這個項目是否有研究的必要以及是否有解決的辦法,針對我們的項目,我們對西大的一些學生做了問卷調查,并從調查中繼續完善系統本身的做用戶。第三步根據我們確定的項目主題進行需求分析,這一步驟當時做的不是很好,比如所畫E-R圖、數據流圖等都有考慮不周的問題,導致接下來的概要設計、詳細設計進行的很困難,有些步驟甚至還需要返工。
從我們在需求分析中出現的問題,使我們明白了軟件定義階段對于一個項目的開發是至關重要的,當軟件定義階段完成時必須要用正式的文檔準確的地記錄目標系統的需求。只有前期的準備工作做得好,后面的工作才能順利進行。雖然項目最后沒有完全實現,但是起碼我們已經初步體會到軟件項目開發的步驟,以及每一步所需要完成的文檔等內容。
這學期的軟件工程實踐雖然不是親自動手開發一個系統,但是張元平老師以“物聯網物流倉儲管理系統”為主給我們講解了一個真實系統的開發過程,從計劃到項目系統的發布實施,以及每一步必須生成的文檔。我主要從以下五個方面談一下我的心得體會。
第一、行業背景說明方面
對于一個軟件系統的開發,第一步就是問題定義,了解所開發系統的行業背景,制定計劃。當我們計劃確定以后就要對項目系統本身進行可行性研究,主要從技術可行性、經濟可行性和操作可行性三個方面著手。就比如《物聯網物流倉庫管理系統》的行業背景說明文檔中非常詳細地分析了當下物聯網物流行業的整體業務說明、應用背景、未來發展趨勢以及相關應用案例等四個方面,項目團隊中系統分析員就可以根據這份文檔以及相關的調查資料對將要開發系統的進行定義等工作。
原來我們寫這類文檔的時候就是草草了事,不會做得這么詳細,而這次看到大型項目的行業背景說明也是這么詳細,也讓自己認識到不管是軟件開發的那個階段都要認真對待,這些瑣碎的文檔都是后期開發項目的支撐,只要它們做的透徹,后面的開發工作才能更順利的進行。
第二、項目需求說明方面
這部分項目需求說明就是軟件定義時期中需求分析階段,而該階段的主要目的就是了解用戶的需要,根據用戶的需要確定系統必須完成那些工作,并對目標系統提出完整、準確、清晰、具體的要求。在需求分析結束之前系統分析人員要寫出一份需求規格說明,即為《物聯網物流倉儲管理系統》項目需求說明文檔。我們可以看出該文檔也是非常詳細,相比之下我們之前做項目時寫的需求規格說明書就非常不合格,不僅格式不正確內容也是少之又少。
在這方面,這篇文檔給我啟發很大。首先就是文檔的格式,要美觀整齊,讓人看著舒服方便。其次就是文檔的內容,原來它不是很重要,寫文檔的時候也不知道怎么寫就借鑒下網上的內容,結果根本就沒有把自己項目的需求寫明白,以至于自己最后都有些糊涂,所以根據以前的經驗教訓我會對這部分更加重視。
第三、系統概要設計方面
這部分內容分說的是軟件設計時期的概要設計階段,該階段的主要目的就是實現系統的功能、設計軟件的結構、模塊組成以及模塊之間的關系。在概要設計階段,我們可以站在全局的高度上,花較少的成本,從抽象的層次上分析對比多種可能的系統實現方案和軟件結構,從中選出最佳方案和最合理的結構。在這個階段還會具體畫出E-R圖、數據流圖等方面的設計。
比如《物聯網物流倉庫管理系統》的系統概要設計從項目概述、設計約束、功能單元與功能模塊設計、數據E-R圖設計、總體設計、界面設計等六個方面介紹,通過讀這個文檔,我覺得最重要的還是總體設計,分別從邏輯架構設計、物理架構設計、技術架構設計設計系統。在這個階段中模塊要做到高內聚低耦合,這樣開發出來的系統才會具有更高的獨立性。
在原來做項目時沒有編寫過這類文檔,在該階段只是畫了結構圖、層次圖以及相關的模塊劃分,對該類文檔尚未重視。通過張老師的講解和自己的學習,我相信在以后做項目的時候一定會注意到這類文檔的編寫。
第四、詳細設計與分析方面
詳細設計階段就是把概要設計階段的每個模塊進一步設計,確定每個模塊所需要的算法和數據結構。在這個階段還是需要我們設計出程序的詳細規格說明,而不是編寫程序。在詳細設計階段,系統設計人員可以通過使用程序流程圖、盒圖、PAD圖等過程設計的工具和Jackson圖等面向數據結構的設計工具進一步設計系統相關接口,主要包括界面設計接口、業務單設計接口、單元模塊設計接口等,這些對于以后的編碼工作都是極其重要的。
第五、編碼和測試方案方面
關于編碼,我認為編碼要想做的完美必備條件就是前面的軟件定義和軟件設計時期要按部就班的做,文檔一定要按要求書寫,不能偷懶也不能草草書寫。對于編碼也要有相應的文檔書寫規范,要使源程序代碼的邏輯簡明清晰、易讀易懂。這樣盡管我們不是設計系統的人員,當看到源程序代碼的時候也能容易讀懂代碼的意思。
其次就是測試的內容,從測試的文檔中我們可以得出,其實測試在軟件開發中同樣占據了重要的地位,它主要就是盡可能多的找到問題并排除其中的潛藏的錯誤,最終把一個高質量的軟件系統交給用戶使用。它要求測試人員也要有很高的技術水平。
關于軟件創新的心得體會篇9
這次軟件工程實訓是從20__.12.26號開始的,截至20__.12.31號。實訓內容是用java相關知識(主要是jsp)做一個物流配送系統。下面談談對這次實訓的看法。
因為自己平時對java知識儲備不足,特別是jsp這一塊基本不了解怎么回事,所以一拿到這個項目,我心里都是沒有底的,再加上我被分到的那個組,我知道就意味著是我一個人在戰斗了。呵呵,26號,實訓開始了,我們的老師是來自中軟國際公司的程序員,一個是周褀,一個是朱映,都是一身樸素的著裝,讓我感覺做軟件的也沒什么兩樣。老師介紹了自己之后,就直接切入正題了,分析了下我們各個組的系統,即將用到的知識,然后就總體把覺得需要補充的知識(jsp和數據庫連接等這幾塊)給我們實際操作了下,因為當時看到用jsp,還講的那么認真,當時我就后悔了,平時要是多聽點,現在老師這么認真的給我們講,這是一個多么難得的機會啊。后悔也沒用啊,開始還勉強能理解一點,后來就直接暈了。然后再給大家介紹了一些即將用到的工具,比如rationalRose,SVN,MyEclipse等等。接下來的幾天就不再細講了。下面談談通過這次實訓的心得體會吧。
通過這次實訓,讓我了解到工程開發的過程,可行性分析——>需求分析——>概要設計——>詳細設計——>代碼編寫——>測試——>驗收。從技術方面上,我開始jsp基礎基本上就是零的,在老師和syz2(另外一個物流小組,我一個人基本上是跟她們做的,或者說是看著她們做的)的幫助下,對jsp有了一個大概的認識。其實實訓開始前,我還以為做個系統沒什么大不了,可是當真正拿到一個項目,我卻真的無從下手了,而且就是在知道需求分析和詳細設計,在代碼編寫時,一樣寸步難行。通過這個實訓,也讓我了解到,團隊協作是多么的重要。一個人的精力是多么的有限。進一步理解到,企業為什么如此重視團隊協作。同時借用老師的話就是團隊協作固然重要,但是是建立在個人素質的基礎上,假設你個人素質不行,將會影響到整個團隊,就別提對團隊作更多貢獻了。__老師說這幾句話的時候,朝向了我,估計是有特殊意義的吧,所以,我將謹記老師的教導。
還有一個收獲是從一個同學(小胖)那里得到的,他的那組成員跟我的這組大體一樣,我倒是覺得沒什么了,不過他倒是很重視這個問題吧。然后他說出來,我也覺得這個問題確實其實是個大的問題。就是不管你會不會這門技術,會不會做這個東西,態度要正確才好,就算你不會做,你也應該認真的對待,將來 出身到社會,就不是說像你現在,不會做就不做,跑去玩游戲了。小胖說出了這段話,也在我身上有了一個印證,雖然我jsp技術知識為0,但我也還是在認真的跟著他們一起做,不會做,就多問,畢竟現在我們是學生,可以毫不顧忌的詢問各種問題,老師也會盡力為你回答。將來出身社會就不一樣了。雖然,我就算個打醬油的水平,但是這個醬油也要打得有涵量啊。不管怎么樣,我能對自己有個交待,雖然我不會,但是這次實訓我確實是認真對待了,六天的實訓,除了晚上加班外,還花了2個通宵來完成不同階段的任務,完成與否也不重要了,我至少我做了,這點,是這次我應該對自己的一個肯定。
這次實訓的心得基本上就是這些了,最后特別感謝中軟國際帶我們的那兩個老師(周褀,朱映),這兩個老師對待我們很平易近人,對我們提出的問題,總是不光解決了,還進行了擴展,晚上也跟我們一起加班加到很晚,印象尤其深刻就是朱映老師為了給小胖解決一個問題,臉都變紅了,還在繼續努力,這點我并不會覺得老師知識儲備不夠,我想應該是這個問題的突發吧,一時沒想到怎么處理。相反讓我感覺更多的就是老師很認真,很負責。還要感謝就是syz2小組的傾力支持,輔導。
關于軟件創新的心得體會篇10
在支付寶測試分析的角色和系統分析的角色是對應的,只不過一個是測試類的另外一個是開發類的。系分下面會有相應開發,測分下面會有相應的測試用例編寫和執行人員。也就是說測試分析文檔是對測試執行人員的一個指導(在我原來的理解方式上,覺得測試分析人員應該是用例編寫人員;而在這里測試分析人員是從業務上去分析的,用例是用例執行人員來寫并且執行的)。
而通過這次的這次分析覺得自己的測分還存在以下的問題:
1、太關注開發的內部實現邏輯。建議:將開發內部實現邏輯看成一個黑盒子,測試分析要從這個黑盒子的輸入和輸出上去看開發內部實現邏輯是不是有問題,而不應該先去了解開發的實現邏輯然后按照他們的思路去分析。
2、分析文檔寫的過于詳細,甚至將用例的步驟都寫了出來。建議:測試分析要從全局上去看問題,細節的東西即便是知道的,也要留給之后的用例編寫人員去了解(就像系分之后的開發需要去寫詳細設計的道理一樣),這樣后面的人才會自己主動去想問題。
3、分析文檔要考慮維護性問題,不要出現類似比如還款中狀態為“R”這種具體的數據內容。因為我的分析是對后續用例編寫人員的一個指導性的文檔,所以如果側分這么寫很有可能導致用例也照著這么寫,其實不管側分和用例都不應該具體寫到R這么細節,否則的話開發稍作變動我們就要相應變動我們的用例
4、沒有明確測試目的。review用例的時候,沒有提出每個用例需要明確一個測試目的,讓別人來看這個用例的時候能明白到底是怎么回事。
總結:
1、以后寫測試分析文檔,依據僅僅是prd文檔,必須拋開開發實現邏輯部分(即不去看系分文檔),待測分出來之后,再去看系分文檔,互相看看彼此考慮的是否存在遺漏的地方。等到在寫用例的時候再讓寫用例的人和相應的開發去互相明確更細節的東西。
2、寫用例我們目前都是僅僅做到對流程上的每個節點去單獨分析,細到看輸出的時候會關注到數據庫表的一個變化。但是除了以上部分,其實還少了對整體流程的關注,需要增加業務流程的各條路徑的一個覆蓋,在針對路徑的用例中不需要關注到數據庫表級那么細。
3、在做流程路徑覆蓋之前應該畫一個路徑圖,這個圖的畫法考慮各個入口的不同分開畫流程圖,分別進行路徑覆蓋。