發(fā)布時(shí)間:2023-09-21 17:35:06
序言:作為思想的載體和知識(shí)的探索者,寫作是一種獨(dú)特的藝術(shù),我們?yōu)槟鷾?zhǔn)備了不同風(fēng)格的5篇軟件管理方案,期待它們能激發(fā)您的靈感。
關(guān)鍵詞:項(xiàng)目管理;配置管理;代碼自動(dòng)化生成;.NET
中圖分類號(hào):TP315文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)04-0849-03
Solution of Lightweight Software Project Management
ZHAI Jing-xuan
(China University of Mining and Technology, Xuzhou 221116, China)
Abstract: A lightweight software project management solutions. Include the project management, configuration management, project modeling, requirements management, bug management and automatic code generation analysis, and gives useful CASE tool about software project management.省略
“軟件危機(jī)”是指落后的軟件生產(chǎn)方式無法滿足迅速增長的計(jì)算機(jī)軟件需求,從而導(dǎo)致軟件開發(fā)與維護(hù)過程中出現(xiàn)一系列嚴(yán)重問題的現(xiàn)象。“軟件危機(jī)”于1968年由北大西洋公約組織的計(jì)算機(jī)科學(xué)家第一次提出,并隨之誕生了“軟件工程”這一學(xué)科。軟件工程主要目的是研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件,從而避免“軟件危機(jī)”。
“軟件危機(jī)”已經(jīng)提出40多年來,軟件工程領(lǐng)域研究成果顯著,取得了較大的成就。由于微電子技術(shù)的發(fā)展和計(jì)算機(jī)應(yīng)用的普及,軟件成本在計(jì)算機(jī)成本中所占的比例持續(xù)增長,軟件項(xiàng)目日趨復(fù)雜,軟件開發(fā)效率的提高也遠(yuǎn)遠(yuǎn)落后于信息化普及速度。因此導(dǎo)致“軟件危機(jī)”問題不僅沒有解決,而且愈演愈烈。對(duì)于軟件工程的研究依然是一個(gè)比較熱門的領(lǐng)域。軟件項(xiàng)目的管理方法研究是軟件工程學(xué)的研究領(lǐng)域之一,良好的軟件項(xiàng)目管理模式對(duì)于對(duì)提高項(xiàng)目的成功率,減少開發(fā)成本和提升軟件質(zhì)量具有促進(jìn)作用。
軟件項(xiàng)目管理主要包括進(jìn)度管理、成本管理、質(zhì)量管理、風(fēng)險(xiǎn)管理與配置管理等。要進(jìn)行有效的過程管理,必須制定科學(xué)的管理辦法和使用有效的軟件項(xiàng)目管理工具。
軟件工程發(fā)展至今,陸續(xù)誕生了CMM(軟件能力成熟度模型)、CMMI(能力成熟度模型集成)、RUP(統(tǒng)一軟件開發(fā)過程)與MSF(微軟解決方案框架)等成熟管理模型。這些解決方案對(duì)項(xiàng)目管理進(jìn)行了全面的定義,一定程度上緩解了軟件危機(jī)問題。諸如,CMMI中定義了詳細(xì)的項(xiàng)目管理及過程管理模型,適合研發(fā)團(tuán)隊(duì)進(jìn)行規(guī)范化設(shè)計(jì)。但對(duì)于不具有很高的復(fù)雜程度軟件研發(fā)項(xiàng)目,完全按照CMMI或其它成熟的模型不切合實(shí)際,但是又必須以成熟模型為主要參考目標(biāo)。本文根據(jù)實(shí)際軟件項(xiàng)目管理與研發(fā)經(jīng)驗(yàn),提出了一種適合于中小型項(xiàng)目的輕量級(jí)項(xiàng)目管理解決方案。該方案主要適用于采用平臺(tái)進(jìn)行開發(fā)的項(xiàng)目團(tuán)隊(duì)。
1輕量級(jí)項(xiàng)目管理過程
輕量級(jí)項(xiàng)目管理過程包括計(jì)劃、需求、設(shè)計(jì)、編碼、測(cè)試、與維護(hù)5個(gè)階段。
計(jì)劃階段主要工作為調(diào)研用戶需求,分析系統(tǒng)目標(biāo),分析系統(tǒng)開發(fā)的可行性,制定初步的項(xiàng)目計(jì)劃。
需求階段主要工作內(nèi)容為與用戶溝通,編寫完善的“需求規(guī)格說明書”。“需求規(guī)格說明書”包括軟件的功能需求、性能需求、非功能性需求、環(huán)境約束和外部接口等。
設(shè)計(jì)階段主要包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)部分,由架構(gòu)師針對(duì)軟件的需求設(shè)計(jì)出系統(tǒng)總體流程、子系統(tǒng)、數(shù)據(jù)與對(duì)象描述、算法和程序接口等。
編碼階段的主要工作內(nèi)容為將設(shè)計(jì)描述為可編譯的源程序。
測(cè)試階段的主要工作任何為根據(jù)需求規(guī)格和設(shè)計(jì)文檔,對(duì)軟件的功能進(jìn)行驗(yàn)證。測(cè)試與需求階段同步開始,到項(xiàng)目驗(yàn)收前結(jié)束。
階段的主要工作是,對(duì)于軟件產(chǎn)品進(jìn)行安裝部署,以后還需要根據(jù)用戶要求和產(chǎn)品實(shí)際情況進(jìn)行維護(hù)。
輕量級(jí)軟件項(xiàng)目管理解決方案的目標(biāo)是針對(duì)中小型軟件項(xiàng)目運(yùn)作的實(shí)際情況,建立行之有效的管理體系和溝通機(jī)制,提供項(xiàng)目開發(fā)效率,保障產(chǎn)品質(zhì)量,確保項(xiàng)目能如期交付。主要管理的內(nèi)容是開發(fā)過程中的各類文檔、進(jìn)度控制管理、BUG跟蹤與代碼同步協(xié)作開發(fā)。
2輕量級(jí)項(xiàng)目管理實(shí)施
筆者所在的團(tuán)隊(duì)主要以為基礎(chǔ)開發(fā)平臺(tái),數(shù)據(jù)庫采用SqlServer系列,軟件項(xiàng)目管理方案主要基于以上經(jīng)驗(yàn)獲得。因此本方案主要適用于使用.NET平臺(tái)的開發(fā)的各類中小型項(xiàng)目,B/S與C/S項(xiàng)目均可。方案主要內(nèi)容為:
2.1項(xiàng)目計(jì)劃管理
軟件項(xiàng)目管理的目的主要是確定項(xiàng)目的范圍、進(jìn)度和費(fèi)用。項(xiàng)目計(jì)劃就是要對(duì)項(xiàng)目整個(gè)實(shí)施過程的目標(biāo)、任務(wù)、進(jìn)度和責(zé)任委派做出具體的規(guī)定和部署,它在項(xiàng)目管理中處于中心地位。項(xiàng)目計(jì)劃主要包括設(shè)計(jì)工作分解結(jié)果。此階段主要使用的工具為:Microsoft Project等。
2.2配置管理
配置管理過程是對(duì)處于不斷演化、完善過程中的軟件產(chǎn)品的管理過程。其最終目標(biāo)是實(shí)現(xiàn)軟件產(chǎn)品的完整性、一致性、可控性,使產(chǎn)品極大程度地與用戶需求相吻合。它通過控制、記錄、追蹤對(duì)軟件的修改和每個(gè)修改生成的軟件組成部件來實(shí)現(xiàn)對(duì)軟件產(chǎn)品的管理功能。常見的用于支持配置管理的工具有CVS、Subversion、VSS、StarTeam、CC等等。我們選擇VSS2005為團(tuán)隊(duì)配置管理工具。主要原因是:VSS為輕量級(jí)平臺(tái),便于部署和遷移;VSS與微軟的產(chǎn)品Visual 2008/2010等兼容性非常好。
配置管理模板包括PP(項(xiàng)目計(jì)劃)、RD(需求)、TS(設(shè)計(jì))、V&V(驗(yàn)證與確認(rèn))等環(huán)節(jié)的各類文檔,如需求規(guī)格說明書、項(xiàng)目計(jì)劃、RD_用例報(bào)告、TS_概要設(shè)計(jì)說明書、詳細(xì)設(shè)計(jì)說明書、數(shù)據(jù)庫設(shè)計(jì)說明書、安裝維護(hù)手冊(cè)、測(cè)試計(jì)劃、測(cè)試方案與單元測(cè)試記錄等。
2.3項(xiàng)目建模
方案采用的建模工具有Enterprise Architect與PowerDesigner。
Enterprise Architect是以目標(biāo)為導(dǎo)向的軟件系統(tǒng)。它覆蓋了系統(tǒng)開發(fā)的整個(gè)周期,除了開發(fā)類模型之外,還包括事務(wù)進(jìn)程分析,使用案例需求,動(dòng)態(tài)模型,組件和布局,系統(tǒng)管理,非功能需求,用戶界面設(shè)計(jì),測(cè)試和維護(hù) 等。Enterprise Architect是一個(gè)完全的UML分析和設(shè)計(jì)工具,它能完成從需求收集經(jīng)步驟分析、模型設(shè)計(jì)到測(cè)試和維護(hù)的整個(gè)軟件開發(fā)過程。它基于多用戶Windows平臺(tái)的圖形工具可以幫助您設(shè)計(jì)健全可維護(hù)的軟件。除此,它還包含特性靈活的高品質(zhì)文檔輸出。用戶指南可以在線獲取。
Sybase PowerDesigner是一個(gè)"一站式"的企業(yè)級(jí)建模及設(shè)計(jì)解決方案,它能幫助企業(yè)快速高效地進(jìn)行企業(yè)應(yīng)用系統(tǒng)構(gòu)建及再工程(Re-engineer)。使用該工具可以設(shè)計(jì)數(shù)據(jù)流程圖、概念數(shù)據(jù)模型與物理數(shù)據(jù)模型,包括了數(shù)據(jù)庫建模的全過程。該工具在項(xiàng)目中主要用于數(shù)據(jù)庫建模。支持?jǐn)?shù)據(jù)庫的正向和反向工程,便于數(shù)據(jù)字典維護(hù)與調(diào)整。
2.4需求管理與Bug跟蹤
我們采用Mantis作為項(xiàng)目管理和Bug跟蹤平臺(tái)。Mantis是一款基于Web的Php+Mysql的開源BUG管理系統(tǒng),一款簡(jiǎn)單實(shí)用的系統(tǒng),具有截圖功能和強(qiáng)大的報(bào)表功 能。Mantis還具有良好電子郵件支持,可將需求與Bug的各種狀態(tài)定義按照預(yù)定設(shè)置發(fā)送到項(xiàng)目組相應(yīng)郵箱。
對(duì)于新增需求變更,經(jīng)歷提出需求、確認(rèn)需求、開發(fā)需求、測(cè)試需求到需求五個(gè)階段,這五個(gè)階段分別由需求工程師、開發(fā)工程師、測(cè)試工程師與配置管理工程師進(jìn)行完成。通過Mantis提供的基于Web的協(xié)作系統(tǒng),可以很方便的進(jìn)行需求變更管理和跟蹤。
對(duì)于已的項(xiàng)目所產(chǎn)生的Bug,通過Mantis也可以進(jìn)行記錄、跟蹤。其郵件提醒功能使得Bug狀態(tài)一旦發(fā)生改變,會(huì)立即通知到相關(guān)責(zé)任人進(jìn)行處理。同時(shí),其強(qiáng)大的統(tǒng)計(jì)和報(bào)表功能也便于統(tǒng)計(jì)各項(xiàng)目的Bug量,統(tǒng)計(jì)測(cè)試人員報(bào)告的數(shù)量等關(guān)鍵值。
2.5代碼自動(dòng)化生成
輕量級(jí)項(xiàng)目均采用三層結(jié)構(gòu)進(jìn)行設(shè)計(jì)。三層結(jié)構(gòu)模式如圖2。
圖2三層結(jié)構(gòu)框架
三層結(jié)構(gòu)包含:表示層(UI),業(yè)務(wù)邏輯層(BLL),數(shù)據(jù)訪問層(DAL),各層特點(diǎn)如下:
數(shù)據(jù)訪問層:主要是對(duì)原始數(shù)據(jù)的操作層。可以操作數(shù)據(jù)庫、文本文檔或XML文件等多種數(shù)據(jù)格式,執(zhí)行對(duì)數(shù)據(jù)庫的增、刪、查、改操作。數(shù)據(jù)訪問層還可以通過OR映射進(jìn)行擴(kuò)充。
業(yè)務(wù)邏輯層:是系統(tǒng)的核心層,位于數(shù)據(jù)層和表示層中間,主要實(shí)現(xiàn)業(yè)務(wù)規(guī)則制定與業(yè)務(wù)流程實(shí)現(xiàn)。業(yè)務(wù)邏輯層直接調(diào)用數(shù)據(jù)層,并接受表示層的調(diào)用,起到承上啟下的作用。
表示層:表示層是與用戶直接交互的一層,主要處理用戶的輸入操作,提供交互式接口。在項(xiàng)目實(shí)現(xiàn)過程中,表示層一般為WebForm或WinForm等形式。
三層結(jié)構(gòu)的劃分,體現(xiàn)了“高內(nèi)聚、低耦合”的設(shè)計(jì)思想,有效降低層與層之間的依賴,增強(qiáng)各層的復(fù)用性,有利于標(biāo)準(zhǔn)化開發(fā)。但三層結(jié)構(gòu)也存在著降低性能、級(jí)聯(lián)修改等問題。但輕量級(jí)項(xiàng)目一般側(cè)重于業(yè)務(wù)流程,對(duì)于系統(tǒng)性能要求不高,而且計(jì)算機(jī)芯片的發(fā)展使得項(xiàng)目開發(fā)效率越來越比性能更重要。因此,輕量級(jí)軟件項(xiàng)目均采用三層結(jié)構(gòu)設(shè)計(jì)。
除此之外,還有業(yè)務(wù)實(shí)體層(Model),這個(gè)層主要內(nèi)容是存放可持久化的實(shí)體類;通用工具類庫(Common),主要用于存放通用的管理類庫。類庫的存在形式一般為Static類和Static方法。由于開發(fā)模式基本相似,所以開發(fā)過程中的大量相似代碼,如:實(shí)體類、數(shù)據(jù)庫操作類、UI界面,均可采用工具生成。.NET平臺(tái)下比較優(yōu)秀的代碼生成工具有李天平的動(dòng)軟.NET代碼生成器Codematic和國外成熟的代碼生成器CodeSmith。
輕量級(jí)項(xiàng)目采用動(dòng)軟.NET代碼生成器為主要生成工具。動(dòng)軟.省略程序員設(shè)計(jì)的自動(dòng)代碼生成器,Codematic生成的代碼基于面向?qū)ο蟮乃枷牒腿龑蛹軜?gòu)設(shè)計(jì),結(jié)合了微軟Petshop中經(jīng)典的思想和設(shè)計(jì)模式,可以通過反射支持多數(shù)據(jù)庫,支持對(duì)連接字符串加密等。Codematic在項(xiàng)目中主要針對(duì)數(shù)據(jù)庫中的表或視圖生成表示層、業(yè)務(wù)層、數(shù)據(jù)層及實(shí)體等代碼。使得開發(fā)人員完全從重復(fù)的錄入過程中解脫。最新版本的Codematic還支持模板語法,開發(fā)人員可根據(jù)實(shí)際項(xiàng)目需要生成相應(yīng)的表示層或數(shù)據(jù)層的SQL代碼。以下是動(dòng)軟.NET生成器生成的Visual Studio .NET2010解決方案結(jié)構(gòu)。
3結(jié)束語
本文根據(jù)中小型研發(fā)項(xiàng)目實(shí)際需要,提出了一種輕量級(jí)開發(fā)的項(xiàng)目管理解決方案。方案主要針對(duì)項(xiàng)目計(jì)劃管理、配置管理、項(xiàng)目建模、需求管理與Bug跟蹤、代碼自動(dòng)化生成5個(gè)方面進(jìn)行了定義和分析,給出了各過程中最佳的解決方案和管理工具。輕量級(jí)的項(xiàng)目管理解決方案已經(jīng)大量應(yīng)用于團(tuán)隊(duì)所承擔(dān)的各類研發(fā)項(xiàng)目中,與方案實(shí)施前相比,開發(fā)更高效、項(xiàng)目進(jìn)度可控,能有效的提高軟件產(chǎn)品質(zhì)量。
參考文獻(xiàn):
[1]季麗萍.淺談.NET三層結(jié)構(gòu)及其應(yīng)用[J].福建電腦,2009(6).
[2]李立芳,周小平.軟件項(xiàng)目管理活動(dòng)淺析[J].中國科技信息,2010(10).
[3]范振鈞.省略的三層結(jié)構(gòu)實(shí)現(xiàn)方法研究[J].計(jì)算機(jī)科學(xué),2007(4).
[4]孫繼紅.基于.NET三層架構(gòu)的網(wǎng)上商城設(shè)計(jì)與實(shí)現(xiàn)[J].電腦編程技巧與維護(hù),2008(16).
[5]于紅波.三層結(jié)構(gòu)各層次的實(shí)現(xiàn)技術(shù)研究[J].山東紡織科技,2008(1).
[6]劉宇翔.軟件項(xiàng)目管理的流程設(shè)計(jì)分析[J].科技資訊,2010(36).
軟件項(xiàng)目風(fēng)險(xiǎn)管理方案是在深入分析公司項(xiàng)目管理整體狀況、風(fēng)險(xiǎn)管理的現(xiàn)狀和問題、風(fēng)險(xiǎn)管理約束條件的基礎(chǔ)上,結(jié)合經(jīng)典的軟件風(fēng)險(xiǎn)管理理論進(jìn)行設(shè)計(jì)的,設(shè)計(jì)的方案包括兩部分內(nèi)容:軟件公司風(fēng)險(xiǎn)管理過程以及風(fēng)險(xiǎn)管理工具和方法。本文對(duì)公司風(fēng)險(xiǎn)管理過程風(fēng)險(xiǎn)管理計(jì)劃制定、風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)分析、風(fēng)險(xiǎn)監(jiān)控、風(fēng)險(xiǎn)應(yīng)對(duì)和風(fēng)險(xiǎn)管理工具和方法進(jìn)行詳細(xì)的探討。
【關(guān)鍵詞】
風(fēng)險(xiǎn)管理;軟件項(xiàng)目;方案設(shè)計(jì)
1 公司風(fēng)險(xiǎn)管理過程
對(duì)于大型軟件企業(yè)來說,細(xì)致和規(guī)范化的工作步驟定義有利于項(xiàng)目風(fēng)險(xiǎn)管理的成功。而對(duì)于中小型軟件企業(yè)來說,由于項(xiàng)目規(guī)模相對(duì)較小,項(xiàng)目周期相對(duì)較短,風(fēng)險(xiǎn)的數(shù)量以及風(fēng)險(xiǎn)管理的工作量都相對(duì)較小,風(fēng)險(xiǎn)管理的步驟可以適當(dāng)簡(jiǎn)化。結(jié)合經(jīng)典的風(fēng)險(xiǎn)管理理論以及軟件公司的實(shí)際情況,本文將軟件公司的風(fēng)險(xiǎn)管理過程劃分為風(fēng)險(xiǎn)管理計(jì)劃制定、風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)分析、風(fēng)險(xiǎn)監(jiān)控、風(fēng)險(xiǎn)應(yīng)對(duì)這五部分。
由于軟件公司的背景情況限制,對(duì)公司進(jìn)行風(fēng)險(xiǎn)管理過程設(shè)計(jì)應(yīng)本著提煉風(fēng)險(xiǎn)管理每個(gè)階段的重點(diǎn)環(huán)節(jié),把握必要的管理步驟,同時(shí)操作過程不像大型項(xiàng)目那樣繁瑣,要簡(jiǎn)單方便,投入人力和物力要求不高。
1.1 風(fēng)險(xiǎn)管理計(jì)劃制定過程
軟件公司風(fēng)險(xiǎn)管理計(jì)劃制定,首先需要獲取所承攬項(xiàng)目的相關(guān)信息,尤其是項(xiàng)目類型信息,這對(duì)軟件公司制定風(fēng)險(xiǎn)管理控制的重點(diǎn)、風(fēng)險(xiǎn)臨界值、風(fēng)險(xiǎn)預(yù)算有重要意義。另外還要收集項(xiàng)目目標(biāo)、合同約定、軟件規(guī)模、公司目前的風(fēng)險(xiǎn)承受能力,以及計(jì)劃在風(fēng)險(xiǎn)管理上的投入等信息,作為制定風(fēng)險(xiǎn)管理計(jì)劃的依據(jù)。由于軟件公司項(xiàng)目規(guī)模小,項(xiàng)目組人員主要是專職組成,可以由項(xiàng)目經(jīng)理組織召開規(guī)劃會(huì)議,通過會(huì)議的方式對(duì)風(fēng)險(xiǎn)管理計(jì)劃的相關(guān)內(nèi)容進(jìn)行討論,在會(huì)上制定相關(guān)的風(fēng)險(xiǎn)責(zé)任人,最終根據(jù)會(huì)議內(nèi)容編寫風(fēng)險(xiǎn)管理計(jì)劃。
風(fēng)險(xiǎn)管理計(jì)劃的制定過程比較簡(jiǎn)單,首先收集信息,然后確定內(nèi)容,最終編寫文檔。這是一種簡(jiǎn)單成熟的文檔編寫方法,適合軟件公司采用。軟件公司在風(fēng)險(xiǎn)管理計(jì)劃過程中,尤其要注意收集項(xiàng)目信息的全面性,有些信息可能沒有成文的資料查閱,需要多方面的溝通和調(diào)研。
1.2 風(fēng)險(xiǎn)識(shí)別過程
軟件公司所承接的軟件規(guī)模不大,周期相對(duì)較短,并且項(xiàng)目具有共性,對(duì)其進(jìn)行風(fēng)險(xiǎn)識(shí)別的過程相對(duì)簡(jiǎn)單,主要的精力可以放在對(duì)不同類型項(xiàng)目特有的風(fēng)險(xiǎn)因素識(shí)別上,保證風(fēng)險(xiǎn)在范圍上被廣泛識(shí)別。
本文設(shè)計(jì)了軟件公司進(jìn)行風(fēng)險(xiǎn)識(shí)別的過程。軟件公司首先需要收集資料,對(duì)項(xiàng)目類型區(qū)分,對(duì)內(nèi)在的風(fēng)險(xiǎn)項(xiàng)目進(jìn)行識(shí)別,這是風(fēng)險(xiǎn)識(shí)別。其中收集記錄資料有項(xiàng)目信息、風(fēng)險(xiǎn)數(shù)據(jù)庫等歷史信息、風(fēng)險(xiǎn)管理計(jì)劃、項(xiàng)目約束條件、合同文件。項(xiàng)目范圍說明書、項(xiàng)目管理計(jì)劃、章程等。之后辨別風(fēng)險(xiǎn)事件發(fā)生的影響形式和主要原因。再通過辨別出來的風(fēng)險(xiǎn)因素影響和風(fēng)險(xiǎn)事件去推測(cè)之后可能發(fā)生的結(jié)果。最后為了方便以后的風(fēng)險(xiǎn)分析和交流組成風(fēng)險(xiǎn)登記冊(cè)。
1.3 風(fēng)險(xiǎn)分析過程
本文根據(jù)軟件公司的特點(diǎn)設(shè)計(jì)了操作簡(jiǎn)單的風(fēng)險(xiǎn)分析過程。什么是風(fēng)險(xiǎn)分析呢,該工作是在知道什么是風(fēng)險(xiǎn)后將其記錄在手冊(cè)上,隨后將其分到某種風(fēng)險(xiǎn)類別上,去掉沒有用的風(fēng)險(xiǎn),接著分析該風(fēng)險(xiǎn)的原因和推動(dòng)力,再利用之前確定的風(fēng)險(xiǎn)度量估計(jì)風(fēng)險(xiǎn)帶來的影響,把認(rèn)為重要的風(fēng)險(xiǎn)因素先按照重要性排個(gè)順序,列出其風(fēng)險(xiǎn)的優(yōu)先級(jí)清單,把不重要的風(fēng)險(xiǎn)因素,按照低級(jí)優(yōu)先度再列清單,其中要是發(fā)現(xiàn)了沒有出現(xiàn)過的風(fēng)險(xiǎn)類型或者已經(jīng)識(shí)別的現(xiàn)在又沒有的因素,就應(yīng)該重編風(fēng)險(xiǎn)記錄本。
1.4 風(fēng)險(xiǎn)監(jiān)控過程
對(duì)于如何實(shí)施風(fēng)險(xiǎn)監(jiān)控,軟件公司也做了規(guī)劃,第一步,考察風(fēng)險(xiǎn)現(xiàn)狀,對(duì)已經(jīng)出現(xiàn)的風(fēng)險(xiǎn)重新下定義,并預(yù)測(cè)其帶來的影響。就目前情況而言,風(fēng)險(xiǎn)事件還有很多不確定因素,實(shí)施環(huán)境時(shí)刻在變化,這些變化主要包括已經(jīng)出現(xiàn)的風(fēng)險(xiǎn)發(fā)生的概率、其影響的重要性,什么時(shí)候采取措施,環(huán)境惡劣的情況下還有可能有其他新的變化,為了應(yīng)對(duì)這些變化,則需要指定相關(guān)的負(fù)責(zé)人,對(duì)項(xiàng)目開展過程中的風(fēng)險(xiǎn)進(jìn)行檢測(cè),并每隔一段時(shí)間對(duì)其重新評(píng)估,以此來制定出新的應(yīng)對(duì)方案。第二步,將項(xiàng)目目前狀況與風(fēng)險(xiǎn)的最大最小值進(jìn)行對(duì)比,要使項(xiàng)目進(jìn)展順利則顯示信息應(yīng)該在其風(fēng)險(xiǎn)范圍之內(nèi),如果在其范圍之外,則應(yīng)該改變計(jì)劃,商討新的應(yīng)對(duì)措施。
2 風(fēng)險(xiǎn)管理工具和方法
目前,風(fēng)險(xiǎn)管理領(lǐng)域的工具和方法主要是定性的方法,缺少適合中小規(guī)模企業(yè)的、操作簡(jiǎn)單、技術(shù)難度要求不高的工具和方法,尤其是定量的方法。因此為了解決軟件公司缺少適合的風(fēng)險(xiǎn)管理工具和方法的問題,本研究對(duì)風(fēng)險(xiǎn)管理每階段軟件公司可以采用的工具和方法進(jìn)行了深入探討。此部分只對(duì)針對(duì)軟件公司提出的工具和方法進(jìn)行深入探討,以往資料中有過詳細(xì)介紹或應(yīng)用成熟的方法不再探討。
2.1 風(fēng)險(xiǎn)管理計(jì)劃的工具與方法
對(duì)于中小規(guī)模軟件公司,風(fēng)險(xiǎn)管理投入有限,軟件公司可采用最簡(jiǎn)單和直接的方法――專家會(huì)議法收集相關(guān)信息,進(jìn)行計(jì)劃的編制。專家會(huì)議是指在一定規(guī)章制度的前期下,選出一些優(yōu)秀專家,按照一定的活動(dòng)規(guī)則召開會(huì)議,借助專家的聰明才智,對(duì)項(xiàng)目以后的發(fā)展情況等做出一定的評(píng)估。這種方法有很對(duì)有點(diǎn),其中專家們的意見可以相互參考,相互激發(fā),相互補(bǔ)充,將內(nèi)部信息最大化,最后做出統(tǒng)一的決定,慢慢的再在統(tǒng)一寄出上再次發(fā)生思維碰撞出現(xiàn)其他的奇思妙想,這樣就能到達(dá)在較短的時(shí)間內(nèi)達(dá)到最好的效果,從而制定出最佳方案。
2.2 風(fēng)險(xiǎn)識(shí)別的工具與方法
由于軟件公司承接的項(xiàng)目類型和特點(diǎn)不同,項(xiàng)目管理的側(cè)重點(diǎn)不同,每個(gè)類型項(xiàng)目的風(fēng)險(xiǎn)因素和影響也有所區(qū)別,但也有共同之處,這些項(xiàng)目都屬于企業(yè)信息化建設(shè)中的軟件開發(fā)項(xiàng)目,項(xiàng)目規(guī)模不大,開發(fā)內(nèi)容主要是辦公自動(dòng)化、市場(chǎng)經(jīng)營管理、檔案管理、資產(chǎn)管理、項(xiàng)目管理等信息管理系統(tǒng),項(xiàng)目在實(shí)施流程和技術(shù)上有相似性,有很多風(fēng)險(xiǎn)是這些項(xiàng)目都可能發(fā)生的。因此軟件公司的軟件項(xiàng)目風(fēng)險(xiǎn)識(shí)別工作不僅需要識(shí)別軟件項(xiàng)目的共性風(fēng)險(xiǎn)因素,還要針對(duì)項(xiàng)目類型,研究每個(gè)類型項(xiàng)目需要重點(diǎn)識(shí)別和控制的風(fēng)險(xiǎn)因素。
軟件公司在進(jìn)行風(fēng)險(xiǎn)識(shí)別過程中,可以采用一些常識(shí)的判斷,或者借鑒以前經(jīng)歷過的項(xiàng)目的經(jīng)驗(yàn)、教訓(xùn)、資料等,也可以請(qǐng)本公司內(nèi)或行業(yè)內(nèi)的專家進(jìn)行指導(dǎo)。
2.3 風(fēng)險(xiǎn)分析的工具與方法
對(duì)于軟件公司這樣的中小規(guī)模軟件公司來說,采用定性的方法實(shí)施簡(jiǎn)單,節(jié)省資源,但是精度不夠,采用定量的方法則實(shí)施復(fù)雜,對(duì)資源要求高,結(jié)果相對(duì)準(zhǔn)確。根據(jù)軟件公司的具體情況,本文對(duì)其風(fēng)險(xiǎn)分析過程中可采用的工具和方法進(jìn)行了深入的探討,提出了風(fēng)險(xiǎn)度量標(biāo)準(zhǔn)表、層次分析法、故障樹風(fēng)險(xiǎn)分析這三種定性和定量相結(jié)合的方法。這幾種方法便于使用者理解和操作,同時(shí)又能達(dá)到軟件公司這樣的中小規(guī)模軟件風(fēng)險(xiǎn)分析需要。
2.4 風(fēng)險(xiǎn)監(jiān)控的工具與方法
目前,使用最為普遍的項(xiàng)目跟蹤方法是項(xiàng)目跟蹤會(huì)議。項(xiàng)目的負(fù)責(zé)人可以通過項(xiàng)目會(huì)議在較短的時(shí)間內(nèi)對(duì)項(xiàng)目?jī)?nèi)每個(gè)人的工作進(jìn)展程度進(jìn)行深入的了解,以便于更好地掌握項(xiàng)目運(yùn)行時(shí)出現(xiàn)的問題,同時(shí)根據(jù)項(xiàng)目的風(fēng)險(xiǎn)程度決定其投入資源的多少。其中需要檢查的項(xiàng)目?jī)?nèi)容有產(chǎn)品的市場(chǎng)需求、產(chǎn)品的受眾群、產(chǎn)品呢的概念、基礎(chǔ)設(shè)計(jì)和編程、基礎(chǔ)和功能檢測(cè)、組成檢測(cè)、運(yùn)行能力檢測(cè)、產(chǎn)品包裝,對(duì)每個(gè)需要檢測(cè)的環(huán)節(jié)都做出最好成績(jī),并依此為模范,爭(zhēng)取達(dá)到這種優(yōu)秀水平。項(xiàng)目進(jìn)行過程中,項(xiàng)目的重難點(diǎn)也會(huì)隨之變化,會(huì)議負(fù)責(zé)人也應(yīng)該注意到這點(diǎn),并及時(shí)和上級(jí)領(lǐng)導(dǎo)做好溝通,同時(shí)做好會(huì)議記錄。
【參考文獻(xiàn)】
該方案可以自動(dòng)解決安全管理軟件同防病毒軟件的沖突問題,大大減少了安全管理軟件在部署、實(shí)施、運(yùn)維過程中,網(wǎng)管人員的工作量,同時(shí)也提高了用戶體驗(yàn),減少了用戶的抵觸情緒,為企業(yè)內(nèi)網(wǎng)安全方案的落地打下良好的基礎(chǔ)。
關(guān)鍵詞 安全管理;殺毒軟件;代碼簽名;驅(qū)動(dòng)
中圖分類號(hào)TP39 文獻(xiàn)標(biāo)識(shí)碼A 文章編號(hào) 1674-6708(2014)116-0212-03
0 引言
從電腦誕生之日起,病毒和各種安全問題就一直困擾著人們。特別是在網(wǎng)絡(luò)購物越來越普遍,互聯(lián)網(wǎng)理財(cái)越來越普及的情況下,防病毒軟件已經(jīng)成為當(dāng)前PC的標(biāo)配。
在企業(yè)中,工作PC和服務(wù)器的安全問題,就更加重要。企業(yè)不僅僅要在每臺(tái)工作PC和服務(wù)器上安裝好殺毒軟件、防火墻,并且還需要在終端上安裝對(duì)主機(jī)安全更有保障的安全管理軟件,如銳捷網(wǎng)絡(luò)的GSN,華為的TSM,華三的IMC等。這些安全管理軟件,一般都具有1X認(rèn)證、微軟補(bǔ)丁更新、外設(shè)管理、進(jìn)程管理、注冊(cè)表管理、系統(tǒng)服務(wù)管理、網(wǎng)絡(luò)攻擊防御、防機(jī)密數(shù)據(jù)泄漏等功能,可以極大的增強(qiáng)企業(yè)內(nèi)網(wǎng)安全,保護(hù)企業(yè)敏感數(shù)據(jù)。但是,這些安全管理軟件,都不可避免的存在一個(gè)共同的問題:那就是安全管理軟件同防病毒軟件的沖突問題。
有過安全管理軟件部署和使用的網(wǎng)絡(luò)管理員,都應(yīng)該有這樣的體會(huì):除了初次部署時(shí)的各種兼容性問題排查,日常運(yùn)行管理過程中也還會(huì)遇到各種各樣的沖突問題。也許在安全管理軟件升級(jí)了,或者防病毒軟件升級(jí)病毒庫之后,沖突問題又忽然爆發(fā)。這樣的問題,讓安全管理方案的落地存在很大的問題,原本為了提高企業(yè)內(nèi)部安全,降低網(wǎng)絡(luò)管理人員工作而引入安全管理軟件,反而成為了一個(gè)新的痛苦點(diǎn)。那么,這樣的問題有沒有辦法徹底解決呢。本文主要針對(duì)該問題進(jìn)行一些分析和探討。
1 什么會(huì)有這么多的沖突問題
要解決問題,首先就要先了解問題發(fā)生的原因。安全管理軟件和防病毒軟件為什么會(huì)發(fā)生這樣的沖突呢?這首先要從防病毒軟件的病毒檢測(cè)機(jī)制說起,一般來說防病毒軟件的檢測(cè)機(jī)制有被動(dòng)檢測(cè)和主動(dòng)檢測(cè)兩種。目前基本上所有防病毒軟件都兼具兩種檢測(cè)方式,只是不同的品牌側(cè)重點(diǎn)不同。對(duì)于被動(dòng)檢測(cè),也就是根據(jù)各種病毒特征(如應(yīng)用程序PE文件的特征,MD5值、進(jìn)程名稱等)進(jìn)行判斷,殺毒軟件通過不斷的升級(jí)病毒庫來增加各種病毒庫特征。對(duì)于主動(dòng)檢測(cè),其實(shí)就是殺毒軟件根據(jù)應(yīng)用程序的行為(如調(diào)用了哪些敏感API,監(jiān)聽了哪些端口,訪問了哪些敏感資源,或者某幾種動(dòng)作的組合)等來進(jìn)行判斷是否存在風(fēng)險(xiǎn)。
從以上分析可以發(fā)現(xiàn),防病毒軟件和安全管理軟件存在天然的沖突問題,因?yàn)榘踩芾碥浖聦?shí)上從技術(shù)的角度來看,和黑客軟件的行為有著很大的相似之處。如也會(huì)調(diào)用一些敏感資源,檢查某些文件、注冊(cè)表,防殺(如惡意用戶通過惡意殺掉安全管理軟件的進(jìn)程來逃脫監(jiān)管)等。不過安全管理軟件不會(huì)如黑客軟件那樣,惡意竊取敏感信息,惡意復(fù)制、刪除、創(chuàng)建惡意文件等,如當(dāng)年臭名昭著的“熊貓燒香”病毒,就是通過篡改感染用戶的各種可執(zhí)行文件,導(dǎo)致用戶主機(jī)癱瘓,資料丟失。
也正因?yàn)槿绱耍啦《拒浖a(chǎn)品也經(jīng)常將安全管理軟件進(jìn)行誤殺。那么,有什么辦法來解決這些問題呢?
2 如何防止誤殺
要解決誤殺問題,首先要解決的就是信任問題。要讓殺毒軟件信任安全管理軟件,目前一般會(huì)采用如下一些解決辦法:
方法一:用戶手動(dòng)將安全管理軟件加入防病毒軟件的白名單中(如360的文件白名單)。
方法二:安全管理軟件廠商每次版本之前,將安全管理軟件申請(qǐng)放到防病毒軟件廠商的免殺列表中。
方法三:安全管理軟件盡量不調(diào)用一些敏感的API,不訪問一些敏感的資源,做一些類似病毒的行為。
如上幾個(gè)方法,似乎可行,但是實(shí)際上并不好使。
如方法一,似乎可行,但是首先一點(diǎn)是,對(duì)于企業(yè)用戶,很多人對(duì)于IT技術(shù)并不熟悉。讓其手動(dòng)添加白名單,特別是一些企業(yè)的老員工,更是一竅不通。即使是比較精通IT技術(shù)的年輕人,也不一定能夠判斷出某進(jìn)程是否安全。
如方法二,首先,該方法是一種企業(yè)間的白名單行為。不是所有防病毒廠商都提供這樣的服務(wù),特別是一些海外的防病毒軟件廠商,在國內(nèi)只有商,通常是無法聯(lián)系到廠商的售后的。即使是對(duì)于有提供這些服務(wù)的防病毒軟件廠商,也有問題。如有的廠商需要一定的費(fèi)用(長期以來,對(duì)于安全管理軟件廠商來說,也是一個(gè)負(fù)擔(dān)),有的廠商審核周期太長,可能需要好幾天,甚至一個(gè)月。這對(duì)于一些面臨驗(yàn)收的項(xiàng)目,或者出現(xiàn)嚴(yán)重故障,急需修復(fù)BUG的安全管理產(chǎn)品來說,也是不可接受的。更重要的是,加入白名單,很多時(shí)候,只能避免安裝過程沒問題。當(dāng)進(jìn)行一些敏感操作時(shí),還是會(huì)被誤殺。
如方法三,首先,這不太可能,因?yàn)榘踩芾碥浖枰鲆恍┌踩嚓P(guān)的防護(hù),甚至?xí)龅津?qū)動(dòng)級(jí)別,因此不調(diào)用敏感API,就無法實(shí)現(xiàn)這些功能。一些敏感資源也是必須訪問的,如禁用U盤,U盤加密等。這是安全管理軟件很常見的一些功能。對(duì)于ARP欺騙等網(wǎng)絡(luò)攻擊行為,安全管理軟件甚至還需要分析網(wǎng)絡(luò)報(bào)文來對(duì)攻擊行為進(jìn)行防御和定位(如銳捷GSN產(chǎn)品中的ARP立體防御解決方案)。
綜上所述,如上的這些方案,都無法完全解決這些問題。那么還有其他什么解決方案嗎?
解決方案的著眼點(diǎn),應(yīng)該還是信任問題。如果通過各種技術(shù)來反檢測(cè),那么最終可能會(huì)演變?yōu)橐环N新的“3Q大戰(zhàn)”。那么是否存在第三方的信任機(jī)構(gòu),來對(duì)應(yīng)用程序提供信任擔(dān)保呢。事實(shí)上,的確有。業(yè)界早就存在第三方的安全認(rèn)證機(jī)構(gòu),如VeriSign、GlobalSign、StartCom。說起這些機(jī)構(gòu),大家可能都不熟悉。但是如果談到https或者ssl,可能大家就比較熟悉了。目前任何銀行和電子商務(wù)平臺(tái),都是必須用到這些技術(shù)的。而這些第三方安全認(rèn)證機(jī)構(gòu)目前提供最多的就是SSL證書。SSL證書是數(shù)字證書的一種,通過非對(duì)稱算法,在客戶端和服務(wù)端之間建立一條安全的通訊通道。而這個(gè)通訊通道建立的前提,就是這些第三方機(jī)構(gòu)提供的電子證書是被業(yè)界所有廠商都認(rèn)可的。如微軟的OS就內(nèi)嵌了VerSign,StartCom的根證書。
SSL主要用于客戶機(jī)和服務(wù)器之間的安全信任問題。類似的,對(duì)于應(yīng)用程序之間的信任,也有一種對(duì)應(yīng)的電子證書:代碼簽名證書。
代碼簽名證書能夠?qū)浖a進(jìn)行數(shù)字簽名。通過對(duì)代碼的數(shù)字簽名來標(biāo)識(shí)軟件來源以及軟件開發(fā)者的真實(shí)身份,保證代碼在簽名之后不被惡意篡改。使用戶在下載已經(jīng)簽名的代碼時(shí),能夠有效的驗(yàn)證該代碼的可信度。也就是說,代碼簽名證書其實(shí)主要解決兩個(gè)問題,一個(gè)是軟件來源問題,一個(gè)是保證代碼不被篡改。而代碼簽名證書,本身有一套非常完善的機(jī)制,如使用非對(duì)稱算法(RSA)來進(jìn)行代碼簽名證書的生成和防篡改等,從技術(shù)上就能做到證書的防偽造。
因?yàn)檫@個(gè)代碼簽名證書是業(yè)界認(rèn)可的第三方證書,也就是可信的,所以利用代碼簽名證書的這兩個(gè)特性,應(yīng)該可以很好的解決安全管理軟件和防病毒軟件的沖突問題。經(jīng)過測(cè)試可以發(fā)現(xiàn),國內(nèi)外的殺毒軟件,全部都承認(rèn)代碼簽名證書。對(duì)于有使用代碼簽名證書簽名的安全管理軟件程序,防病毒軟件都會(huì)認(rèn)為其是安全的,不會(huì)再進(jìn)行各種誤殺和攔截。
既然代碼簽名證書可以解決這個(gè)沖突問題,并且可以防止被防病毒軟件誤殺,那么木馬病毒程序是否可以采用這種方式來避免被防病毒軟件殺掉呢?理論上是可以的,但是事實(shí)上存在一定難度。因?yàn)榇a簽名證書的申請(qǐng)不是隨便誰都可以申請(qǐng)的,是需要提供各種企業(yè)執(zhí)照和證明文件,如果出現(xiàn)這樣的病毒。那么對(duì)應(yīng)的企業(yè)是需要承擔(dān)法律責(zé)任的。所以,擁有這種代碼簽名證書的企業(yè)需要很小心的保管自己公司的代碼簽名證書。同時(shí),代碼簽名證書也是有時(shí)效的,超過時(shí)效,那么這個(gè)代碼簽名將不會(huì)認(rèn)可,防病毒軟件就照殺不誤了。如果出現(xiàn)證書丟失等異常情況,也有相應(yīng)的證書吊銷機(jī)制可以解決這個(gè)問題。
4 如何解決惡意破壞
綜上所述,安全管理軟件的安裝和執(zhí)行得到了信任,那么是不是安全管理軟件和防病毒軟件的沖突就可以徹底解決了呢。大部分是已經(jīng)可以了,但是還不完全,前面我們提到有些惡意用戶為了繞開安全監(jiān)管,會(huì)采用防病毒軟件的相關(guān)機(jī)制來破壞安全管理軟件的正常運(yùn)行。一種很典型的做法就是,使用防火墻軟件,禁止安全管理軟件客戶端和服務(wù)器端的通訊。這樣一樣,網(wǎng)絡(luò)管理人員就無法通過下發(fā)安全管理策略,來管理企業(yè)網(wǎng)內(nèi)部的工作PC了。部署安全方案的目的也就無法很好的達(dá)成。
除了惡意破壞,還存在如下兩種情況,導(dǎo)致客戶端無法同服務(wù)器端進(jìn)行通訊,正常的安全管理業(yè)務(wù)流程失敗。
問題一:上網(wǎng)用戶由于網(wǎng)絡(luò)知識(shí)有限,不懂如何配置防火墻使安全管理軟件客戶端能夠同服務(wù)器端進(jìn)行通訊。
問題二:上網(wǎng)用戶在防火墻判斷是否放行時(shí),由于無法作出判斷,出于安全起見,禁止安全管理軟件客戶端訪問網(wǎng)絡(luò)。
對(duì)于這些問題,業(yè)界還沒有好的解決方案,一般只能由管理員幫助上網(wǎng)用戶進(jìn)行配置和解決問題,但是如果企業(yè)內(nèi)部工作PC數(shù)量眾多,各種工作PC的應(yīng)用環(huán)境復(fù)雜,所使用的殺毒軟件和防火墻產(chǎn)品、版本和實(shí)現(xiàn)機(jī)制各不相同,耗費(fèi)的工作量是巨大的。而且在防火墻升級(jí)、工作PC重裝操作系統(tǒng),客戶改用其他殺毒軟件的情況下,又需要耗費(fèi)大量的時(shí)間進(jìn)行折騰。而且,網(wǎng)管的技術(shù)能力目前在業(yè)界也是良莠不齊,很多網(wǎng)管也無法解決這些問題。
通過分析,可以發(fā)現(xiàn)當(dāng)前業(yè)界主流的防火墻主要采用2種技術(shù):SPI和NIDS中間層驅(qū)動(dòng)。
SPI:簡(jiǎn)單一點(diǎn)說就是防火墻中同進(jìn)程關(guān)聯(lián)的一種報(bào)文過濾技術(shù),它能夠截獲進(jìn)程發(fā)起的網(wǎng)絡(luò)連接,然后判斷該進(jìn)程是否允許發(fā)起這個(gè)網(wǎng)絡(luò)鏈接。
NIDS中間層驅(qū)動(dòng):NIDS驅(qū)動(dòng)位于更底層,它能夠?qū)W(wǎng)絡(luò)訪問的所有報(bào)文進(jìn)行過濾。但是無法根據(jù)進(jìn)程信息進(jìn)行過濾。也就是如果其允許目的端口為80的報(bào)文通過。那么所有使用目的端口為80進(jìn)行網(wǎng)絡(luò)訪問的進(jìn)程發(fā)出的網(wǎng)絡(luò)報(bào)文都能夠通過。
一般業(yè)界的防火墻均采用2兩種技術(shù)進(jìn)行組合來實(shí)現(xiàn)。這樣就可以解決其他進(jìn)程冒用NIDS中間層驅(qū)動(dòng)允許端口進(jìn)行訪問的問題。也可以解決,NIDS無法定位進(jìn)程的問題了。
由于基于SPI的防火墻是工作于應(yīng)用層的,因此能夠攔截應(yīng)用程序發(fā)起的網(wǎng)絡(luò)鏈接,在某些情況下,就可能將客戶端發(fā)起的網(wǎng)絡(luò)鏈接阻斷。
由于基于NIDS驅(qū)動(dòng)的防火墻是工作在核心層的,因此能夠攔截所有固定特征的報(bào)文。在某些情況下,就可能將客戶端發(fā)起的網(wǎng)絡(luò)鏈接阻斷。
因此,要解決客戶端同服務(wù)器端的通訊不被防火墻阻斷,本文可通過實(shí)現(xiàn)一個(gè)“客戶端驅(qū)動(dòng)程序”(如上圖所示)來解決該問題。該客戶端驅(qū)動(dòng)程序?yàn)門DI驅(qū)動(dòng),與TCP/IP這個(gè)TDI驅(qū)動(dòng)同一位置,因此所有網(wǎng)卡收到的報(bào)文都將同時(shí)拷貝一份給“客戶端驅(qū)動(dòng)程序”,不會(huì)經(jīng)過系統(tǒng)自帶的TCP/IP驅(qū)動(dòng)和TCP/IP協(xié)議棧,因此不會(huì)被基于SPI(甚至基于TDI驅(qū)動(dòng))的防火墻所過濾,而目前能夠?qū)崿F(xiàn)根據(jù)程序進(jìn)行報(bào)文過濾的防火墻基本都是使用這兩種技術(shù)。該“客戶端驅(qū)動(dòng)”由于同TCP/IP位于同一位置,因此無法使用Socket等WindowsAPI來實(shí)現(xiàn)TCP/IP傳輸。因此要實(shí)現(xiàn)客戶端同服務(wù)端的通訊,還需要“客戶端驅(qū)動(dòng)程序”實(shí)現(xiàn)TCP/IP協(xié)議的相關(guān)功能。由于TCP過于復(fù)雜,因此“客戶端驅(qū)動(dòng)程序”采用實(shí)現(xiàn)UDP相關(guān)功能來實(shí)現(xiàn)IP報(bào)文的傳輸。“客戶端驅(qū)動(dòng)程序”能夠防止通訊報(bào)文被基于SPI和基于TDI方式進(jìn)行過濾的防火墻所過濾。
通過以上方式,客戶端和服務(wù)端通訊的報(bào)文還可能被基于NIDS中間層驅(qū)動(dòng)的防火墻給過濾。如瑞星防火墻就默認(rèn)過濾所有報(bào)文,只開放少數(shù)必備端口,如80(http)和53(dns).對(duì)于使用NIDS驅(qū)動(dòng)進(jìn)行報(bào)文過濾的防火墻,由于上網(wǎng)用戶訪問網(wǎng)絡(luò)是一定要訪問DNS服務(wù)的(DNS的訪問端口53),并且NIDS無法得到進(jìn)程信息。因此可以使“客戶端驅(qū)動(dòng)程序”的目的端口采用這些必備端口即可,本文中采用53端口(通過將端口修改為其他一定能夠訪問的端口也是可以的,53只是一個(gè)比較通用的做法,因?yàn)榇蟛糠秩嗽L問網(wǎng)絡(luò)都是為了訪問internet)。
通過以上兩種方式,即可解決客戶端同服務(wù)器端網(wǎng)絡(luò)通訊被防火墻阻斷的問題。下圖為實(shí)現(xiàn)本方案,客戶端程序至少需要實(shí)現(xiàn)的模塊:
業(yè)務(wù)解析模塊:同業(yè)務(wù)相關(guān)的模塊(不同的產(chǎn)品是不一樣的),從自定義傳輸協(xié)議棧獲取服務(wù)器端發(fā)送過來的業(yè)務(wù)信息。將業(yè)務(wù)信息發(fā)送給自定義傳輸協(xié)議棧。
自定義傳輸協(xié)議棧:將業(yè)務(wù)相關(guān)的信息,根據(jù)自定義協(xié)議,封裝到IP報(bào)文中。該傳輸協(xié)議棧,本方案只規(guī)定了采用UDP協(xié)議實(shí)現(xiàn)。UDP報(bào)文中的內(nèi)容,不同的產(chǎn)品根據(jù)不同要求能夠有不同的實(shí)現(xiàn)(如報(bào)文大小,安全要求程度不一樣,應(yīng)用層的實(shí)現(xiàn)都是不一樣的)。
客戶端驅(qū)動(dòng)程序:TDI驅(qū)動(dòng),接收服務(wù)端發(fā)送過來的報(bào)文,并轉(zhuǎn)發(fā)給自定義傳輸協(xié)議棧處理。接收自定義傳輸協(xié)議棧封裝好的報(bào)文,并通過網(wǎng)卡轉(zhuǎn)發(fā)給服務(wù)端。
對(duì)于服務(wù)器端,需要實(shí)現(xiàn)對(duì)應(yīng)的自定義傳輸協(xié)議和業(yè)務(wù)解析模塊,但是不需要實(shí)現(xiàn)客戶端驅(qū)動(dòng)。因?yàn)榉?wù)端都是管理員負(fù)責(zé)管理的,不存在這個(gè)防火墻的問題。
本方案既能夠應(yīng)用于Windows操作系統(tǒng)環(huán)境下的TCP/IP網(wǎng)絡(luò)環(huán)境,也可以擴(kuò)展到其他操作系統(tǒng)上的,如Linux和Unix等,因?yàn)槠渚W(wǎng)絡(luò)體系架構(gòu)基本上是一樣的。不過,目前國內(nèi)的企業(yè)網(wǎng),基本上都是Windows操作系統(tǒng)的終端,采用其他OS的PC很少。
4 結(jié)論
雖然目前殺毒軟件和防火墻軟件功能已經(jīng)越來越強(qiáng)大。但是,這些軟件的功能,主要還是針對(duì)用戶的操作系統(tǒng)環(huán)境,進(jìn)行病毒的檢測(cè)和防御。對(duì)于安全要求較高的企業(yè)網(wǎng),部署相應(yīng)的安全解決方案,還是很有必要的。對(duì)于一些裸奔(不安裝任何殺毒軟件和防火墻軟件)的PC,其安全性是完全無法保障的,企業(yè)信息的泄密幾率也大大的增加。但是,安全管理軟件同防病毒軟件的沖突問題,卻使安全解決方案的部署無法達(dá)到預(yù)期的效果。本文針對(duì)這個(gè)問題,通過使用“代碼簽名證書”,基于底層驅(qū)動(dòng)的“客戶端驅(qū)動(dòng)程序”,解決了業(yè)界普遍存在的安全管理軟件和防病毒軟件的沖突問題,使安全管理方案的落地有了一個(gè)良好的基礎(chǔ)。大大提高了企業(yè)內(nèi)網(wǎng)的安全,極大的減輕了企業(yè)網(wǎng)網(wǎng)絡(luò)管理員的工作負(fù)擔(dān)。
參考文獻(xiàn)
[1]代碼簽名證書.http:///link?url=B4VdrnuSOBmgeRYdAsssYwGZ32a4MRZbzMKhLrlu9n-6IhCgYqbOKSqQKGArOFvNdDB8etVjoy0eG-M9yvoGb.
金算盤eERP-B財(cái)務(wù)管理軟件是由金算盤(eAbax)軟件有限公司開發(fā)。金算盤eERP-B財(cái)務(wù)管理軟件主要為小企業(yè)管好錢,管好賬,管好固定資產(chǎn),管好工資,是財(cái)務(wù)人員的好幫手,將小企業(yè)內(nèi)部信息化與電子商務(wù)有機(jī)融合,幫助小企業(yè)實(shí)現(xiàn)全程電子商務(wù)化。
一、金算盤eERP-B財(cái)務(wù)管理軟件詳細(xì)功能
(一)賬務(wù)處理
1.軟件可對(duì)科目類別、性質(zhì)進(jìn)行管理和修改、復(fù)制、合并、拆分、停用,以及恢復(fù)處理與財(cái)務(wù)預(yù)算功能,任意定義憑證的輸入輸出界面,提供語音復(fù)讀功能和輸入算術(shù)表達(dá)式。2.軟件具有外幣核算、跟蹤查詢、自動(dòng)核銷往來賬功能,與用戶可任意定義通用轉(zhuǎn)賬憑證,支持在任一時(shí)間進(jìn)行科目計(jì)息,期末結(jié)賬時(shí)系統(tǒng)自動(dòng)檢查提折舊、期末調(diào)匯、損益結(jié)轉(zhuǎn)、憑證號(hào)連續(xù)等。
(二)現(xiàn)金銀行
1.軟件提供收付款單、復(fù)幣式收付款單、應(yīng)收應(yīng)付核銷和現(xiàn)金折讓功能。2.軟件可以設(shè)定對(duì)賬單和銀行賬相差的天數(shù)及手工對(duì)賬功能。
(三)往來管理
1.軟件對(duì)往來單位按類型、片區(qū)、級(jí)別、性質(zhì)等進(jìn)行管理及指定往來單位付款條件和折扣率。2.軟件提供信用額度管理和應(yīng)收計(jì)息功能。
(四)工資管理
1.軟件有一個(gè)月內(nèi)多次發(fā)放不同工資項(xiàng)目能力和集成為銀行提供工資數(shù)據(jù)接口。2.軟件對(duì)工資數(shù)據(jù)可自定義生成記賬憑證和任意生成工資條、工資表、配款表以及個(gè)人所得稅代扣代繳表。
(五)固定資產(chǎn)管理
1.軟件有固定資產(chǎn)進(jìn)行分部門、類別和提供批量打印固定資產(chǎn)卡片的功能,提供“按現(xiàn)在凈值和剩余期間計(jì)提折舊”和“按原值和預(yù)計(jì)使用期間計(jì)提折舊”兩種方法,對(duì)同一固定資產(chǎn)多部門使用和折舊費(fèi)用多科目核算及對(duì)入賬前固定資產(chǎn)的多種折舊方法進(jìn)行管理。2.軟件提供“按現(xiàn)在凈值和剩余期間計(jì)提折舊”“按變動(dòng)后各因素計(jì)提折舊”和“按變動(dòng)前各因素計(jì)提折舊”三種折舊計(jì)算以及“不調(diào)整以前累計(jì)折舊”“重新計(jì)算折舊并自動(dòng)計(jì)算累計(jì)折舊”兩種累計(jì)折舊調(diào)整方法。
(六)采購管理
1.軟件可進(jìn)行采購訂單執(zhí)行情況管理,查詢采購單據(jù)、到貨情況,并進(jìn)行技能型定購未到貨稽查。2.軟件可進(jìn)行訂單中指定商品進(jìn)行關(guān)閉操作,針對(duì)不同供應(yīng)商自動(dòng)記憶,可處理貨到票未到、票到貨未到和票貨同到業(yè)務(wù),控制采購成本和庫存積壓,進(jìn)行現(xiàn)金計(jì)算,也可掛往來賬,自動(dòng)生成采購憑證,生成采購發(fā)票。
(七)銷售管理
1.軟件可進(jìn)行銷售訂單、控制銷售成本和短缺商品管理,并能自動(dòng)跟蹤訂單、收款單、銷售發(fā)票。2.軟件可依據(jù)地區(qū)、單位、部門、職員等要素統(tǒng)計(jì)銷售,掌握商品的發(fā)貨及結(jié)算,自動(dòng)生成銷售憑證。
(八)庫存管理
1.軟件支持自制產(chǎn)品入庫和企業(yè)內(nèi)部材料、商品(產(chǎn)品)領(lǐng)用出庫管理,接受捐贈(zèng)、樣品、禮品及采購商品溢余等由其它入庫進(jìn)行管理。2.軟件支持對(duì)批次管理的商品進(jìn)行批次盤點(diǎn),通過“盤點(diǎn)處理”功能自動(dòng)產(chǎn)生盤盈盤虧單據(jù)。
(九)存貨核算
1.軟件提供庫存商品成本調(diào)整和調(diào)價(jià)功能,能對(duì)自制入庫物品設(shè)置實(shí)際成本。2.軟件對(duì)出入庫成本、盤盈盤虧成本根據(jù)商品對(duì)應(yīng)成本計(jì)算方法自動(dòng)得到,對(duì)移動(dòng)平均、先進(jìn)先出、后進(jìn)先出、個(gè)別計(jì)價(jià)商品提供成本計(jì)算底稿,對(duì)單個(gè)、多個(gè)、全部商品計(jì)算成本及成本或差異差價(jià)結(jié)轉(zhuǎn),提供計(jì)提存貨跌價(jià)準(zhǔn)備功能。
二、金算盤eERP-B財(cái)務(wù)管理軟件財(cái)務(wù)管理解決方案
(一)財(cái)務(wù)管理
操作人員權(quán)限管理基礎(chǔ)編碼管理財(cái)務(wù)預(yù)算管理會(huì)計(jì)日常業(yè)務(wù)管理多幣種管理賬冊(cè)查詢、分析、結(jié)賬通用轉(zhuǎn)賬損益結(jié)轉(zhuǎn)和收支結(jié)轉(zhuǎn)。
(二)應(yīng)收、應(yīng)付管理
1.應(yīng)收賬。物品銷售應(yīng)收借項(xiàng)錄入應(yīng)收計(jì)息應(yīng)收計(jì)息貸項(xiàng)應(yīng)收賬。2.應(yīng)付賬。物品采購應(yīng)收貸項(xiàng)錄入應(yīng)付借項(xiàng)應(yīng)付賬。3.現(xiàn)金銀行。收到款項(xiàng)支付款項(xiàng)收付款憑證銷售收款采購付款現(xiàn)金、銀行日記賬。4.工資管理。工資計(jì)算工資發(fā)放費(fèi)用計(jì)提代扣個(gè)人所得稅工資賬表工資的核算、管理和統(tǒng)計(jì)分析。5.固定資產(chǎn)管理。卡片式固定資產(chǎn)信息固定資產(chǎn)增減值變動(dòng)自動(dòng)計(jì)提折舊并生成記賬憑證。6.電子報(bào)表。資產(chǎn)負(fù)債表現(xiàn)金流量表損益表工作表圖形分析報(bào)表數(shù)據(jù)引入引出。
【關(guān)鍵詞】軟件項(xiàng)目管理 項(xiàng)目計(jì)劃 管理意識(shí) 解決方案
軟件行業(yè)是一個(gè)極具挑戰(zhàn)性和創(chuàng)造性的行業(yè),軟件開發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程,牽涉到各方面的因素,在實(shí)際工作中,經(jīng)常會(huì)出現(xiàn)各種各樣的問題,甚至面臨失敗。如何總結(jié)、分析失敗的原因,得出有益的教訓(xùn),對(duì)一個(gè)公司來說,是在今后的項(xiàng)目中取得成功的關(guān)鍵。
1 項(xiàng)目管理在軟件開發(fā)中的應(yīng)用的成因
目前我國大部分軟件公司,無論是產(chǎn)品型公司還是項(xiàng)目型公司,都沒有形成完全適合自己公司特點(diǎn)的軟件開發(fā)管理模式,雖然有些公司根據(jù)軟件工程理論建立了一些軟件開發(fā)管理規(guī)范,但并沒有從根本上解決軟件開發(fā)的質(zhì)量控制問題。這樣導(dǎo)致軟件產(chǎn)品質(zhì)量不穩(wěn)定,軟件后期的維護(hù)、升級(jí)出現(xiàn)麻煩,同時(shí)最終也會(huì)損害用戶的利益。
2軟件項(xiàng)目管理常見問題及解決方案
(1)缺乏項(xiàng)目管理系統(tǒng)培訓(xùn)
在軟件企業(yè)中,以前幾乎沒有專門招收項(xiàng)目管理專業(yè)的人員來擔(dān)任項(xiàng)目經(jīng)理,被任命的項(xiàng)目經(jīng)理主要是因?yàn)樗麄兡軌蛟诩夹g(shù)上獨(dú)當(dāng)一面,而管理方面特別是項(xiàng)目管理方面的知識(shí)比較缺乏。
解決方案:項(xiàng)目經(jīng)理接受系統(tǒng)的項(xiàng)目管理知識(shí)培訓(xùn)是非常必要的,有了專業(yè)領(lǐng)域的知識(shí)與實(shí)踐,再加上項(xiàng)目管理知識(shí)與實(shí)踐和一般管理的知識(shí)和經(jīng)驗(yàn)的有機(jī)結(jié)合,必能大大提高項(xiàng)目經(jīng)理的項(xiàng)目管理水平。
(2)項(xiàng)目計(jì)劃意識(shí)問題
項(xiàng)目經(jīng)理對(duì)總體計(jì)劃、階段計(jì)劃的作用認(rèn)識(shí)不足,因此制定總體計(jì)劃時(shí)比較隨意,不少事情沒有仔細(xì)考慮;階段計(jì)劃因工作忙等理由經(jīng)常拖延,造成計(jì)劃與控制管理脫節(jié),無法進(jìn)行有效的進(jìn)度控制管理。
解決方案:計(jì)劃的制定需要在一定條件的限制和假設(shè)之下采用漸近明細(xì)的方式進(jìn)行不斷完善。提高項(xiàng)目經(jīng)理的計(jì)劃意識(shí),采用項(xiàng)目計(jì)劃制定相關(guān)知識(shí)、技術(shù)、工具,加強(qiáng)對(duì)開發(fā)計(jì)劃、階段計(jì)劃的有效性進(jìn)行事前事后的評(píng)估。
(3)管理意識(shí)問題
部分項(xiàng)目經(jīng)理不能從總體上把握整個(gè)項(xiàng)目,而是埋頭于具體的技術(shù)工作,造成項(xiàng)目組成員之間忙的忙、閑的閑,計(jì)劃不周、任務(wù)不均、資源浪費(fèi)。有些項(xiàng)目經(jīng)理沒有很好的管理方法,不好安排的工作只好自己做,使項(xiàng)目任務(wù)無法有效、合理地分配給相關(guān)成員,以達(dá)到“負(fù)載均衡”。
解決方案:加強(qiáng)項(xiàng)目管理方面的培訓(xùn),并通過對(duì)考核指標(biāo)的合理設(shè)定和宣傳引導(dǎo)項(xiàng)目經(jīng)理更好地做好項(xiàng)目管理工作。技術(shù)骨干在擔(dān)任項(xiàng)目經(jīng)理之前,最好能經(jīng)過系統(tǒng)的項(xiàng)目管理知識(shí),特別是其中的人力資源管理、溝通管理的學(xué)習(xí),并且在實(shí)際工作中不斷提高自己的管理素質(zhì),豐富項(xiàng)目管理經(jīng)驗(yàn),提高項(xiàng)目管理意識(shí)。
(4)溝通意識(shí)問題
在項(xiàng)目中一些重要信息沒有進(jìn)行充分和有效的溝通。在制定計(jì)劃、意見反饋、情況通報(bào)、技術(shù)問題或成果等方面與相關(guān)人員的溝通不足,造成各做各事、重復(fù)勞動(dòng),甚至造成不必要的損失;有些人沒有每天定時(shí)收郵件的習(xí)慣,以至于無法及時(shí)接收最新的信息。
解決方案:制定有效的溝通制度和溝通機(jī)制,提高溝通意識(shí);采取多種溝通方式,提高溝通的有效性。通過制度規(guī)定對(duì)由于未及時(shí)收取郵件而造成損失的責(zé)任歸屬;對(duì)于特別重要的內(nèi)容要采用多種方式進(jìn)行有效溝通以確保傳達(dá)到位,例如:除發(fā)送郵件外還要電話提醒、回執(zhí)等,重要的內(nèi)容還要通過舉行各種會(huì)議進(jìn)行傳達(dá)。
(5)風(fēng)險(xiǎn)管理意識(shí)問題
有些項(xiàng)目經(jīng)理沒有充分意識(shí)到風(fēng)險(xiǎn)管理的重要性,對(duì)計(jì)劃書中風(fēng)險(xiǎn)管理的章節(jié)簡(jiǎn)單應(yīng)付了事,隨便列出幾個(gè)風(fēng)險(xiǎn),隨便地寫一些簡(jiǎn)單的對(duì)策,對(duì)于后面的風(fēng)險(xiǎn)防范起不到什么指導(dǎo)作用
解決方案:通過學(xué)習(xí)項(xiàng)目管理知識(shí)掌握風(fēng)險(xiǎn)識(shí)別、量化、對(duì)策研究、反應(yīng)控制的工具和方法,掌握項(xiàng)目風(fēng)險(xiǎn)管理所必備的知識(shí)。通過加強(qiáng)對(duì)項(xiàng)目規(guī)劃中風(fēng)險(xiǎn)管理計(jì)劃的審核提高項(xiàng)目組的風(fēng)險(xiǎn)管理意識(shí)。總結(jié)本行業(yè)項(xiàng)目中常見的風(fēng)險(xiǎn)及其對(duì)策作為風(fēng)險(xiǎn)管理計(jì)劃中必要的風(fēng)險(xiǎn)內(nèi)容,并切實(shí)評(píng)估相應(yīng)對(duì)策的有效性和可行性。
(6)項(xiàng)目干系人問題
在范圍識(shí)別階段,項(xiàng)目組對(duì)客戶的整體組織結(jié)構(gòu)、有關(guān)人員及其關(guān)系、工作職責(zé)等沒有足夠了解以至于無法得到完整需求或最終經(jīng)權(quán)威用戶代表確認(rèn)的需求;或者是多個(gè)用戶代表各說各話、昨是今非,但同時(shí)又要求項(xiàng)目盡早交付;項(xiàng)目后期需求變化隨意,造成項(xiàng)目范圍的蔓延,進(jìn)度的拖延,成本的擴(kuò)大。
解決方案:項(xiàng)目的目的就是實(shí)現(xiàn)項(xiàng)目干系人的需求和愿望。項(xiàng)目干系人管理應(yīng)當(dāng)從項(xiàng)目的啟動(dòng)開始,項(xiàng)目經(jīng)理及其項(xiàng)目成員就要分清項(xiàng)目干系人包含哪些人和組織,通過溝通協(xié)調(diào)對(duì)他們施加影響,驅(qū)動(dòng)他們對(duì)項(xiàng)目的支持,調(diào)查并明確他們的需求和愿望,減小其對(duì)項(xiàng)目的阻力,以確保項(xiàng)目獲得成功。
(7)項(xiàng)目團(tuán)隊(duì)內(nèi)分工協(xié)作問題
項(xiàng)目團(tuán)隊(duì)內(nèi)部有時(shí)由于各階段不同角色或同階段不同角色之間的責(zé)任分工不夠清晰而造成工作互相推諉、責(zé)任互相推卸的現(xiàn)象;有時(shí)各階段不同角色或同階段不同角色之間的責(zé)任分工比較清晰,但是各項(xiàng)目成員只顧完成自己那部分任務(wù),不愿意與他人協(xié)作。這些現(xiàn)象都將造成項(xiàng)目組內(nèi)部資源的損耗,從而影響項(xiàng)目進(jìn)展。
解決方案:項(xiàng)目經(jīng)理應(yīng)當(dāng)對(duì)項(xiàng)目成員的責(zé)任進(jìn)行合理的分配并清楚地說明,同時(shí)應(yīng)強(qiáng)調(diào)不同分工、不同環(huán)節(jié)的成員應(yīng)當(dāng)相互協(xié)作,共同完善。
3 結(jié)束語
實(shí)施有效的項(xiàng)目管理絕非易事,對(duì)于軟件企業(yè)而言,這不是一個(gè)小的改變,而是一種變革,企業(yè)需要為此付出艱苦的努力,同時(shí),成熟有效的項(xiàng)目管理無疑將對(duì)企業(yè)起著至關(guān)重要的作用,項(xiàng)目管理的水平將是企業(yè)核心競(jìng)爭(zhēng)力之一。
參考文獻(xiàn)
[1]吳吉義.軟件項(xiàng)目管理理論與案例分析.中國電力出版社,2007,08.
[2]李幟,林立新,曹亞波.軟件工程項(xiàng)目管理:功能點(diǎn)分析方法與實(shí)踐.清華大學(xué)出版社,2005,03.