當前位置

首頁 > 教育範文 > 工作總結 > 程序員年終個人工作總結

程序員年終個人工作總結

推薦人: 來源: 閱讀: 3.78W 次

總結是指對某一階段的工作、學習或思想中的經驗或情況進行分析研究,做出帶有規律性結論的書面材料,它是增長才乾的一種好辦法,我想我們需要寫一份總結了吧。總結你想好怎麼寫了嗎?以下是小編爲大家整理的程序員年終個人工作總結,歡迎閱讀,希望大家能夠喜歡。

程序員年終個人工作總結

程序員年終個人工作總結1

先自我簡介一下,本人從事開發進一年,09屆畢業生,08年11月開始上班,之前做asp,09年2月後開始做,由於公司轉型,現在帶十幾個人在一起搞開發,主要是關於準金融行業的行業管理軟件。年度總結在會議上也寫了,但僅限於對於工作總結及20xx年工作計劃,自我總結較少,因此今天專門做下自我的年度總結,主要從技術、管理、人生上面談談這一年的收穫,前輩路過歡迎多多指正。

技術

我在學校裏學的是電氣自動化,程序基礎僅限於c基礎課程的一些知識,後來由vb、html轉向asp,在asp上花費了不少時間,對asp比較熟悉,後來由於公司業務需要,將開發平臺轉向,開始對不是很感冒,以爲就是asp的一點擴展(那時還不知道三層架構,數據數據訪問全在頁面裏——!),後來招來幾個北大青鳥的過來終於意識到的強大之處,經過個人的努力已經逐步掌握了,現在層次上只能講個人覺得是入門而已,原因是多方面的,待會兒會講到。

相信從面向過程轉向面向對象的同學都有一種感覺:面向對象開始真的有點彆扭,涉及到屬性,尤其是類之間的各種關係,那時老想用面向過程傳遞參數多方面啊。於是老在想對象這種東西,從概念中跳中來,以自己的方式去理解才逐漸體會到頁面對象的精華來,分層次展現、分級別訪問、封裝對象之間各種關係逐漸真正理解了,尤其是對象之間的關係,如對象a與對象b兩者之間的關係,有些需要完全公開,有些需要隱藏,有些需要通過第三方傳遞,有些需要給自己的下級可見,有些需要讓下級去完成具體操作——這不是現實的實際模型嗎?應該這麼理解,面向對象來源於現實,它不是一種憑空空想出來的理論,這些對象之間的關係可以將其還原爲父子、夫妻、領導下屬、同事、朋友之間的關係。相比之下,頁面過程往往像是一股腦全部推給用戶使用,其中的數據與數據訪問方法層次不清晰,在模擬現實上它與面向對象相比更易於入門理解,實質上難於準確直接地表述。

面向對象上另一方面是它的設計模式,在之前的面向過程中對這個設計模式並沒有清晰地提出來,面向過程優秀的'代碼要求高內聚低耦合,從個人的理解上,這僅是對軟件開發方法“技”上理論總結;設計模式是達到了“道”的層次,因爲它從更大的方向、更抽象的層次來去表述具體的代碼模塊之間的關係,可以認爲設計模式是完全從實際的應用來不斷總結得來的經驗,之間並沒有這種術語,但相信前人肯定也使用到這種思想,它從實際應用於來,當然要應用於實際工作中,認真思考不斷總結每個人都會有自己的“設計模式”,可以借鑑前人的思想來去提升自己,不可去爲“設計模式”而設計模式。

具體到的實現模型中,真正理解它的機制與方法也就不難理解,記住b/s中離不開post或get,所有的autopostback、selectedindexchanged……都是去調用form傳值,加上runat=server的服務器控件打開它生成的源文件也是普通的html標籤,微軟的讓軟件開發更容易的思路是很好的,時代在前進,很多年前你使用c寫出mis證明你很牛,很多年之後你不在使用c去寫“學生管理系統”、“圖書館管理系統”那隻能說明你的腦子少一根筋,開發語言都有長處與不足的地方,因爲它們適用的場合不同,類似不能拿匕首去跟炮彈比,也不能拿c與php比,程序員都有一種偏執的心理,但一點要記住,你面對的用戶纔有最終發言權,程序能不能滿足需要,易用性、穩定性、成本纔是應當首先放到重要位置來去談的。

管理

最開始擔任管理一職時開發團隊加我在內只有四個人,那時只是抱着接受挑戰的心理去做管理,加上我本人比較重感情,團隊之間關係相處都不錯,但嚴重的問題逐漸顯露出來:工作的隨意性、團隊精神薄弱、工作方式蠻幹,印象深刻的是有幾個開始承諾項目不能完工,於是最後天天加班,一直做到早上6點,睡一會7點半接着上班,幾個同事都是年齡差不多的小夥子,幹勁十足。後來隨着時間的推進,問題越來越擺在眼前:項目遲遲不能完工,又由於公司待遇方面讓新員工感覺不值得,於是形成了老闆抱怨員工也抱怨的狀況,我在中間兩點都要去“消火”,這期間是我們部門相對最累的時間但也是相對感覺最充實的時候,後來,之前的員工跟我說“再也找不到那種感覺了”,這是我能想像的。這期間主要是老總對我十分信任,工作上主要是管理方法上對我指點了不少。後來我逐步體會到,管理應該是“大家定規則去遵守”,而不應該是“人管人”。

人管人很容易陷入一個誤區:領導去時時刻刻關注每個員工,這樣最後往往後造成員工對領導的敷衍了事,管理鬆了員工會責任下下降,管理緊了造成員工與領導關係緊張,另一方面領導時間精力有限必然耗費大量的精力在日常的監督中而不能投入到全

程序員年終個人工作總結2

程序員:舉世至主,萬元之源,衆物所幕,神祗皆掌,歲能長立,箜有己出。弈中悲苦,是自了得!幸事禍事飄忽於其思想,曉如今,心思想,新紀元,心結緣,把話晾。

世間萬物,出於思想,毀亦思想。而思想的源頭正是程序員。

