蔣方玲



摘要:軟件實施是否科學直接關系到軟件應用的成敗。本文從企事業單位用戶的角度,構建了用戶驅動軟件實施的用戶干系人模型,結合軟件實施瀑布模型,提出了一種用戶驅動軟件實施的方法UserDriven Software Implementation(UDSI),并在招生系統的實施中實踐驗證了用戶驅動軟件實施的方法。
關鍵詞:計算機軟件與理論;軟件實施;用戶驅動;軟件項目管理
中圖分類號:TP311.5 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2015.05.019
0 引言
在信息化的過程中,軟件采購是企事業單位的常見舉措,越來越多的企業寄希望于采購的軟件來提高工作效率。軟件實施是軟件采購的重要環節,據實際工作的項目統計,軟件實施的時間將近占據軟件采購時間的90%,是一個相對漫長、工作集中的階段。軟件實施的方法是否科學、有效直接關系軟件采購、應用的成敗。軟件實施不僅僅是軟件的安裝、部署、培訓,更是一個軟件與企事業單位的用戶和工作流程交流、碰撞、融為一體過程,其最終目標是用戶能夠在日常工作中有效地使用軟件系統,幫助企事業規范工作流程,提高工作效率。用戶滿意度高才是軟件實施成功的標志。但是目前,很多企事業單位購買的軟件的使用情況并沒有達到預期效果,很多驗收的軟件在實際使用過程中存在各式各樣的問題,嚴重打擊了用戶的信心,甚至產生抵觸軟件系統的情況,極大的降低了工作效率。究其原因,主要有幾方面:1)軟件提供商的軟件系統質量不到位,適應性差,存在較多缺陷;2)軟件技術設計復雜,致使操作復雜,普通業務方面的用戶難掌握;3)軟件設計的工作流程與現實企事業工作流程有出入,用戶習慣難改變;4)軟件系統的推廣沒有制度上的保障,用戶積極性沒有充分發揮;5)用戶缺少軟件實施的理論、方案、實踐,實施質量控制不到位。為了避免這些情況的出現,保障采購高質量,符合企業要求的軟件系統,本文提出了一種用戶驅動軟件實施的方法,通過企事業單位的各類用戶推動軟件實施各個階段的進行,提高軟件實施的成功率。
1 相關研究
用戶對軟件實施具有重要的作用。Paula J.Vaughan基于學術研究以及企業報告之上總結了影響軟件系統實施成敗的六個因素,用戶參與是其中之一。用戶參與即是用戶在整個軟件實施階段的行為、活動、工作分配的集合,加強用戶對項目的責任感,用戶和項目的融合關系可以提高實施的成功率。一個有組織、有目的、具備一定方法的用戶參與在軟件實施的過程中是相當必要的。為了評價用戶的參與程度,王璐對信息系統實施中的用戶成熟度建立了相關模型。對于用戶的參與方式方面,張春霞從博弈論的角度,分析了軟件實施中企事業單位和軟件提供方間的委托代理關系,定性了分析了軟件實施過程中各個參與主體間的博弈關系,進而得出軟件實施的策略。國內外研究者從不同角度進行了相關研究,但是缺少從軟件工程的角度出發,結合實際的軟件實施各階段方面的用戶參與方法研究。本文側重于從用戶驅動軟件實施瀑布模型各階段的角度,提高軟件實施成功率。
2 用戶驅動實施
2.1 用戶干系人模型
軟件實施涉及企事業單位各個部門、軟件提供商等多方協調合作。用戶干系人模型從企事業單位用戶的角度出發,主要包含了領導層和執行層,其中執行層分為業務方面以及技術方面,領導層管理指示執行層工作,執行層向領導層匯報。如圖1所示。通過領導層和執行層的配合做到單位上下共同參與軟件實施。模型中各類干系人職責分明、相互協調、相互溝通配合共同推進軟件實施按階段有序有質進行。
領導層中包含三類:企事業高層領導、業務部門領導、信息部門領導。企事業高層領導一般由主管業務或者信息化建設的一把手擔當。從高層推動業務部門和信息部門共同做好軟件實施。高層領導統籌安排軟件實施建設,聽取業務部門領導以及信息部門領導的匯報。領導層共同對軟件實施的成敗負責。領導層主要負責制定實施目標、實施計劃,進行單位相關工作流程、制度的建設,協調工作人員等。
執行層分為業務和技術兩方面。業務方面的執行層負責業務的確認和使用,主要由企事業單位的業務部門擔當。技術方面的執行層負責軟件系統的正常運行,一般有企事業單位的信息化部門擔當。業務骨干由精通部門業務,并對業務發展有一定設想和展望的業務精英擔當。主要負責需求的提出確認,系統使用,系統推廣等。業務操作員主要根據自身的工作使用軟件系統相關的模塊,并提出建議。系統管理員負責系統業務方面的總管維護,如基礎數據、通用數據的維護等。應用程序維護人員、數據庫維護人員負責軟件系統的部署安裝,確保系統的可使用性。網絡硬件維護人員確保網絡的暢通以及硬件設備的正常。
2.2 軟件實施瀑布模型
軟件實施瀑布模型如圖2所示,將軟件實施的整個過程分為四個大階段:前期準備、開發測試、部署實施、運行維護。軟件實施瀑布模型要求調研階段軟件提供商準備原型進行試用,細化確定用戶需求。如同標準瀑布模型所要求的,模型中的每個小階段都有里程碑式的產出,產出以軟件實施雙方項目組簽字認可的程序和階段文檔為主,這些產出為下一階段的進行做輸入。
2.3 用戶驅動軟件實施的方法
用戶驅動軟件實施的方法是基于軟件實施瀑布模型的。其主要思想有:
用戶積極融入軟件實施瀑布模型中各個階段,在各個階段中
遵循PDCA管理循環;根據當前的軟件實施瀑布模型階段,用戶制定科學可行的項目質量管理方案、項目溝通計劃、階段性驗收標準;
以通過階段性驗收標準為目標,項目各方人員做好階段性工作;
用戶主動確認驗收軟件實施瀑布模型中各階段的工作成果,控制實施質量,并推動下一階段的進行;
用戶在軟件實施過程中占據主導地位,軟件提供商配合軟件實施的進行;用戶驅動軟件實施的方法強調用戶具有自己的軟件實施理論,并將自己的實施方法應用到軟件項目的實施上。用戶在各個階段按照PDCA管理循環,有目的有計劃地開展工作,并逐漸將實踐經驗標準化,螺旋式上升豐富自身的軟件實施理論。
對于軟件實施瀑布模型的每一個階段,用戶驅動軟件實施的基本過程如下:
1)根據用戶干系人模型,確定當前階段相關用戶;
2)根據企事業單位的實際情況,制定當前階段進行所需的計劃,質量管理方案,成果驗收標準,聯合軟件提供商,共同商議修改,最終雙方簽字確認;
3)當前階段相關用戶和軟件提供商共同各司其職完成當前階段的任務。對于一些技術性的環節如系統設計、測試、部署階段,主動參與其中,一方面提升企事業單位的軟件開發維護能力,一方面監督工期進度;
4)用戶根據雙方協定的成果驗收標準檢查階段性的成果;
5)若階段性成果滿足標準則推動下一階段進行,并將當前階段的實踐進行標準化,形成相關標準化文檔。若成果不滿足,則分析原因,重返l階段,調整1、2、3階段的工作,直至通過為止。
3 應用
3.1 需求調研階段應用實例
需求變更過多是導致軟件實施失敗的常見原因。以下以招生系統的業務需求調研這個階段為例,應用用戶驅動軟件實施的方法。業務需求調研階段的流程主要如下:
1)涉及的用戶干系人主要有分管信息的校長,招生就業處處長,信息中心主任,招生辦主任,招生辦科員,信息中心系統建設科員,信息中心運維部科員;其中招生辦主任一方面充當業務部門的領導角色,一方面也充當業務骨干的角色。招生辦科員是業務的使用人員和系統管理員。
2)信息中心系統建設科員制定《需求調研計劃》,確定需要調研的內容、方式、涉及的人員以及日期等。制定成果驗收標準,即在需求調研報告中能夠清晰準確地畫出招生辦業務流程圖和數據流程圖。制定需求確認標準,聯合涉及的用戶干系人、軟件提供方審核簽字。
3)信息中心運維部科員在軟件提供商的指導下部署招生系統原型。
4)軟件提供商指導培訓用戶使用招生系統,招生辦主任科員積極使用招生系統各個功能,確認原型中功能是否滿足實際需求,并根據自我工作提出需求。
5)軟件提供商訪談招生辦主任科員,挖掘用戶需求。
6)招生辦提供本部門相關的管理文件供軟件提供商挖掘需求。
7)軟件提供商編寫《需求調研報告》,主要包含業務描述,業務流程圖和數據流程圖等。聯合涉及的用戶干系人,召開需求評審會議,按照成果驗收標準進行審核,若符合標準,則雙方簽字確認,進行下一階段。若不符合標準,則查找原因,返回2階段重新開始。
3.2 應用結果評價
需求變更率是衡量一個項目需求的穩定性,通過變更數量和總體需求數量的比較,來判斷該項目是否超出了預先設定的變更范圍。基準需求數量是需求評審會過后打基線確定的需求條目個數。表1列出了未使用UDSI的系統和使用了UDSI的系統的需求變更情況。
需求變更率一變更需求數量/(基準需求數量+變更需求數量)。從圖3可以看出,在業務需求調研階段應用了UDSI的方法后,發揮了用戶的主動性,需求變更率分別降低了79.37%,76.87%,71.77%,平均降低了76.00%。用戶驅動軟件實施較好的保障了軟件系統實施的質量。
4 小結
軟件實施是一項復雜的系統工程,科學的方法和規范的管理辦法可以在很大程度上保證實施的成功,促使實施的軟件能夠能到廣泛的使用。本文聯合軟件實施瀑布模型和用戶干系人模型提出了用戶驅動軟件實施的方法。闡述了在瀑布模型的各個階段中使用用戶驅動軟件實施的流程,并在招生系統的業務需求調研階段做了應用。用戶驅動軟件實施的方法可以保證用戶的高參與性,提高軟件實施的成功率。但是軟件實施通常是一項長期的工程,過程中存在多方面的風險,用戶如何進行風險管理需要進一步研究。