摘 要:我作為項目經理參與了某航空公司航空票務系統項目的開發,主要負責系統的組織規劃實施開發與項目管理,該系統具有嚴格的安全,穩定,時實高效和可靠性能要求,由票務管理系統和呼叫中心系統兩部分組成,呼叫中心系統主要實現電話,傳真和短信業務,票務管理系統是整個系統的核心,采用了struts+hibernate+spring主流WEB應用框架,實現了WEB應用服務器websphere與協作應用服務器lotus domino 的高度集成。隨著軟件系統的日益復雜化和用戶需求,軟件更新的頻繁化,配置管理在軟件項目中顯得越來越重要了。本文以該項目為例,結合作者時間,主要通過在項目前期,做好需求調研,總體設計和詳細設計并制定完整的配置管理計劃。
關鍵詞:穩定;可靠;提供;覆蓋
我作為項目經理開始參與某航空公司航空票務系統項目的開發,主要負責系統的組織規劃實施開發與項目管理,當然還做一些編碼工作,主要是公用基礎代碼和核心代碼的編寫與維護。航空票務系統是將呼叫中心系統和票務管理系統有效的結合起來,采用先進的CTI技術和語音板卡技術,充分利用電話,短信,傳真,因特網等信息化手段,解決航空公司的機票銷售問題,規范了業務流程,強化了內部管理,與電子商務的完美結合,使應用系統功能更加完善,提高了整個航空業務的工作效率。其中,票務管理系統包括:客戶管理,機票管理,票證管理,銷售管理,財務結算,調度管理,遠程營業部(代理商/分銷商)管理,系統管理八大功能模塊,并統一于服務器端軟件模塊。呼叫中心系統由電話呼叫系統,短信分發系統,傳真呼叫系統三部分組成。票務管理系統是整個系統的核心,采用了struts+hibernate+spring主流WEB應用框架,實現了WEB應用服務器websphere與協作應用服務器lotus domino 的高度集成,在本次開發中,我把它視為整個項目的重點
由于考慮到寒假和春運期間將會是旅客的高峰期,客戶要求系統必須在12月底前交付,項目開發周期為6個月,為此我做了如下安排:前4個月主要集中精力用于開發票務管理系統,后兩個月主要完成票務管理系統和呼叫中心系統的集成以及項目收尾工作。
隨著軟件系統的日益復雜化和用戶要求,軟件更新的頻繁化,配置管理逐漸成為軟件生命周期中的主要控制過程。在軟件開發過程中,扮演越來越重要的角色。一個好的配置管理過程能覆蓋軟件開發和維護的各個方面,同時對軟件開發過程的客觀管理,即項目管理也有重要的支持作用。在該系統項目中,我主要使用intersolv公司的pvcs配置管理工具,并通過在項目前期作好需求調研,總體設計和詳細設計并制定完整的配置管理計劃。在項目全過程規范化配置管理,注意員工培訓并加強溝通與協調等方法和策略來實施配置管理。
項目前期做好要求調研,總體設計和詳細設計,并制定完整的配置管理計劃。
項目計劃階段,我對需求分析,總體設計和詳細設計這三項活動工期安排如下:需求分析12天,總體設計和詳細設計總共20天,時間盡量充足。在做需求調研的時候,我要求一定要和客戶充分溝通,深入挖掘客戶的隱性需求。不僅要實現客戶需求的功能,在界面上也要讓客戶滿意,為此我們作出了航空系統的虛擬界面,讓客戶對系統 有一個感官上的整體了解,在需求分析完成工作之后,我們還通過小組會議的形式進行了確認和評審。并邀請客戶方代表參與。最終的《需求規格說明》我們也要求客戶方代表一定要簽字確認。在總體設計和詳細設計過程中,我們盡量使用適合本項目團隊特點的工具和技術,并充分考慮其先進性和成熟性。在設計完成之后,我們仍舊對其進行了評審,總結和討論,對爭議比較大的地方交公司資深專家審核評定。
配置管理計劃的制定也使配置管理中不可少的一步,它能有效的指導后期配置管理工作。在本項目中,配置管理計劃由配置管理員完成,我只做一些審核工作,軟件資源配置管理計劃,配置項目計劃,交付計劃,備份計劃,CCB審批計劃等....總之,我認為項目前期做好以上鋪墊工作可以減少變更,對后面一些工作可以說是水到渠成。同時,一個比較完整的計劃,也可以避免不必要的項目反工,而且項目管理員的工作也會比較好做一些。
項目全過程規范化配置管理。
開發過程中,對文檔修改非常麻煩,在配置管理中,對任何一配置項的修改都可能導致版本的變化。因此,對配置管理規范化勢在必行,在本項目中,我要求配置標識一定要規范,必須獨立命名配置項,配置對象的標識要充分考慮命名對象間存才聯系。在配置管理中,項目組成員要各司其職,不得越權操作,同時還要根據自己的權限操作配置項。我的工作在配置管理中主要是:定制開發子系統,定制訪問控制,制定常用策略,制定集成里程碑,進行系統集成.....而配置管理員的職責主要是:創建配置序,為項目成員分配權限,對存儲庫進行日常備份恢復等...軟件開發人員主要根據項目的開發配管理策略,創建,修改和測試工件等。軟件生存期內全部軟件配置是軟件產品的真正代表,必須保持精確,軟件工程中某一階段的變更都會引起軟件配置的變更,對這種變更也必須做到嚴格規范的控制和管理。為此,我做了如下規定:處于工作狀態的產品開發人員可對其修改,而作為基線進入配置庫的產品,則不允許開發人員對其進行修改。在本項目中,我們還成立了臨時CCB,由項目經理,用戶代表,軟件質量控制人員,配置管理員5人組成。我們要求對于用戶提出的變更請求要嚴格按照變更控制流程處理。在用戶提交更多請求后,開發人員對其進行評價,并產生變更報告。在由變更控制委員會〈CCB〉作出決定是否進行變更。通過批準,就重新檢出變更的配置項,建立測試基準程序,并執行質量保證和測試活動,必須通過CCB的鑒定審批后,方可實施變更。
注意員工培訓并加強協調與溝通。
項目組成員大多來自不同部門,對項目環境還不熟悉,為了能實施配置管理系統,我建議公司對項目組成員進行相關培訓。針對配置管理員,我們要求他學習配置管理工具管理相關的內容。針對開發人員,主要學習配置管理工具與開發相關的常用操作。針對全體人員,要讓他們了解配置管理策略和流程,以及如何與開發管理,項目管理相結合。同時,我要求項目組成員要加強協調和溝通。可以使用PVCS,通過ressionmanger文檔共享和連鎖機制。Tracker與電子郵件的集成,加強項目成員之間的溝通,做到有問題及時發現,及時修改,及時通知,但又不額外增加很多的工作量,這樣有助于營造一個和諧,公平,競爭的氣氛和環境。
航空票務系統在2017年12月下旬正式上線,提前完成了項目,目前系統運行正常,受到客戶和有關部門的一致好評,對項目的滿意度較高。重新回顧該項目也存在一些問題不足,比如:項目初期,大多數成員對版本管理一點都不重視,總是敷衍了事。代碼編寫人員編寫得代碼也混亂不堪,給測試人員和維護人員帶來了很大不便,一些沒多大用的垃圾資料也被放置到配置服務器上,給配置管理人員帶了很多麻煩。因此我建議在項目一開始,就要讓項目成員認識到版本管理的好處。對源碼的管理,要保證書寫代碼的規范性,強化注釋力度,還應作好build和relase工作.
作者簡介
吳義芝,男,1977年10月出生,廣州工商學院講師,主要研究方向:分布式計算,網絡,信息系統項目管理。
(作者單位:廣州工商學院)