程序員在被選擇作爲程序員之前,只是一個程序,程序當然就是指程序員的衍生物,程序員就是本單位思想的創造者,他創造着每一個程序,而程序也有其思想,這思想當然是程序員寫進去的,程序員就這樣靠着周而復始的`寫程序來獲得自己的永生,這或許也是一種宿命,他要一直寫下這程序來完成前任程序員給予的使命,當然每個程序員都有着崇高的使命感,不然他們是做不了程序員的。

寫程序固然是一種快樂,他可以隨着自己的思想創造出一切自己所思自己所想的東西出來,任由思想在空寂遊蕩而有其始終。雖然這是一項每天創造新鮮的活,然程序員終有其果。於是,新紀元再次到來,當程序員寫下足夠的程序後,他有了新的選擇,那就是退出自己的思想,把任務交給下一代的程序員來完成。在這之前,當然有件最主要的事需要做,那就是創造出一個新的程序員。如此,程序員將會將自己寫進程序,爲達此目的,他將用盡索想提前寫好自己成爲程序後的萬物程序,保證新老程序員的順利交接

程序員經過一直以來的堅苦努力,終於熬到了紀元期。憶當初,自己被選擇做了這舉世至主,縱是萬元之源,然其中悲苦,是自了得!

我們都是別人寫下的程序,然誰有能理解程序員之痛,程序員有着衆物所幕的歲能長立,然生生死死,亦不曾快活。

程序員年終個人工作總結3

時間一晃,一年的時間就這樣過去了。回顧過去的這段時間,可以說是一部辛酸史。因爲本身之前沒有學的這個專業,所以,在這行業裏面,基本上技能爲零。好在上級領導的正確引導和同事的關心與支持,加上自己的努力,這才漸漸進入這個圈子。在過去的一段時間裏,我對自己的工作總結如下:

一、培訓學習和日常工作積累。

在X月中旬我來到了XXXX公司信息科技有限公司參加招聘,經過幾輪面試和筆試,終於能夠有幸加入了XXXX公司這個大家庭,在我進入公司時我拿到的第一份資料就是公司介紹和新員工入職說明,當時只是覺得公司很正規,很強大。在和部門領導以及項目經理交流後,感覺公司很親切,很溫馨。對其它方面就不太知道了,特別是對視頻監控幾乎一無所知。通過三個月的親身體會,對智能交通和公司有了一定了解。公司的理念在平時的工作以及項目開發時體現的淋漓盡致,本人對公司的理念非常認同。公司發展不忘回報社會的壯舉,令人敬佩。公司以人爲本、尊重人才的思想在實際工作中貫徹,這是XXXX公司能發展壯大的重要原因。在十年左右的時間實現跨越發展的確很不容易,在智能交通行業深入發展是XXXX公司的雄心壯志,也是凝聚人才的核心動力。現在公司在視頻監控以及安防行業起到了舉足輕重的地位,今後還將更加輝煌。

二、遵守各項規章制度,認真工作,使自己素養不斷得到提高。

愛崗敬業的職業道德素質是每一項工作順利開展並最終取得成功的保障。在這半年多的時間裏,我能遵守公司的各項規章制度,兢兢業業做好本職業工作,半年來從未遲到早退,用滿腔熱情積極、認真地完成好每一項任務,認真履行崗位職責,平時生活中團結同事、不斷提升自己的團隊合作精神。一本《細節決定成敗》讓我豪情萬丈,一種積極豁達的心態、一種良好的習慣、一份計劃並按時完成竟是如此重要,並最終決定一個的人成敗。這本書讓

我對自己的人生有了進一步的認識,渴望有所突破的我,將會在以後的工作和生活中時時提醒自己,以便自己以後的人生道路越走越精彩。

三、認真學習崗位職能,工作能力得到了一定的提高。

根據目前工作分工,我的'主要工作任務是(1)參與公司軟件項目的開發與測試;(2)負責XX省路警聯合指揮中心軟件系統的維護工作。通過完成上述工作,使我認識到一個稱職的開發人員應當具有良好的語言表達能力、紮實的技術能力、較強的邏輯處理能力、靈活的應變問題能力、有效的對外聯繫能力。在參與項目開發的過程中,發現很多看似簡單的工作,其實裏面還有很多技巧。

四、不足和需改進方面。

雖然加入公司這個大家庭已經半年有餘,對開發技術掌握的還不是很深,對發現問題的處理還不是很全面,對分工的工作還沒有形成系統的計劃。隨着對公司和工作的進一步熟悉,我也希望能夠在今後的工作中更加迅速的提升自己的業務能力以及技術能力,我覺得多做一些工作更能體現自己的人生價值。“業精於勤而荒於嬉”,在以後的工作中我要不斷學習業務知識,通過多看、多問、多學、多練來不斷的提高自己的各項業務技能。學無止境,時代的發展瞬息萬變,各種學科知識日新月異。我將堅持不懈地努力學習各種知識,並用於指導實踐。在今後工作中,要努力做好開發人員的本職工作,把自己的工作創造性做好做紮實,爲項目的開發以及公司的發展貢獻自己的力量。

五、工作計劃 暫時做出以下幾點規劃:

1、要提高工作的主動性,做事幹脆果斷,不拖泥帶水;

2、工作要注重實效、注重結果,一切工作圍繞着目標的完成;

3、把握一切機會提高專業能力,加強平時知識總結工作;

4、精細化工作方式的思考和實踐。

5、虛心請教比我做的優秀的其他同事,向他們學習技術或經驗。

6、要提高大局觀,是否能讓其他人的工作更順暢作爲衡量工作的標尺;

程序員年終個人工作總結4

20xx年即將過去,新的一年即將來臨。爲了在新的一年裏不斷的提高自己的工作效率,現將這一年的工作總結如下:

一、思想方面

嚴格按照一個程序員應有的素養來約束自己,愛崗敬業,具有強烈的責任崗和事業心,積極主動認真的學習專業知識,工作態度端正,聽從公司的安排,積極配合客戶完善數字化校園系統。

二、工作方面

熱愛自己的本職工作,能夠正確認真的對待每一項工作,工作投入,熱心爲大家服務,認真遵守勞動紀律,按時上下班,有效利用工作時間,堅守崗位,需要加班完成工作的要按時加班加點,保證工作能夠按時完成。在這一年多的時間裏面,我本着把工作做的更好這樣一個目標,主動了解公司的開發項目流程,請教他們開發技術上的問題。

三、 工作心得

1. 在這一年多的時間裏面,我參與的都是團隊合作的項目,無論是自己還是同事,我們都將就團隊精神。在信任自己和他人的基礎上,思想統一,行動一致,這樣的團隊一定會攻無不克戰無不勝。我們的很多工作是一起完成的,在這個過程中,大家互相提醒和補充,大大提高了工作效率,所有的工作中溝通是最重要的,一定要把信息處理的及時,有效和清晰。

2. 每一個項目在開始着手的第一步,一定要和客戶把需求溝通清除,只要瞭解項目的需求,纔有可能真正做好一個項目。我們需要向客戶提出,要求客戶提供所有涉及該項目的資料,每次與客戶見面都需要熟悉業務與程序的程序員隨時記錄需求。

3. 工作中,將任務詳細化,詳細到每個頁面,甚至是一個頁面中的圖片什麼時候做好,做好到什麼程度,這樣把工作進度有計劃有方向的定下來,做事很有效率。

4. 每天的工作小結真的很重要,這讓我們每天都有計劃的知道自己幹了什麼,不是漫無目的的工作,所以我們應該養成,日記、週記、月記、年記的工作習慣。

5. 工作並不是一成不變的,也許有一天你要去其他崗位幫忙,所以同事之間的技術要相互學習,也許有一天,公司需要你發揮其他的技能幫忙,所以相互學習也是很重要的。

四、工作教訓

在公司工作的期間,我也發現了自己離一個符合公司要求的`程序員還有很多差距,主要體現在工作技能與工作經驗的不夠,也是我以後要在工作中不斷磨練和提高自己的地方。仔細總結一下,自己在工作中主要有以下方面做的不夠好:

1. 工作的條理性不夠清晰,要分清主次和輕重緩急。

在開發時間很倉促的情況下,事情多了,就一定要有詳細而主次分明的計劃,哪 需要立即完成,哪些可以緩緩加班完成,在這方面還有很大的優化空間。

2. 對流程、業務需求不夠熟悉。

在工作中,發現因爲流程或業務需求的問題而不知道如何下手的情況有點多,包括錯誤與缺漏還有當時設計考慮不到位的地方,對於這塊的控制力度顯然不夠,平時總是在開發,但說到底對業務很熟悉纔是項目很好完成的前提。

3. 缺乏工作經驗。

4. 學習的知識不夠廣泛。

一個項目中,涉及的技術往往有很多種,知識多了,就會靈活變通,以後我也會加強這方面的學習。

五、工作計劃

要提高工作主動性,做事幹脆果斷,不拖泥帶水。工作要注重實效、注重結果,一切工作圍繞着目標完成。 要提高大局觀,是否能讓其他人的工作更順暢作爲衡量工作的標尺。 把握一切機會提高專業能力,加強平時知識總結工作。精細化工作方式的思考和實踐。 虛心請教比我做的優秀的其他同事,向他們學習技術或經驗。

其實作爲一名員工,所有的地方都是需要學習的,多聽、多看、多想、多做、多溝通,向每一個員工學習他們身上的優秀工作習慣,豐富的專業技能,配合着實際工作不斷的進步,不論在什麼環境下,我都相信付出總會有回報的。

