時間:2022-03-22 11:37:56
開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇測試項目總結,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。
一:20xx年工作回顧及總結
回顧20xx年這一年來的工作,我在公司領導及各位同事的支持和幫助下,嚴格要求自己,按照公司要求,比較好地完成了本職工作。通過近一年的學習和工作,工作模式上有了新的突破,工作方式有了較大的改變。現將這一年的工作情況總結如下:
1、總體來說,2016年我主要完成了“……銀行系統”、“……渠道管理平臺”、“……”、“……”、“……”“……”的日常測試以及質量控制工作;“……”已經穩定上線運行6個多月,“……”即將上線。
2、日常我主要負責項目測試工作、測試文檔編輯、參與功能需求設計、協調開發進度、總結經驗分享、完成所需知識積累、工具學習及研究、兼容性軟件測試。就在銀聯項目工作來說,主要的工作內容有:a、測試項目案例、測試用例的設計與編寫;b、對測試過程中遇到的問題進行溝通,并提供意見;c、設計業務功能流程,提供參考意見,繪制關鍵業務流程;d、進行主要功能的界面測試、功能測試;e、按照測試用例執行測試計劃;f、進行需求驗證工作。
3、知識的總結與分享,完成客戶端在安卓4.0/4.1,IOS6.0以上系統上出現的兼容等問題,完成了兼容性測試案例的編寫以及兼容性測試的培訓工作。在日常工作中,發現兼容上重大問題,在測試部門群中分享。
4、完成所需知識積累,學習所需知識、工具以及技能。在工作中學習了銀行業務流程規范、學習公司研發規范、參加了公司組織的技術培訓、學習了各種測試工具的使用。
二:對公司的建議與意見
對公司和部門建設上,我有以下幾點建議:
1、對員工進行金融知識的系統培訓,讓測試人員了解銀行業務流程,有助于測試人員更加詳細了解業務流程,測試過程會少走很多彎路。
2、部門內希望多組織技術交流討論,促進測試工作的開展和提高。一年至少有2次這樣的交流。
3、公司在項目開發前期,希望盡可能的明確需求,盡可能的詳盡需求說明書內容。在測試過程中發現很多項目缺少需求說明書,需求說明書不明確或者需求說明書內容錯誤,誤導了開發和測試,浪費了時間,影響了項目進度。
4、建議項目需求設計可以有測試員參與討論。
5、公司管理有點混亂,個人感覺公司對每位員工的重視程度不夠!節假日公司應該給每位員工一定的福利和關心。
6、個人感覺平時的效率比較低,希望測試部門能夠有所調整。希望公司能制定質量控制標準以及開發、測試工作流程,讓開發更好的了解測試的流程,增強開發團隊與測試團隊的配合,提高工作效率。
7、加強部門測試成果的積累與沉淀,提高團隊測試水準,希望我們的團隊能夠做的更好,能夠已團隊的形式參與軟件項目的開發,而不僅僅是一個項目中毫不起眼的小小測試員。
三:20xx年工作計劃與學習計劃
20xx年工作計劃就是希望通過自己的努力,讓我們的產品更加完美,讓自己在軟件測試技能上有所提高,更多的關注軟件產品的開發過程,提高工作效率、做到與用戶的需求一致,提高公司軟件產品用戶滿意度。
具體來說20xx年工作計劃有:努力提高自身測試水準,努力學習金融知識以及業務流程,學會需求分析,掌握需求分析在測試中的作用,參與公司更多的開發項目的測試工作。
隨著計算機軟件技術的高速發展,軟件測試在軟件開發過程中的地位也越來越重要,軟件測試是保證軟件質量和可靠性的重要手段之一,軟件測試人才需求猛增,軟件測試已經成為計算機專業的重點專業課程。傳統的軟件測試教學模式,測試理論和測試實踐嚴重脫節,不能很好的滿足軟件企業對測試人才的要求。依托廣東東軟學院的特色教學實踐1321教學模式,進行以實踐能力和就業能力為導向的課程綜合實踐探索,深化教學改革,激發學生的興趣,讓學生貼近現實的工作場景中學習,了解在軟件開發過程中測試崗位的工作過程和知識要點,培養學生軟件測試應用技能型人才培養為目標。
二、軟件測試課程實踐構建的主要思路
軟件綜合實踐安排在大三課程開始之前的實踐學期進行,為期4個星期,每天4學時的實踐教學指導,軟件測試專業的學生已經學過專業基礎課《Java程序設計》、《計算機文化基礎》、《網頁設計》、《數據庫設計》、《軟件開發過程實踐》,專業課《軟件測試概論》、《功能測試》,學生初步具備了參與綜合實踐的專業素質能力。在綜合實踐開發團隊中,將軟件開發專業、網站規劃與設計專業、數據庫管理專業、軟件測試專業和網絡技術的同學,以3:1:1:1:1這樣的比例進行團隊建設,從中選出一位同學兼職項目經理,實現學生自主管理,配備具有雙師素質的專業老師,一位教師負責指導5-7個團隊的項目開發,當需要進行專業指導時,臨時進行專業化實踐指導,全方位分階段、分崗位進行進行全程交叉技術指導,同時邀請合作單位的軟件工程師,同步進行項目過程的跟蹤,給予學生崗位最精準的實踐指導。采用項目驅動的方法開展實踐教學,通過開發真實的軟件項目,以軟件工程開發過程為導向,制定軟件綜合實踐——軟件測試方向的實踐方案,分階段進行實踐,選擇有較強的實踐性和創新性的項目給學生選題,選題要貼合實際項目,需求相對容易獲取,具有一定的創新性,能夠激發學生的學習興趣。首先需求的調研,需求的評審,編寫測試計劃,設計測試用例,測試執行,測試記錄的跟蹤和測試總結報告,對每個測試階段進行教學設計,不斷的將所涉及到的知識點融入到實踐中,增強學生職業崗位素養能力,團隊合作的意識,同時探索以學生管理學生的模式進行實踐探索。
三、軟件綜合實踐測試崗位的工作過程與方法
在軟件綜合開發實踐過程中,對軟件測試崗位的同學依據軟件工程的理論進行指導,結合企業的工作流程,采用分組的教學模式,采用軟件測試常用的W模型,進行教學指導,培養學生的團隊合作能力,溝通能力,實踐能力。測試崗位的工作主要分成兩個三個部分,第一部分是需求的調研和評審,測試計劃中測試策略的選擇、任務的時間安排和測試用例的設計;第二部分主要是測試執行,安裝測試工具,部署測試環境,按照測試所設計的測試用例進行手動功能測試,嘗試利用自動化測試工具QTP進行自動化測試,運用所學過的黑盒測試方法,進行web測試,兼容性測試等方法的測試工作,將所發現的問題記錄到測試管理平臺(QC)的缺陷缺陷跟蹤表中,修復后,進行驗證性測試,第三部分就是測試總結報告。
四、軟件綜合實踐的考核
1.答辯委員會的組成。立體化全方位的考核方式,采用學生團隊答辯的方式進行最終的考核,答辯委員會成員由軟件開發方向教師、網站規劃與開發教師、數據庫管理方向教師、軟件測試技術方向教師和企業工程師共同組成。2.軟件測試崗位的知識點的考核。每個專業都設計了一套科學有效的評價體系,從三個部分對學生的能力進行全方位評。第一部分IT職業素養能,占總成績比例的30%,考勤、項目管理能力、文檔編寫能力、團隊合作與溝通能力、演講與答辯能力;第二部分團隊實踐成果,占總成績比例的30%測試環境部署、測試工具軟件的安裝、測試執行中缺陷報告的跟蹤、測試總結報告的編寫;第三部分崗位技能成果,占總成績比例的40%,軟件開發過程文檔:需求評審報告、測試計劃報告、測試用例報告。
五、軟件綜合實踐教學實踐的意義
1.軟件綜合實踐項目分組教學的意義2.軟件測試崗位同學的收獲3.綜合實踐教學的后續影響4.軟件綜合實踐教學的改革未來方向
作者:張彤宇 李晶 姚庚梅 單位:廣東東軟學院計算機科學與技術系
參考文獻:
[1]羅先錄.IT類專業實踐教學的三個層次[J].計算機教育,2007(18):14-15.
【關鍵詞】軟件測評 測評過程 測評方法
1 審計信息平臺介紹
為了落實制約機制和監督權力作為審計的核心,加強反腐敗體制機制創新和制度保障的要求,需要建設審計信息平臺。該平臺的總體目標是建立一個“統一、高效、實用”的工作信息系統,使其成為總公司及所屬單位審計人員開展日常審計的平臺,成為總公司和所屬單位信息共享和信息交互的通道。審計信息平臺系統主要是以信息化手段實現總公司及所屬單位部分審計流程的規范化和標準化,固化業務流程,輔助各級領導和審計人員管理業務工作,銜接工作界面,細化操作實務,輔助審計工作,提升工作質量。
對于這樣大規模的應用系統,具備了相當高的復雜程度、技術水平和開發成本。如果該系統存在缺陷,在使用過程中發生故障,都將造成不良影響。軟件測評就是幫助用戶解決應用系統的質量問題,作為系統上線前檢查必要的質量保證手段,從而提高系統質量。軟件測評不是系統開發方內部測試,也不是用戶測試,而是由具有相關資質的獨立的第三方測評機構,根據被測系統方的需求,依據相關國家標準、行業標準或國際標準對被測軟件的質量進行全面的測試和評價。
2 軟件測評
軟件測評主要是利用人工或者自動化的方式,站在客觀、第三方的角度,系統的盡可能多的發現被測系統中的錯誤,檢查被測系統是否滿足需求規格說明書或是達到預期結果,從而提高被測系統的質量。
軟件測評相比軟件測試更注重評審過程,在測試的每個階段以及產生的相關文檔都需要組織專家對其結果進行評審,對測試結果進行深入分析總結,制定應對措施積累經驗。根據軟件測試質量控制體系對測評活動全過程進行質量控制。因此要確保軟件測評的充分性,獲得良好的測評效果,建立一個完善的軟件測評體系具有現實的緊迫性和重要性。
3 審計信息平臺軟件測評過程
針對審計信息平臺的項目特點,根據越早測試越好的原則,本次軟件測評的過程按照:軟件需求制定、測評項目建立、測試需求分析和策劃、測試設計和實踐、測試執行和回歸測試、測試總結和交付歸檔來進行。
3.1 軟件需求制定
軟件需求為軟件開發奠定了基礎,也是軟件測評的重要依據,一份完善的需求規格說明書對開發和測試工作都是至關重要的。測評項目組引入了軟件需求規格說明書的國家標準,并根據本企業和本項目特點對國家標準的需求規格說明書進行了落地,通過多方評審確定了最終版本。通過討論會對需求規格說明書反復修改,協助研制方按照系統功能模塊的劃分逐步完成需求規格說明書。
3.2 測評項目建立
測評項目組按照測評任務和合同情況建立測評項目。首先項目組制定項目計劃;項目組長與質量保證人員共同制定質量保證計劃;項目組長與項目組配置管理員共同制定配置管理計劃。然后項目組接受被測件,梳理測評需求,建立需求基線并進行配置管理。同時,質量保證人員對項目建立階段進行符合性檢查。
3.3 測試需求分析和策劃
測評項目組開展測試需求分析,確定測試類型及其測試要求,分解測試項。建立測試項與測評需求的追溯關系,通過需求追溯表的形式實施。項目組進行測試策劃,確定測試策略、技術方法、測試工作產品等。
3.4 測試設計和實踐
該階段主要是設計并編寫測試用例。建立測試用例與測試項的追溯關系,通過需求追溯表的形式實施。按文檔編制要求進行測試計劃文檔的編寫。測試計劃完成后需進行評審,并對經評審的測試計劃進行修訂,填寫測試問題處理單進行變更控制。此外要對測試環境、測試工具等測試設備進行確認,對測試設備的配置、狀態進行確認。還需開展就緒評審工作,對測評需求、項目進度、測試設備等情況進行跟蹤,確定是否可以轉入測試執行階段。
3.5 測試執行和回歸測試
測試執行階段由測試執行人員在系統實際測試環境中執行測試用例,并記錄測試結果。測試人員需判定測試用例是否通過,對不通過的測試用例進行判定,確認是否為軟件問題。對于確認為軟件問題的測試用例,經研制方修改后,測試方接收修改后的被測件。測試項目組復用或新增回歸測試用例,開展軟件更改的影響域分析,實施回歸測試。質量保證人員對測試執行階段進行符合性檢查。
3.6 測試總結和交付歸檔
全部測試執行完畢,測試項目組整理測試記錄并分析測試結果:編制需求追溯表,建立測試執行情況、軟件缺陷與測試用例的追溯關系。之后測試項目組對測試工作和被測系統進行分析評價以及測試總結評審工作,包括對測評需求、項目進度、測試設備等情況進行跟蹤,為編寫測試報告做準備。準備完畢按照文檔編制要求進行編寫測試報告,并對報告評審。最終向客戶交付測試報告正本,測試項目組對本項目全部文檔記錄進行整理歸檔。
4 審計信息平臺軟件測評方法
由于審計工作流程的復雜度高,因此對該平臺的易用性要求也相應提高。故測評的測試類型主要體現在功能性、效率性、安全性、兼容性和易用性等質量特征上。
4.1 功能性測試
功能性測試主要檢測軟件是否符合《審計信息平臺業務藍圖設計報告》和《審計信息平臺系統開發需求規格說明書》中提出的用戶功能需求。對于一般的用戶測試而言,用戶僅測試自己關心的功能點,且是正常使用,測試覆蓋率往往只能達到20%左右。而對于非用戶方和非開發方的第三方測試者來說,需要盡可能多的發現和使用軟件的全部功能,對需求文檔中的功能性需求逐項進行測試,要求輸入值覆蓋正常值的等價類、非正常值的等價類和邊界值。因此,測試者不但要深入了解審計信息平臺的各項功能用法和目的,還要熟悉審計業務流程。
根據審計信息平臺系統功能特點,本系統分為綜合管理模塊、審計模塊、內控制度管理模塊和舉報模塊四部分。根據該軟件需求規格說明書,為了保證測試的充分性,經過分析共有功能性需求27項。其中,審計模塊為該系統的核心功能,在加強反腐敗治理工作的今天,審計業務流程更為復雜、重要。審計管理主要包括審計項目管理、審計作業管理、審計治理管理、基礎數據和統計報告五個功能。由此設計的測試項共16個,包括審計計劃、項目歸檔、項目啟動、人員考核、審前調查等。
4.2 效率性測試
效率性測試也就是我們平常所說的性能測試。性能測試的目的主要是獲取審計信息平臺在不同壓力下系統的性能數據,尋找系統的瓶頸點;驗證審計信息平臺在30并發用戶下系統的性能表現。在測試之前需要進行需求訪談,根據訪談結果制定測試計劃和測試方案。根據用戶提供系統交易量占比最高的前10個功能、業務邏輯比較復雜的功能,設定測試場景。例如:用戶登錄響應情況,大小附件上傳下載,審批業務流程,以及上述場景的混合場景,混合場景的測試更能模擬系統在實際使用時的情景。測試時的環境也是至關重要的,測試環境要求與生產環境一致,否則測試結果就失去意義。因此需要在系統開發完畢,功能測試之后系統上線之前,在生產系統進行測試,且測試時測試系統需要與其他系統隔離,避免對其他系統造成影響。
4.3 安全性測試
企業的生產運行活動越來越離不開網絡,很多重要的信息資料都在網絡上傳輸,由此安全問題也越來越得到人們關注。不論是為了設計,還是為了實現所產生的安全漏洞,對于用戶來講都是無法容忍的。在審計信息平臺系統上線前,對其進行安全測試是十分必要的。采取的測試安全測試方法主要有兩種:利用Fortify進行靜態的代碼安全掃描,找出底層代碼中存在的安全漏洞;利用AppScan進行動態滲透測試,這種方法是利用自動化測試工具模擬黑客入侵,從而找到系統在運行時會出現的安全漏洞,找出的問題真實有效。
4.4 兼容性測試
目前大多數辦公軟件都不需要安裝,通過瀏覽器使用。審計信息平臺用戶只需在瀏覽器輸入系統地址可直接登陸系統。因此對該系統的兼容性測試需測試:操作系統的兼容性和瀏覽器的兼容性。
操作系統的兼容性主要是測試Windows平臺和Linux平臺。瀏覽器的兼容性主要是測試IE瀏覽器、火狐瀏覽器、谷歌瀏覽器。一般在測試時,在不同平臺和瀏覽器上,首先系統功能能夠正常使用,其次界面和操作應基本相同。
4.5 易用性測試
審計信息平臺作為審計監察部日常的辦公軟件,其易用性是不可忽視的。用戶之前習慣使用監察管理系統、風險管理系統和內審作業管理系統。整合、統一后的審計信息平臺應該符合用戶已經形成的使用習慣。同時是否滿足相關文檔如軟件需求規格說明書中規定的易用性要求,符合一般軟件操作的隱含易用性要求也是需要測試的。在測試中從用戶的角度出發,考查人機交換界面的設計,以非常規操作、誤操作、快速操作來檢驗人機界面的健壯性。
參考文獻
[1]王峰,鄭彥興,包陽.軟件第三方測評[J].計算機研究與發展,2008(45):345-350.
[2]古樂,史九林.軟件測試技術概論[M].北京:清華大學出版社,2004.
[3]沈昌松,朱建方等.軟件測試用例設計[J].微計算機信息,2001,17(2).
作者簡介
田雅(1982-),女,江蘇省人。大學本科學歷,學士學位。現為中海油信息科技有限公司北京分公司工程師。主要研究方向為計算機應用系統軟件測評。
軟件系統項目工作總結
一、項目測試進度控制。項目的測試進度主要是按照項目計劃進行的,完全按照項目組計劃要求完成測試任務、提交測試類相關文檔,包括測試案例的完善、制定測試計劃、執行測試、缺陷跟蹤以及BUG回歸測試等。協調項目的內部測試工作,本此項目中測試小組一共組織了四輪次系統全面測試工作,認真配合項目工作,共同保證項目質量。項目測試的問題跟蹤及處理采用每日進行修改問題回歸測試工作,每日同步更新問題跟蹤單的模式,按照規劃時間完成系統更新測試。
二、項目組內部成員關系處理。在項目工作的這幾個月里大家相處融洽,項目組內部共同探討解決問題的方法,向各模塊負責人學習模塊功能處理方式,向業務人員了解系統中涉及的業務知識點,兩者結合起來進行模塊功能測試。鑒于之前轄內對公交易系統和中行對公項目的經驗,也向項目組提出了一些完善性意見。
三、協調用戶測試方面。用戶驗收測試是項目測試工作的重要組成部分之一,是項目驗收階段的最終把關階段,業務人員結合日常業務處理情況對系統進行的嘗試性使用過程。本次項目客戶測試方面也是我個人覺得不夠安全感一個主要方面,客戶測試介入力度太小,盡管我們已經很多次電話催促業務人員測試,每次聯系相關業務人員進行測試,他們來到項目組開發現場測試,也僅僅一兩個小時時間,簡單的進行驗證操作即可。xx銀行利用兩批系統培訓的時間安排了兩次分行集中測試,也算給項目進行了一次全面的測試,從中也暴露出不少系統存在的問題,目前項目組均已解決。[中國教育查字典語文網 ]
四、個人得失方面。作為此次項目測試的負責人,對于日常的測試流程、測試任務分配、測試執行、缺陷跟蹤、協調內部測試及協調客戶測試方面能力均得到了進一步提高,理清了項目整個過程中測試小組的工作過程以及后期的項目移交工作。同時也對各子系統相應的業務知識有了更進一步認知。相關業務知識方面還需要進一步加強,測試技能及測試管理方面還需要進一步完善學習。更好的吸收項目經驗,做好以后的補丁測試工作及其他項目的測試工作。
在計算機專業教學改革中,我們嘗試把項目實戰引入到專業的實踐教學體系中。項目實戰課程安排在第五學期,學生在此之前已經學習了大部分的專業課程,具備了進行項目開發的專業基礎。教學時間設定為72學時,教學場所安排在具有職業場景的軟件開發實訓室。總體上,項目實戰劃分為三個階段:演練階段、實戰階段、創新階段,各個階段循序漸進,逐步提升。其中,演練階段12學時,實戰階段24學時,創新階段36學時。如果某一項目的完成時間不夠充裕,學生可以在課后抽時間去完成。每一階段都完成一個項目,項目的開發按照企業工作過程來進行。
(一)演練階段
在演練階段,選擇能夠涵蓋基本技能的典型項目,并補充軟件工程的知識,讓學生接觸完整的軟件開發過程,提供真實情境下的技能演練機會。對于欠缺的知識和技能,學生進行項目驅動式的學習,老師也給學生進行有針對性的輔導。通過演練階段,讓每個學生達到可以開發項目的水平。
(二)實戰階段
在實戰階段,選擇相對復雜的企業真實項目,讓學生組建項目團隊去合作完成。一般3~5人為一個項目小組,每個人在項目小組中擔任一種角色,并按照企業工作流程去完成該項目。老師在此期間主要發揮項目指導、監督、評價的作用。通過實戰階段,學生接觸到了企業真實項目,達到了積累開發經驗、提高開發能力的目標。
(三)創新階段
在創新階段,主要選擇企業外包項目或學校實際項目,項目的開放性、實用性更強,對開發人員的要求也更高。每個小組的項目互不相同,根據項目難度決定項目小組人數,一般分配5~10人為一組。這一階段不僅考驗專業技術,而且強調創意、創新精神。通過創新階段,可以進一步提高學生的綜合實踐能力和創新能力。
二、項目實戰教學過程
每個階段的教學過程,為一次完整的項目開發過程。依據軟件開發流程,把項目開發劃分為六個步驟,依次為項目啟動、需求分析、項目設計、項目編碼、項目測試和項目提交。
(一)項目啟動
每個項目的第一次課設定為項目啟動會議。首先,進行項目分組,老師把全班學生分為若干個項目小組,小組內進行組員角色分配,每個小組選定一名項目經理;其次,老師介紹軟件項目,讓學生明確項目功能和應交付成果;最后,學生進行小組討論,制訂項目計劃,明確分工,安排進度。
(二)需求分析
需求分析就是分析軟件用戶的需求是什么,即明確擬開發的軟件系統有哪些功能,解決做什么的問題。各項目小組在聽完老師對項目的介紹后,進一步以討論、提問、辯論的方式交流信息,探討思路,明確需求,達成共識,并編制軟件需求說明書。
(三)項目設計
這個步驟的主要任務是對如何實現軟件系統進行設計,解決軟件系統怎樣做的問題。小組內部共同查閱資料,展開討論,進行軟件體系結構的設計,包括模塊劃分、各模塊功能、各模塊接口、數據庫結構設計等。
(四)項目編碼
項目編碼的主要任務就是我們常提到的軟件編程,使用適當的程序設計語言和開發工具編寫具體的程序模塊。在項目團隊中,學生根據各自在小組的分工以及與其他組員的合作形式,按照確定好的工作步驟完成編碼任務。當組內成員遇到難題時,要互相幫助,合作學習。在項目編碼階段,編程任務較為繁重,因此要求各項目小組要合理規劃項目的編程時間和編程模塊任務,各組員要在規定時間內完成分配的任務,以確保項目進度。
(五)項目測試
項目組需要完成單元測試、集成測試、系統測試、可用性測試等項目測試工作,查找和發現軟件中可能存在的錯誤和缺陷,并進行修正,以確保所開發項目的正確性和完整性。事實上,軟件測試工作貫穿于整個軟件開發的全過程。
(六)項目提交
項目組在服務器上安裝和調試項目軟件,確保軟件能夠正常運行。所有學生都要分組進行項目答辯,展示項目成果,回答其他小組或老師的提問。同時,要求提交相應的技術文檔,包括需求說明書、設計說明書、用戶操作手冊、項目總結報告等。
三、教師在項目實戰教學中的職責
項目實戰是以學生為中心,教師職責不再只是傳授知識,而更多的是擔任組織管理、技術支持、評價咨詢等角色。
(一)項目選取
在項目選取時,要充分考慮學生的學習興趣,貼近現實生活,而且項目難度要循序漸進,從基礎到綜 合、從實踐到創新,讓各項目小組經過努力都可以達到預期目標。根據三個階段的特點,分別選取不同類型的項目。
(二)項目介紹
為了讓學生明確項目任務,由教師向學生介紹所開發項目的基本情況。介紹時,要說明項目學習目標、項目主要任務、項目角色分配、項目成果形式、項目評價方式、完成項目時間等,并提供一個經典的范例項目,供大家學習、參考、借鑒。在學生們進行小組討論之后,教師要回答項目小組的有關提問。
(三)項目指導
在項目開發階段,教師要輪流在各項目小組間進行監督與指導,了解學生們參與項目開發的動態情況,對各組的項目進度做到心中有數,以確保整個項目開發計劃順利實施。當一些小組因某些問題而陷入困境時,老師要及時進行指導,但并不是直接幫忙解決,而是通過提出有效的問題,引導學生去找出解決方案。
(四)項目評價
在項目結束時,要進行成果交流和項目答辯,由教師和學生共同進行項目評價。項目評價包括小組評價和個人評價兩種形式,既注重項目成果,也關注學習過程。小組評價是對各個項目小組的成果質量、合作情況及平時表現進行評分,綜合考察各小組的技術水平、創新能力以及團結協作精神。個人評價是對學生個人在項目開發中的表現進行評分,包括自我評價、組內貢獻評價、學習態度評價、能力發展評價等。
(五)項目總結
對于每個項目,都要組織項目總結會。對項目進行總結時,可以先讓各項目小組進行自我總結,講一講參與項目的收獲及反思,然后再由教師進行項目情況總結。在總結中,教師要講明項目中的關鍵點,揭示出項目中包含的理論,并分析存在的優點與不足。通過總結,要給學生以鼓舞,增強學生參與項目開發的動力。
(六)項目反饋
對于項目實戰課程,建立雙向的反饋機制。一方面,老師對每個小組都要給予反饋,對項目情況進行評論,對存在問題提出建議,并寫出書面的反饋意見,并且是積極的、建設性的反饋意見;另一方面,對參加該課程的學生開展問卷調查,征求學生的反饋意見,包括學生對課程開設、項目內容、項目難度等方面的滿意度,學生在軟件流程、業界規范、實現技術等方面的收獲,以及學生對項目實戰課程的個人建議等。這些反饋意見可作為今后教學改進的方向。
四、項目實戰教學效果分析
我們在連續三屆的計算機專業畢業班中開展了項目實戰教學,應用效果不錯,學生滿意度較高。在問卷調查中,80%的學生表示,深刻了解了軟件開發的過程;90%的學生認為,積累了一些經驗,有較大收獲。同時,項目組所承接的企業項目也得到了企業單位的肯定。與傳統模式進行對比分析,項目實戰模式在項目訓練方面有如下特點:
(一)學習載體的轉變
真實項目不同于日常教學的驗證性實驗或課程設計式項目,是有著真實意義的任務,因此學生對真實項目更感興趣,更有成就感,也會更大地激發學生的學習熱情和學習潛能。
(二)學習過程的轉變
以真實工作過程來組織教學過程,使學生能切身了解職業崗位技能需求,理解軟件開發的流程,提高對軟件開發的認識。完成項目過程就是積累經驗的過程,可以充分鍛煉學生的項目管理、開發、測試、編寫技術文檔等技能。
(三)學習方式的轉變
在項目實戰中,以自主學習、合作學習、團隊協作為主,經常會遇到一些問題,帶著問題去學習,對于學習能力的培養非常重要。同時,通過項目團隊的工作方式能有效鍛煉學生的溝通能力、組織能力以及合作能力。因此,對于計算機專業來講,引入項目實戰是一種有效的嘗試,對學生綜合實踐能力的培養大有益處,教學效果良好。
五、結束語
關鍵詞:軟件測試,質量管理,軟件工程
中圖分類號:O213.1 文獻標識碼:A 文章編號:
1 軟件測試類別及作用簡介
軟件測試按作用分類,主要可以分為功能測試,性能測試,安全測試等,按測試階段劃分則可分為單元測試,集成測試,系統測試,驗收測試,回歸測試等。按是否涉及源代碼測試又可分為黑盒測試,白盒測試。
下面按作用介紹幾類常見的測試:
功能測試:主要按照系統功能說明書軟件設計書等資料,驗證軟件每個功能的正確性,易用性。主要目的是保證軟件功能可用,用戶使用過程中有一個良好的使用體驗。
性能測試:是一種非功能性測試,主要測試軟件產品運行的各項性能指標是否達標。如系統反應速度,系統負載能力,系統使用過程中對計算機各類資源的占用情況等,主要是測試系統的健壯程度。最常見的是測試軟件功能的反應速度。同樣對保障用戶使用體驗有重要作用。通常使用自動化工具得到測試系統的性能指標,筆者使用的工具為Loadrunner(LR)。
安全性測試:這是經常被忽視的測試方式。很多用戶軟件使用安全意識淡薄,在用戶未提出安全測試的情況下,有些軟件開發公司為節約成本也會刻意回避這個問題。軟件安全與否并不直接影響用戶的使用體驗。軟件安全測試主要從數據訪問,權限管理,防攻擊能力,破壞性測試等幾個方面測試軟件系統的安全。政府部門所使用的軟件系統通常,這樣的項目進行安全測試很有必要。
2 軟件測試與質量管理關系
任何項目實施都需要有質量管理,否則工程產品將無法使用。軟件工程更是如此,在軟件工程中軟件測試是軟件質量管理的重要手段也是質量管理流程的重要一環。其實不管軟件測試怎樣分類,具體的流程怎樣操作,軟件測試的目的就是為了保障軟件的質量。從公司組織層面項目質量管理從制度上對測試流程的完整性加以保障,從項目實施層面,項目內部的質量管理應為軟件產品即將的測試做出準備提供便利。
在多種軟件工程管理模型中,都將軟件測試做為單獨的過程納入到管理體中來,比如CMMI軟件成熟度模型,是將軟件測試放在產品驗證過程域中的,同產評審一起,強調軟件測試對產品驗證作用。
3 測試組織的建立
人們經常有開發做的較弱的人做測試的印象。這是錯誤的,主要是由很多軟件公司不愿意調撥開發水平高的人在測試上造成的。其實測試人員作為公司于客戶之間軟件質量最后的守門員,不僅要保證產品功能正確,還要從用戶角度對軟件產品提出使用建議,根據經驗預測用戶可能的使用方式以及評價,同時還需同項目經理,開發人員溝通。因此不僅要具備測試理論知識,還需要具備項目經驗,熟悉產品業務,了解項目各環節工作,同時具備編碼,操作系統,數據庫,計算機硬件等方面的有關知識,恰是要求知識構成最全面的崗位。
通常建議測試組應包括至少一名經驗豐富的人員。測試組的人數根據公司開發人員總數,公司產品的成熟度確定。如果公司產品已經較為成熟,有固定框架的話,測試人員數量可維持在開發人員總數的十分之一,否則應大于這個數量。
測試組可由測試組長,或者叫測試經理帶領幾名測試人員組成。測試經理負責測試計劃,測試過程監控,測試產品驗證等工作。測試人員按要求開展測試工作。
4 測試流程簡介
(1)測試工作啟動階段,項目經理提交需求規格說明書和項目計劃。測試經理根據提交文檔編寫測試計劃。需求內應包括用戶方確認的系統使用環境。
(2)工程管理部對測試計劃進行評審。評審通過進入測試流程。不通過則將文檔返回項目經理根據項目情況重新計劃,直至通過。
(3)系統經過項目經理檢查,滿足送測要求時,項目經理填寫測試申請單,提交概要設計說明書、詳細設計說明書和系統demo,澄清測試需求,明確測試環境。其中demo非必須提交。
(4)項目經理指派人員同測試組建立專門的信息交流接口,協調測試過程中的有關事宜。
(5)測試人員執行測試。
(6)記錄測試過程中出現的系統缺陷和問題。填寫問題跟蹤記錄表,并交由項目經理確認。
(7)工程管理部根據測試結果決定系統是否系統具備條件。如果不具備條件,則將督促開發人員完善系統并重新執行測試流程。
(8)測試經理編寫測試報告并總結。測試活動結束。
流程如圖:
以上測試流程主要按瀑布開發模型內的測試流程描述,如果選用別的開發方法,則可以根據情況將流程簡化后加入開發中的每次迭代內。
5 結束語
測試工作是保障軟件產品質量的重要手段,本文大多內容來自筆者工作經驗的總結,僅供參考,有失偏駁之處,還請多加指正。
參考資料
[1] 佩騰 軟件測試 機械工業出版社
關鍵詞 高職教育 實踐教學 生產性實訓
0 引言
當前,高等職業院校正積極開展工學結合人才培養模式的創新與實踐,借助校企合作,探索形式多樣的生產性實訓,將專業教學與實際工作訓練有機結合,以提高學生的職業素質、職業意識和職業能力。如何正確構建基于生產性實訓的實踐課程體系,是目前高職教學改革進程中要解決的重要課題之一。實踐教學是職業技能和職業素質培養的一個重要環節。
傳統的實訓只是針對學生實際操作能力的訓練。由于受到校園環境的局限,與真正的企業環境、企業氛圍仍有差距。而生產性實訓則是對于學生從事某一職業的能力訓練。
從學生的角度看,實訓教育就是為就業服務的,其本質不是培訓而是就業,因此目前多數培訓機構的市場宣傳策略以“就業”為訴求點,但這實際也是很多培訓機構的一個難以言說的軟肋。例如某著名培訓機構的學生實際成材率不超過20%,多數學生實際上并沒有開發能力,培訓體系的目標并未完成,對學生的就業承諾難以兌現,品牌認知度下滑。
這些問題歸結到最后是要提高實訓質量,提高成材率。
1 生產性實訓的目標和要求
筆者看來,“實訓課程 = 素質 + 技能 + 經驗”。實訓不止是技能,而是全方面的訓練。“實訓教學 = 有基礎的學員 + 雙師 + 三真 ”。基礎包括:求知(職)欲、基本的操作基礎。如計算機職業應具有基本的計算機操作基礎。“雙師”指的是培訓教師應同時具有講師兼工程師的雙重角色。“三真”則包括:真實環境、真實項目、真實壓力。
生產性實訓應與企業接軌,是通向企業的出口,是獲得“工作經驗”的途徑。實訓要面向企業的用人需求,強調不只是技能接軌,還有綜合素質。現在的企業招聘看重工作經驗,沒有工作經歷的學生如何獲得工作經驗呢?而這也正是生產性實訓必須要達到的目標之一。通過實訓,讓學生理論更扎實,技能更熟練。
如何做好實訓,首先,實訓項目的選擇必須依據市場需求和企業對人才的要求。例如現在市場上大量的中小軟件公司需要能快速理解客戶業務,為客戶熟練開發業務管理系統的程序員,或者市場上出現了很多新生代的web2.0的網站,需要很多掌握rich UI+云計算技術的程序員。而市場需求是我們設計實訓項目的主要依據。同時企業對人才各方面素質的要求也是我們設計實訓項目的重要依據。其次,實訓項目必須以真實項目為主線,以認知規律為指導,課堂教學和項目開發同步推進,在真實企業環境下幫助學生建立融會貫通的知識體系,積累真實工作經驗。在引入企業的真實項目之前,必須對其進行改造。企業的項目往往只強調結果,而不重視做項目的過程的知識點的總結和歸納。而課堂教學往往只是知識點的簡單堆砌,而不重視和實踐結合。對實訓項目的改造正是要把兩者有機地結合在一起。在真實項目的過程中,穿插相關知識點的總結和歸納,以達到理論和實踐的徹底融合。
2 實訓過程控制
對于實訓過程大致可以分為:(1)籌備階段;(2)技術培訓階段;(3)實訓實施階段;(4)實訓收尾階段。
根據實訓目標,實訓對象的水平以及實訓需求的不同,對實訓的總的時長及各階段的時間分配都可以做出不同的調整。其中技術培訓階段和實訓實施階段不是順序進行的,事實上,這兩部分是完全可以并行的。傳統的實訓先理論教學,再進入實訓,不符合認知規律。應該在實訓中發現問題,通過技術培訓培養解決問題的能力。
實訓的規范也是我們必須要重視的。規范有兩層含義:一個是實訓的過程要規范,一個是學生要養成很好的規范。沒有規范就不能大批量地培養人才。好比工業產品和藝術品,藝術品沒有規范,所以不可復制。而在嚴格規范下的生產線生產的工業產品則可以大量復制。我們的實訓體系,應該做到對于所有的培養對象都是可以復制的。
在實訓的籌備階段,主要工作應是業務培訓,即用規范的形式和文檔,描述業務,并帶學生模擬需求調研的常用形式。通過鼓勵學生通過互聯網進行調研,并組織學生和業務專家交流。交流的形式要面向實戰,搞模擬。給學生布置需求調研的任務,在模擬環境中,由學生完成需求挖掘的任務,編寫文檔。
在籌備階段還有一個重要的工作是團隊建設,培養學生的團隊精神。對于一個陌生團隊,首先要破冰。組織學生進行內部交流,也可組織拓展訓練,開展團隊競賽。在這一階段,指導教師應做好實訓動員,幫助學生制定職業目標,包括短期的和長期的,指引學生達到職業目標的途徑并由此引出實訓目標并教會學生扮演好自己在團隊內的角色。
在實訓的技術培訓階段,要抓住項目需要和學員的現狀,綜合考慮這兩者之間的差距以及學生的認知規律,安排好技術培訓的內容和計劃,了解學員入訓前的技術狀況,本項目需要的知識點,列出對比的文檔,為技術培訓計劃做鋪墊。培訓應根據認知規律做計劃,先感性認識,再理性認識,培訓和項目同步進行,相互穿插。課堂教學針對項目實踐來安排,培訓內容的安排需考慮學生已有的知識結構。
在實訓的實施階段,以軟件項目為例。一般軟件項目的過程流程是:需求分析—項目設計—編程—測試—部署。
需求分析階段,需強調需求分析的重要性 ,告訴學生需求分析沒做好,軟件就很難達到客戶要求。教師需要拋出一系列問題,引導學生完成任務。如物資管理系統,需要引導學生去了解物資供應站的組織機構、崗位設置等常識。還有這套軟件將來由誰來用?已有的系統誰在用?都干什么?用戶關心哪些數據?這些數據的處理的業務規則和業務流程?涉及到哪些業務憑證?和哪些系統有關系(系統間的接口)?有哪些非功能性需求:速度、用戶數目、數據規模等。當學生通過調研獲得答案以后,需教會學生使用模板完成需求分析報告。
在項目設計階段,教會學生從模仿開始,指導學生完成用例分析、時序圖、系統處理流程圖。工程師可提供現場支持,確保學生完成任務。與此有關的知識點可在同步的教學中安排,現學現用。
編程開發階段,要做好進度控制。進度控制是真實壓力的體現,可每日進行進度檢查,每周,里程碑評比,考核評比與學生學分掛鉤,學分與畢業就業掛鉤。在開發階段涉及的知識點也可在同步的教學中安排學生同步學習。
在測試階段,如果是為了培養測試人員,這個環節則非常重要,如果只是開發人員,則重點做好單元測試即可。在這一階段需要指導學生學會設計測試用例,根據軟件使用中可能出現的各種可能性設計測試用例。
在部署階段主要是集成測試和用戶驗收測試,這一部分工作可由專門人員來進行。完成后即可進入實訓下一環節。
在最后的實訓的收尾階段主要任務是總結。對于學生而言,總結包括:技術方面的總結、非技術知識的總結、 團隊合作的總結、職業素質的總結。在總結后學生應學會如何對用人企業描述自己的項目經驗。對于實訓教師而言,總結包括:流程優化和改進,課程知識體系的建議,項目管理和實施過程的總結。
1構建《軟件工程》課程縱向教學體系
針對《軟件工程》教學過程存在的困難,提出構建《軟件工程》課程縱向教學體系。《軟件工程》課程縱向教學體系包括3個層次:理論教學方面:改進理論教學方法,調動學生主動性,培養學生學習興趣;實踐教學方面:結合具體項目,訓練學生運用相關原理指導軟件開發的全過程,提高學生靈活運用所學理論知識解決實際問題的能力;課外實訓:校企合作,使學生深入企業項目開發,培養高素質軟件工程人才。
1.1案例教學法在理論教學中的應用
案例教學法,是指教師在課程第一次授課前選取一個完整、難度適宜的軟件開發案例;然后分階段的在每章理論授課結束后,結合所講章節的理論知識提出與章節內容相關的有引導性作用的問題,讓學生認真分析、研究案例,開展問題研討會,并為學生分配任務,使學生在課后收集相關資料,指導學生運用所學的相關原理來分析案例,并在規定的時間內(兩周后)提交案例分析或設計報告,調動學生的學習主動性,培養學生的學習興趣的教學方法。教師在理論授課時,注重構建學生的知識體系。在學習章節內容前,說明本章節所涉及的專業基礎課程及學生所需要具備的理論素養,給學生布置任務,重新學習涉及的專業基礎知識;理論授課時,把章節理論知識與已學基礎課程知識相結合,根據課程例題,詳細講解理論知識,并注意提示學生已學知識在例題中的運用,從而深入淺出,幫助學生把已學知識和章節理論知識結合起來,形成知識網絡。在需求分析章節的分析系統的數據要求處,指明分析系統的數據要求,通常采用建立數據模型的方法。抽出部分學生按照他們準備的PPT來詳細講解以上問題,不足之處讓其它同學補充。課后,教師把準備的問題解答PPT發給大家,使學生查漏補缺,建立知識網絡,打下扎實的理論基礎。章節授課結束后,通過案例教學法,訓練學生靈活運用所學理論知識體系解決實際的問題的能力,給同學們列出需求分析報告--需求規格說明書的提綱,要求每個學生提交一份需求分析報告。比如,案例--學生公寓管理系統,請大家運用需求分析章節所講的知識,深入學校公寓針對學生、公寓管理員做需求調查(要求靈活運用幾種所講的需求調查方法:訪談、問卷和場景),召開需求評審會議,驗證需求的正確性與有效性,兩周后提交需求規格說明書。
1.2項目驅動實踐教學,理論聯系實際
在理論授課結束前,老師提供若干個難度適中、開發時間在一個月左右的題目。學生以小組為單位(通常5-8人)組建自己的軟件開發團隊,并推選小組長,負責項目管理,根據小組成員的興趣和愛好選擇一題。團隊成員應均衡,以便做好分析、設計、編程及測試的分工。小組成員之間相互合作,開始實踐教學環節。選擇結構化或面向對象的軟件工程方法,按照軟件開發生命周期的各個階段,分階段有順序的進行軟件項目開發。每位小組成員都要參與各個階段的軟件開發,每個階段各個成員的任務由組長分配,管理。每個小組成員全程參與軟件工程的各個階段,把理論知識運用到實踐項目的開發,由項目驅動實踐教學,真正用所學理論知識指導項目的開發,為學生深入理解并靈活運用理論知識提供了良好的實踐機會,提高了學生的動手能力。實踐環節結束,每個小組提交與選題對應的已實現的系統,并提交相關的設計文檔。如開發小組選擇面向過程的軟件工程方法,需提交可行性研究報告、開發計劃、需求規格說明書、總體設計的相關文檔(系統說明、用戶手冊、測試計劃、詳細的實現計劃以及數據庫設計結果)、詳細設計的相關文檔(流程圖及人機界面設計資料、用戶幫助設施設計資料)、實現及測試總結、項目總結等。通過項目實踐,學生會深刻認識并理解掌握所學理論知識,并且可以結合自身特點和軟件工程的相關就業方向(前臺開發、后端設計、測試、維護等),確定自己的未來職業發展方向,繼續深入學習,拓展自己的專業知識深度,為就業打下堅實的理論和實踐基礎。
1.3校企合作,培養高素質軟件工程人才
經過實踐環節,學生對未來職業發展方向有了初步選擇。在大四學期的實習環節,學校與相關合作企業進行對接,學生結合專業興趣和職業發展方向,選擇合適的企業進行校外實習。校外實習一般分三個階段:理論知識的鞏固與強化學習;職業定位方向核心技術學習;以團隊為單位,參與實際項目,培養學生的動手能力和團隊精神;結合以上三個階段的學習內容,獨立完成一個實際商用項目。舉例:如果職業定位為J2EE軟件開發,校外實習的第一階段學習JAVA語言核心內容,Oracle數據庫技術,WebCilent編程和WebServer編程,結合具體項目把以上知識運用到實際項目的開發中。第二、三階段貫穿項目深入學習JVAVEE企業級框架。第四階段以開發團隊小組成員的身份參與一個實際商用項目開發,使學生綜合運用所學知識解決實際問題。如果職業定位為軟件測試,第一階段學習測試基礎并結合企業內部開發的自動化測試管理平臺進行理論知識強化。第二階段重點學習系統測試的相關技術,并結合具體項目使學生參與系統測試,編寫與之相關的需求規格評審,系統測試計劃、測試方案、測試用例、測試報告等文檔資料。第三階段學習軟件功能測試自動化和性能測試技術,并學習企業使用的主流測試工具進行相關項目的自動化測試工具。第四階段結合實際商用項目,綜合運用所學知識,運用相關的自動化測試工具,進行項目測試,編寫相關測試文檔。通過項目實訓,使讓學生深入項目開發,把學生培養成專業理論知識扎實,動手能力突出的高素質軟件工程人才。
2結語
針對軟件產業的人才需求背景,以高等教育行業的改革為契機,結合當前《軟件工程》課程的教學現狀和存在的困難,提出構建《軟件工程》課程縱向教學體系的新思路,為應用型人才培養模式提供有益探索。
作者:王春麗 單位:河南城建學院計算機科學與工程學院
關鍵詞:敏捷模式;持續集成;TDD
中圖分類號:TP311.52
隨著我國軟件開發項目的規模日益擴大,客戶的需求也在不斷變更,軟件交付周期在保證質量的情況下盡可能縮短,在這些因素的影響下,不斷地讓我國傳統的軟件開發方法的開發成本不斷的提升,之前傳統的軟件開發的方法已經滿足不了現代軟件開發的總體需求。
傳統的軟件開發方法有瀑布模型、螺旋模型、噴泉模型、RUP(Rational UnifiedProcess)四類,它們注重文檔的完整,程序的易讀性,結構的完整性,屬于重型軟件開發方法,被廣泛的用在公司的軟件開發中[1]。
為了滿足市場需要以及客戶的需求,解決以上描述中軟件開發存在的諸多問題,為此,我國軟件開發業研發出了一種新型的軟件開發方法,這種軟件開發方法具有快捷、輕便的思維方式,同時還會快速的解決傳統軟件開發企業中地下的生產效率,而這一軟件開發方法也在最短的時間內得到了快速的推廣,我們稱這種新型的軟件開發方法為敏捷軟件開發(Agile Development)方法。
所謂的敏捷軟件開發(Agile Development)方法其實就是以人為核心、重復、循序漸進的新型開發方法。當我們在敏捷軟件開發的過程中,我們需要將敏捷軟件項目的構成進行分割,將項目構成分割成多個子項目,接下來,需要對每一個子項目的研究成果進行分別的測試,這種做法的主要目的就是為了讓軟件項目構成的每一個子項目都具備集成和可運行這一特征。換一種說法就是講一個大項目分成為很多個相互連接,同時,他們還可以成為一個獨立運行的小項目,可以完成不同的任務,在這整個過程中,敏捷軟件開發項目的狀態是可使用狀態。我國業界專家針對企業目前的狀態提出了一些可以讓軟件開發團隊具備快速工作、相應變化能力的價值觀和原則,同時,他們還成立了敏捷聯盟,是在2001年的剛開始的時候。
1 敏捷開發流程介紹
測試驅動開發(Test-Driven Development)在敏捷軟件整個開發過程中占有非常重要的地位。ThoughtWorks中,不管是哪一個功能,首先需要做的就是對其進行測試。第一,我們需要對業務的需求進行簡要分析與概括,然后對業務需求進行分解,之后就會得到了很多Story,然后將所有數據都記錄在StoryCard中。之后,兩個工作人員坐在電腦前進行操作,一個從業務需求的角度編寫測試代碼,而另一個人看著他進行操作,并在那個人進行編寫測試代碼的時候進行思索,假設,那個人才編寫測試代碼的過程中產生了自己獨到的見解,這個人就提出來,兩個人進行商討,當商討的意見相同后,那么,在這種情況下所編寫出來的測試代碼才可以準確無誤的反映出業務功能需求。接下來就由另一個人對電腦進行控制,編寫測試代碼的實現。假設,我們沒有測試代碼,那么,編寫功能實現代碼就形同虛設。因此,我們首先需要做的就是測試代碼的編寫,讓敏捷開發人員有一個前進的目標,通過測試。
還沒有敏捷軟件開發方法之前,傳統的軟件開發過程中都會存在集成這一個程序,而這個程序是非常領人頭疼的問題,因為軟件集成的時間比較長,而在集成的過程中會出現很多影響因素,例如build未通過或者單元測試失敗。當敏捷軟件開發方法踢出來后,敏捷軟件開發中提倡持續集成(Continuous Integration),持續集成可以在一天當中集成很多次,這種頻繁的集成方式可以降低沖突,因為集成的頻率比較高,每一次集成所改變的也比較少,所以,集成失敗也就是定位失敗。進行集成需要做到所有的源代碼、運行的單元測試、功能測試和編譯源代碼;當確認編譯和測試沒有通過后,就會將報告發送出去。我們在進行集成工作的過程中還可以進行其他工作,即代碼分析以及測試覆蓋率等。
重構(Refactoring)是在對軟件系統內部結構進行整理和優化,不會改變系統外部的構成,讓代碼可以簡單化。在傳統的軟件開發的過程中,主要是有需求才來,可是,現在的系統架構不會那么容易實現,因此,我們就需要對原有的軟件系統內部結構進行重構;再者就是還有剩余時間的時候,對代碼進行重構。但是,重構在敏捷軟件開發的整個過程中。重點:進行重構中,每一次的改變不應太大,用單元測試保證重構不會引起不良,這樣不僅可以實現代碼重構,還會對測試代碼的重復進行重構。
結對編程(Pair-Programming)。在敏捷軟件開發的過程中,不管是什么事情都是結對的。結對做事存在很大的好處,兩個人在一塊討論會產生意想不到的效果,不會走彎路。
站立會議(Stand up)。在每天上班后項目小組的所有成員先進行站立會議,因為站立會議是成員站立的狀態下進行的,所以,我建議,站立會議的時間不應太長,盡量控制在15-20之內。站立會議的內容主要有三點,依次是:第一個問題是:你昨天都做了些什么?第二個問題是:你今天需要做什么?第三個問題是:在工作中你都遇到了什么困難?通過這種形式讓每位成員進行交流,相互了解彼此的工作內容。
較少的文檔(Minimal Documentation)。在敏捷軟件開發中有大量的測試文檔。測試代碼貼切的反映了客戶的需求和系統API的用法,如果項目小組來了位新成員,讓其了解快捷項目的最好辦法就是讓新成員看測試代碼。如果用書面文檔的形式,萬一代碼發生改變,那么文檔就必須要更新,如果及時更新,就會出現差錯,讓人費解。在敏捷中這種情況就不會出現,因為測試改變,代碼也會隨著改變,測試可以反映代碼的真實情況。
2 日常項目管理
目標:形成團隊成員自發地回顧、總結、重計劃,發現問題及時主動閉環改進,真正形成自組織的團隊。
動作:
(1)計劃會議
輸入:已經討論、評審通過的MSL(MASTER STORY LIBRARY)。
劃分迭代:根據業界標準敏捷對迭代的劃分方式,結合我們自身情況,決定采用兩周一個迭代。
將MSL中的每一個STORY通過價值、風險進行優先級劃分,高價值及高風險>高價值及低風險>低價值低風險>低價值高風險,劃分為高、中、低三種優先級,然后再把劃分好優先級的STORY大概劃分到每一迭代中,生成整個計劃,其中,仔細考慮劃分在第一迭代的STORY,后續迭代的STORY可以在迭代計劃會議時調整。
對MSL中的每一個STORY都進行工作量/規模估計,估計方法采用STORY POINT的DELPHI相對估計法;(相對估計法詳細介紹請看南京敏捷顧問項目第二周回顧)。
(2)迭代計劃會議
重新估計STORY的優先級,確認、調整在該迭代中實現的STORY,細化討論每一個在該迭代中實現STORY的實現方案、重新估計工作量;
(3)迭代回顧會議
回顧會議一般是在迭代結束時召開,主要是總結本次迭代有哪些好的實踐可以在后續迭代中繼續傳承下去,總結本次迭代有哪些做得不足的地方,可供后續迭代吸取教訓,要求所有成員全部參加;最后發現的問題要給出解決措施并讓大家認領,當場確定出跟蹤機制,認領后責任人定期匯報解決進度,最后要形成解決閉環。
在回顧過程中,為了能夠讓分析過程更有效,要注意聚焦問題根因,先使用20%的解決措施解決80%的問題,其它問題后續再重新分析解決。
實際上在類似迭代回顧會議等總結、分析行動中,頭腦風暴、5WHY法、因果圖法、柏拉圖等質量方法就展示出威力,為項目分析、解決問題提供了很好的幫助。
參考文獻:
[1]W.B.Arthur.Increasing Return and the New World of Business[J].Harvard Business Review,1996(74).
【關鍵詞】外語;教學;考試
隨著國際化全球化的趨勢日益明顯,作為思想的載體和信息傳達主要方式的語言是國際化交流的主要工具,外語學習就成為各國科技文化交流的基礎。為了考核外語人才的語言運用能力和滿足社會生活的需求,我國目前組織了大規模的各類外語考試,既有面向社會的國家英語等級考試,也有針對學生的高中英語會考,高考外語,大學外語四、六級考試,外語專業四、八級考試,研究生外語考試,還有職稱外語考試等等。而作為衡量外語教學成效和提高外語教學質量的重要手段之一的學校教學考試也不容忽視。
一、考試目的和作用
語言測試的主要目的是對被試語言能力進行準確、公正的測量與評價。2014年10月30日“國家外語能力測評體系建設啟動會暨中國英語能力等級量表研制總體方案論證會”上獲悉,我國啟動首個國家外語能力測評體系建設,提出制定國家外語能力量表,明確外語能力標準和制定適合我國國情的外語質量標準,規范大規模外語考試,建成一套覆蓋大中小學各教育階段、覆蓋聽說讀寫譯綜合能力、覆蓋各種形式外語學習成果的評價系統,使我國的英語教學和測評“車同軌、量同衡”,推動分級教學,實施因材施教,提升外語教育成效,以更好地滿足人才培養和選拔的要求,為政府行政決策、學校教學改革、用人單位外語評價等不同需求提供服務。
學校外語教學考試是外語教學的重要組成部分, 是衡量外語教學成效和提高外語教學質量的重要手段之一,了解學生語言掌握程度和語言運用能力, 及時調整教學方法和教學進度, 有效提高教學質量。自從1967年美國著名評價學專家斯克里芬(Scriven) 提出形成性評價(formative assessment),各中高等院校的英語教學逐步廣泛應用這一評估方式, 并配合總結性測試, 以達到教學與測試為一體, 教學質量不斷提高的目的。學校外語教學考試正是結合了形成性評價和總結性測試診斷教育方案或計劃及教育活動中存在的問題, 為正在進行的教育活動提供反饋信息, 以提高實踐中正在進行的教育活動質量的評價。布魯姆(Broome)曾經明確指出, 教學考試的主要目的是考查了解給定的學習任務被掌握的程度、未掌握的部分, 它的目的是為了幫助學生和教師把注意力集中在為進一步提高所必需的學習上,既指向正在進行的教育活動, 也針對教育活動全部過程。它既是分析性的, 嚴密交織在教學過程中的, 強調教師和學生的信息反饋, 能幫助查找教學和學習中存在問題的原因, 便于及時采取全新的或補救的措施;也是總結性的,以便決定是否需要對教學和學習活動及時進行調整。學校教學考試中的形成性評價旨在反映與培養學生的能力結構,總結性測試反映出學生知識的獲得和認知加工技能,為了逐步培養學生的能力。
只有建立在對語言測試理論的內涵及其基本要求、 測試的類型、現狀、缺陷等充分了解和思考之上的,學校考試才能真正做到科學、合理、有效的測試,充分發揮測試的教學正面反撥作用。反撥作用( Washback)是語言測試的后效,專指在教育領域中語言測試對外語教與學的影響或反饋作用。考試對教學產生兩種不同的反撥效應:有促進作用的正面反撥和有消極作用的負面反撥。正面反撥作用能推動教與學的發展,而負面反撥則會使教與學走入歧途。科學有效的學校考試可以與教學和學習形成良性互動。其一,測試服務于教學又影響教學,科學的學校考試可以為師生提供正確的反饋信息,通過測試,教師可以認識到教學中的問題,進而對教學計劃、教學內容進行調整,改進教學方法。其二,學生通過測試可以掌握自己對知識的掌握情況,促進學習的積極性,增強學生學習動力。
二、測試信度
語言測試的信度(reliability)是指考試結果的可靠性和穩定性。也就是指同一考生在不同考次或不同測試條件下使用同一個考試,或使用平行試題進行考試,所獲得的分數(如果不計測量誤差) 具有一致性。(劉潤清:210)
大規模外語考試的信度做到以下四個方面的標準化:試題編制標準化、考試實施標準化、閱卷評分標準化以及分數轉化與解釋的標準化。為了保證測試的信度,必須制定考試規范、命題準則,專業培訓命題人員,題目必須經過“命題―審題―試測―試題項目分析―終審―拼卷”,整個周期需要超過一年的時間,證明每道試題的質量都是可靠的、且難易程度和區分度都在控制范圍以內,然后用于實際測試。
為了得到學校考試對教學的積極作用,Hughe給語言教育者提出了建議:首先,測試你希望學生提高的那部分能力;其次,測試相關能力的時候,盡可能多地給學生任務來完成;第三,使用直接測試方法;第四,使測試標準參照型;第五,教學考試應基于教學目標;第六,確保考試被學生和老師了解;第七,有可能的話,給教師提供輔助培訓。題目可由多個英語教師試做,可先期發現試題中出現的問題,并增加試題的信度。
三、測試效度
測試效度(validity)亦稱測試的有效性,指一套測試對應該測試的內容所測的程度。也就是說,一套測試是否達到了它預定的目的以及是否測量了它要測量的內容。
大規模外語考試不僅應試者人數眾多,而且考試結果可能影響考生的命運,所以它的設計、開發和實施有一定的質量標準,以保證命題的科學性、評分的一致性、組織的嚴密性,成績具有可比性和可解釋性。因此,專門的考試機構遵循專業的質量標準,由經過訓練的專業隊伍開發、設計和實施以確保考試的公平公正。從設計開發、命題、施考,到成績發放包含諸多環節,每一個環節的失誤,都會對考試的結果產生不可彌補的影響,必須為每一個環節制定相應的專業標準,以規范教育考試行為,這樣的標準將為評價一項考試及其實施的后果提供依據。我國在參照國際上的已有經驗,結合我國實際,也在制定我國自己的教育與心理測量標準。
學校外語教學考試主要是對學生所學知識的綜合運用能力的考察,真實地測試出學生對信息的捕捉能力、理解能力、概括總結能力,語言表達運用能力。為了保證測試試卷的科學化、規范化,能客觀公正的評價教學質量,使測試積極反撥于教學,考題效度注重的是以下幾點:1)符合教學大綱的要求。內容上有相當的覆蓋面和側重點,難度與學生的實際水平相吻合,但不會為了增加及格率而人為的降低難度。2)測試項目保持相互獨立。這要求受試者對一個測試項目的反應不影響其它測試項目的反應。3)題項內容不對答案有提示作用。4)時間的控制和題量分配恰當。如果標準考試時間為120分鐘,而大多學生在30分鐘就交卷或120分鐘后都沒有答完試卷,就表明此次測試失敗。5)主客觀題型的比例得當,做到既重知識又重能力。6)建立完善的測試試題庫。考慮到學生的學習環境,學習材料和學生特點等因素,適時適量地安排階段考核并完善考核方式,幫助教師和學生及時發現這總結教與學中的問題。
四、小結
無論是大規模外語考試還是學校的教學考試,都需根據考試的目的和作用,不斷完善考試管理體制,盡可能做到考試內容涉獵的廣泛性和考試方式的多樣性,規范試題的設計,難易程度適中,選材廣泛,分值分布合理,評分標準設計合理,機考規范。在保證測試的系統化和標準化的同時,做到高質公平并不斷驗證改進。
參考文獻
[1]蔡基剛.大學英語四六級寫作要求和評分標準對中國學生寫作的影響[J].外國語學院學報,2002,(05) .
[2]陳靜,車麗娟.論測試模式變革對大學英語教學的影響[J].東北財經大學學報,1999, (06)
[3]付英,李鑒.大學英語校內測試信度、效度分析[J].讀與寫雜志,2011,(06).
[4]何林.大學英語校內測試對英語教學的反撥作用[J].吉林工程技術師范學院學報,2006, (08).
[5]李蘭蘭.淺析加強大學英語測試中信度和效度研究的必要性[J].長春教育學院學報, 2014, (09).
[6]劉潤清,韓寶成.語言測試和它的方法[M].外語教學與研究出版社,1991.
[7]孫文敏.英語語言測試的改革與英語教學[J].洛陽師范學院學報,2008, (04).
作者簡介
孫麗紅:性別:女,籍貫:內蒙古赤峰市,出生年月:1978年1月,學歷:研究生,職稱:講師,工作單位:呼倫貝爾學院。
《淺析大規模外語考試與學校教學考試》屬于中外語言測試與研究項目》
課題名稱:中外語言測試與研究
課題編號:Y BKT―004
關鍵詞:CDMA;網絡割接;工程管理
中圖分類號:TB657文獻標識碼:A文章編號:1009-2374 (2010)10-0108-02
2008年11月,百色電信根據電信集團公司及廣西分公司要求,在4天內完成89個原摩托羅拉基站設備的替換工作。由于這89個基站分布在8個縣區,站點分布距離較遠,如何做好工程項目管理按時完成割接任務,需進行詳細的規劃及安排。
一、割接前的工程準備工作
因時間緊,工程量大,故需協調工程施工隊、設備廠家、網絡優化隊伍、系統網等隊伍,確保割接按時、按質完成。
本次割接設立了專項工作組,由電信公司和華為公司共同投入大量精英,同時明確各專業隊伍的分工,使其各司其責。此次割接,廣西電信公司安排現場指導人員4名、電信百色分公司現場指導2名、電信百色分公司傳輸及核心網協調4人、貝爾廠家專家1人、BTS施工8組、應急2組人員,華為公司投入項目經理1名、無線技術專家2名、研發支持2名、核心網支持1名、BSC督導4名、BSC應急1組、進度通報1人、現場割接協調監控1人、BTS督導10名、網優總指導2名、網優技術專家5、網優人員15人。
二、網絡割接中的工程項目管理
由于參與割接的人數、隊伍較多,必須做好相應的管理及協調工作。如何做好管理成了割接成敗的關鍵。
(一)制定網絡割接流程
為了確保各項工作順利開展,制定了3類現場溝通流程,主要有:正常割接流程、問題處理流程、數據修改及倒回流程。總流程圖如下:
1.制定詳細的割接方案。割接方案是否完善、可行,是能否按時、按質完成此次割接替換工作的重點,因此,割接方案應經過多方討論與可行性評估。此次割接方案經過百色電信分公司、廣西電信分公司、華為公司三方進行研討分析,確定了此次割接方案。割接方案包含信息如下:
表1
序號 方案內容 序號 方案內容
1 割接范圍和時間 3 網優組織結構
2 割接期間網優工作概述 3.1 網優項目組結構(日常)
2.1 數據核查 3.2 割接期間組織結構
2.2 網絡測試 4 人力資源計劃
2.2.1 基站簇劃分 4.1 總體計劃
2.2.2 DT/CQT測試 4.2 具體名單
2.2.3 測試數據分析 5 工作分解WBS
2.3 網絡割接 6 測試路線
2.3.1 割接監控內容 6.1 樂業縣
2.3.2 割接模板和工具 6.2 那坡縣
2.3.3 B側需要配合的事情 7 測試車輛儀器
2.3.4 直放站廠家需要配合的事情 7.1 樂業測試組
2.3.5 割接當晚的腳本執行順序 7.2 那坡測試組
2.4 問題處理 8 風險和常見問題分析
2.5 性能提升 9 總結
2.制定現場割接故障指導書。制定現場割接故障指導書的目的是使割接人員在遇到類似故障的時候能迅速定位故障原因,縮短故障歷時,以便順利完成割接替換工作。故障指導書是大量割接過程中遇到問題的經驗總結,具有很好的實用性與指導性。故障指導書包含的內容如下:
表2
項目 故障現象
1 Abis傳輸不通或者誤碼高
2 基站不能正常工作(不能正常啟動,BSC側無法維護基站)
3 載頻不開工
4 語音問題(單通或者雙講不通)
5 語音問題(語音斷續或者雜音)
6 掉話率高
7 單板故障大面積影響業務
8 1x data傳不動
9 接入失敗或者困難
10 大面積用戶打不了電話處理方法
11 大面積出現掉話與語音質量問題處理方法
三、結語
此次割接涉及兩個運營商,再傳輸完全利舊,割接當晚同時進行傳輸割接,站點無法提前調試,基站必須割接當晚一次性遠程調試成功,割接風險高和邊界區域廣等苛刻條件下,項目組合理安排人員、內部職責分工明確,團隊協同作戰能力、凝聚力、執行力強,提前1周完成方案制作,多方協作,反復核對與審核驗證,同時用測試站實際測試校對、現場每條傳輸提前逐段測試,在割接資源準備上提前1周落實割接、應急、排障車輛,落實客戶各部門參與人員安排并召開內部動員會,明確割接整體安排,經過4天的連續作戰,百色本地網順利完成割接,各項網絡指標運行穩定。
通過此次割接的工程組織管理,使我們積累了大量的工程割接管理經驗,為后期各個分公司進行網絡割接提供了寶貴的經驗,為中國電信順利進行大規模網絡割接開了個好頭。
參考文獻
[1]羅捷.信息技術項目研究管理應把握的三個關鍵環節[J].科學管理研究,2000,18(2).
[2]景新海.中國IT企業實施項目管理的思考與實踐[J].電腦知識與技術,2000,(11).
本文簡要分析了將軟件工程項目應用到商業銀行中的相關背景,結合軟件工程項目開發的基本流程,主要闡述的是商業銀行中軟件工程項目開發的七個重要階段的主要內容、操作要點和注意事項,最后總結了軟件工程項目管理對于商業銀行正常運行和健康發展的重要意義,旨在提高軟件工程項目在商業銀行運用中的管理質量,從而提高商業銀行的市場競爭力和促進商業銀行健康發展。
【關鍵詞】商業銀行 軟件工程 質量控制
1 將軟件工程項目運用到商業銀行中的相關背景
隨著我國改革開放的不斷深入和市場經濟的持續發展,全球市場經濟正逐步的向一體化方向發展,特別是在加入世貿組織之后,我國商業銀行的運行模式與發展模式都較大程度上受到了外資銀行融入所帶來的影響,傳統的商業銀行運營模式面臨著巨大的挑戰,也由此一定程度上促進了軟件工程項目管理和質量控制體系的發展。軟件工程項目的管理和質量控制作為一個新興的學科,在商業銀行對其應用過程中充滿著許多未知性,也因此充滿著實踐性。商業銀行中的系統性軟件以及其它各類業務范圍的不斷增加與更迭很大程度上推動了軟件工程項目的質量控制與管理模式的發展。所以軟件工程項目的有關工作人員,包括軟件設計者、程序員、測試維護以及軟件的后期管理人員要不斷學習軟件工程質量控制方面的新知識和新理論,注重實踐,嚴格遵照相應的程序設計來提供軟件項目的管理質量,促進軟件項目的健康發展,從而大幅提升商業銀行的運行效率和市場競爭力。
2 軟件工程項目開發的主要步驟和操作要點
軟件工程項目的開發是一個持續時間較長、內容較復雜的過程,通常將軟件工程項目的開發過程分為以下七個階段:
2.1 分析開發需求階段
軟件工程項目開發需求分析的首要工作是對用戶的需求進行準確的市場分析與定位。有效的需求分析工作,可以一方面節約軟件開發時的資金成本和時間投入,另一方面可以保證軟件開發完成之后的實際利用率。軟件項目按使用范圍通常可以分為專用軟件和通用軟件兩類,一般商業銀行所使用的就是一種專業軟件。根據經驗,軟件的用戶在軟件開發開始進行之前應該已經掌握了一些該軟件的相關信息,軟件的開發者要在開發之前對用戶的需求進行具體的分析,并積極與用戶進行交流討論,從而最大程度的避免軟件開發過程中一些低級錯誤和漏洞,減少不必要的成本投入。對于通用軟件來說,在開始開發之前要對產品進行仔細、嚴格的市場調查,這樣做不但是為了了解產品可以帶來的經濟效益和潛在市場價值,也是為了了解軟件的潛在用戶對軟件的各種需求。
通過對軟件開發的需求進行合理的分析,可以依據客戶的具體需求,對該軟件的具體功能、性能及運行環境進行充分的理解和掌握,從而大幅提升軟件開發成功之后的使用效率。
2.2 概要設計階段
概要設計階段的主要任務就是確定開發軟件工程項目具體需要用到的程序語言、操作系統以及運行平臺等因素,并對這些因素進行概要設計,此外,還要根據實際情況選擇恰當的瀑布式開發方式,從而通過特定的市場需求進行潛在編程和模型的選擇。與此同時,還要具體分析特定編程項目的設計編碼等數據,并建立科學的分析文檔。除此之外,目標系統結構中的模塊和接口、軟件和硬件配置、數據具體結構等設計工作也需要在概要設計階段完成。
2.3 詳細設計階段
在此階段,需要根據實際情況對分析模型做一些必要的修改,促使修改的原因有很多,比如編程環境的需求、詳細定義界面部分或數據庫部分等等。目前很多編程語言都以及實現了界面的可視化設計,所以界面的設計工作通常在編碼階段進行。具體來說,軟件開發的詳細設計階段就是要在概要設計的基礎上對軟件的體系結構進行細化至軟件單元,然后對每個軟件單元及其外部接口、輸出和輸入、流程邏輯、算法應用、性能描述、資源占用以及調試和測試計劃等內容進行細致的數據庫設計。
2.4 編碼與軟件單元測試階段
在軟件開發人員的分工工作中,要根據項目開發所使用的工具和方法,結合開發人員的技術特長及技術掌握熟練度來進行合理的分工。軟件單元和數據庫的開發一定要嚴格遵照相關技術的操作規范和操作步驟進行,同時為每個軟件單元和數據庫的測試設計特定的測試流程和參數。編碼過程要應用已經確定的程序語言和工具,并嚴格依照系統的詳細設計進行。最后要按照軟件單元的測試計劃依次對每個單元進行測試,并撰寫測試結果報告。編碼過程中可能會發現之前分析和設計階段中存在的一些問題,這時要及時返回到之前的A段對問題進行解決。
2.5 集成及聯合測試階段
在確定每個軟件單元的測試結果都符合要求之后,就可以將各軟件單元、硬件和模塊、網絡及其它系統必需的資源一起整合集成到系統中去,然后就按照測試計劃對系統進行集成測試,對測試結果中不符合預期和使用要求的地方要及時進行修改,直至所有指標都滿足系統試運行的要求。
2.6 系統試運行階段
在系統試運行開始之前,要根據實際情況選擇合適的試點,開發人員要與試點用戶共同合作做好系統的試運行工作,為試點用戶提供軟件運行所需的安裝和操作條件并協助他們進行軟件安裝,同時對他們進行必要的軟件操作培訓。在系統進行試運行的時候,開發者要隨時關注系統的使用情況及相關技術指標,并做好相關數據的記錄,最后根據試點用戶反饋及記錄情況對系統的試運行效果進行分析和評估。
2.7 后期維護階段
新開發軟件程序投入到實際運用中之后,要做好軟件的后期維護工作,并根據實際情況對軟件程序進行必要的修改。軟件工程的后期維護工作主要分為三個步驟:首先分析和理解軟件工程程序,其次是修改程序,最后是對程序進行重新驗證。
3 總結
總而言之,軟件工程項目管理與質量控制工作對于推動商業銀行的發展具有重要的意義。所以商業銀行要不斷提高其軟件工程項目的管理水平,嚴格按照有關規范進行軟件的開發與設計,保證軟件運行的準確性和應用率,從而提高商業銀行的市場競爭力。
參考文獻