時間:2022-12-20 10:50:13
導言:作為寫作愛好者,不可錯過為您精心挑選的10篇軟件項目計劃書,它們將為您的寫作提供全新的視角,我們衷心期待您的閱讀,并希望這些內容能為您提供靈感和參考。
軟件產品,特別是行業解決方案軟件產品不同于一般的商品,用戶購買軟件產品之后,不能立即進行使用,需要軟件公司的技術人員在軟件技術、軟件功能、軟件操作等方面進行系統調試、軟件功能實現、人員培訓、軟件上線使用、后期維護等一系列的工作,我們將這一系列的工作稱為軟件項目實施,軟件項目計劃書。大量的軟件公司項目實施案例證明,軟件項目是否成功、用戶的軟件使用情況是否順利、是否提高了用戶的工作效率和管理水平,不僅取決于軟件產品本身的質量,軟件項目實施的質量效果也對后期用戶應用的情況起到非常重要的影響。項目實施規范主要包括項目啟動階段、需求調研確認階段、軟件功能實現確認階段、數據標準化初裝階段、系統培訓階段、系統安裝測試及試運行階段、總體驗收階段、系統交接階段等八個階段工作內容,每個階段下面有不同的工作事項,各個階段之間都是承上啟下關系,上一階段的順利完成是保證下一階段的工作開展的基礎。下面將按照每個項目實施階段分別介紹。
二、項目實施方案介紹
(一)項目啟動階段
此階段處于整個項目實施工作的最前期,由成立項目組、前期調研、編制總體項目計劃、啟動會四個階段組成。
此階段主任務:
公司:在合同簽定后,指定項目經理,成立項目組,授權項目組織完成項目目標。
公司項目組:進行前期項目調研,與用戶共同成立項目實施組織,編制《總體項目計劃》,召開項目啟動會。
商務經理:配合公司項目組,將積累的項目和用戶信息轉交給項目組。將項目組正式介紹給用戶,配合項目組建立與用戶的聯系。
用戶:成立項目實施組織,配合前期調研和召開啟動會,簽署《總體項目計劃》和《項目實施協議》。
1、成立項目組
部門經理接到實施申請后,任命項目經理,指定項目目標,由部門經理及項目經理一起指定項目組成員及成員任務,并報總經理簽署《項目任務書》。
2、前期調研
項目經理及項目組成員,在商務人員配合下,建立與用戶的聯系,對合同、用戶進行調研。填寫《用戶及合同信息表》。在項目商務談判中,商務經理積累了大量的信息,項目組首先應收集商務和合同信息,并與商務經理一起識別那些個體和組織是項目的干系人,確定他們的需求和期望,如何滿足和影響這些需求、期望以確保項目能夠成功。
3、編制《項目總體計劃》
《項目總體計劃》是一個文件或文件的集合,隨著項目信息不斷豐富和變化,會被不斷變更,主要介紹項目目標、主要項目階段、里程碑、可交付成果。通常包括以下幾方面內容:
項目描述,項目目標、主要項目階段、里程碑、可交付成果。所計劃的職責分配(包括用戶的);
溝通管理計劃,確定項目干系人對信息和溝通的需要:即什么人何時需要什么信息以及通過什么方式將信息提供給他們。質量管理計劃,確定適合于項目的質量標準和如何滿足其要求。如果有必要,可以包括上述每一個計劃,詳細程度根據每個具體項目的要求而定。未解決事宜和未定的決策。
4、啟動會
項目組與用戶共同召開的宣布項目實施正式開始的會議。
會程安排如下:
共同組建項目實施組織,實施組織的權利和職責;雙方簽署《項目實施協議》。
項目組介紹《項目總體計劃》和《項目實施協議》,包括以下內容:
項目目標、主要項目階段、里程碑、可交付成果。所計劃的職責分配(包括用戶的);
項目實施中項目管理的必要性和如何進行項目管理,項目的質量如何控制;
項目實施中用戶的參與和領導的支持的重要作用;
階段驗收、技術交接和項目結束后如何對用戶提供后續服務。
(二)需求調研確認階段
此階段的主要工作是軟件公司的項目實施人員向用戶調查用戶對系統的需求,包括管理流程調研、功能需求調研、報表要求調研、查詢需求調研等,實施人員調研完成后,會編寫《需求調研分析手冊》,并交付用戶進行確認,待用戶對《需求調研分析手冊》上所提到的需求確認完畢后,項目實施人員將以此為依據進行軟件功能的實現,工作計劃《軟件項目計劃書》。如果用戶又提出新的需求,實施人員將分析需求的難度及對整個系統的影響程度來確定是否給予實現。需求調研階段具體包括如下內容:
1、進行需求調研準備
2、編制《需求調研計劃》
3、內部評審是否通過《需求調研計劃》,項目組、部門經理、商務等人員根據合同要求和項目實際情況對《需求調研計劃》草稿進行評審,如評審通過,則在稍后的時間內簽署,如評審不通過則重新修改。
4、用戶是否簽署《需求調研計劃》,如用戶簽署《需求調研計劃》,則作為以后需求調研工作的指南。否則重新修改。
5、《需求調研計劃》是否有變更,如果計劃存在變更,則執行變更控制流程,否則按計劃進行后續工作。
6、編寫及發出《需求調研通知》,項目組編寫《需求調研通知》,確定進行需求調研的相關事宜,發給用戶,為順利完成需求調研工作做準備
7、需求調研,項目組以《需求調研手冊》為依據,從業務流程、單據使用、打印格式、報表查詢幾個方面展開深入和全面的調研,并搜集用戶的個性化需求。
8、需求調研分析根據調研的結果,項目組和公司其他技術部門將進一步進行分析,確定合理、可行的需求,將分析結果形成《需求分析報告》草稿。
9、內部評審是否通過《需求分析報告》。項目組、部門經理、公司其他技術部門的人員對《需求分析報告》草稿進行評審,如評審通過,則在稍后由用戶簽署,如評審不通過則重新修改,直至內部評審通過。
10、編寫及發出《需求分析報告確認通知》。項目組編寫《需求分析報告確認通知》,發給用戶,確定進行需求確認的相關事宜,告之相關部門及人員安排好工作,準時參與需求確認工作,為順利完成需求確認工作做準備。
11、用戶是否確認《需求分析報告》。如果用戶確認,并簽署了《需求分析報告》,則需求調研階段工作結束,進行后續的軟件功能實現的工作;如沒有確認,則進一步進行調研、分析,直至用戶最終確認并簽署《需求分析報告》。雙方簽署了《需求分析報告》,需求調研工作結束之后,如果用戶提出新的需求或是變更已有的需求,則執行需求新增及變更流程。
(三)軟件功能實現確認階段
此階段的主要工作是項目實施人員根據需求調研階段確認的《需求調研分析手冊》中的用戶需求內容進行具體軟件功能的實現工作。在軟件功能實現的過程中,項目實施人員將記錄軟件實現的詳細過程。便于公司售后服務之用。每一個實施技術人員必須嚴格按照要求記錄、存檔。按照調研要求的所有功能實現完畢后,項目實施人員將編制《軟件功能確認表》,將定制好軟件功能待用戶確認,用戶根據《軟件功能確認表》上的功能逐一確定軟件功能是否達到要求,對不滿足要求的功能,項目實施人員將會記錄下來并進行功能修改,直到滿足用于要求。
(四)數據標準化初裝階段
此階段的主要工作是項目實施人員指導用戶進行系統標準化資料的準備工作,并對用戶進行初裝資料的軟件操作培訓,以便用戶能夠及時的將標準資料錄入系統,初裝完成后,項目實施人員會對資料初裝的情況進行核查,為以后具體業務功能的開展做好基礎。
(五)系統培訓階段
系統培訓階段工作是整個項目實施工作中比較重要的工作,用戶對軟件的操作功能是否熟練將直接影響到后面的軟件應用效果,所以軟件公司和用戶雙方要對此階段的工作給予足夠的重視。要充分認識培訓的重要性和艱巨性。在項目實施之前對用戶的相關人員進行系統和規范的產品培訓是非常必要的,達到讓用戶了解軟件產品,最終自己能夠解決使用中的具體的問題。
此階段的培訓工作中將用戶參加產品培訓的人員劃分為三個層次:決策層、技術層、操作層,對不同層次的用戶參加產品培訓人員的培訓內容分別是:
決策層:領導在實施中的作用與重要性、決策查詢。
維護層:系統維護知識、操作方法。
操作層:操作方法。
具體的培訓工作流程為:
1、調研培訓信息:在培訓開始前3天由用戶實施負責人,將參加培訓的部門和人員情況填入《受訓部門匯總表》、《受訓人員情況一覽表》。
2、編制培訓計劃:結合調研結果,與用戶實施負責人商議具體培訓內容、時間,場地,人員等。項目組編制《培訓計劃》。
3、簽署培訓計劃:用戶簽署《培訓計劃》,進一步確認培訓安排。
4、發培訓通知:培訓開始前2天,按照簽署的《培訓計劃》,將培訓內容、時間,場地,人員等信息通知用戶實施負責人。
5、搭建培訓環境:公司項目組在培訓開始前,將培訓環境搭建及檢查妥當,將培訓提綱及培訓手冊準備好。
6、組織培訓:公司項目組培訓負責人與用戶實施負責人組織相關人員參加培訓,按培訓制度嚴格考核。由用戶將考勤情況填入《培訓人員簽到表》。
7、培訓考核:公司項目組培訓負責人與用戶實施負責人組織受訓人員參加上機及理論考試。
中圖分類號:TP391 文獻標識碼:A 文章編號:1007-9416(2012)05-0250-01
1、引言
在國家提倡“兩化融合”的大環境下,眾多生產制造企業為提升自身競爭能力、擴展發展空間,不斷加強信息化方面人力和資金的投入,利用現代信息技術對自身信息資源進行深化開發。生產制造企業的軟件項目是具有針對性的定制需求軟件項目,不論是合作開發還是整體外包,往往存在著技術、人才等方面的不足,特別是軟件項目管理的不足使企業無法完全有效利用軟件系統的功能和消化吸收軟件在設計和應用上的知識體系,容易出現需求無法控制、功能重復開發、應用效率低、運維和移植成本高等實際困難。
2、企業軟件項目技術管理中遇到的問題
2.1 軟件需求定義模糊
軟件需求是整個軟件項目最關鍵的一個輸入,軟件需求具有模糊性、不確定性、變化性和主觀性的特點。軟件需求的提供人員普遍缺少軟件需求的必要知識,提出的需求定義不充分、不全面、不準確,導致在系統測試和運行階段會出現大量的需求變更,影響系統設計結構,造成補丁摞補丁的軟件程序。
2.2 項目參與者溝通強度不足
溝通不足常常是企業軟件項目成功的最大的威脅。軟件需求提出者在項目建設初期對信息化理念了解不深,表達不夠深入,提出的功能需求浮于日常工作表面。而企業軟件開發人員或外包商因為對業務了解不夠深刻,沒有有效的項目溝通計劃,無法充分考慮業務需求,不能對軟件系統給出規劃建議或細節,造成項目需求的余量規劃準備空間不足。
2.3 定制帶來的軟件自身內在的高復雜度
對于企業定制軟件的開發,由于生產業務自身的復雜度,導致了定制軟件的復雜度,特別是業務的組合,造成系統間和模塊之間耦合度較高。
2.4 文檔資料缺失,知識無法有效繼承
在軟件項目中,相對于項目進度和軟件開發,項目成員不太注重知識的收集和積累,僅能提供項目主要文檔資料,而這些資料往往沒有跟隨軟件變更進行及時更新。導致系統的使用、維護知識僅為少數開發和參與者掌握,無法將個人的隱形知識轉化為共享的顯性知識,給系統的后續升級、維護造成很大困難。
3、在企業軟件項目管理過程中的經驗
企業的定制軟件項目是用有限的資源、有限的時間根據特定的業務部門需求,優選各種技術和產品進行設計開發,將各個分離的“信息孤島”連接成為一個完整、可靠和有效的整體,并使之能彼此協調工作達到整體優化目的的工作。一個良好的企業項目軟件,成熟優秀的軟件項目管理是必不可少的。在軟件項目建設和全生命周期中,如要減少上述問題的發生,企業可以做好以下幾個方面:
3.1 強化軟件項目需求控制
在軟件項目管理范圍內,需求控制和管理是其中重要的一環,特別是對于針對企業自身生產經營流程所定制的軟件系統,需求貫穿了項目的整個生命周期。從企業走上ERP信息化道路之后,隨著員工對系統了解不斷加深和企業自身管理水平提升,很多因素都可能使軟件系統的需求不斷變化。如果不能有效處理需求變更,勢必會很大程度上增加開發和運維的壓力。
3.2 加強需求相關方參與項目的深度
不僅是在軟件項目初期需求收集和概要設計中,在整個軟件項目的生命周期內都必須強調項目需求相關方即業務部門的參與。由于軟件系統實施將改變企業員工的工作方式,因此,業務部門的管理者和將來的使用者必須在項目策劃階段就能了解系統應用對其工作方式帶來的影響,他們必須制定相應的政策、流程等以準備應對這個即將到來的變動。目前部分ERP項目之所以失敗,重要的一個原因是人們誤認為ERP項目僅是一個信息系統項目,該項目帶來的僅僅是一個信息產品。其實,ERP項目帶來的是一新的運營方式,如果企業在沒有做相應調整的情況下強行引入ERP,業務流程重組不到位,將會使企業運行的混亂速度加快。事實表明,促使軟件項目成功的最重要的要素莫過于需求相關方的全過程參與。
3.3 培養企業內復合型人才,擴展項目管理知識領域
企業定制軟件項目需要掌握項目管理技術、熟悉企業流程并對了解軟件開發關鍵技術的人員作為項目的管理者,首先要擴展企業內部軟件項目管理人員的知識面,一個高效的項目管理者來說至少要能理解和使用五方面的知識領域:
(1)項目管理知識體系;(2)應用領域的知識和標準;(3)項目環境知識;(4)通用管理知識技能(采購、合同、后勤、人事管理、安全等);(5)管理軟技能(處理人際關系技能)。
3.4 將項目溝通上升到技術和管理層次
由于企業內軟件從業人員較年輕,缺乏一些溝通、社交等方面的軟技能,習慣使用專業術語,更擅長跟機器打交道,所以在項目建設中會出現溝通不充分的情況。軟件項目溝通管理是軟件項目管理中的一個重要組成部分,可以使軟件人員和業務人員有效的建立彼此相互了解的關系,并且能通過溝通的行為和過程達成共識,可確保及時、正確的產生、收集、分發、存儲和最終處理項目信息。
軟件項目溝通管理包含三個主要內容:(1)編制溝通計劃,確定哪些人是項目干系人(項目干系人是指積極參與項目,或利益會受項目執行結果正面或負面影響的個體),分析他們對實施項目的影響程度。根據干系人信息需求的匯總進行溝通需求分析,對不同層次的項目干系人制定不同的溝通計劃。(2)以合適的方式向項目人員分發信息,一個企業的各個項目應該采取統一格式模板記錄信息以及進行傳遞,有助于信息格式標準化,降低溝通成本。(3)對項目溝通過程進行管理,改善軟件人員溝通的軟技巧,努力做到溝通內外有別,對外一致,一個團隊要一種聲音說話,采用對方能夠接受的溝通風格,注重非正式環境下溝通所獲得的信息,建立高效的會議方案,明確團隊內部思考方式等工作。
4、結語
軟件項目管理的發展像任何其他學科的發展一樣,其成長和發展需要有一個相對漫長的過程,而且是永無止盡的。只有不斷提升軟件項目管理成熟度,使企業軟件項目管理向多元化、專業化發展,才能取得項目的成功,最大的滿足企業自身向整體信息化轉型的需求。
1.1高職軟件技術專業教學的培養目標某高職軟件技術專業的教學過程中,主要是以北大青鳥的ACCP課程體系作為主要的教學體系,教學中的主要培養目標就是:培養出高素質的技能型人才,不僅要掌握企業級的軟件開發技術,具有一定的團隊合作能力,還要熟練的掌握大型數據庫應用系統的開發技術。高職軟件技術專業的教學,對學生的就業定位是:網站工程師和網站總不同軟件的程序開發員。為了實現良好的教學效果,高職軟件技術專業學生的學習內容,主要是Java方向的主干課程。例如,高職學生的學習內容包括網頁編程、Java語言、J2EE框架技術、SQLSERVER數據庫編程和JavaWeb高級編程等。培養Android移動應用開發人才,需要高職軟件技術院校在教學的過程中,以原有的教學體系作為基礎,對學生進行深入的Android教學。學生Android方向的學習,主要的學習內容包括An⁃droid系統的環境搭建、圖形編程、設備管理、Android平臺的體系結構和原理和網絡操作等。
1.2高職學生的學習情況高職軟件技術專業的教學過程中,教師應該應用一體化的教學模式,采取有效的措施提高教學質量和教學水平,實現良好的教學效果。學生在經過一段時間的學習之后,大部分都可以適應基于工作過程的“實踐導向”型的學習環境。軟件技術的教學過程中,教師可以應用情景教學法,按照真實的企業情景實現對角色的設置。教師和學生在真實的軟件開發工作環境中,承接項目,共同進行軟件技術的開發和研制。這種教學方法,可以提高學生的就業適應能力,讓學生真實的感受到自己的工作職責和工作內容。但是,一些學生還是缺乏良好的實踐能力和編碼規范能力。
2Android項目化開發教學的應用
在高職軟件技術專業的教學過程中,為了實現良好的教學效果,提高學生的軟件技術開發和操作能力,教師應用Android項目開發花教學,具有重要的作用。高職軟件技術專業教學中,開展Android項目開發化教學的最終目標是,教師通過對任務驅動模式教學項目的講解,培養學生的Android智能系統軟件開發設計思想,讓學生熟練的掌握Android系統中不同技能的開發技巧和相關的開發技巧。學生在Android項目化開發教學的學習過程中,可以按照一定的軟件開發流程,獨立完成對Android系統軟件的開發,最終可以參加企業級的大型Android系統軟件設計和產品開發。教師在設計這種教學案例的時候,應該堅持一定的原則。例如,教師設計的案例教學目標應該明確,對學生的理解能力和學習能力進行充分的考慮,保證設計的案例具有創新性和實用性,引導學生在學習過程中的積極性和主動性等。
某高職軟件技術專業院校,在應用Android項目化開發教學方法的時候,教師設計了一項案例,基于Android的文件管理器,聯系教學內容和實用產品的開發,通過一體化教學,逐層的拆分Android文件管理器中的核心技能,隨用隨講。教師按照軟件設計和開發的流程,首先提出了實際的需求,讓學生Android理解文件管理器是一項重要的人機交互組成部分,功能實現的質量對操作系統的用戶體驗具有直接的影響;然后按照不同的Android文件管理器的要求,對項目進行劃分,實行分別講解。這樣,學生在學習的過程中,可以有效的整合技能點的分解和練習,提高自己的軟件技術設計和開發能力。
0 引言
近年來,高等職業教育蓬勃發展,已經成為加速推進現代職業教育體系建設的中流砥柱,為服務國家經濟轉型升級培養了大批技術技能型人才。隨著我國高等職業教育改革的不斷深入,全面提高教育教學質量和人才素質將成為國家中長期教育改革和發展規劃的重要任務之一。為了更好地完成這一任務,軟件開發技術專業在課程建設與改革創新的基礎上推出仿真式企業課堂與虛擬公司的實踐教學模式。該模式將進一步增強軟件技術專業的辦學實力,明顯提升專業教學水平,培養學生適應崗位群的專業基本技能和專業專項技能,擴大專業群學生就業面,提高就業率和就業質量。
1 高等職業院校軟件技術專業教學改革現狀與趨勢
由于IT行業技術更新很快,高校教育的穩定性與軟件產業的急速發展不能相適應,社會缺乏具備實際動手操作能力的軟件人才。國內高職教育計算機類課程中普遍存在培養模式不符合技術人才培養規律、教材內容設計不合理、教學方法和教學組織形式單一、專業課程教學安排不合理等現象,以及沒有從實際應用出發、教師隊伍素質不能適應科學技術變革創新步伐、實訓條件不足等問題。
高等職業院校軟件技術專業培養的人才需要具備計算機軟件相關的理論知識,熟練掌握程序設計語言,能夠按照軟件工程規范完成程序編寫等任務,具有一定的軟件需求分析和系統設計能力,能夠從事軟件開發、測試、維護及技術咨詢等相關工作。軟件技術專業的教學改革要對應職業崗位需求,探索和研究符合職業教育規律的課程開發、實施和評價方法,開發高質、有效的學習資源,建立科學的課程質量監控體系并對教育教學成果進行科學評價,才能推動高職課程改革與持續性發展,培養出能適應實際工作崗位的高技能人才[1]。
2 企業化課堂與項目式教學改革措施
軟件技術專業課程體系的設計面向職業崗位,分析和界定高職軟件專業的就業范圍、就業崗位、技能要求和職業目標,根據“崗位能力課程”的基本過程,構建適應軟件行業崗位需求和高職學生認知規律的高職軟件專業人才培養模式。課程設置和教學內容要符合當前軟件技術發展水平和職業崗位資格要求,實現由工作崗位轉化為工作任務,并形成相應的學習領域和學習情境,制定課程標準,改進教學方法、實訓內容和考核機制等。
為了讓學生以主動的、實踐的、技術之間有機聯系的方式學習軟件開發技術,通過構建企業化環境,以項目為導向,將學習與訓練融為一體,學習內容與工作內容融為一體,以實現專業理論知識學習和企業實際開發的一體化。具體改革措施如下:
(1)研究和實施項目導向的“教學做一體化”教學模式。所有專業核心課程全面推行教學內容項目化、教學流程任務化的教學方式,教學過程以軟件產品立項到部署的完整過程為載體,采用具有專業特色的教學模式PTLF,即項目導向(Project-oriented)、任務驅動(Task-driven)、層層遞進(Layers of progressive)、四真環境(Four kinds of simulation environment)。在教學過程中實施項目導向的教學模式,由淺入深并圍繞實際軟件項目的開發組織教學,教師要起到引領導向的作用,以學生為中心,采用探究性學習、相互學習、協作學習等多種學習策略,讓學生融入企業的真實環境和真實角色,在完成典型工作任務的同時,獲得專業知識和技能,培養其崗位職業能力和素質[2]。
(2)建立“課內實訓+虛擬公司+軟件基地”三位一體的企業化課堂。采用“理論實踐一體化”教學,以“虛擬公司”為紐帶,學習性項目在“綜合技能實訓室”進行,綜合學習性項目在“專業項目實訓室”構建的虛擬軟件公司完成。企業項目為引進的外接項目或進入企業完成的實習項目。按照軟件公司的工作場景布局實訓室來模擬企業工作環境,給學生設定企業崗位身份,依照企業員工制度進行管理。用項目答辯、產品的形式對項目產品進行驗收,由項目答辯評審團評分;企業專家作為項目“合同”的甲方責任人,進行分階段的項目評審。
(3)改革教學的考核與評價方式。課程教學的考核與評價采用多方面結合的形式,分為態度評價、過程評價和終結評價。教師為項目組組長,學生為項目組成員;學生組成開發小組,自任組長或組員;專家、教師、學生代表組成項目答辯評審團。評價采取項目實施過程考核與實踐技能考核相結合的形式,內容包括實踐技能考核、項目實施技能考核、崗位績效考核,以實現對學生專業技能及崗位技能的綜合素質評價。
(4)注重學生技能訓練,將課程與職業資格認證相結合。軟件技術專業還引入了職業資格技能鑒定和廠商認證來評價學生的職業能力,在課程教學中融入職業崗位所必備的知識、技術和能力,組織學生參加職業資格認證考核,獲得的認證可作為學生的評價標準,也為學生將來就業提供了從業資格,從而提高學生的職業競爭力。
(5)開發具有實用性與系統性的教學資源。建設數字化軟件專業教學資源庫,開發精品資源共享課、微課程和項目案例,打造專業建設、課程建設、教學實施、自主學習、社會服務為一體的綜合資源庫,提供課程進行網絡在線學習,利用開放性的教學資源平臺打造虛擬教學環境,讓學生在課余時間可以自主學習并進行網上交流。
3 軟件基地及虛擬公司建設
在校內實訓基地建立專項技能實訓室、綜合技能實訓室、項目工程實訓室、虛擬公司和虛擬項目部與實訓平臺;安排學生到企業實習,并與各軟件企業聯合辦學,建立各種教學實踐基地,提供“企業體驗”、“崗位認知”、“技能訓練” 和“頂崗實踐”等各類實習實訓。
建設專項技能實訓室,主要承擔個人單兵專項技能訓練的實訓任務,實訓內容根據實訓平臺中的相關個人技能實訓內容進行;建設綜合技能實訓室,主要承擔個人單兵綜合技能訓練的實訓任務,實訓內容根據實訓平臺中的相關單兵項目實訓內容進行;建設項目工程實訓室,主要承擔團隊項目工程開發技能實訓任務,實訓內容根據實訓平臺中的綜合性項目開發實訓內容進行。學生在一個級別的實訓室完成相應訓練,獲得對應技能后,進入下一級別實訓室,進行下一模塊的學習和訓練。所有實訓室提供網絡化環境,綜合技能實訓室、項目工程實訓室及虛擬項目部開發室提供團隊協作工作環境。
由學院提供研發基地,學生組成創業團隊,建立虛擬公司,采用現代經營管理模式,有效整合公司的業務、研發、測試、推廣和服務全過程。按照企業管理要求,制定虛擬公司運行管理制度,進入虛擬公司的教師和學生按企業員工要求進行管理,以培養學生的規范化行為習慣。聘請企業人力資源主管進行人力資源相關課程教學,使學生了解企業價值觀及評價標準,并以企業人力資源管理規范作為自我評價標準,配合學生進行角色轉換,形成職業化行為習慣。同時在教學質量評價系統中引進企業人力資源管理規范,形成企業評價機制[3-4]。
4 結語
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)10-2331-01
社會經濟的迅速發展和科學技術的不斷進步,為我國的社會發展提供了良好的條件。信息化時代的到來,社會中對軟件技術人才的需求量不斷增加。高職軟件技術專業教學過程中,為了實現對學生的全面培養,提高學生的軟件技術開發和操作能力,應用Android項目化開發教學的方式,取得了良好的效果。
1 簡述Android項目化開發教學
信息技術的廣泛應用,致使社會中對軟件技術人才嚴重缺乏,出現了很多的軟件技術培訓結構和高職軟件技術專業院校。Android系統的廣泛應用,為人們的生活提供了方便。很多的軟件技術培訓結構或者院校,都相繼的開設了相應的Android系統開發課程。但是,因為軟件技術培訓機構和院校等具備不同的教學特點和教學要求,對Android系統的研究和開發課題也存在一定的差異,研究的成果和水平也不同。例如,某軟件技術培訓機構應用Android編程實現了對機器人的控制;利用一定的程度實現對鏈接庫的調用,從而達到了控制設備的目的。但是,在軟件技術專業的教學過程中,按照傳統的章節模式進行教學,不同章節之間的連貫性相對比較弱,缺乏針對性,不能實現良好的教學效果。
高職軟件技術專業的教學過程中,教師應該針對學生的思維方式和學習特征開展教學,提高學生的學習興趣。針對高職軟件技術人才的就業定位,在實際的教學過程中,教師應該采取有效的措施,形成軟件技術專業的教學特色,在整個教學過程中應用項目教學和模塊分解技能的模式實現教學。教師對軟件技術人才的培養,可以具體定位與培養更加偏向軟件應用的Android人才,全面的了解學生的思維方式和理解能力,選擇更加適合學生就業的教學內容。在講解Android編程中的不同概念的時候,教師可以應用具有價值的實例,對學生的編碼規范和調試能力進行培養和強化,使學生在學習的過程中成為一個具有項目開發經驗的人。
2 高職軟件技術專業的教學現狀
目前,為了培養出更多的軟件技術人才,我國開設了很多的軟件技術人才培訓機構和高職院校。在高職軟件技術專業教學的過程中,還存在一定的問題,需要應用Android項目化開發教學方式,提高教學質量和教學效果,促進高職軟件技術專業教學的發展。該文以某高職軟件技術專業的教學過程為例,分析目前高職軟件技術專業的教學現狀。
2.1 高職軟件技術專業教學的培養目標
某高職軟件技術專業的教學過程中,主要是以北大青鳥的ACCP課程體系作為主要的教學體系,教學中的主要培養目標就是:培養出高素質的技能型人才,不僅要掌握企業級的軟件開發技術,具有一定的團隊合作能力,還要熟練的掌握大型數據庫應用系統的開發技術。高職軟件技術專業的教學,對學生的就業定位是:網站工程師和網站總不同軟件的程序開發員。為了實現良好的教學效果,高職軟件技術專業學生的學習內容,主要是Java方向的主干課程。例如,高職學生的學習內容包括網頁編程、Java語言、J2EE框架技術、SQL SERVER數據庫編程和Java Web高級編程等。培養Android移動應用開發人才,需要高職軟件技術院校在教學的過程中,以原有的教學體系作為基礎,對學生進行深入的Android教學。學生Android方向的學習,主要的學習內容包括Android系統的環境搭建、圖形編程、設備管理、Android平臺的體系結構和原理和網絡操作等。
2.2 高職學生的學習情況
高職軟件技術專業的教學過程中,教師應該應用一體化的教學模式,采取有效的措施提高教學質量和教學水平,實現良好的教學效果。學生在經過一段時間的學習之后,大部分都可以適應基于工作過程的“實踐導向”型的學習環境。軟件技術的教學過程中,教師可以應用情景教學法,按照真實的企業情景實現對角色的設置。教師和學生在真實的軟件開發工作環境中,承接項目,共同進行軟件技術的開發和研制。這種教學方法,可以提高學生的就業適應能力,讓學生真實的感受到自己的工作職責和工作內容。但是,一些學生還是缺乏良好的實踐能力和編碼規范能力。
3 Android項目化開發教學的應用
在高職軟件技術專業的教學過程中,為了實現良好的教學效果,提高學生的軟件技術開發和操作能力,教師應用Android項目開發花教學,具有重要的作用。高職軟件技術專業教學中,開展Android項目開發化教學的最終目標是,教師通過對任務驅動模式教學項目的講解,培養學生的Android智能系統軟件開發設計思想,讓學生熟練的掌握Android系統中不同技能的開發技巧和相關的開發技巧。學生在Android項目化開發教學的學習過程中,可以按照一定的軟件開發流程,獨立完成對Android系統軟件的開發,最終可以參加企業級的大型Android系統軟件設計和產品開發。教師在設計這種教學案例的時候,應該堅持一定的原則。例如,教師設計的案例教學目標應該明確,對學生的理解能力和學習能力進行充分的考慮,保證設計的案例具有創新性和實用性,引導學生在學習過程中的積極性和主動性等。
某高職軟件技術專業院校,在應用Android項目化開發教學方法的時候,教師設計了一項案例,基于Android的文件管理器,聯系教學內容和實用產品的開發,通過一體化教學,逐層的拆分Android文件管理器中的核心技能,隨用隨講。教師按照軟件設計和開發的流程,首先提出了實際的需求,讓學生Android理解文件管理器是一項重要的人機交互組成部分,功能實現的質量對操作系統的用戶體驗具有直接的影響;然后按照不同的Android文件管理器的要求,對項目進行劃分,實行分別講解。這樣,學生在學習的過程中,可以有效的整合技能點的分解和練習,提高自己的軟件技術設計和開發能力。
4 總結
我國社會經濟的迅速發展,對軟件技術人才的需求量不斷的增加。在高職軟件技術專業的教學過程中,為了提高學生的軟件技術設計和開發能力,實現良好的教學效果,應用Android項目化教學方法取得了良好的教學效果,促進了我國高職軟件技術教學的發展。
參考文獻:
[1] 周穎穎.高職軟件技術專業Android項目化開發教學研究[J].科教導刊:上旬刊,2013(9).
中圖分類號:F426 文獻標識碼:A 文章編號:1671-7597(2014)07-0166-02
軟件項目管理是為了使軟件項目能夠按照預定的成本、進度、質量順利完成,而對成本、人員、進度、質量、風險等進行分析和管理的活動。實際上,軟件項目管理的意義不僅僅如此,進行軟件項目管理有利于將開發人員的個人開發能力轉化成企業的開發能力,企業的軟件開發能力越高,表明這個企業的軟件生產越趨向于成熟,企業越能夠穩定發展。因此,怎樣對軟件項目進行有效的管理是急需研究的課題,國內外專家學者也展開了相關的研究。
張家浩[2]以現代軟件工程為核心,系統分析了項目管理領域中軟件項目存在的問題,提出在理想和現實之間選擇平衡點的建議和方法。林銳[2]編寫的《IT企業項目管理:問題、方法和工具》一書為IT企業提供了專業性很強、行之有效的項目管理方法和相應的工具,解決了大多數IT企業的軟硬件開發項目管理混亂、質量低下、進度延誤、費用超支等問題。哈羅德?科茲納[4]在《項目管理:計劃、進度和控制的系統方法》一書中討論了時間管理、沖突管理等問題,分析了影響項目成功的因素。石慧[4]運用動態規劃的思想和網絡計劃的方法,利用馬爾可夫鏈模型進行軟件項目進度預測,對軟件開發項目中的計劃和控制應用進行研究,構建了一個并行的IT項目進度馬爾可夫鏈預測模型。
由于缺乏相關的法規政策,軟件項目開發的進度很大程度上取決于程序員自身的專業技能和職業道德水平。由于沒有一個標準劃分,管理上有很多問題不容易解決。本文對影響軟件開發進度的主要因素進行分析,闡明了進度管理的重要性,并對具體的項目開發進度管理方法進行了探討。
1 影響軟件開發項目進度的主要因素
軟件項目在開發過程中,有很多影響其進度的因素,內因、外因、主觀、客觀因素均有,情況比較復雜。為順利管理軟件開發項目進度,首先要對其中主要影響進度的因素有所了解。
1.1 80-20原則,未按原計劃執行進度
80-20原則用在經濟學中是指百分之八十的價值是來自20%的因子,其余的20%的價值則來自80%的因子。在計算機軟件開發領域,我們可以這么理解:80%的項目工作可以在20%的時間內完成,而剩余的20%的項目工作需要80%的時間。
一般來講,這剩余的兩成工作屬于比較難的技術關鍵部分,通常出現在后期。由于軟件開發過程的不確定性,在任何技術關鍵點上都可能遇到難題,這與開發人員本身的分析、設計、編程風格有關,難以預測。在實際過程中,完全無法預測在什么時候會遇到(甚至可能在最后一步)能導致全盤重建的問題,因此原計劃進度一般會調整。
1.2 預算、質量要求等的變更及適應性調整不及時
除了對項目本身的工作量估算不合理之外,設計人員的理解也可能造成問題。如開發人員理解的情況與實際情況有偏差,在沒有充分溝通并確認時開展項目,過程中又會變更,在驗收階段可能才發現“審題錯誤”,造成資源浪費,同時與之相關橫向、縱向項目的進度也會受影響,易產生“軟件危機”。此外,其他問題如設備、人力不符合要求或調整,都會影響實際進度。
1.3 前期可行性分析不充分
由于項目參與人員的經驗或素質原因,在項目開始前的準備不足,對項目狀態信息收集的不足,沒能好好把握項目的內容,容易造成對項目的了解不符合實際情況,加上高估自身工作能力,這就會對進度造成影響。如果沒有充分的理解和準備,項目整體就會受到很大的影響,對項目本身的低估其實是對自身的一種高估,這樣會使得預期的進度在實際進展過程中不僅很難實現,而且容易對工作人員的士氣形成打擊。
1.4 其他因素
假設、約束、風險等條件考慮“不周”造成項目進度計劃中未考慮一些不可預見的事件發生。例如軟件開發項目還會因為項目資源特別是人力資源缺失(如人員生病、離職、開發人員臨時有其他救急任務)等原因,對項目進度控制造成影響致命影響。即項目及時完成是基于環境不變、任務不變、資源不變動等假設。軟件開發主要是靠程序員來進行,軟件體現出程序員的不同風格,因此程序員本身的主觀性也會造成影響。在進度安排的時候應當適當配置應急預案,預留空余。
2 軟件開發項目進度管理的目的
加強軟件開發項目進度管理是軟件開發行業發展的必要手段,也是必經之路。項目進度控制和監督的目的是:增強項目進度的透明度,及時發現項目中存在的問題并改正,對項目進展加以督促等,保證項目按時完成。
合理的管理手段可以加強項目的監督控制,對項目進度完成情況有一個大致的了解和評估,一旦出現問題可以及時溝通交流;遇到有落后進度情況及時督促,對有理解偏差的情況及時發現、及時糾正等。
軟件開發時實施進度控制是項目管理的關鍵。一般一個部門同時會接多個項目,并行處理過程易造成混亂。通常,一個項目會由多部門的課題組共同負責,分項目之間橫向并列或縱向承啟,分部越多就越容易受影響。因此各分項目的準時能確保項目實施進度,對項目進度的合理管理可以起到協調作用。進度控制是項目管理過程中一項最重要的監控內容,負責對項目周期的整體把握與控制。通過軟件開發項目進度管理方法,對各個分項目的進度進行控制,保證每個分項目各自按照項目計劃書中的預期進度安排完成各自的內容,對于其中出現的問題及時予以糾正,從而保證項目整體的順利完成。
3 軟件開發項目進度管理方法
3.1 對項目本身充分了解
在制定項目計劃書之前,首先應當對充分了解項目本身。項目進度控制的前提是有效地計劃和充分掌握第一手信息,通過實際值與計劃值進行比較,檢查、分析、評價項目進度。對項目的充分了解是制定一個可行性分析報告的必要條件。除了了解項目相關技術內容、發展情況外,還應包括主要設備(工具軟件)、項目參與者的情況,以合理分工、科學管理。
3.2 項目計劃書與定期的進度報告
為了按期完成軟件交付任務,目前軟件開發單位陸續采取了很多控制進度的管理手段,其中最為廣泛實用的就是項目計劃書和定期的進度報告的提交。項目計劃書和進度報告都是參考傳統的工程項目管理方案,同時結合軟件開發本身的特點進行的改進。作為項目進度控制的基準,項目計劃書是項目的階段成果完成情況的一個預期與管理依據。根據計劃書中的時間安排,在項目的每個階段點,項目負責人需要向相關管理人員(部門)書面提交階段工作匯報與計劃。在進度報告中,要有完成情況、存在問題、下一步安排等,實際上就是項目執行人員的對總結、分析、開發反思。
3.3 進度協調會
在軟件開發項目中,一個項目通常由不同的項目團隊合作完成,企業有專門的合同管理部門負責項目的分、轉包、合同期與進度計劃的協調。項目經理應該及時掌握這些情況,按計劃進行計劃進度與實際進度的動態比較,定期向客戶提供可靠反饋。這通常是通過進度協調會來完成的,參與項目的每個團隊負責人通過協調會了解相關方的進度、探討問題,根據對方完成情況動態調整自己的進度。
3.4 階段性審查與應急措施
軟件開發項目進度管理過程需要從項目從準備到開始到進行到完成的各個不同階段都采取不同的方法進行控制管理,全面把握項目進程。在準備階段需要提供項目信息,同時確定項目研究進度;編制階段計劃和項目總進度計劃;控制該計劃的執行;而需求分析和設計階段控制的任務是編制與用戶的溝通計劃、需求分析工作進度計劃、設計工作進度計劃,控制相關計劃的執行等。最后,實施階段進要求編制實施總進度計劃并控制其執行;編制實施計劃并控制其執行等。
在項目設計書中應當有關于應急預案的內容,這是我國現在工程管理、軟件開發管理都比較容易忽略的一個內容,其本質是對項目過程中可能出現的干擾和影響的一個預測,對項目整體的合理把握。針對可能的問題,提出一定的解決方案,而在實際過程中,一旦出現問題,具體應當結合實際情況確定,避免產生相反的效果。
4 結束語
軟件項目的開發與傳統的工程項目具有很大的區別,軟件本身具有無具體形態、缺乏標準等特點,開發過程不確定性大,主觀因素影響對軟件質量影響較大,因此進行項目進度管理探討十分必要。本文通過總結進度管理上可能存在的問題,提出了可以采取的管理手段,希望能對實際工作有參考價值。
參考文獻
[1]張家浩.軟件項目管理―華鼎項目管理書庫[M].北京:機械工業出版社,2009
[2]林銳,唐勇,黃曙江.IT企業項目管理:問題、方法和工具[M].北京:電子工業出版社,2005.
[3]Harold Kerzner.項目管理―計劃、進度和控制的系統方法[M].楊愛華等譯.第7版,北京:電子工業出版社,2012.
1軟件項目管理的組織模式
1.1項目管理委員會。項目管理委員會是公司項目管理的最高決策機構,—般由公司總經理、副總經理組成。主要職責如下:(1)照項目管理相關制度管理項目;(2)監督項目管理相關制度的執行;(3)對項目立項、項目撤消進行決策;(4)任命項目管理小組組長、項目評審蠶員會主任、項目組組長。
1.2項目管理小組。項目管理小組對項目管理委員會負責,—般由公司管理人員組成。主要職責如下:(1)草擬項目管理的各項制度;(2)組織項目階段評審;(3)保存項目過程中的相關文件和數據:(4)為優化項目管理提出建議。
1.3項目評審小組。項目評審小組對項目管理委員會負責,可下設開發評審小組和產品評審小組,—般由公司技術專家和市場專家組成。主要職責如下:(1)對項目可行性報告進行評審;(2)對市場計劃和階段報告進行評審;(3)對開發計劃和階段報告進行評審;(4)項目結束時,對項目總結報告進行評審。
1.4軟件產品項目組。主要職責是:根據項目管理委員會的安排具體負責項目的軟件開發和市場調研及銷售工作。
2軟件項目管理的內容
在二十世紀八十年代初,著名軟件工程專家B.W.Boehm總結出了軟件開發時需遵循的七條基本原則,同洋,我們盔件項目管理時,也應該遵循這七條原則。它們是:(1)用分階段的生命周期計劃嚴格管理;(2)堅持進行階段評審;(3)實行嚴格的產品控制;(4)采用現代程序設計技術;(5)結果應能夠清楚地審查;(6)開發小組的人員應該少而精;(7)承認不斷改進軟件工程實踐的必要性。
3編寫《軟件項目計劃書》
《軟件項目計劃書》一般應該包括下述內容
(1)引言。A計劃的目的;頁目的范圍和目標:范圍描述;主要功能;性能;管理和技術約束。(2)項目估算。使用的歷史數據;b使用的評估技術;c工作量、成本、時間估算。(3)風險管理戰略。風險識別;d風險的時論;e岡險管理計劃:風險計劃風險監視;風險管理。(4)日程。a項目工作分解結構;b時限圖(甘特圖);c琶源表。(5)項目資源。a人員;b硬件和軟件;c特別資源。(6)人員組織。a組織結構;b管理報告。(7)跟蹤和控制機制。a質量保證和控制;b變化管理和控制。(8)附錄。
4軟件配置管理
軟件配置管理應提供的功能:在IS090003中了如下描述:
唯一地標識每個軟件項的版本;標識共同構成一完整產品的特定版本的每一軟件項的版本;控制由兩個或多個獨立工作的人員同時對一給定軟件項的更新;控制由兩個或多個獨立工作的人員同時對一給定軟件項的更新:按要求在—個或多個位置對復雜產品的更新進行協調;標識并跟蹤所有的措施和更改;這些措施和更改是在從開始直到放行期問,由于更改請求或問題引起的。
5軟件質量管理
5.1軟件質量保涇計劃。在進行軟件開發前。需要有—個《軟件質量保證計劃》。一般包括以內容:(1)計劃目的;(2)參考文獻;(3)管理。a組織任務;b責任。(4)文檔。a目的;b要求的軟件工文檔;d也文檔;(5)標準和約定。a目的;b約定(6)評審和審計。a目的;b評審要求。軟件需求自噼審;設計評審;軟件驗證和確認評審;功能評審;理評審;內部過程評審;管理評審。(7)測試。(8)題報告和改正活動。(9)工具、技術和方法。(10)媒體控制。(11)供應者控制。(12)記錄、收集、維護和保密。(13)培訓。(14)風險管理。
5.2質量管理的基本原則。控制所有過程的質量;過程控制的出發點是預防不合格;質量管理中心任務是建立并實施文件化的質量體系;持續的質量改進;有效的質量體系應滿足顧客和組織內部雙方的需要和利益;定期評價質量體系;搞好質量管理關鍵在于領導。
5.3軟件評審。軟件評審并不是在軟件開發畢后進行評審,而是在軟件開發的各個階段都進行評審。因為在軟件開發的各個階段都可能生錯誤,如果這些錯誤不及時發現并糾正,會不地擴大。最后可能導致開發的失敗。軟件評審是相當重要的工作,也是目前國開發最不重視的工作。
5.4測試。測試—般包括單元測試省測試集成系統測試。如果測試結果與預期結果不—致,則很可能是發現了系統中的錯誤,測試過程中將產生下述基本文檔:(1)測試計劃:確定測試范圍、方法和需要的資源等。(2)測試過程:詳細描述和每個測試方案有關的測試步驟和數據(包括測試數據及預期的結果)。(3)測試結果:把每次測試行的結果歸人文檔,如果運行出錯,則應產生問題報告,并且必須經過調試解決所發現的問題。
6軟件風險管理
6.1風險的分類。根據風險內容,我們可以將風臉分為項目風險(成本提高,時間延長等)、技術風險(技術不成熟等)、商業風險(銷售問題等)、戰略風險(公司的經營戰略發生了變化)、管理風險(公司管理人員是否成熟等)、預算風險(預算是否準確等)等。另外,我們還可以將風險分為已知風險(如員工離職等)、可預報風險(從以往經驗得出可能有風險的)和不可預知風險。
6.2風臉的識別。風險項目檢查表。主要涉及以下幾方面檢查:(1)產品規模風臉檢查;(2)業務影響風險檢查;(3)與客戶相關的風險檢查;(4)過程風險檢查;(5)技術風險檢查;(6)開發環境風險檢查;(7)與人員的模式和經驗有關的風險檢查。
中圖分類號:TP311.5
目前,南京市軟件產業取得了令人矚目的成績,中小型軟件企業的數量也在與日俱增,相當多的中小型軟件企業希望以CMM2作為切入點,著力改進軟件項目管理過程,提升企業的市場競爭力。作為培養“軟件藍領”的高職院校,就要順應這一趨勢,采用信息化的手段讓學生學習并了解CMM2模型。所以,一個基于CMM2模型的、并加以改進的“軟件實訓項目管理系統”應運而生。
1 軟件能力成熟度模型2級(CMM2)詳解
所謂CMM2(可重復級),就是在CMM2級企業中,已經建立了基本的軟件項目級管理過程,可對項目的成本、進度進行跟蹤和控制,軟件開發和維護的過程相對穩定,已有的管理類似項目的成功經驗可以被復用管理新項目,盡管新項目所實施的具體過程有可能不同。CMM2的核心就是重復利用。
CMM2包括六個關鍵過程域(KPA),囊括了需求管理、項目管理、質量管理、配置管理和子合同管理五個方面,其中項目管理又分為計劃過程和跟蹤與監控過程。
1.1 需求管理
需求管理的最終目的是在客戶與實現客戶需求的項目之間達成共識,需求管理活動就是為了建立并維護這種共識,這是軟件項目計劃和管理的基礎。在軟件項目的整個生命周期,都應該記載、跟蹤和驗證由于需求的變化而引起其它文檔所作的修改。
1.2 軟件項目計劃
建立合理的開發計劃的基礎是對項目規模、資源要求和風險等要有一個合理的估算。軟件項目計劃的目的是為完成軟件工程和管理軟件項目制定合理的計劃,包含估計待完成的工作,建立必要的約定和確定進行該工作的計劃。
1.3 軟件項目跟蹤及監督
軟件項目跟蹤和監督的目的是建立對實際進展的適當的可視性,使管理者能在軟件項目性能明顯偏離軟件計劃時采取有效措施。它包括對照已文檔化的估計、約定、和計劃評審和跟蹤軟件完成情況和結果,以保證當項目執行偏離項目計劃時管理上能采取有效的解決措施。
1.4 軟件質量保證
軟件質量保證的目的是向管理者提供適當的對軟件項目正使用的過程和正構造產品的可視性。它包括評審和審計軟件產品和活動以驗證它們符合適用的規程和標準,給項目和其它有關的經理提供這些評審和審計的結果。
1.5 軟件配置管理
軟件配置管理的目的是建立和維護在項目的整個軟件生存周期中軟件項目產品的完整性。它包括標識在給定時間點上軟件的配置,系統地控制對配置的更改、并維護在整個軟件生存周期中配置的完整性和可跟蹤性。
1.6 軟件子合同管理
軟件子合同管理的目的是選擇合格的軟件子承包商并有效地管理他們。它包括選擇軟件子承包商、建立和子承包商的約定,及跟蹤和評審子承包商的性能和結果。
2 軟件實訓項目管理與CMM2模型改進
2.1 軟件實訓項目管理
(1)軟件實訓項目管理概述。軟件實訓項目是參考中小型軟件企業真實項目案例,同時又適合高職學生作為訓練相應技能而改進的軟件項目,它不是一個具有商業性質的軟件產品。目前,正規的軟件企業如果重視軟件項目實施過程的管理,一定會采取各種方法對軟件項目進行管控,軟件項目管理系統就是一個常見的措施,采用該系統可以對軟件項目的各個實施階段進行有效的、實時的、科學的管控。所以,把針對軟件實訓項目管理的系統叫做軟件實訓項目管理系統。
(2)軟件實訓項目管理系統的基本功能需求。軟件實訓項目管理系統是體現軟件實訓項目管理過程的一個信息化軟件平臺,針對學院對項目管理基本的功能需求調查發現,整個系統包括了班級管理、案例資料管理、項目管理、歷史數據管理、實訓成績管理、課程管理六大部分。其中最重要的功能就是項目管理,它重點體現了軟件成熟度模型的思想,有效的規范和保證了項目實施的全過程,包括項目啟動、計劃、執行、質量保證、結束。
2.2 CMM2級模型改進與實施方案
(1)CMM2級模型改進。CMM2模型中的內容非常廣泛,標準十分完備,如果完全照搬CMM2運用到該系統中是不合適的。因此,必須對CMM2中管理的內容和標準進行一定的優化和裁減,提出一個適合軟件實訓項目組規模的CMM軟件項目管理模型,并給出在模型的各個階段實際要完成的任務和需要注意的問題。
根據CMM2六個關鍵過程域(KPA)的解釋和軟件項目管理的過程,這里我們可以初步提出一個基于CMM2的軟件實訓項目管理模型。該模型如圖1所示:
圖1中軟件實訓項目管理模型的劃分結合了軟件項目的生命周期,主要分為:項目啟動、項目計劃、項目實施與控制、項目技術。各個階段分別包含CMM2的關鍵過程域,其中軟件質量保證和軟件配置管理2個KPA貫穿于整個項目開發過程始終。圖中只提到了CMM2的5個KPA,還有一個軟件子合同管理KPA,考慮到根據軟件實訓項目的規模和實際情況,一般不會出現把項目轉包出現的情況,在此進行了裁減。
(2)組織管理結構改進。對CMM2的模型改進后,接下來就要對CMM2所要求的組織管理結構進行適當的裁減。因為CMM中任務分工細,涉及到的角色關系多,這對于軟件實訓項目組這樣的小型軟件開發組織來說是難以實現的。經過裁減后,組織管理結構中各個角色的工作職責描述如下:1)高級經理:一名,負責所開展的所有軟件實訓項目。2)項目經理:一個項目一名,負責整個項目的實施。3)軟件工程師:根據軟件項目的規模確定人數,負責軟件的設計與開發。4)軟件配置管理員:可安排由項目組中任意成員擔任,可以是項目經理,可以是軟件工程師,也可以由其他人員兼任,負責軟件產品的配置整合工作。5)軟件質量保證員:如果人員條件允許,此人員最好單獨設立,如若條件所限,可由項目經理或軟件測試人員兼任,負責項目在各個階段的評審。6)軟件測試員:可由軟件工程師同時擔任,在開展測試工作時,必須交叉測試。
3 實施方案
3.1 項目啟動
項目啟動是軟件項目管理的初始階段,它對項目有序、正常的開展起著非常關鍵的作用。項目啟動包括有項目可行性分析,需求調研、編寫需求文檔和可行性分析報告。該階段主要包含CMM2的軟件項目計劃KPA。
在此階段需要重點處理的工作有:(1)可行性分析。可行性分析是為了分析在一定時間范圍內軟件項目是否能夠按要求完成以及完成的價值如何。一般從技術可行性、經濟可行性、社會可行性三個大方面來考慮,從而形成軟件項目可行性分析報告。技術可行性即項目開發的技術儲備,開發的風險等方面是否支持項目的開發;經濟可行性即確定該項目在經濟上是否值得開發;社會可行性即判斷待開發的項目是否有侵犯、妨礙等責任問題。(2)需求分析。需求分析是經過需求分析后的產出物。需求分析的任務就是確定系統具備哪些功能,即回答待開發項目做什么的問題。需求分析的過程是和客戶打交道最多也是最重要的環節,它直接決定了后續項目開發的成功與否,必須通過多次的需求調研、分析才能形成需求規格說明書。
3.2 項目計劃
項目計劃的提出是為了給軟件項目實施的各個階段提供一個合理的、可行的、可參考的工作計劃,使項目參與人員能夠有條不紊的按照計劃開展工作。該階段主要包含CMM2的需求管理KPA和軟件項目計劃KPA。
在此階段需要重點處理的工作有軟件項目計劃:軟件項目計劃必須按照需求調研的結果來制定,要根據不同的項目要求明確軟件項目開發模型,可以利用的項目資源,項目經理還要根據項目需求文檔從軟件規模、人力、成本、進度等方面進行項目估算和風險評估,根據項目組成員的技術特點和能力進行工作分解和職責分配,從而形成軟件項目計劃書。項目計劃書一旦制定,項目實施的過程就要嚴格的以它為基準跟蹤和控制。
3.3 項目實施與控制
雖然軟件項目已經有了明確的需求分析和好的項目計劃,但由于計劃本身具有假設性和預測性,盡管也充分考慮了可能的風險因素,但是計劃畢竟只能是對現實所作的預測和粗略的描述。因此在實施計劃時,偏差不可避免。當軟件項目的執行與項目計劃出現明顯偏差時,項目管理人員必須采取有效的措施。該階段包含CMM2軟件項目跟蹤和監控KPA和需求管理KPA。
在此階段需要重點處理的工作有:(1)需求變更控制:由于需求不能在項目啟動時就能完整的定義好,并且隨著項目的實施,遇到客戶臨時更改需求的情況也是不可避免的,項目經理要組織項目組討論變更帶來的影響,從而決定是否進行需求文檔和項目計劃的修改。(2)版本控制:由于軟件項目通常是團隊合作方式進行,所以不管是需求的變更,還是實施過程中其他文件的更新,都必須及時通知到每一個項目組成員。(3)需求狀態:需求狀態是標識需求的一個重要屬性。每當處理一個需求功能點時,都必須及時的把對該需求的處理方式記錄下來,通常的需求狀態有:已批準、已拒絕、已刪除等等。(4)項目跟蹤和監控:項目組必須指定專人在規定的時間記錄項目定的跟蹤項的進展狀態,以提供計劃與實際偏差的第一手數據,從而采取必要的措施及時處理偏差。
3.4 項目結束
項目結束階段主要是針對項目本身進行的項目評審驗收、歸檔總結等工作。此階段包含CMM2軟件質量保證和軟件配置管理KPA。
在此階段需要重點處理的工作有:(1)用戶驗收和項目評審。項目評審應該貫穿于整個項目實施的始終,可以根據項目規模的大小來決定評審的形式,是走查還是正是評審,可以邀請同行和客戶來對軟件項目進行審查。在項目結束階段的評審主要是對項目整體功能是否符合需求,項目過程是否符合項目計劃等方面來展開。(2)歸檔總結。項目結束后,要把項目涉及到的項目資料包括軟件的需求文檔、開發設計文檔、產品文檔、管理文檔等資料匯總收集到相關資料庫中,同時還要認真的總結項目實施過程,供今后維護和開發參考使用。
參考文獻:
[1]韓萬江,姜立新.軟件項目管理案例教程[M].機械工業出版社,2006.
[2]Mark C.Paulk,Charles V.Weber,Suzanne M.Garcia,Mary Beth Chrissis,Marilyn Bush.Key Practices of the Capability Maturity ModelSM,Version 1.1.1993.
[3]鄧子云.論CMM2的過程改進[J].安徽電子信息職業技術學院學報,2004,3(5).
一、問題提出
隨著教育改革的不斷發展,基于項目的學習在國內的教學中越來越受到重視。國內外的相關研究證明基于項目的學習是培養和提高大學生創新能力和綜合素質的有效途徑之一。
《多媒體技術與應用》是傳播學專業的一門實踐必修課,課程注重學生的技術應用能力、問題解決能力和創新能力的培養。筆者在以前的實驗教學中發現主要存在以下問題,
(1)對媒體軟件技術的整體運用能力較差。在制作作品的時候缺乏整體策劃,急于下手,導致作品進行到一定程度的時候無法繼續進行。
(2)運用媒體技術解決實際問題的能力較差。比如試題“借助Flash軟件運用遮罩動畫為給定的瀑布圖片制作瀑布流水效果”,只有大約三分之一的學生能夠完成,但是遮罩動畫的制作方法大部分同學都能熟練制作。
(3)創新能力有待提高。比如“運用Photoshop軟件設計一幅‘戒煙,宣傳海報”,發覺在作品的設計與制作方面存在較多的拘束,缺乏新穎創意。
基于上述相關問題的考慮,結合項目學習的特點,筆者在新學期嘗試將項目學習運用于《多媒體技術與應用》課程教學中,意在改善傳統實驗教學中存在的相關問題。
二、項目學習實施
教育領域中的“項目”,指的是一種學生圍繞所選主題進行的一系列調查、觀察、研究、表達新學知識、展示和分享學習成果等的學習活動。在《多媒體技術與應用》課程中開展項目學習主要從刨設情境、選定項目、作品設計與制作、成果交流和活動評價五個步驟開展。
1.情景創設
教師針對《多媒體技術與應用》課程中涉及到的不同軟件,分別從生活選擇恰當的案例如海報、Flash廣告等作為示范項目,依照示范項目進行講解,使學生了解相關軟件與技術的功能。熟悉項目的各個模塊。通過對師范項目的介紹與學習,使得學生了解整個課程的學習內容都是圍繞一個主題進行的。逐步將項目思想融入到學生的學習中,讓學生用項目的思維去發現和解決問題,從而避免學生的知識技能學習與實際生活脫軌的現象。
2.項目選定
在《多媒體技術與應用》課程中,項目學習以項目小組的形式進行開展。通過前期對學生進行學習者特征分析,采用分組異質的形式來形成項目小組。傳播學專業兩個班共72人,每組6人,形成12個項目小組。項目的選定是項目能否成功的關鍵。針對項目的選取過程中小組成員存在選題困難的情況,筆者在項目選取階段,讓項目小組成員采用頭腦風暴會議。通過頭腦風暴會議讓學生擺脫制式、思維的局限,使得學生可以更加自由的思考,從而產生很多新的想法、創意。各個項目小組通過頭腦風暴會議都提出了十幾個項目主題。
在頭腦風暴階段各個項目小組提出的項目主題比較多。項目小組需要從中選擇1~2個項目來完成。針對如此多的項目主題,筆者首先要求項目小組成員通過投票的方式,選定5個小組成員認為最有價值的可行性項目。在小組確定好5個項目以后,采用六頂思考帽來評議每個項目主題的科學性、可行性、創新性與價值性。六頂思考帽是指使用六種不同顏色的帽子代表六種不同的思維模式。項目小組中6位成員,通過戴不同的帽子,來進行各自的思維模式。一個項目的六頂思考帽方如下:陳述問題(白帽);提出解決問題的方案(綠帽);評估該方案的優點(黃帽);列舉該方案的缺點(黑帽);對該方案進行直覺判斷(紅帽);總結陳述,做出決策(藍帽)。借助六頂思考帽,項目小組通過對5個項目進行評議,最終確定小組的項目主題。
3.設計與開發
項目小組在確定項目主題之后,對項目作品進行規劃,以便完成項目計劃書a項目規劃的主要工作是規劃出必要的工作任務,高質量地完成項且作品。通過完成項目計劃書可以使得小組成員從整體上把握熟悉項目。了解項目的流程以及項目中各部分工作的優先級問題,從而避免項目的在制作過程中返工或者由于部分項目工作沒有完成而導致項目后期工作無法進行等問題。通過項目規劃可以使得項目組成員明確何時以及如何學習完成項目所必須的知識和技能?項目計劃書的主要內容為:項目目標,項目背景,項目條件(支持性條件和限制性條件),項目團隊及分工,項目工作分解,項目里程碑。
基于項目的學習是以課程為核心的學習,應該將新知識新技能融入到學生的項目中,通過完成項目掌握課程知識。因此學生在完成項目過程中要實時填寫“項目所需知識與技能問題曰志”,在日志中填寫所需要的課程知識與技能,并且標注該知識或技能是否在項目中學習獲得?
項目小組在完成項目設計之后,依據項目計劃書逐步完成項目作品。項目小組成員依據分工填寫項目進度表。依據項目里程碑及時調整項目進度情況,以便順利完成項目作品。項目小組如在項目開發過程中遇到問題,首先項目小組成員探討看能否解決,無法解決的求助于項目指導教師。
4.成果評價
軟件項目管理是為了使軟件項目能夠按照預定的成本、進度、質量順利完成,而對成本、人員、進度、質量風險等進行分析和管理的活動。軟件項日管理最早出現于7o年代中期,當時美國國防部專門立項研究軟件項目失敗的原因,發現70%的項目失敗是I如于管理不善引起的。而并不是因為技術能力。從而得出一個結論,即管理是影響項目全局的因素,而技術只影響局部。所以軟件項目管理至關重要。在關系到軟件項目成功與否的眾多因素中,項目規劃、需求變化、軟件質量、風險管理等都是與項目管理直接相關的因素。因此,提高軟件項目管理的能力對軟件組織的軟件生產力的提高是最為重要的。本人對目前軟件企業實施項目管理的狀況進行了分析,結合軟件項目管理的理論知識,以期找出在軟件項目管理中常見的問題。促進軟件項目管理的應用研究。完善軟件項目管理在軟件企業的實施。
1軟件項目管理存在的主要問題
1.1項目計劃問題
項目計劃是—個用來協調所有其他計劃,以指導項目執行和控制的文件。項目計劃是項目經理實施項目管理控制的基礎。制定計劃的過程就是—個對項目逐漸了解掌握的過程,通過認真地制定汁劃,項目經理可以知道哪些要素是明確的。哪些要素是需要逐漸明確的,通過漸近明細不斷完善項目計劃。目前的問題主要有:一是項目計劃的制定不夠嚴謹,隨意性大.可操作性差,因而實施中無法遵循。如項目計劃過于粗略.落實粒度(“Breakdown”)不足,不能做到任務、進度、資源三落實。二是缺乏貫穿項目全程的詳細項目計劃,甚至采用每周來制定下周工作計劃的逐周項目計劃方式,其實質是“項目失控合法化”。三是項目進度的檢查(與進度計劃對比)和控制不足。不能維護項目計劃的嚴肅性。
1.2管理意識問題
在軟件企業中。項目經理大多是技術骨干,在技術方面的知識比較深厚,但是項目管理知識、項目管理必備的技能,項目管理的經驗都有待提高。部分項目經理沒有意識到自己是項目經理的角色。不是從總體上去管理整個項目而是埋頭干具體的技術工作,其計劃不周造成項目組成員任務分配不均.忙的忙、閑的閑,這將影響項目的最終實施。有些項目經理對于一些不服從管理的技術人員,沒有較好的管理方法,不好安排的工作只好th己做。
1.3項目干系人相關問題
項目千系人(“STAKEHOLDER”)是指參與項目和受項目活動影響的人,包括項目發起人、項目組、協助人、顧客、使用者、供應商,甚至是項目的反對人。人們的需求和期望在項目的開始直至結束都是非常重要的。不同的干系人其期望和追求的目標往往相差甚遠,因此對項目十系人的愿望進行平衡是相當困難的事情。例如政府部門的不少對群眾辦公的信息系統,上層管理機關往往希望能夠采集盡可能多的信息項以便對數據進行多種多樣的系統分析,并對信息進行有效控制而增加一些審批流程;基層對外辦公的窗口則因為辦公速度的壓力希望減少信息的輸入;而辦事群眾則希望相關政府機構能夠簡化工作流程,加快辦事速度。如果對項目所有干系人沒有進行足夠的溝通,使其盡可能地參與項目,則可能因為項目開始時項目范圍和一些具體要求不夠完整清晰,或某個項目干系人后期認識的變化而提出新的要求,造成工期的延長,成本的增加,甚至項目的完全失敗。
1.4項目團隊內分工協作問題
由于項目開發的各階段不同角色、同一階段不同角色的責任各不相同,項目經理把工作責任分畫給團隊成員時通常會出現一些不良現象。首先是山于分工不夠清晰而造成工作相互推諉、責任互相推卸的現象;另外是出現“自家打掃¨前雪”的現象,即雖然分工比較清晰但是各成員只顧完成自己的那部分任務而不愿意與他人協作。
1.5溝通意識問題
項目溝通管理包括確保及時、正確地產生、收集、、存儲和最終處理所需項目信息的過程。它是人、思路和信息之間的關鍵紐帶,是成功所必須的。雖然整個項目是項目經理負責,但是在決定這個業務單元山某個或者某兩個人完成后,項目經理只能起管理上的控制、建議和指導的角色,不能對具體的內容進行過多的干預在軟件企業中,項目經理大多是技術骨干,而項目組成員也都是“高科技人員”,都具有“從專業或學術出發、工作自主性大、自我欣賞、以自我為中心”等共同的特點。因此妨礙溝通因素主要是“感覺和態度問題”,也就是溝通意識和習慣的問題。在系統的實施階段或軟件開發的試運行階段,項目成員基本上是持續在客戶方進行工作,這種情況非常容易忽視溝通。如果沒有足夠的溝通意識和溝通制度、溝通工具,就有可能造成信息不暢,從而加大項目失敗的風險。
1.6項目風險管理意識問題
項目風險管理是指為了最好地達到項目的目標,識別、分配、應對項目生命周期內風險的科學與藝術。風險管理對選擇項目、確定項目范圍和制定現實的進度計劃和成本估算有積極的影響,并有助于項目千系人了解項目的本質,使團隊成員參與確定優勢和劣勢。目前項目風險管理意識的問題主要有兩種情況。第一是項目經理沒有充分分析可能的風險,對付風險的策略考慮比較簡單,在做項目規劃時常常沒有做專門的風險管理it~’l文檔,而是合并在項目計劃書中。第二是項目經理沒有充分意識到風險管理的重要性。對計劃書中風險管理的章節簡單應付了事,隨便列出幾個風險,隨便地寫一些簡單的對策,對后面的風險防范起不了什么指導作用。
1.7項目收尾問題
項目經驗總結是項目經理和項目組人員在項目完成后就取得的教訓寫的報告,是項目收尾的一個重要組成部分。總結在本項目中哪些方法和事情使項目進行得更好、哪些對項目制造了麻煩、以后應在項目中避免什么情況。哪些事情應在后面的項目中堅持等等。項目經理在項目結束時有些是因為項目人員已經不足或不全,或是因為有新的項目要接沒有時問,總體對項目經驗總結的重視程度不夠。有些是項目經驗總結一再拖延,有些是交上來的報告質量較低,敷衍了事。
2加強軟件項目管理的建議及措施
2.I制定相符的項目計劃
制定計劃的精髓不在于寫出一份好看的文檔,而在于運用您的智慧去應對各種問題和面臨風險并盡可能做出前瞻性的思考。計劃是用來指導工作的,制定項目計劃必須把握項目it~,l的粒度,粒度越細則控制力度越大,但項目管理的成本越高,反之則控制力度越小。兇此必須按照特定的項目量體裁衣,該詳細就詳細,該簡略的就簡略,制定相符的項目計劃。許多組織都有項目計劃制定的指導原則。例如,美國國防部的2l67標準“軟件開發計劃”用于指導那些為國防部開發軟件的開發商制定軟件開發計劃。電氣和電子工程師協會(IEEE)的1058.1標準描述了“軟件項目管理計劃”的主要內容。表l給出了“1EEFYI,T:,準軟件管理計劃”的格式。遵循那些標準和方針有利于項41汁劃的制定和執行一旦it~,l被負責任地完成,他就可以給閂己一個和管理層或客戶交流和協商的基礎,幫助其在項目過程中防范各種題的出現,保證項H的按時完成.
2.2使用w BS(WorkBreakdownStructure)和資源負荷直方圖,合理分配任務
項目經理應使用工作分解結構WBS將項目工作范圍進行分解,為了避免有些雖然工作分解結構WBS沒汁合理,但項目任務無法有效、合理地分配給相關成員,可采用資源負荷直方圖把工作任務合理分配并達到“負載均衡”。另外.技術骨r在擔任項目經理之前,最好能系統地學習項目管理知識,特別是其中的人力資源管理、溝通管理,并且在實際工作中不斷提高角已的管理素質,豐富項目管理的經驗,提高項目管理的意識。
2.3項目組成員應互相協作、互相配合
項41經理通過使用WBS將工作范尉進行分解.并將工作責任分配給團隊成員,同時應強調不同分工、不同環節的成員應 當相互協作,共同完成任務。雖然項目的進行有不同階段的劃分,但各階段還是相互聯系的。上一階段工作的結束不能只交付階段性成果,往往要通過多次溝通才能更為清晰地披下一階段成員所接受,其有效性、合理性也要被下一階段的工作所檢查,通過檢驗有時也有必要對上一階段的工作結果進行相應的凋整。因此,項H組成員都應根據需要相互協作,相互配合,共同完成任務。
24加強溝通意識
項目溝通管理指出:“管理者要用70%的時問用十與人溝通,而項目經理需要花費90%或更多的時間來溝通”從溝通的效果和效率角度出發,一股應注意下面四種情況:首先是溝通之前對溝通的基本慨念和目標進行清晰的界定其次是不能凱溺十溝通本身,而必須時刻清楚溝通的目的;意到溝通是有成本的,溝通的時間就是成本,客戶在為這些成本買單第三是一些規則,包括時和回合的限制、耐心聽完對方的I舌,進行“集中”決策。最后是為了做好事件.必須事先進行明確,進行充分的授權。另外,項目經理及其項14組成員要對項14下系人進行分析,項目1:系人分析要記錄重要的I:系人的人名、組織、他們各在項目中的角色、每個I:系人的實際情況、他們各自的項目利益大小、以及各自對項目的影響程度,以及管理這些項14 r系人的有關建’義等。通過溝通協調.以驅動他們對項目的支持,減少其對項41的阻力,以確保項41獲得成功
2.5加強風險管理意識
項目經理必須通過學項41管理知,掌握項H風險管理的必備知,加強對項14汁劃中的風險管理汁劃的審核,提高項41組的管理意識。總結本行業項目中常見的風險及其對策作為風險管理汁劃中必要的『x【險內容,并切實評估相應對策的有效性和可行性。
2.6重視項目經驗總結