程序員年終個人工作總結5

在過去的一年中,我擔任公司開發部的一名軟件工程師,主要從事着JA項目的開發工作,這一年來我低調努力工作着,不求閃亮顯眼和光芒四射,只爲平靜和淡定;這一年中所做的成績如下:

一、財政局項目,本人獨立負責開發會計處的三個子系統:

1、會計人員信用查詢系統。

2、代理記賬機構信用查詢系統。

3、會計人員網上報備系統。

以上三個子系統上線後,方便了社會各界查驗會計人員的真實信息、方便了查詢合法的代理記賬機構信息,以及方便了各單位對會計人員的報備。

二、餐飲行業項目

在團隊開發項目中直接參與了豪享來餐飲有限公司總部的信息綜合管理平臺項目,主要負責的系統有:

1、房屋租賃合同管理系統。

2、信息收發管理系統。

3、會員管理系統。

4、基礎信息管理系統和人事管理系統的`部分功能模塊。

系統應用後,豪享來在管理全國各門店房屋租賃合同上,必須程度上提高了管理效率,並且及時有效帶給了相應預警信息;信息收發系統方便了總部及時傳遞各項信息;會員系統更好的管理全國各門店的會員信息;人事系統在管理中減少工作量等。

三、金融行業項目

我參與了中國銀行廈門分行,企業轉賬管理系統中的部分模塊開發。

本系統方便了企業快速實現超多和複雜的轉賬工作。

四、國土資源與房產管理局項目

正在負責和開發的是住房貨幣化補貼網上申報審覈系統。

本項目採用了新技術,使界面更加大方美觀,很大程度上改善人機交互平臺的效果。

五、總結不足:

駐豪享來總部做項目時,由於團隊內部某些原因,加之外面的其他因素,必須程度上影響了工作效率、影響開發進度和影響最終軟件質量;這是包括我在內項目組中的每個成員都務必檢討的地方。

透過總結一年來的工作,儘管有了必須的進步和成績,但在一些方面還存在不足,個別工作做得還不夠完善。在今後的工作中,我將努力找出工作中的不足,以便在日後的工作中加以克服。自我不斷的學習吸收新技術,認真學習好規範規程及有關文件資料,並且及時的把新技術應用在實際的項目中,進一步提高項目的技術含量。

程序員年終個人工作總結6

在過去的一年中,我擔任公司開發部的一名程序員,主要從事着xx項目的開發工作,這一年來我低調努力工作着,不求閃亮顯眼和光芒四射,只爲平靜和淡定;這一年中所做的成績如下:

一、獨立開發方面。xx項目中本人獨立負責開發會計處的三個子系統:會計人員信用查詢系統。代理記賬機構信用查詢系統。會計人員網上報備系統。這三個子系統上線後,方便了社會各界查驗會計人員的真實信息、方便了查詢合法的代理記賬機構信息,以及方便了各單位對會計人員的報備。

二、團隊開發方面。餐飲行業項目,在團隊開發項目中直接參與了xx餐飲有限公司總部的信息綜合管理平臺項目,主要負責的系統有:房屋租賃合同管理系統。短信收發管理系統。會員管理系統。基礎信息管理系統和人事管理系統的部分功能模塊。系統應用後,xx在管理全國各門店房屋租賃合同上,一定程度上提高了管理效率,並且及時有效提供了相應預警信息;短信收發系統方便了總部及時傳遞各項信息;會員系統更好的管理全國各門店的會員信息;人事系統在管理中減少工作量等。

三、項目管理方面。金融行業項目,我參與了xx銀行xx分行,企業轉賬管理系統中的部分模塊開發。本系統方便了企業快速實現大量和複雜的轉賬工作。xx項目正在負責和開發的是住房貨幣化補貼網上申報審覈系統。本項目採用了新技術,使界面更加大方美觀,很大程度上改善人機交互平臺的效果。

四、總結不足。駐xx總部做項目時,由於團隊內部某些原因,加之外面的其他因素,一定程度上影響了工作效率、影響開發進度和影響最終軟件質量;這是包括我在內項目組中的每個成員都必須檢討的地方。

通過總結一年來的`工作,儘管有了一定的進步和成績,但在一些方面還存在不足,個別工作做得還不夠完善。在今後的工作中,我將努力找出工作中的不足,以便在日後的工作中加以克服。自我不斷的學習吸收新技術,認真學習好規範規程及有關文件資料,並且及時的把新技術應用在實際的項目中,進一步提高項目的技術含量。

程序員年終個人工作總結7

這一年來的工作已經結束了,我知道這對我而言是有很大的提高,作爲一名程序員我堅定的認爲自己是可以做的更好,在未來的學習當中我還是深有體會的,以後在學習當中,在這一點上面我希望自己可以做的更加的到位,作爲一名技術人員,我還是做的非常不錯的,希望自己在這一年來的工作當中我可以繼續維持好的狀態。

這一年來的工作當中,我現在還是希望可以做的更好,公司對我的培養還是比較多的,在這方面我是堅定的體會到了這一點,在未來的工作當中,我是堅持的做好了很多的事情的,年終之際我回顧起來確實是獲得了很多,我也希望自己在以後的學習當中,我深刻的意識到了這一點,過去一年來我也是獨完成了很多的'工作,也和公司的同事一起合作了一些項目,在這個過程當中,我也確實是深刻的意識到了這一點,我知道在這方面我是維持了一個好的狀態,現在回顧起來我清楚的意識到了這一點,通過這次的項目我還是深有體會。

我絕得工作能力是需要不斷的去落實,對於這一點我是感覺非常有意義的,年終之際,在這個過程當中,我清楚的意識到了這些細節是可以做的更加到位,我覺得以後還會有更多的事情可以做好,這一年來的工作結束了我也是希望自己可以把工作做的更好,想要把工作做的更好,我還是深有體會,在一些事情上面,我確實感覺很有意義,在工作當中我進一步的調整好了自己各個方面的職責,公司對我個人能力還是做出了很多的判斷,我相信在這一點上面我知道自己各個方面是非常有意義的,在公司做好自己分內的職責,當然我也是意識到了自身的努力還是值得的,我也想要爲公司爭取更多的價值。

我也是清楚的意識到了自己的不足,雖然每天的工作很充實,但是在一些項目上面,還是做的不夠好,出現了一些細節的問題,這也確實是我應該要去調整好的,我會改正自己的不足之處,在以後的學習當中,我會繼續做好自己分內的職責,在程序工作方面應該要更加的細心,我會讓自己做的更好的,感激公司領導的關照,以後我也一定會讓自己做出更好努力,努力提高自己的工作能力,做技術工作讓我感覺很有意義,新的一年我一定會認真做好工作。

程序員年終個人工作總結8

光陰似箭,歲月蹉跎。轉眼間一年又過去了,回首過往,內心不禁感慨萬千。

由於之前的種種原因,我於今年十月份在公司入職,首先非常感謝公司給我這個成長的平臺,雖我來公司時間不長,但是公司給予的環境令我在工作中不斷的學習,不斷的進步,慢慢的提升自身素質與才能。在公司濃濃的愛崗敬業大環境下,我深受感染和薰陶。

工作上,看到周圍同事都圍繞公司的中心工作,對照相關標準,嚴以律己,較好的完成各項工作任務。在作風上,周圍同事都能遵章守紀、務真求實、樂觀上進,始終保持嚴謹認真的工作態度和一絲不苟的工作作風,勤勤懇懇,任勞任怨。看到同事們都這樣的對待自己的本職工作,讓我也不由自主的用這樣的.標準要求自己。

來公司第一週在閆振生組長的悉心指導和幫助下,我很快了解和熟悉了我們JAVA組正在開發評課管理項目的業務流程及項目結構,使我很快的融入組織、迅速的進入開發模式。進入開發模式後,有時候會遇到一些問題在我們組成員的幫助下都一一得到解決。所以我在此感謝我們組的全體成員,謝謝你們平日的幫助和鼓勵,我會更加努力做好自己的本職工作。

可能由於來的時間短,我對公司的體會和感慨也僅僅只有這寥寥數筆,但是我從中學到的東西是受益終生的。

展望未來,在新的一年裏我要提高工作的主動性,做事幹脆果斷,不拖泥帶水;工作要注重實效、注重結果,一切工作圍繞着目標的完成;要提高大局觀,是否能讓其他人的工作更順暢作爲衡量工作的標尺;精細化工作方式的思考和實踐;虛心請教比我做的優秀的其他同事,向他們學習技術和經驗。其實作爲一名新員工,在工作中有很多地方都是需要向老員工學習的。多聽、多看、多想、多做、多溝通,向每一個員工學習他們身上的優秀工作習慣和豐富的專業技能,配合着實際工作不斷的進步。我一直堅信這兩句話:“三人行必有我師”和“天道酬勤”。

在參加工作的這短短的一個半月中,我深刻的體會到,即使自己把所有的精力都投入到技術工作中去也不可能能做到完美,畢竟技術工作太繁雜,項目多而人手少,但多付出一些,工作就會優化一些,這就需要認認真真沉下心去做事情,職業做事,誠信待人。

最後,對公司提一點點小意見——希望公司多組織一些員工活動,增進各個部門之間同事的相互瞭解,爲以後的工作中同事之間能更好協作夯實基礎。

程序員年終個人工作總結9

過去的一年,軟件研發部團結協作,以及在公司這充滿奮鬥的環境下,我以嚴肅認真的工作態度和百折不饒的精神,努力的完成了公司的各項工作,在軟件研發、團隊協作和個人成長上也取得了一定的成績。在公司一年的工作已經結束,特向公司總結匯報如下:

一、軟件研發

根據公司的安排,項目的需要。在自身的努力、伍經理的幫組,團隊的合作下,克服重重技術困難,增長了工作經驗,收穫豐盈:

1、xx開發。

以前我在其他公司也做過一些開發,但是底層和架構與頁面樣式我都是沒有涉及到的。通過這一年在本公司的的這些項目程序中的鍛鍊,我成長了,我學會了很多很多。

首先,面嚮對象語言的收穫。對於當前編程的主流思想是對象,任何事物都可以用對象來表示。以前理解這些話很費解都是從表面上理解,沒有從深入的體會,通過這次xx項目的深入,不管是數據還是外部一些條件我們都可以抽象成對象,都可以用對象來表示,具體可以用語言中的類方等。xx如此,xx如此,xx也同樣如此。

其次,具備獨立完成xx知識方面的能力。以前沒有做過xx的東西,加上這次深入的做,這次涉及到的領域也非常廣,常用的重要的都有涉及,並且還補充xx實際操作中空白的部分。通過這一年的開發,在xx方面我能勝任這方面的工作,能獨立完成這方面的工作。

再次,xx方面存在一些不足。xx通過xx這次軟件的開發,也發現自己的不足,如基礎知識掌握不牢,缺乏編程整體思想。這些都是需要在工作中完善和改進的。

2、數據庫開發。

數據庫是伴隨着項目以來用的最多最平凡的技術。以前對數據庫只是會一些簡單常用的操作,經過這一年項目的實戰,對數據庫的操作增加了一些豐富的經驗。爲以後的工作和經驗的積累都奠定了堅實的基礎。同時在項目中還用到了xx與xx數據庫,這是我的收穫。

優點:能熟練的運用數據庫技術進行開發。特別是對xx數據庫的操作,經過這麼長時間的積累,基本上能合理的設計和新建數據庫,同時在數據結構上也加強了對數據庫的理解。通過項目的實踐現在能熟練使用和編寫多種xx語句。還掌握了一些關於數據庫優化xx語句優化的方法,能進行一些簡單的優化。

缺點:數據是一門比較先進的技術,並不是你會寫一些xx語句,能建幾個數據庫你就是數據庫工程師。要成爲一個好的數據庫管理員是要經過長時間的工作積累。針對自己的不足,

在以後的工作和學習中多接觸,多運用新的知識點。充實自己的經驗和知識儲備。

二、團隊協作

上面的成功與收穫,除了自身努力外,以及公司的支持。是這個團隊鑄造了我。我們這個團隊也是因爲有了我們這些拼搏協作的隊員,使得它成爲一個具有務實、拼搏、創新精神的團隊。我與軟件研發小組是一個整體,這裏的團隊總結也就是我在這個團隊中的收穫。

務實:公司下發的任務,下發的工作,件件都是用心去做的`。我們這個團隊中沒有一個人在工作的時候做了工作以外的事情,都是實實在在的做跟工作相關對公司有益的事情。相信在伍經理的帶領下現在是這樣,以後同樣也是這樣。

拼搏:公司給的每一個任務不管它多難,如果工作沒有完成我們會晚上加班,也要儘可能的完成當天的工作。如果工作實在忙,爲了趕進度我們放棄週末休息時間也要儘可能的使項目提前。

創新:現在我們開始項目的時候都會進行研討,一般都會進行一個效率和邏輯的分析與討論,保證程序正確的前提儘可能的提高程序的效率。

互助:我們小組內只要任何一個人出現技術或其它的問題,我們都會彼此都會盡可能的去幫助他。不會因爲某一個人而拖住整個項目滯後。

交流:我們在項目中會及時溝通自己的收穫,特別是一些針對性的技術問題。這樣可以省了很多重複研究的時間,這是一筆很可觀的時間。

在交流中只要我會的,我懂的,我不會去吝嗇。我會積極的去與你交流,我的團隊名言“人強團則強,人弱團則削”。

三、個人成長

通過公司這快一年的鍛鍊與學習我真的進步了很多,不管從技術上還是做事上,都不像以前那樣了。我在公司學到的懂得的使我飛速成長。

以前在校很少自己做程序,對軟件工程更是一無所知。來到公司,開始接觸"大規模"(其實現在看來實習的項目其實還是很小的)軟件開發,一時真的有些迷茫。比起VSS,MVC,QA,CMMI,我對JAVA,JSP,xML的一竅不通根本不值一提。大家都不想輸在"起點",所以都默契地在加班,這樣一直持續了實習的兩個月。

剛來的時候"始業教育"顯得慢吞吞,我們還經常盤算去哪哪玩之類的。我和xx(20個新生裏一個南區的兄弟,軟件學院的)還經常出去吃各種小吃,每到一處都嚐嚐本地的風味,這是他的習慣。之後開始的培訓還不是很難過,JAVA,C++,ORACLE,老師們講的很"好",可以說是非常好,好得我們沒有幾個人能聽懂。大家開始發愁,我也是每天晚上都基本看書到10點。

"我心說得虧哥們我還練過",來之前的2月份我就自己買了一本THINKINGINJAVA,看懂看不懂怎麼說也算是準備了一下JAVA。C++雖說沒去上過課,但憑我的直覺我就一下看中這東西很有用,自己也看過一陣。至於ORACLE,雖然不瞭解,但畢竟因爲佩服"雲飛揚"的性格和敬業精神,咱SQL選修也不是白混的。專業倒還有點"基礎",再加上咱這自學能力也不是吹的,基本維持。可等到後來的日語課就全迷糊了:本就沒有語言天賦,再加上記憶嚴重欠缺,總是特別害怕去上日語課。不過特別喜歡那個老師說話的感覺,加上她一直對我都很好,所以還是很用心的學着。

隨着培訓的收尾,我們開始正式進入項目。從需求分析,概要設計到詳細設計,我們一步一步的開始接觸軟件開發的每個細節。不了的就是每天都要記"週報",填寫自己的勞動成果。因爲這個我還被QA通報了好幾次呢,真的很鬱悶。其實現在我很感謝這種制度化的東西,某些情況下好習慣的養成是要靠強制來確保的。詳細設計之後就是企盼已久的編碼,我心想終於可以做點"正事"了。現在回頭一看才知道,其實編碼只佔軟件開發的整個過程勞動量的1/4左右,而且其他的環節也不是想象中的那麼無足輕重。

編碼我其實做的很不好,主要是因爲需求分析階段就沒有認真仔細的理解需求和規格說明,加上編碼時一個關鍵時段我回校和老同學敘舊。那陣項目經理(PM)就經常和我們說,"有問題自己想辦法,不要經常問我"。PM其實是在叫我們自己醞釀,遇到難題只有"憋"一"憋"纔能有真的收穫。而我不在的那三天正好是大家技術/思路上的一個"躍遷",很多難題的解決方法都基本成熟,大家的編碼也接近50%了,所以回來時我感覺已經掉隊很多。再一個就是編碼中期時機器出問題,環境搭不上了,這使我更加緊張和急躁,大大影響了我的士氣。

後來利用五一其間的加班我終於趕完了自己的模塊,達到了第一個里程碑。其實從發現落後到加班趕完這段經歷,對我來說也具有里程碑的意義。不僅考驗了我自己的能力和心理素質,也證明了我對集體的責任感和合作意識。我可以叫別人來幫我做趕上進度,但那樣我會錯過自己學習的機會,以後再遇到難題我還是不行;我也可以硬着頭皮導致項目延期,那樣我以後的日子保證不好過,而且這麼做也不符合我的性格。事實證明我頂住壓力獨立完成任務不管是對集體還是對我個人都是一件大好事。

緊張的編碼之後是單體測試,很多人都在繼續編碼,原來大家的編碼都是沒有完全做完。本是自己給自己挑毛病的過程,我們卻都用來完成之前沒有完成的任務,說來不禁可笑。

單體測試之後就是惡夢一樣的系統測試。傳說系統測試壓力很大,測試組找到BUG上報後這邊就得限期修改,之後提交給測試組進行下一輪的測試,迴歸若干次,測試結束後產品達到允許的缺陷率纔可以出荷。不過由於這時已經有人要返校體檢,其他人也軍心渙散導致集體"早退",測試沒有很正式的進行,只是簡單的做了一下界面的統一和功能的檢查,連性能測試都沒做。不能不說是實習的一個敗筆。

回想之前的工作,不到10周時間我們從學生開始轉變爲員工,從對公司完全陌生到有了一定的瞭解,不管是處世爲人還是技術思想我們都有確確實實的進步。

再結合我自己來看一看。的收穫就是我克服了有些自大的壞毛病,虛心的向別人學習。我知道這就是我練習與不同類型的人適應,交流的開始。技術上自不必說,我絕對學到了以前在學校一年也不一定學到的東西,這就是一個態度的問題。"態度決定一切",這句話太有道理了。

另外一點遺憾就是小孟說的,我似乎也感到自己有點"工作狂"的味道。爲了拿下那些代碼和BUG,我有好幾周都連續加班到晚上11點,由於工作佔用了時間,我連以前一直的跑步都沒堅持下去。這樣不是好兆頭,我必須要養成合理的作息制度,不管工作怎樣忙,必須不能佔用自己的作息時間。還有一個就是和別人的交往。曾因爲一些小事分別和老胡和哲明鬧了不愉快,幸好後來都說開了,大家沒計較。我一定要嚴謹,剋制,絕對不在以後的正式工作中做這樣的蠢事。

總體來說,我對實習充滿了快樂的回憶,也許是因爲我在大學的生活過於平淡和壓抑。希望我可以延續這樣的快樂,將自己帶上事業的頂峯。

程序員年終個人工作總結10

我於20xx年xx月xx日成爲公司的試用員工,到今天已將近三個月,在這近三個月的時間裏,使我學到了很多確實可行的管理經驗及新的施工方法,豐富了業務知識,這些主要得益於領導的培養和同事們的熱心幫助,靜心回顧。在這短短的兩個多月的時間裏,我已適應了目前的工作環境,對工作也逐漸進入了狀態。在瞭解公司的制度和工作流程基礎,逐步開展了具體的工作。先將近三個月的工作情況總結如下:

一、向老同事的學習。知道了做爲一個內業的基本要求,要負責本項目的各種內勤工作,並配合工程師做好各項工作。

二、協助各工程師完成變更洽商的申報及具體覈查工作。使我進一步瞭解了工程洽商簽證、收方工作及付款模式,公司的整套完整控制體系,不但保證了變更工程數量的準確性,又有效的控制了成本,爲後期結算提供了詳盡的依據。

三、配合項目經理完成公司和項目上安排的各項工作。以及收集整理與項目有業務關係往來的`各相關單位的文件,避免發生扯皮,維護公司的集體利益。

四、及時傳達集團以及公司的各種通知及活動安排。督促及協助各工程師合理安排各項工作事宜,圓滿完成各項目工作任務。

以上是我工作這一段時間的心得和體會,衷心的感謝公司給予的我這次試用的機會。在整個工作過程中,我認爲自己工作比較認真、負責、細心,具有較強的責任心和進取心;能積極學習新知識、新技能,來提高自己的綜合素質,注重自身發展與進步。但也存在着許多缺點與不足,與公司的要求和期望相比還存在一些問題和差距;對工作的預見性和創造性不夠;具體的經驗仍不是很豐富,在日後的工作中仍需要持續學習,不斷完善、不斷提高。

爲此,我特向公司申請:希望能根據我的工作能力、態度及表現給出合格評價,使我轉爲正式員工。

今後,我仍會用謙虛、謹慎的態度和飽滿的熱情投入到我的工作當中,爲公司創造價值,同公司一起展望美好的未來!

程序員年終個人工作總結11

光陰如梭,一年的工作轉瞬即將成爲歷史,伴隨着新年鐘聲的臨近,我們依依惜別碩果累累的20xx年,滿懷熱情的迎來即將到來的20xx年。在這年終之際,現對來公司一年的時間裏所作的工作彙報如下:

一、xx項目的編碼工作

瞭解xx項目的背景、及計劃安排,熟悉xx公司制度及業務流程,再到熟悉新能開發模式,之後我根據需求調研報告,從基本的數據庫創建,到編碼,完成了銷售部、生產部、採購部、質檢部四個模塊的基本單據的制單、審覈、選單、查詢、打印等系列的編碼工作;完成了xx項目的模塊測試及流程測試。

通過這段時間的努力,使我個人的`耐心、細心程度及對工作的合理安排得到了鍛鍊,學會了在繁忙之中找條理,危難之中找希望。同時自己也有一些不足之處,一些細節地方技術上還不太成熟,還需加以學習與鑽研。

二、xx項目的實施工作

x月初開始進行xx項目的實施,每天早起趕在企業上班前趕到企業進行xx的實施。實施期間主要是軟件的安裝實施及對企業的xx系統的使用人員進行軟件使用培訓;紀錄客戶使用過程中出現的問題,晚上下班後加班加點將每天的小錯誤及客戶變更修改完畢。

通過這項工作,使我原本欠缺的業務能力得到了很大的提高,並學到了很多與客戶交流的技巧及業務上的知識,更加明晰了xx系統的流程。但離一個成功程序開發人員的標準還差得很遠,在今後工作中,定會多多注意,加以改善。

三、幫助和使用手冊文檔的編寫

幫助的編寫使我熟悉了xx和xx的使用,爲後期的xx開發也奠定一定的基礎,使用說明的編寫,使我更加加深了項目開發的整體思路與技術要點,總結了前期開發和實施中碰到的問題,並又一次的對軟件整體進行了測試,對暴露出的小bug進行了最後的修改。

四、利用工作之餘的休息時間加強學習

平時注意收集有關xx方面的資料文件,提高自己的處理新問題和解決新問題的能力,並加強學習這一方面的知識,爲後期的工作打好基礎。

以上爲本人粗略的個人工作小結,請領導審閱,如工作上有不到之處,請領導不吝指出,以便本人及時改正,從而能更好地工作。

展望臨近的20xx年,我會更加努力、工作上認真負責,再接再厲,更上一層樓。相信自己會完成新的任務,能迎接新的挑戰。

程序員年終個人工作總結12

從我11月份離校來到溪谷晨歌網絡公司已將近一個半月了,從一個學生變成了一個員工,角色變了,職責也就變了。雖然工作上的很多困難都是在自己的預料之內,可是很多事情都不像在學校裏那麼簡單、單純。在項目開發的工作中,難題一個接一個的出現,自信心不止一次的受到過打擊,雖然自己早就知道,要做到符合公司的要求,做一名合格的程序員,在學校學的知識,根本就不夠,而且很不夠。每天醒來我都不斷勉勵自己,好好學,以後會好的。在此同時,公司也給了我很多學習的機會,這使我對以後的編程之路又有了些許信心。一、工作總結

11月下旬與12上旬的幾天,我的主要任務是將公司的靜態網站與數據庫連接做成動態的。由於功能比較簡單,做起來沒有遇到什麼困難。可是之後的“南京市磚瓦粘土信息管理”項目,裏面涉及到的一個地圖功能的實現,讓我不知所措,不知道怎麼實現。由於自己沒有能力完成項目,項目就交給了其他公司,之後的工作都是在合作公司南京寧派網絡科技有限公司裏學習、工作的,瞭解他們公司的開發項目流程,學習他們的開發技術,請教他們開發技術上的問題。二、在工作中主要存在的問題有:

1、由於開始對業務需求不是很熟悉,所以在寫需求分析與瞭解所要開發的過程中多次

出現因爲需求的原因,而不斷修改、返工的情況。

2、在開發中,用到很多我所不知道或很多我知道但不太熟悉的技術,有時甚至會出現這種情況,合作公司的技術人員,講個名詞,我都要百度一下具體什麼意思,涉及什麼技術。

3、在工作階段,有時比較偏向自己的工作方便,忽略了其他同事的工作上的量與難易。

有的功能自己怎麼方便怎麼寫,有點難爲其他同事,大家都要相互配合。

三、工作心得

1、在這將近一個半月的工作實踐中,我參與的都是團隊合作的項目,無論是在自己公司,還是在合作公司,我們都講究團隊精神。在信任自己和他人的基礎上,思想統一,行動一致,這樣的團隊一定會攻無不克、戰無不勝。我們的很多工作是一起完成的,在這個過程中,大家互相提醒和補充,大大提高了工作效率,所有的工作中溝通是最重要的,一定要把信息處理的及時、有效和清晰。

2、每一個項目在開始着手的第一步,一定要和客戶把需求溝通清楚,只有瞭解了項目的需求,纔有可能真正做好一個項目。我們需要向客戶提出要求客戶提供所有涉及該項目的資料,每次與客戶見面都需要熟悉業務與程序的最少一至兩個程序員隨時記錄需求。3、工作中,有一個無論是技術,還是經驗都比較讓人肯定的.前輩帶領,將任務詳細化,詳細到,每個頁面、甚至是一個頁面中的圖片什麼時候做好,做到什麼程度,這樣把工作進度有計劃有方向的贊定下來,做事很有效率。

4、每天的工作小結真的很重要,這讓我們每天都有計劃的知道自己幹了什麼,不是漫無目的的工作,所以我們應該養成,日記、週記、月記、年記的工作習慣。

5、工作並不是一成不變的,也許有一天你要去其他崗位幫忙,所以同事之間的技術要互相學習,也許有一天,公司需要你發揮其他的技能幫忙,所以互相學習也是很重要的,我在寧派公司,深有感觸,除編程之外,切圖、界面設計等工作都幹過。

四、工作教訓

經過一個半月的工作學習,我也發現了自己離一個符合公司要求的程序員還有很多差距,主要體現在工作技能與工作經驗的不夠,也是我以後要在工作中不斷磨練和提高自己的地方。仔細總結一下,自己在一個半月工作中主要有以下方面做得不夠好:

1、工作的條理性不夠清晰,要分清主次和輕重緩急;

在開發時間很倉促的情況下,事情多了,就一定要有詳實而主次分明的計劃,哪些需要立即完成,哪些可以緩緩加班完成,在這方面還有很大的優化空間。

2、對流程、業務需求不夠熟悉;

在工作中,發現因爲流程或業務需求的問題而不知道如何下手的情況有點多,包括錯誤與缺漏還有當時設計考慮不到位的地方,對於這塊的控制力度顯然不夠。平時總是在開發,但說到底對業務很熟悉纔是項目很好完成的前提

3、缺乏工作經驗;

4、學習的知識不夠廣泛;

一個項目中,涉及的技術往往有多種,知識多了,就會靈活變通,以後我會加強這方面的學習。

五、工作計劃

暫時做出以下幾點規劃:

1、要提高工作的主動性,做事幹脆果斷,不拖泥帶水;

2、工作要注重實效、注重結果,一切工作圍繞着目標的完成;

3、要提高大局觀,是否能讓其他人的工作更順暢作爲衡量工作的標尺;4、把握一切機會提高專業能力,加強平時知識總結工作;

5、精細化工作方式的思考和實踐。

6、虛心請教比我做的優秀的其他同事,向他們學習技術或經驗。其實作爲一個新員工,所有的地方都是需要學習的,多聽、多看、多想、多做、多溝通,向每一個員工學習他們身上的優秀工作習慣,豐富的專業技能,配合着實際工作不斷的進步,不論在什麼環境下,我都相信這兩點:一是三人行必有我師,二是天道酬勤。

在參加工作的這短短的一個半月中,我深刻的體會到,把自己所有的精力都投入進去,技術工作都不可能做到完美程度,畢竟技術工作太繁雜,項目多而人手少,但多付出一些,工作就會優化一些,這就需要認認真真沉下心去做事情,就是公司所提倡的企業精神:職業做事,誠信待人。

程序員年終個人工作總結13

光陰如梭,一年的工作轉瞬即將成爲歷史,伴隨着新年鐘聲的臨近,我們依依惜別碩果累累的過去,滿懷熱情的迎來即將到來的新的一年。在這年終之際,現對來公司一年的時間裏所作的工作總結如下:

一、xx項目的編碼工作

從了 解xx項目的背景、及計劃安排,熟悉xx公司制度及業務流程,再到熟悉新能開發模式,之後我根據需求調研報告,從基本的數據庫創建,到編碼,完成了銷售部、生產部、採購部、質檢部四個模塊的基本單據的制單、審覈、選單、查詢、打印等系列的編碼工作;完成了xx項目的.模塊測試及流程測試。

通過這段時間的努力,使我個人的耐心、細心程度及對工作的合理安排得到了鍛鍊,學會了在繁忙之中找條理,危難之中找希望。同時自己也有一些不足之處,一些細節地方技術上還不太成熟,還需加以學習與鑽研。

二、erp項目的實施工作

從x月初開始進行xx項目的實施,每天早起趕在企業上班前趕到企業進行erp的實施。實施期間主要是軟件的安裝實施及對企業的erp系統的使用人員進行軟件使用培訓;紀錄客戶使用過程中出現的問題,晚上下班後加班加點將每天的小錯誤及客戶變更修改完畢。通過這項工作,使我原本欠缺的業務能力得到了很大的提高,並學到了很多與客戶交流的技巧及業務上的知識,更加明晰了erp系統的流程。但離一個成功程序開發人員的標準還差得很遠,在今後工作中,定會多多注意,加以改善。

三、幫助和使用手冊文檔的編寫

幫助的編寫使我熟悉了xx的使用,爲後期的oa開發也奠定一定的基礎,使用說明的編寫,使我更加加深了項目開發的整體思路與技術要點,總結了前期開發和實施中碰到的問題,並又一次的對軟件整體進行了測試,對暴露出的小bug進行了最後的修改。

四、利用工作之餘的休息時間加強學習

平時注意收集有關xx方面的資料文件,提高自己的處理新問題和解決新問題的能力,並加強學習java及oa方面的知識,爲後期的工作打好基礎。

展望臨近的新一年,我會更加努力、工作上認真負責,再接再厲,更上一層樓。相信自己會完成新的任務,能迎接新的挑戰。

程序員年終個人工作總結14

光陰如梭,一年的工作轉瞬即將成爲歷史,伴隨着新年鐘聲的臨近,我們依依惜別碩果累累的20xx年,滿懷熱情的迎來即將到來的20xx年。在這年終之際,現對來公司xx個月的時間裏所作的工作彙報如下:

一、正義erp項目的編碼工作

瞭解xx正義項目的背景、及計劃安排,熟悉正義公司制度及業務流程,再到熟悉新能開發模式,之後我根據需求調研報告,從基本的數據庫創建,到編碼,完成了銷售部、生產部、採購部、質檢部四個模塊的基本單據的制單、審覈、選單、查詢、打印等系列的編碼工作;完成了正義項目的模塊測試及流程測試。

通過這段時間的努力,使我個人的耐心、細心程度及對工作的合理安排得到了鍛鍊,學會了在繁忙之中找條理,危難之中找希望。同時自己也有一些不足之處,一些細節地方技術上還不太成熟,還需加以學習與鑽研。

二、正義erp項目的實施工作

xx月初開始進行正義項目的實施,每天早起趕在企業上班前趕到企業進行erp的實施。實施期間主要是軟件的安裝實施及對企業的erp系統的使用人員進行軟件使用培訓;紀錄客戶使用過程中出現的問題,晚上下班後加班加點將每天的小錯誤及客戶變更修改完畢。

通過這項工作,使我原本欠缺的'業務能力得到了很大的提高,並學到了很多與客戶交流的技巧及業務上的知識,更加明晰了erp系統的流程。但離一個成功程序開發人員的標準還差得很遠,在今後工作中,定會多多注意,加以改善。

三、幫助和使用手冊文檔的編寫

幫助的編寫使我熟悉了dreameweaver和fireworks的使用,爲後期的oa開發也奠定一定的基礎,使用說明的編寫,使我更加加深了項目開發的整體思路與技術要點,總結了前期開發和實施中碰到的問題,並又一次的對軟件整體進行了測試,對暴露出的小問題進行了最後的修改。

四、利用工作之餘的休息時間加強學習

平時注意收集有關pb方面的資料文件,提高自己的處理新問題和解決新問題的能力,並加強學習java及oa方面的知識,爲後期的工作打好基礎。

以上爲本人粗略的個人工作小結,請領導審閱,如工作上有不到之處,請領導不吝指出,以便本人及時改正,從而能更好地工作。

展望臨近的20xx年,我會更加努力、工作上認真負責,再接再厲,更上一層樓。相信自己會完成新的任務,能迎接新的挑戰。

程序員年終個人工作總結15

7.5.3系統測試和調試

1.系統測試的意義及目的

系統測試是爲了發現錯誤而執行程序的過程,成功的測試是發現了至今尚未發現的錯誤的測試。

測試的目的就是希望能以最少的人力和時間發現潛在的各種錯誤和缺陷。應根據開發各階段的需求、設計等文檔或程序的內部結構精心設計測試實例,並利用這些實例來運行程序,以便發現錯誤。信息系統測試應包括軟件測試、硬件測試和網絡測試。硬件測試、網絡測試可以根據具體的性能指標來進行,此處所說的測試更多的是指軟件測試。

系統測試是保證系統質量和可靠性的關鍵步驟,是對系統開發過程中的系統分析、系統設計和實施的最後複查。根據測試的概念和目的,在進行信息系統測試時應遵循以下基本原則:

·應儘早並不斷地進行測試。測試不是在應用系統開發完之後纔開始進行的。由於原始問題的複雜性、開發各階段的多樣性以及參加人員之間的協調等因素,使得在開發各個階段都有可能出現的錯誤。因此,測試應貫穿在開發的各個階段,儘早糾正錯誤,消除隱患。

·測試工作應該避免由原開發軟件的人或小組承擔,一方面,開發人員往往不願否認自己的工作,總認爲自己開發的軟件沒有錯誤;另一方面,開發人員的錯誤很難由本人測試出來,很容易根據自己編程的思路來制定測試思路,具有侷限性。測試工作由專門人員來承擔會更客觀,更有效。

·設計測試方案的時候,不僅要確定輸入數據,而且要根據系統功能確定預期輸出結果。將實際輸出結果與預期結果進行比較就能發現測試對象是否正確。

·在設計測試實例時,不僅要設計有效合理的輸入條件,也要包含不合理、失效的輸入條件。測試的時候,人們往往習慣按照合理的、正常的情況進行測試,而忽略了對異常、不合理、意想不到的情況進行測試,而這些可能就是隱患。

·在測試程序時,不僅要檢驗程序是否做了該做的事,還要檢驗程序是否做了不該做的事。多餘的工作會帶來副作用,影響程序的效率,有時會帶來潛在的危害或錯誤。

·嚴格按照測試計劃來進行,避免測試的隨意性。測試計劃應包括測試內容、進度安排、人員安排、測試環境、測試工具和測試資料等。嚴格按照測試計劃進行測試可以保證進度,使各方面都得以協調進行。

·妥善保存測試計劃和測試例子,將其作爲軟件文檔的組成部分,爲維護提供方便。

·測試例子應是精心設計出來的,可以爲重新測試或追加測試提供方便。當糾正錯誤、系統功能擴充後,都需要重新開始測試,而這些工作重複性很高,可以利用以前的測試例子,或在其基礎上修改,然後進行測試。

2.測試過程

測試是開發過程中一個獨立且非常重要的階段,測試過程基本上與開發過程平行進行。

一個規範化的測試過程通常包括以下基本的測試活動。

(1)擬定測試計劃。在制定測試計劃時,要充分考慮整個項目的開發時間和開發進度以及一些人爲因素和客觀條件等,使得測試計劃是可行的。測試計劃的內容主要有:測試的內容、進度安排、測試所需的環境和條件、測試培訓安排等。

(2)編制測試大綱。測試大綱是測試的依據。它明確詳盡地規定了在測試中針對系統的每一項功能或特性所必須完成的基本測試項目和完成測試的標準。

(3)根據測試大綱設計和生成測試例子。在設計測試例子的時候,可綜合利用前面介紹的測試例子和設計技術,產生測試設計說明文檔,其內容主要有被測項目、輸入數據、

測試過程、預期輸出結果等。

(4)實施測試。測試的實施階段是由一系列的測試周期組成的。在每個測試周期中,測試人員和開發人員將依據預先編制好的測試大綱和準備好的測試例子,對被測軟件或設備進行完整的測試。

(5)生成測試報告。測試完成後,要形成相應的測試報告,主要對測試進行概要說明,列出測試的結論,指出缺陷和錯誤。另外,給出一些建議,如可採用的修改方法,各項修改預計的工作量及修改的負責人員。

3.測試策略和測試方法

軟件測試方法分人工測試和機器測試。

1)人工測試

人工測試指的是採用人工方式進行測試,目的是通過對程序靜態結構的檢查,找出編譯時不能發現的錯誤。經驗表明,組織良好的人工測試可以發現程序中30%~70%的編碼和邏輯設計錯誤。

人工測試又稱爲代碼審查,其內容包括檢查代碼和設計是否一致,檢查代碼邏輯表達是否正確和完整,檢查代碼結構是否合理等。主要有3種方法。

·個人複查:指程序員本人對程序進行檢查。由於心理上的原因和思維慣性的影響,對自己的錯誤一般不容易發現,對功能理解的錯誤更不可能糾正。因此,這種方法主要針對小規模程序,效率不高。

·抽查:通常由3~5人組成測試小組,測試人員應是沒有參加該項目開發的有經驗的程序設計人員。在抽查之前,應先閱讀相關的軟件資料和源程序,然後由測試

人員扮演計算機的角色,將一批有代表性的測試數據沿程序的邏輯走一遍,監視程序的執行情況。人工檢測程序很慢,只能選擇少量簡單的例子。

·會審。測試人員的構成與抽查類似。在會審之前,測試人員應該充分閱讀相關資料,比如系統分析說明書、系統設計說明書、源程序等。測試人員應儘可能多地列出典型錯誤。在會審時,由編程人員逐句講解程序,測試人員逐個審查、提問。通過這種方式,往往可能使編程人員發現自己以前沒有意識到的錯誤,使問題暴露=會審後,要將發現的問題登記、分析、歸類。

·代碼複審應該在被測軟件編譯成功之後。編譯都不通過的軟件,當然談不上覆審。在複審期間,應保證有足夠的時間,讓測試小組對問題進行充分的討論,這樣纔能有效地提高測試效率,避免出錯。

2)機器測試

機器測試是把設計好的測試例子作用於被測程序,比較測試結果和預期結果是否一致。如果不一致,就說明可能存在錯誤。機器測試只能發現錯誤的症狀,無法對問題進行定位。

機器測試分爲黑盒測試和白盒測試兩種。

(1)黑盒測試也稱爲功能測試。將軟件看成黑盒子,在完全不考慮軟件內部結構和特性的情況下,測試軟件的外部特性。進行黑盒測試主要是爲了發現以下幾類錯誤:

·是否有錯誤的功能或遺漏的功能?

·界面是否有誤?輸入是否正確接收?輸出是否正確?

·是否有數據結構或外部數據庫訪問錯誤?

·性能是否能夠接受?

·是否有初始化或終止性錯誤?

(2)白盒測試也稱爲結構測試。將軟件看成透明的白盒。根據程序的內部結構和邏輯來設計測試例子,對程序的路徑和過程進行測試,檢查是否滿足設計的要求。其原則是:

·程序模塊中的所有獨立路徑至少執行一次。

·在所有的邏輯判斷中,取“真”和取“假”的兩種情況至少都要執行一次。·每個循環都應在邊界條件和一般條件下各執行一次。

·測試程序內部數據結構的有效性等。

4.軟件測試步驟

軟件測試實際上可分成4步進行。

1)單元測試‘

單元測試也稱爲模塊測試,在模塊編寫完成且無編譯錯誤後就可以進行。如果選用機器測試,一般用白盒測試法,多個模塊可以同時進行。

測試一個模塊時需要編寫一個驅動模塊和若干個樁(stub)模塊。驅動模塊的功能是向被測試模塊提供測試數據,驅動被測模塊,並從被測模塊中接收測試結果。樁模塊的功能是模擬被測模塊所調用的子模塊,它接收被測模塊的調用,檢驗調用參數,模擬被調用的子模塊功能,把結果送回被測模塊。

2)組裝測試

組裝測試也稱爲集成測試,就是把模塊按系統設計說明書的要求組合起來進行測試。

即使所有模塊都通過了測試,但在組裝之後,仍可能會出現問題:穿過模塊的數據被丟失;一個模塊的功能對其他模塊造成有害的影響;各個模塊組裝起來沒有達到預期的功能;全局數據結構出現問題;另外,對於單個模塊來說其誤差可以接受,但模塊組合後,可能會出現誤差累積,最後到不能接受的程度,所以需要組裝測試。

通常,組裝測試有兩種方法:一種是分別測試各個模塊,再把這些模塊組合起來進行整體測試,即非增量式集成;另一種是把下一個要測試的模塊組合到已測試好的模塊中,測試完後再將下一個需要測試的模塊組合起來,進行測試,逐步把所有模塊組合在一起,並完成測試,即增量式集成。非增量式集成可以對模塊進行並行測試,能充分利用人力,並加快工程進度。但這種方法容易混亂,出現錯誤不容易查找和定位。增量式測試的範圍逐步擴大,錯誤容易定位,而且已測試的模塊可在新的條件下再測試,使測試更徹底。

3)確認測試

經過組裝測試之後,軟件就被集成起來,接口方面的問題已經解決,將進入軟件測試的最後一個環節——確認測試。確認測試的任務就是進一步檢查軟件的功能和性能是否與用戶要求的一致。系統方案說明書描述了用戶對軟件的要求,所以是軟件有效性驗證的標準,也是確認測試的基礎。

確認測試,首先要進行有效性測試以及軟件配置審查,然後進行驗收測試和安裝測試,經過管理部門的認可和專家鑑定後,軟件即可交給用戶使用。

4)系統測試

系統測試是將已經確認的軟件、計算機硬件、外設和網絡等其他因素結合在一起,進行信息系統的各種組裝測試和確認測試,其目的`是通過與系統的需求相比較,發現所開發的系統與用戶需求不符或矛盾的地方。系統測試是根據系統方案說明書來設計測試例子的,常見的系統測試主要有恢復測試、安全性測試、強度測試、性能測試、可靠性測試、安裝測試。

5.調試’

調試的任務就是根據測試時發現的錯誤,找出原因和具體的位置,進行改正。調試工作主要由程序開發人員來進行,誰開發的程序就由誰來進行調試。

目前常用的調試方法有如下幾種:

·試探法。調試人員分析錯誤的症狀,猜測問題的所在位置,利用在程序中設置輸出

語句,分析寄存器和存儲器的內容等手段來獲得錯誤的線索,一步步地試探和分析出錯誤所在。這種方法效率很低,適合於結構比較簡單的程序。

·回溯法。調試人員從發現錯誤症狀的位置開始,人工沿着程序的控制流程往回跟蹤代碼,直到找出錯誤根源爲止。這種方法適合於小型程序,對於大規模程序,由於其需要回溯的路徑太多而變得不可操作。

·對分查找法。這種方法主要用來縮小錯誤的範圍,如果已經知道程序中的變量在若干位置的正確取值,可以在這些位置上給這些變量以正確值,觀察程序運行的輸出結果。如果沒有發現問題,則說明從賦予變量一個正確值開始到輸出結果之間的程序沒有錯,問題可能出在除此之外的程序中,否則錯誤就在所考察的這部分程序中,對含有錯誤的程序段再使用這種方法,直到把故障範圍縮小到比較容易診斷爲止。

·歸納法。歸納法就是從測試所暴露的問題出發,收集所有正確或不正確的數據,分析它們之間的關係,提出假設的錯誤原因,用這些數據來證明或反駁,從而查出錯誤所在。

·演繹法。根據測試結果,列出所有可能的錯誤原因。分析已有的數據,排除不可能和彼此矛盾的原因。對餘下的原因,選擇可能性最大的,利用已有的數據完善該假設,使假設更具體。用假設來解釋所有的原始測試結果,如果能解釋這一切,則假設得以證實,也就找出了錯誤;否則,要麼是假設不完備或不成立,要麼有多個錯誤同時存在,需要重新分析,提出新的假設,直到發現錯誤爲止。