軟件開發(fā)范文

時間:2023-04-10 17:04:12

導語:如何才能寫好一篇軟件開發(fā),這就需要搜集整理更多的資料和文獻,歡迎閱讀由公務員之家整理的十篇范文,供你借鑒。

篇1

 

1 計算機軟件開發(fā)中的軟件需求

 

軟件需求工程是計算機軟件開發(fā)工作的一個重要源頭,涉及到需求開發(fā)和需求管理。需求開發(fā)涉及到需求調(diào)研,需求收集,需求分析,需求開發(fā)等工作,其中的重點有業(yè)務流程,數(shù)據(jù)字典,業(yè)務規(guī)則,界面原型;需求管理工作涉及到需求的狀態(tài)管理,變更管理,需求的跟蹤,需求的驗證和確認等重要內(nèi)容。

 

軟件需求分析特別重要,在軟件開發(fā)的過程中具有舉足輕重的地位,但是我們常常會忽視兩點:一個就是缺乏需求分析和開發(fā)的過程,把用戶需求直接作為了軟件需求,沒有需求建模和抽象的過程。

 

另外一點就是對于性能,安全,易用性,可維護性和擴展性等非功能性需求沒有考慮,導致開發(fā)出來的系統(tǒng)是一個不好用的半成品。

 

2 軟件需求在軟件開發(fā)中的重要性

 

2.1 盡快熟悉項目用戶方干系人全貌

 

項目用戶方干系人,即是全部可能將受到軟件項目結(jié)果重大影響的人,既是軟件項目的整個風險的承擔者,同時也可能將是軟件項目的受益者,還有可能是軟件項目的受害者。所以,就應該從啟動軟件項目開始。

 

其需求分析員和該項目全體成員就首先要將項目用戶方干系人包括的組織和成員分析清楚,對各個成員都通過交流協(xié)調(diào)的方式來影響他們,加強他們對整個項目發(fā)展的支持度,再逐一調(diào)查溝通了解他們的意愿和需求,最大可能的消除他們對項目產(chǎn)生的阻力,以保證項目能順利地進行,最終取得成功。

 

有一部分軟件項目的需求分析員在做實際調(diào)查時,因為會受到進度要求等一些因素的制約,需求分析員和建設單位的技術部門之間有比較多的交流,卻在調(diào)查實際使用者和業(yè)務管理部門沒有足夠地深入,導致軟件經(jīng)過試用期之后就又必須再對需求做出大幅度的調(diào)整。

 

甚至是“從頭再來”的可能性非常高,遠遠超出了進度所規(guī)定的時間。因而,了解并掌握項目用戶方干系人的全貌是進行需求調(diào)查的首要任務,同時還是進行需求調(diào)查的根基。

 

在安排組織軟件開發(fā)項目的全體項目用戶方干系人之中,最值得重視的就是建設單位中的業(yè)務關系和人事組織。最好是可以畫出有關單位的組織結(jié)構圖,為了今后能更好更加全面地開展需求調(diào)研分析工作,還應該在該組織結(jié)構圖的基礎之上再畫出此軟件項目中全體用戶方干系人的關系結(jié)構圖;運用責任矩陣來確立各個環(huán)節(jié)的調(diào)研對象;為了確保在調(diào)研和分析時能及時地和各成員進行有效溝通,還要建立一個完整的調(diào)研對象通訊錄。

 

2.2 采用正確的方法來獲取需求

 

軟件開發(fā)項目就是為了要獲取并滿足項目用戶方的使用需求,其中項目用戶方的需求分為隱含的和明確的,還可以分為不同的層次,如:WISH, WANT,等NEED。假使對項目中全部的用戶方干系人缺少足夠的交流溝通和積極影響,再讓他們均盡可能地參與到項目開發(fā)中。

 

則將會造成客戶方的有關責任人很模糊或者對調(diào)查范圍和項目用戶方的需求沒有足夠強的責任心,提出來的需求十分隨意,在項目開發(fā)前期不能積極地確認需求。

 

或者是幾個項目用戶代表各說其辭、昨是今非,在項目開發(fā)的后期也隨意變化需求等現(xiàn)象,這就將導致項目范圍的不斷擴大,進度嚴重受到阻礙,增加了投入的成本,甚至最終使項目徹底失敗。

 

不同的軟件用戶對系統(tǒng)的要求也各不相同,比如一個毫無經(jīng)驗的用戶只會留意系統(tǒng)在使用時是否容易簡單,而對于一些高級用戶就需要重視軟件產(chǎn)品的高效性和易用性。因此,需求分析員就應該對用戶進行科學合理地分類,每一個類別的用戶均將有適合自己的非功能和功能要求。在軟件開發(fā)項目中,應該盡可能早地給產(chǎn)品確立并描述各不相同的用戶類別,這樣就可以從所有的重要的用戶類代表當中獲取到各不相同的需求。

 

軟件需求同時具有兩重性(開發(fā)商與用戶)和多重性(項目中的各干系人),所以,軟件項目經(jīng)理和該開發(fā)系統(tǒng)的集成人員應該對用戶干系人的不同需求有充分了解,用戶干系人還應該對技術層面上的需求有充分的了解,兩者都不可或缺。要準確地獲取需求就應該足夠地了解用戶的代表性、用戶的分類、需求的來源、用戶需求由誰決定等諸多因素。

 

項目經(jīng)理和開發(fā)人員在聆聽聆聽用戶的表述時均須具備足夠的耐心,要對每一個細節(jié)都了解得十分詳細。此外,項目管理人員要擅長將需求分類和歸類,擅長把需求文檔化,并做好相應標記便于查詢。

 

3 強調(diào)實現(xiàn)軟件項目需求的層次遞進性

 

要明白此軟件開發(fā)系統(tǒng)或者此項目用戶所能夠提供的最少的開發(fā)費用。如果預計資金不足時,就應該考慮把項目進行分期實施。在技術上、系統(tǒng)上給用戶提出一些引導性的建議。

 

讓用戶明白集成商所需要實行的工作,明白集成商的目的就是幫助用戶實現(xiàn)自己的需要并最終實現(xiàn)用戶的目標,而不應該只是為了賺錢,一旦用戶對集成商有了更深入的了解,且更加清楚自己的系統(tǒng),這就對今后的項目合作、系統(tǒng)維護和工程實施十分有利。

 

分析用戶以前使用過的庫模式、數(shù)據(jù)結(jié)構和系統(tǒng)模式,看是否需要進行轉(zhuǎn)換、共用、保持,這就關系到保護用戶投資的問題。結(jié)合當前的工作業(yè)務流的實際情況來選擇合理的工作模式,還應該考慮到未來或許會出現(xiàn)的變化、新規(guī)定、擴展,以及和國際接軌后或許將造成的一系列變化。

 

嚴格監(jiān)視開發(fā)工程的進展環(huán)境是否得到有效保證,特別對于網(wǎng)絡工程,必須在需求調(diào)查過程中就應對用戶領域的實施環(huán)境有足夠的了解,當實施環(huán)境不具備時,就需要及時進行環(huán)境改造和配套設計。

篇2

乙方:________________________

簽訂日期:_____年_____月_____日

上述甲、乙雙方,經(jīng)友好協(xié)商一致,達成以下協(xié)議。雙方申明,雙方都已理解并認可了本合同的所有內(nèi)容,同意承擔各自應承擔的權利和義務,忠實地履行本合同。

??????? ??

第一條?本合同軟件開發(fā)項目的內(nèi)容、工作進度與安排、價款、交付和驗收方式等由附件載明。?

?

第二條?合同履行期限按照附件規(guī)定的工作進度決定,經(jīng)雙方協(xié)商一致,可以延長該期限。?

?

第三條?甲方應向乙方提供必要的資料和方便條件,協(xié)助配合乙方進行軟件的開發(fā)、調(diào)試、安裝及實施。

??

第四條?雙方的基本權利和基本義務

甲方的權利和義務

根據(jù)本合同項目的實際需要和乙方的要求提供協(xié)助,并提供有關的資料,報表及文檔等,甲方保證所提供的所有資料完整、真實、合法。 按本合同約定支付軟件開發(fā)費用。 甲方有權在軟件驗收之日起一年內(nèi),要求乙方對驗收完畢的軟件模塊出現(xiàn)的非人為因素造成的錯誤及故障,進行免費維護。

乙方的權利和義務

按照甲方提供的材料按時完成本合同規(guī)定的軟件開發(fā)工作。

可以根據(jù)甲方的要求幫助甲方舉辦培訓和技術咨詢,具體的操作方式及費用雙方另行簽署協(xié)議確認。依合同收取軟件開發(fā)費用。

乙方有義務在軟件驗收之日起一年內(nèi),對驗收完畢的軟件模塊出現(xiàn)的非人為因素造成的錯誤及故障,進行免費維護。 ??

第五條 甲方在一年的免費維護期之后,需要乙方對軟件模塊進行維護時,乙方可根據(jù)情況酌情優(yōu)惠收取模塊維護費用。

第六條?甲方同意按雙方約定的付款方式和時間及時向乙方支付合同費用,以及提供其他必要的幫助。??

第七條?本合同涉及的相關程序、文件源碼的版權屬乙方所有,但乙方授予甲方使用權。未經(jīng)乙方許可,甲方不得公布文件源碼,不得復制、傳播、出售或者許可他人使用乙方作品及其程序等。乙方可以在業(yè)務范圍內(nèi)使用這些作品。??

第八條?甲方不能按時支付合同費用,導致的工期延誤,其責任由甲方承擔。??

第九條?雙方當事人應當保守在履行本合同過程中獲知的對方商業(yè)秘密。??

第十條?雙方應本著誠實信用的原則履行本合同。任何一方在履行中采用欺詐、脅迫或者暴力的手段,另一方可以解除本合同并有權要求對方賠償損失。任何一方在履行中發(fā)現(xiàn)或者有證據(jù)表明對方已經(jīng)、正在或?qū)⒁`約,可以終止履行本合同,但應及時通知對方。若對方繼續(xù)不履行、履行不當或者違反本合同,該方可以解除本合同并要求對方賠償損失。??

第十一條?本合同簽訂后,經(jīng)雙方當事人協(xié)商一致,可以對本合同有關條款進行變更或者補充但應當以書面形式確認。上述文件一經(jīng)簽署,即具有法律效力并成為本合同的有效組成部分。??

第十二條 本合同附件為本合同不可分割的一部分,與合同正文具有同等法律效力。?

第十三條 任意一方欲提前解除本合同,應提前通知對方。甲方提前解除合同的,無權要求乙方返還預付費用并應對乙方遭受的損失承擔賠償責任;乙方無故解除合同的,應雙倍返還上述費用。本合同其他條款對合同的解除另有約定的,從其約定。

第十四條 任何一方違反本合同,給對方造成損失的,還應賠償損失。??

第十五條 訂立本合同所依據(jù)的客觀情況發(fā)生重大變化,致使本合同無法履行的,經(jīng)雙方協(xié)商同意,可以變更本合同相關內(nèi)容或者終止合同的履行。??

第十六條 雙方當事人對本合同的訂立、解釋、履行、效力等發(fā)生爭議的,應友好協(xié)商解決;協(xié)商不成的,雙方同意向仲裁委員會提交仲裁并接受其仲裁規(guī)則。??

第十七條?本合同經(jīng)由雙方授權代表簽字,自簽訂之日起生效。

第十八條 本合同一式兩份,雙方當事人各執(zhí)一份,具有同等法律效力。

甲方:__________(授權代表簽字)

乙方:__________(授權代表簽字)

附件 開發(fā)建設項目工作進度與安排、價款、交付和驗收方式

一、開發(fā)項目內(nèi)容

??_________________________

二、合同金額及付款方式:

1.本合同金額總計:人民幣_______元。

2.付款方式: ???????

本合同簽訂后3日內(nèi),甲方向乙方支付合同金額的_______%,即_______元,驗收之后_______日內(nèi)支付合同余款即_______元。

三、完成及驗收時間

完成時間:乙方收到本附件規(guī)定預付款項后_______日內(nèi)開發(fā)完成。

驗收期限:甲方在_______年_______月_______日前完成項目的驗收,并確認。

付款期限:甲方須于_______年_______月_______日前將余款支付給乙方。

四、驗收標準和驗收后修改補充

1.驗收期限為_______星期。

篇3

1.1什么是軟件開發(fā)軟件開發(fā)是根據(jù)用戶要求建造出軟件系統(tǒng)或者系統(tǒng)中的軟件部分的過程。軟件開發(fā)是一項包括需求捕捉、需求分析、設計、實現(xiàn)和測試的系統(tǒng)工程。軟件設計思路和方法的一般過程,包括設計軟件的功能和實現(xiàn)的算法和方法、軟件的總體結(jié)構設計和模塊設計、編程和調(diào)試、程序聯(lián)調(diào)和測試以及編寫、提交程序。軟件開發(fā)平臺源于繁瑣的實踐開發(fā)過程中。開發(fā)人員在實踐中將常用的函數(shù)、類、抽象、接口等進行總結(jié)、封裝,成為了可以重復使用的“中間件”,而隨著“中間件”的成熟和通用,功能更強大、更能滿足企業(yè)級客戶需求的———軟件開平臺應運而生。

1.2軟件開發(fā)平臺的種類目前國內(nèi)的軟件開發(fā)平臺,除國際品牌如IBM,國內(nèi)平臺商比較成熟的有Justep、普元、昕友億方、創(chuàng)恒信、北京百特安茂信息技術有限公司提供的VisualSet開發(fā)平臺,以及山東金現(xiàn)代信息技術有限公司出品的輕騎兵軟件開發(fā)平臺等,部分管理軟件企業(yè)也開始借平臺提升企業(yè)競爭力,如用友。

2如何選擇軟件開發(fā)平臺

2.1軟件開發(fā)中需要用的工具項目管理:Project,TeamLab,Trello;建模:Rose,Dia,StarUML;項目構建:Maven,Ant;IDE:VisualStudio,Ecliplse。

2.2軟件開發(fā)平臺PC軟件開發(fā)平臺和移動軟件開發(fā)平臺。

2.3選擇軟件開發(fā)平臺的想法“后臺硬”的,主流的市場占有率高的,免費的,持續(xù)推出新版本的軟件平臺。PC軟件開發(fā)平臺有.JavaEE,.Net以及網(wǎng)絡應用開發(fā)。NET全稱Framework,來自于微軟,是一套全能的框架平臺,支持C++、C#、J++、VB、ASP等語言,能夠解決C/S、B/S和單機等結(jié)構的軟件開發(fā)需求。.NET平臺將這些語言編譯成CLR語言,使它們可以無差別的運行在.NET-Framework上,是2000年以后微軟最為重要的軟件開發(fā)套件產(chǎn)品。.NET框架入門門檻較低、使用方便,并且微軟對其提供了良好的文檔支持和在線服務。.NET框架平臺的目標是“多種語言共享一種平臺”,把所有的企業(yè)開發(fā)應用統(tǒng)一到一個架框里來。

JavaEE是基于各個軟件組件的企業(yè)服務應用平臺。需要專業(yè)成熟的軟件公司花費大量的精力和時間去布署才能發(fā)揮JavaEE架構的企業(yè)級應用組件功能。以JAVA語言為主要的開法平臺。Net平臺技術來自于一家公司,所有標準統(tǒng)一,支持多種語言,目前主流的有C#,,Delphi等等各個開發(fā)程序都加入這個開發(fā)語言陳容,支持多種操作平臺,多種移動設備??梢猿浞掷肳indows技術資源,Mobile移動設備智能平臺,WINCE等PDA系統(tǒng)。它的框架開發(fā)門檻很低,使用方便,學習成本較低。此外還有強大的公司團隊技術的更新。.Net比Java出來晚,微軟公司吸取了了Java所有的優(yōu)點,并且體現(xiàn)了更優(yōu)質(zhì)的開發(fā)軟件性能。.NET側(cè)重于軟件的實際應用。

JavaEE技術來自于多家公司,各個公司標準不統(tǒng)一,配置復雜,需求高成本配置,對用戶要求高,支持一種語言Java語言并且開源產(chǎn)品眾多,免費框架居多,各個中間件都由不同的供應商提供,需求付費。整個平臺構成由若干的公司產(chǎn)品組成。但是它的平臺移植性比較好,能夠支持多種操作系統(tǒng),但支持Windows系統(tǒng)平臺需要性降低性能訪問。無法與Win-dows系列平臺實現(xiàn)美完結(jié)合。顯然它的門檻較高,系統(tǒng)復雜,需要開發(fā)人員花費很長時間才能熟悉整個體系。該技術更新很快,新技術新標準層出不窮,適合技術愛好者。此外軟件布署時間長,需要開發(fā)人員寫出各種配置清單。

3軟件開發(fā)平臺的應用

篇4

關鍵詞:GJB5000A;過程域;軍用軟件開發(fā);軟件項目管理

0引言

隨著國防現(xiàn)代化的發(fā)展,武器裝備中的計算機應用越來越廣泛而且深入,而軟件系統(tǒng)正在成為提升武器裝備戰(zhàn)斗力的新的驅(qū)動力.當前,軍用軟件的質(zhì)量同硬件以及裝備質(zhì)量相比,還有一定差距,軟件質(zhì)量問題已成為制約武器裝備質(zhì)量發(fā)展的瓶頸.為規(guī)范軍用軟件開發(fā)過程,總裝備部下發(fā)了«GJB5000A軍用軟件研制能力成熟度模型»,明確了軟件研制和維護活動中的主要軟件管理過程和工程過程的實踐,不僅適用于對組織的軟件研制能力進行評價,也適用于組織本身對軟件過程進行評估和改進.

1GJB5000A三級簡介

軍用軟件研制能力成熟度模型采用分級表示的方法,主要分為5個等級[2]:1級(或M1)為初始級,2級(或M2)為已管理級,3級(或ML3)為已定義級,4級(或ML4)為已定量管理級,5級(或ML5)為優(yōu)化級.從軟件開發(fā)過程看,成熟度1級的過程通常是隨意、無序的;成熟度2級的項目已確保其過程按照方針進行策劃并執(zhí)行;在成熟度等級3,過程已經(jīng)得到了很好的定義和理解,并采用標準、規(guī)程、工具和方法進行了描述.標準包含22個過程域,按不同成熟度等級進行了分類,每個能力成熟度等級包含若干過程域.組織在提升成熟度等級的過程中,應使用相應成熟度等級中的過程域以及較低成熟度等級中的全部過程域,增量地實現(xiàn)幾個過程域相關的專用目標和共用目標.其中成熟度等級2包括配置管理、測量與分析、項目監(jiān)控、項目策劃、過程和產(chǎn)品質(zhì)量保證、需求管理、供方協(xié)議管理7個過程域,成熟度等級3則是在成熟度等級2的基礎上增加了決策分析與決定、集成項目管理、組織過程定義、組織過程焦點、組織培訓、產(chǎn)品集成、需求開發(fā)、風險管理、技術解決方案、確認、驗證11個過程域.

2GJB5000A三級實施中的關鍵過程

2.1需求開發(fā)與管理

需求開發(fā)的目的是挖掘并分析顧客、產(chǎn)品和產(chǎn)品部件的需求.需求管理的目的是管理項目需求,并標識這些需求與項目的計劃和工作產(chǎn)品之間的不一致性.具體實施步驟如下:①將用戶需求轉(zhuǎn)換為軟件系統(tǒng)需求,制定軟件系統(tǒng)規(guī)范,并通過仿真或編碼實現(xiàn)的方式確定軟件的關鍵技術;②將軟件系統(tǒng)需求分解給各個配置項,開展軟件需求分析工作,并確定最終解決方案;③對軟件需求實現(xiàn)方案進行詳細設計;④依據(jù)軟件設計進行代碼的編寫;⑤每個開發(fā)階段都形成相應的文檔,文檔之間采用正逆向追溯表進行需求之間的追溯.

2.2軟件項目管理

軟件項目管理的目的是在項目的全生命周期內(nèi)制定和維護項目活動計劃并監(jiān)控計劃的執(zhí)行,確保項目的有效運作.具體實施步驟如下:①建立項目已定義過程,完成項目的工作量和進度估計,完成軟件項目計劃,并保證各個計劃之間的一致性;②依據(jù)階段計劃,在定期監(jiān)控、月分析和里程碑階段進行任務分配和監(jiān)控,針對出現(xiàn)的問題和偏差采取糾正措施;③軟件開發(fā)工作完成后,對軟件開發(fā)的各項工作進行總結(jié)分析,并編寫軟件開發(fā)總結(jié)報告。

2.3軟件分包管理

軟件分包管理的目的是保證項目按計劃讓分包方提交滿足要求的產(chǎn)品.具體實施步驟如下:①擬制軟件技術協(xié)議并簽訂合同,并明確與分包軟件研制工作有關的實施要求;②按照分包合同及技術協(xié)議、分包管理計劃的要求參與并管控分包合同及技術協(xié)議,以及分包管理計劃的執(zhí)行;③對分包方提交的產(chǎn)品進行驗收,證明該產(chǎn)品能夠滿足軟件技術協(xié)議的要求.2.4軟件質(zhì)量保證軟件質(zhì)量保證的目的是使員工和管理者對過程和相關的工作產(chǎn)品能有客觀深入的了解.具體步驟如下:①開展軟件質(zhì)量保證策劃工作,如制定«軟件質(zhì)量保證計劃»;②在規(guī)定的過程評價時間點到達時,或相關事件發(fā)生時對過程活動進行評價,記錄與計劃、標準、過程、規(guī)程不符合之處;③在規(guī)定的工作產(chǎn)品評價時間點到達時對軟件工作產(chǎn)品進行評價;④記錄過程評價和工作產(chǎn)品評價中發(fā)現(xiàn)的問題,跟蹤不符合項的關閉;⑤在項目規(guī)定的報告期內(nèi)總結(jié)軟件質(zhì)量保證工作的開展情況.

2.5軟件配置管理

軟件配置管理的目的是利用配置標識、配置控制、配置狀態(tài)紀實和配置審核,建立和維護工作產(chǎn)品的完整性.具體實施步驟如下:①開展配置管理策劃工作,如建立配置管理系統(tǒng)和制定«軟件配置管理計劃»;②控制工作產(chǎn)品的入庫、出庫和變更活動,變更應采取分級管理;③在各個階段結(jié)束點開展基線審核,并建立基線;④在項目規(guī)定的報告期內(nèi)總結(jié)軟件配置管理工作的開展情況.

2.6軟件過程改進

軟件過程改進主要是站在組織層面,提高整個組織的軟件過程改進能力.主要內(nèi)容包括:①制定并維護年度軟件過程改進工作計劃;②制定并維護軟件過程體系文件;③定期召開例會和按計劃定期跟蹤相關過程和產(chǎn)品,監(jiān)督過程改進工作及項目組部署的過程資產(chǎn)的實施,并在出現(xiàn)偏差時采取適當?shù)募m正措施;④定期在組織內(nèi)開展內(nèi)部評估,為下一輪過程改進工作作準備;⑤更新組織級測量數(shù)據(jù)與軟件工作環(huán)境標準,對軟件過程資產(chǎn)進行系統(tǒng)維護,對全年的軟件過程改進工作進行分析和總結(jié);⑥根據(jù)軟件過程改進工作的活動、狀態(tài)和結(jié)果組織管理評審,以便評價和掌握過程改進工作績效,并形成相關決策事項,作為下輪過程改進工作的基礎.

2.7重大決策過程

重大決策過程的目的是采用正式的評價過程分析重大問題或事項可能的決策,依據(jù)定義的評價準則和評價方法,選擇一個盡可能滿足多個利益相關方要求的解法,從而規(guī)避決策結(jié)果可能帶來的重大風險.其中,主要要素包括評價準則、評價方法、參與評價人員和評價時間.組織人員確定重大決策問題的備選方案,或在需要時進一步明確重大決策事項;對評價結(jié)果做出決定,在必要時進行風險分析;對活動的結(jié)果作記錄,記錄形式可采用會議紀要、評審報告或獨立的文檔.

3GIB5000A三級實施過程中的常見問題與建議

(1)同行評審流于形式.同行評審被定義為“由軟件工作產(chǎn)品生產(chǎn)者的同行遵循已定義的規(guī)程對產(chǎn)品進行的技術評審”,在目前的軟件開發(fā)過程中,存在“重代碼、輕文檔”的現(xiàn)象,從而導致軟件開發(fā)文檔的質(zhì)量普遍不高,因此需要相關領域的專家對文檔質(zhì)量進行把關.然而,目前大多數(shù)評審只是流于形式,而未能發(fā)現(xiàn)實質(zhì)性問題,評審有效性不足.建議文檔評審之前先交由同行專家進行文檔審查;管理層需要給予同行評審提供支持,如資源、時間、培訓和激勵等;評審結(jié)果生成評審缺陷分析表,用于檢測評審的有效性.

(2)對軟件測試過程不夠重視.目前軟件開發(fā)過程中由于時間緊、前期項目計劃未得到有效策劃和跟蹤,導致后續(xù)測試時間嚴重不足.軟件測試是為了盡快、盡早地不斷發(fā)現(xiàn)各種軟件缺陷而開展的對軟件及過程產(chǎn)品的驗證和確認活動.建議在項目初期安排好項目計劃,項目除進行配置項測試和系統(tǒng)測試外,針對關鍵重要模塊要開展單元和集成測試,測試文檔要與開發(fā)文檔形成追溯關系,保證功能與性能的一致性.

(3)變更控制不到位.與硬件相比,軟件的變更更為頻繁和難以控制.在軟件開發(fā)過程中變更主要來自計劃和需求,分為文檔變更和代碼變更.在目前的項目運行過程中,變更影響域分析很薄弱,過程中比較常見的現(xiàn)象是項目分派和計劃、設計文檔和代碼之間對應不上.建議除了對變更進行分級控制外,應細化軟件文檔模板(增加正逆向追溯表),并加強對變更后文檔的同行評審和聯(lián)合評審.

4結(jié)語

GJB5000A作為軟件開發(fā)的一個通用標準,其中的過程域既獨立又相互融會貫通,而在推廣實施過程中,要將標準中的要求轉(zhuǎn)化成自身的體系要求,并結(jié)合實際情況不斷進行改進與提升,最后達到規(guī)范開發(fā)過程、提高軟件開發(fā)能力和保證軟件產(chǎn)品質(zhì)量的目標.

參考文獻:

[1]GJB5000AG2008軍用軟件研制能力成熟度模型[S].2008.

[2]馮聽雷.GJB5000A從二級到三級的升級策略[J].價值工程,2012(5):74G75.

[3]張萬軍,儲善忠.基于CMMI的軟件工程教程[M].北京:清華大學出版社,2008.

[4]倪亭.在軟件研發(fā)與測試中推廣GJB5000A[J].軟件,2013(2):31G35.

[5]董越.未雨綢繆:理解軟件配置管理[M].北京:電子工業(yè)出版社,2012.

篇5

論文摘要:在軟件項目開發(fā)的過程中,軟件項目管理的成功與否是決定一個項目是否能夠順利高效率完成的重要保證。但是我國大部分的軟件企業(yè)在進行項目管理對都存在著各種問題,從而使項目不能順利有效地完成。文章探討了在嚼目管理過程里出現(xiàn)的常見問題,并給出了相應的解決策略。

我國軟件產(chǎn)業(yè)的現(xiàn)狀是數(shù)量已上規(guī)模,但質(zhì)量亟待提高。在軟件項目開發(fā)中,發(fā)現(xiàn)了一些普遍存在的問題,如項目嚴重誤期、代碼質(zhì)量達不到標準、程序員瘋狂工作仍然毫無進展等。本文針對軟件開發(fā)過程中存在的一些問題,分析這些問題產(chǎn)生的原因,并且提出一些解決方法和管理策略。希望有助于程序員以較少的無用工作開發(fā)出高質(zhì)量的軟件,有助于項目以較快的速度圓滿地完成。

1軟件開發(fā)中實行項目管理的意義

項目管理就是在項目活動中運用一系列的知識、技能、工具和技術,以滿足或超過相關利益者對項目的要求,實際上就是通過項目各方干系人的合作,把各種資源應用于項目,以實現(xiàn)項目的目標,滿足項目千系人的需求,其本質(zhì)就是對時間、質(zhì)量和成本的管理。隨著軟件開發(fā)的深入、各種技術的不斷創(chuàng)新以及

軟件產(chǎn)業(yè)的形成,人們越來越意識到軟件過程管理的重要性,管理學的思想逐漸融入軟件開發(fā)過程中,項目開發(fā)的管理日益受到重視。

2目前在軟件項目管理中存在的誤區(qū)

現(xiàn)在大多數(shù)企業(yè)都認識到了在項目中進行管理的重要性,但是仍然有許多企業(yè)在實施項目管理的過程中存在著這樣那樣的誤區(qū),主要表現(xiàn)在以下幾點。

項目經(jīng)理不夠?qū)I(yè)。在軟件企業(yè)中,缺乏專業(yè)的項目管理人員來實施項目管理及擔任項目經(jīng)理,通常被任命的項目經(jīng)理主要是因為他們能夠在技術上獨當~·面,但是他們在管理方面特別是項目管理方面的知識比較缺乏。

項目計劃缺乏綱領性。項目經(jīng)理對總體計劃、階段計劃的作用認識不足,因此制定總體計劃時比較隨意,不少事情沒有仔細考慮;階段計劃因工作忙等理由經(jīng)常拖延,造成計劃與控制管理脫節(jié),無法進行有效的進度控制管理。

缺乏有效的管理意識。部分項目經(jīng)理不能從總體上把握整個項日,而是埋頭于具體的技術工作,造成項目組成人員之間忙的忙、閑的閑,計劃不周、任務不均、資源浪費。有些項目經(jīng)理沒有很好的管理方法,不好安排的工作只好自己做,使項目任務無法有效、合理地分配給相關成員,以達到“負載均衡”。

缺乏有效的溝通制度和機制。在項目中一些重要信息沒有進行充分和有放的溝通。在制定計劃、意見反饋、情況通報、技術問題或成果等方面與相關人員的溝通不足,造成各做各事、重復勞動,甚至造成不必要的損失;有些人沒有每天定時收郵件的習慣,以至于無法及時接收最新的信息。

風險管理意識淡泊。有些項目經(jīng)理沒有充分意識到風險管理的重要性,對計劃書中風險管理的章節(jié)簡單應付了事,隨便列出幾個風險,隨便地寫一些簡單的對策,對于后面的風險防范起不到什么指導作用。

項目干系人的不確定性。在范圍識別階段,項目組對客戶的整體組織結(jié)構、有關人員及其關系、工作職責等沒有足夠了解以至于無法得到完整需求或最終經(jīng)權威用戶代表確認的需求;或者是多個用戶代表各說各話、昨是今非,但同時又要求項目盡早交付;項目后期需求變化隨意,造成項目范圍的蔓延,進度的拖延,成本的擴大。

缺乏項目團隊的合理分工。項目團隊內(nèi)部有時由于各階段不同角色或同階段不同角色之間的責任分工不夠清晰而造成工作互相推諉、責任互相推卸的現(xiàn)象;有時各階段不同角色或同階段不同角色之間的責任分工比較清晰,但是各項目成員只顧完成自己那部分任務,不愿意與他人協(xié)作。這些現(xiàn)象都將造成項目組內(nèi)部資源的損耗,從而影響項目進展。

3解決軟件項目管理中存在的誤區(qū)的有效策略

要想解決上面描述的誤區(qū),歸根到底還是要從管理學的角度入手,即在軟件項目的開發(fā)過程中加入過程管理的內(nèi)容,這樣我們可以在軟件開發(fā)中對各個過程的質(zhì)量加以控制,從而達到保證軟件產(chǎn)品質(zhì)量的目的。為了有效提高管理水平,我們應該努力做到以下幾點。

項目經(jīng)理接受系統(tǒng)的項目管理知識培訓是非常必要的,有了專業(yè)領域的知識與實踐,再加上項目管理知識與實踐和一般管理的知識和經(jīng)驗的有機結(jié)合,必能大大提高項目經(jīng)理的項目管理水平。

計劃的制定需要在一定條件的限制和假設之下采用漸近明細的方式進行不斷完善。提高項目經(jīng)理的計劃意識,采用項目計劃制定相關知識、技術、工具,加強對開發(fā)計劃、階段計劃的有效性進行事前事后的評估。

加強項目管理方面的培訓,并通過對考核指標的合理設定和宣傳引導項目經(jīng)理更好地做好項目管理工作。技術骨干在擔任項E1經(jīng)理之前,最好能經(jīng)過系統(tǒng)的項目管理知識,特別是其中的人力資源管理、溝通管理的學習,并且在實際工作中不斷提高自己的管理素質(zhì),豐富項目管理經(jīng)驗,提高項目管理意識。

制定有效的溝通制度和溝通機制,提高溝通意識;采取多種溝通方式,提高溝通的有效性。通過制度規(guī)定對由于未及時收取郵件而造成損失的責任歸屬;對于特別重要的內(nèi)容要采用多種方式進行有效溝通以確保傳達到位,例如:除發(fā)送郵件外還要電話提醒、回執(zhí)等,重要的內(nèi)容還要通過舉行各種會議進行傳達。

通過學習項目管理知識掌握風險識別、量化、對策研究,反應控制的工具和方法,掌握項目風險管理所必備的知識。通過加強對項目規(guī)劃中風險管理計劃的審核提高項目組的風險管理意識??偨Y(jié)本行業(yè)項目中常見的風險及其對策作為風險管理計劃中必要的風險內(nèi)容,并切實評估相應對策的有效性和可行性。

項目的目的就是實現(xiàn)項目干系人的需求和愿望。項目干系人管理應當從項目的啟動開始,項目經(jīng)理及其項目成員就要分清項目干系人包含哪些人和組織,通過溝通協(xié)調(diào)對他們施加影響,驅(qū)動他們對項目的支持,調(diào)查并明確他們的需求和愿望,減小其對項目的阻力,以確保項目獲得成功。

篇6

一、軟件工程的發(fā)展

軟件工程常常被用于計算機科學等原理中,是一種用來求得解決方法軟件的工程,把傳統(tǒng)軟件工程的一部分作為基礎,得到新的軟件。通過這樣的方式來達到高質(zhì)量和低成本的目的。從十九世紀60年代末到80年代初,軟件系統(tǒng)的規(guī)模在飛速的擴大中,整個軟件工程也在進一步的復雜化,不僅如此,它還不斷的加深在關鍵領域中的應用,促進了軟件開發(fā)過程中采納工程化的方法進行管理,產(chǎn)生了瀑布模型和結(jié)構化語言、結(jié)構化方法、各種管理方法等成果。在之前一段時間以研究系統(tǒng)實現(xiàn)為主,后一段時間以管理和軟件的質(zhì)量為主。而從80年代初到現(xiàn)在,提出了軟件工廠的概念,產(chǎn)生了被廣泛應用的面向?qū)ο蟮姆椒ê拖嚓P的編程語言,在工業(yè)實踐中建立起一種特有的量化評估程序,用以判定軟件的成熟程度。目前,軟件工程的研究從過程管理逐步轉(zhuǎn)向產(chǎn)品開發(fā),更加注重新程序開發(fā)和軟件生產(chǎn),隨之軟件的應用范圍也將繼續(xù)擴大,成為信息社會的必要基礎設施。金融、電信、航空航天等將會成為軟件的集中營。隨著社會的進步,更多的領域也將應用到軟件工程,我們的生活中將會隨處可見軟件工程的身影。

二、現(xiàn)代軟件工程開發(fā)方法

社會每時每刻都是在向前發(fā)展,通過眾多專家的不懈努力,我們在原有軟件開發(fā)方法上,又進一步發(fā)展了新的軟件開發(fā)方法??偟膩碚f,軟件工程的開發(fā)方法主要有:Parnas方法、SASA方法、面向數(shù)據(jù)結(jié)構的軟件開發(fā)方法、Warnier方法、問題分析法、面向?qū)ο蟮能浖_發(fā)方法、可視化的軟件開發(fā)方法等。Parnas方法是最早期的軟件開發(fā)方法,它主要成果就是信息隱蔽性原則,這個原則在之后的面向?qū)ο蟮能浖_發(fā)方法中也同樣的存在。Jackson方法在考慮輸入數(shù)據(jù)結(jié)構的同時還考慮輸出數(shù)據(jù)結(jié)構,在商業(yè)應用中的文件表格處理中非常有效;Warnier方法與Jackson方法的區(qū)別在于,使用的圖形工具和偽代碼,但是最重要的是Warnier方法只考慮輸入數(shù)據(jù)結(jié)構,而不考慮輸入結(jié)構。問題分析法中的PAM方法是專注于輸入、輸出和系統(tǒng),但是由于其固有的局限性,仍然只適用于中小型問題,并且也只對其有中小問題有效。而縱觀當代的各個不同的領域,我們采用最主要的軟件開發(fā)方法是面向?qū)ο蟮能浖_發(fā)方法。它具有獨到的優(yōu)勢,其不僅提供支持系統(tǒng)的所有視覺的范型,而且以縱橫的方式管理軟件的復雜性??傊?,所謂的現(xiàn)代軟件工程就是以對象為主,對對象問題所進行的一系列的操作,具有強烈的類似人處理問題的色彩,這是它的閃光之處,是它的優(yōu)勢,也是與傳統(tǒng)軟件開發(fā)最不同的地方。

三、面向?qū)ο蟮能浖_發(fā)方法

隨著需求一再提高和各種軟件開發(fā)方法的逐步發(fā)展,甚至是完善,面向?qū)ο箝_發(fā)方法越來越成為現(xiàn)代各個領域關注的重點。與之相比,傳統(tǒng)軟件開發(fā)方法的軟件重用性能非常差,開發(fā)出一個軟件并不能被多次重復使用;軟件的可維護性也達不到需求,一旦文檔資料丟失之后,就很難修復,即使最后能被修復,其代價和成本非常高昂。最重要的是,利用傳統(tǒng)軟件開發(fā)方法開發(fā)出來的軟件不能滿足用戶的需求,這是傳統(tǒng)軟件開發(fā)方法最大的缺憾。面向?qū)ο蟮能浖_發(fā)方法有Booch方法、Coad方法和OMT方法。Booch方法是面向?qū)ο筌浖_發(fā)方法的基礎,它提出是以對象為單位進行問題分析,可以將問題的結(jié)果反映到問題域中,更接近人處理問題的方法。Coad方法是二十世紀提出的一種新型的軟件開發(fā)方法,它完成了從需求角度進行類和類層次的結(jié)構認定。OMT方法是也是一種新型的方法,它主要是對真實問題進行建立模型,這樣建立起來的軟件系統(tǒng)對問題的描述更為清晰,對出現(xiàn)的問題更容易進行維護和解決。從理論上考慮,面向?qū)ο蟮拈_發(fā)方法更適用速發(fā)展的信息化社會。

四、現(xiàn)代軟件開發(fā)的有效運用

(一)軟件開發(fā)過程中的常見問題

二十一世紀以來,一種新興的面向?qū)ο蟮能浖こ涕_發(fā)方法在我國越來越流行,大多數(shù)軟件開發(fā)者不再采用傳統(tǒng)軟件開發(fā)方法,而是選擇新的方法。傳統(tǒng)軟件開發(fā)方法被認為是墨守成規(guī),使用它被認為是一種守舊的象征,是止步不前。他們普遍認為,面向?qū)ο蟮能浖_發(fā)方法足以解決軟件開發(fā)中出現(xiàn)的一切問題,傳統(tǒng)的軟件開發(fā)方法不必再被使用。這樣的想法和做法無疑是錯誤的,通過一段時間的檢驗,我們就不難發(fā)現(xiàn),所謂新型的軟件開發(fā)方法并不是適用于所有,它根本不具備普適性,它只是在某些領域中有著不可替代的作用。其結(jié)果就是,很多企業(yè)突然采用了與自己開發(fā)領域不相適應的軟件開發(fā)方法,產(chǎn)生了一系列的問題,卻無人質(zhì)疑是新的軟件開發(fā)方法的問題。這樣一來,也就導致了新的面向?qū)ο筌浖_發(fā)方法的盛行,但是市面上傳統(tǒng)軟件開發(fā)方法依舊流行。書店里面向?qū)ο筌浖_發(fā)方法的書籍被擺在顯眼的位置,但是傳統(tǒng)的軟件開發(fā)方法的書籍卻是占據(jù)著大量的書架。因此,雖然采用新型的面向?qū)ο蟮能浖_發(fā)方法已經(jīng)不可阻擋,但是依然不能完全拋棄傳統(tǒng)軟件開發(fā)方法。傳統(tǒng)軟件開發(fā)過程的工具如數(shù)據(jù)字典和實體-關系圖等在使用數(shù)據(jù)庫的過程中仍然具有不可替代的作用。

(二)開發(fā)方法在軟件體系結(jié)構中的有效性

軟件體系結(jié)構有C/S結(jié)構和三層結(jié)構兩種。C/S結(jié)構是指客戶機與服務器的結(jié)構,主要是通過這個客戶機與服務器的結(jié)構充分利用兩端硬件環(huán)境的優(yōu)勢,將任務合理的分配給客戶端和服務器,提高效率,減小開銷。它的基本原則是將任務分解成多個子任務,由多臺計算機分工完成,客戶端處理數(shù)據(jù)、數(shù)據(jù)表和用戶接口功能,而服務器完成DBMS的核心功能。因此在C/S結(jié)構的開發(fā)過程中,結(jié)合開發(fā)過程的實際需求,我們只需要采用之前所說的傳統(tǒng)軟件開發(fā)方法中的可視化開發(fā)方法,建立好一個清晰可視的用戶交互界面,這只需要通過可視化軟件開發(fā)方法進行一個簡單的設計即可,不需要采用面向?qū)ο蟮姆椒āM艘徊秸f,不適合的方法即使你想勉強使用,那么給我們帶來的有可能是難以解決的問題,這樣甚至會導致整個項目的破裂。所以,對C/S結(jié)構來說,只單純地采用傳統(tǒng)可視化軟件開發(fā)方法就可以。接著,我們再來說三層結(jié)構,三層結(jié)構主要有表現(xiàn)層、業(yè)務邏輯層和數(shù)據(jù)訪問層。從本質(zhì)上來說,三層結(jié)構其實就是在客戶和數(shù)據(jù)之間添加的一個中間組件。數(shù)據(jù)訪問層是對數(shù)據(jù)進行操作,業(yè)務邏輯層是操作具體的問題,表示層就是將所得的結(jié)果用界面的形式呈現(xiàn)給用戶。經(jīng)過對三層結(jié)構的具體分析我們可以知道,三層結(jié)構主要是面向數(shù)據(jù),是面向?qū)ο?,因此,對于開發(fā)者的開發(fā)過程而言,三層結(jié)構應該采用的是新興的面向?qū)ο筌浖_發(fā)方法。面向?qū)ο筌浖_發(fā)方法在此時無疑顯露出不可阻擋的優(yōu)勢,雖然在實際開發(fā)過程中仍然需要傳統(tǒng)的軟件開發(fā)方法作為輔助,但更多的卻是要采用面向?qū)ο筌浖_發(fā)方法。對此,需要面向?qū)ο蟮姆椒ā?/p>

(三)UML的有效運用

UML是一種建模語言,需要建模的時候,就可以使用UML。UML就是在面向?qū)ο蟮姆治雠c設計中的產(chǎn)物,它統(tǒng)一了上述闡述的Booch,Jackson以及Rumbaug的表示方法,逐漸的成為大眾所接受的一種建模的標準語言。在軟件無線電系統(tǒng)的開發(fā)過程中,UML甚至可以在整個的設計周期中進行使用,不僅能縮短設計時間,還可以降低成本提高效率。UML消除了各種語言之間的不同,成為了一種通用的語言,被大眾使用,它的建模能力比面向?qū)ο蟮钠渌7椒ǜ鼮閷嵱煤陀行?。因此,我們可以看出它在軟件領域和機械系統(tǒng)、企業(yè)機構和需要處理復雜數(shù)據(jù)的工業(yè)系統(tǒng)和工業(yè)過程中是有效的,有著無可比擬的優(yōu)勢。

(四)4對RUP的評價

RUP指的是一個過程。這個過程在被人們稱贊的同時也會對它的缺點而惋惜。RUP的軟件生命周期在時間上被分為初始、細化、構造和交付四個階段。每一個階段結(jié)束之后,就要進行階段評估,只要評估結(jié)果滿意,才能進入下一個階段。RUP中有商業(yè)建模、需求、分析設計、實現(xiàn)、測試、部署、配置和管理、迭代開發(fā)環(huán)境等幾個部分,其中迭代開發(fā)環(huán)境是其的核心。在迭代的開發(fā)過程中,需求管理、基于組件的體系結(jié)構等方面,給每個參加開發(fā)活動的成員都提供了一定的準則和指導,大家彼此之間共享相同的知識和信息,提高了團隊的生產(chǎn)力。RUP不僅能提高生產(chǎn)力,還建立了一個簡潔清晰的開發(fā)過程,有很大的通用性能。但是,RUP也有很大的不可忽略的缺點,比如它不能支持多個項目的同時開發(fā),并且它指的是一個開發(fā)的過程,重要的是過程,并不是軟件的全部內(nèi)容。總之,RUP是面向?qū)ο筌浖_發(fā)過程的一種,是面向?qū)ο筌浖_發(fā)方法的主要實踐者,雖然有缺點,但是瑕不掩瑜,在整個過程中,更多的是其閃光之處。

五、結(jié)論

篇7

手持設備如今正成為主流,成了應用軟件新的前端,并且還把它帶來的機器智能和高效率運用到了之前從來沒有用過電腦的工作崗位上。如今,手持設備可以為率先使用該設備提高效率、降低成本的組織帶來競爭優(yōu)勢。將來,它們勢必會成為獲得競爭優(yōu)勢的必備工具,特別是在擁有大批需要現(xiàn)場工作員工的行業(yè)。但是,這種新的應用形式具有許多不同于PC的特點,從而影響到相應軟件的開發(fā)。

一 不再只是玩具而已

企業(yè)IT人員對于移動應用軟件開發(fā)這股新潮流要了解的第一個方面就是,手持設備不再只是公司主管們手里的玩具,它成了員工在外面與公司保持聯(lián)系的一種方式。它們是實實在在的生產(chǎn)力工具,而英國倫敦PSM Mobility公司的技術主管Steve McCorry說,時下流行的是面向藍領工人開發(fā)的現(xiàn)場服務類的應用軟件。服務人員每天早上要做的頭一件事就是來到辦公室,領取工作單。然后下班時,回到辦公室,交上完成的工作單。

PSM Mobility是一家經(jīng)銷商,向公司企業(yè)銷售用于現(xiàn)場支持的手持設備,它們主要是基于加固型的摩托羅拉Windows Mobile設備。這家公司以銷售硬件起家,后來進入了開發(fā)定制應用軟件這個領域,以滿足客戶需求。

PSM的客戶往往需要有一種產(chǎn)品可以對總部調(diào)度人員和現(xiàn)場工作人員之間交換的那些工作單進行數(shù)字化及自動化處理,以便能夠完成公司當天派下來的所有任務。這種產(chǎn)品通常是加固型的手持設備,可以通過安全的互聯(lián)網(wǎng)線路連接到公司的調(diào)度應用軟件。這還有另一個好處: 調(diào)度人員可以重新抽調(diào)當天的服務人員,以應對緊急事件。單單工作效率方面的這種提升就很容易證明有必要購買加固型的手持設備。

二 不要重犯PC時代的錯誤

要了解的第二個方面就是,IT人員不要在手持設備上重犯PC時代的那些錯誤。具體來說,就是不能讓這些設備成為極少有連接的一個個小型的自動化孤島。雖然IBM推出第一臺PC已過去了25年,但許多組織仍在為從電子表格中獲取公司的重要數(shù)據(jù),然后轉(zhuǎn)移到聯(lián)網(wǎng)應用軟件上而努力。

但是簡單地通過瀏覽器訪問企業(yè)服務器上的應用軟件還不夠,這一方面是由于即便使用多頻段(Wi-Fi和蜂窩)設備,IT人員也保證不了每個地點都擁有基于瀏覽器的應用軟件所需要的連接性。在連接失敗期間,這種設備需要在本地存儲數(shù)據(jù)、在某種程度上處理數(shù)據(jù)的功能,連接恢復后,又能夠自動傳輸這些數(shù)據(jù)。

另外,無論是獨立方案還是基于瀏覽器的方案,它們都提供不了現(xiàn)場工作環(huán)境往往需要的靈活性。因此,IT人員應多為自己留些選擇。為了做到這一點,同時為了做到可以在手持設備上更簡單、更快速地開發(fā)定制應用軟件,關鍵是采用中間件,具體來說就是采用Syclo LLC公司的Agentry平臺。

譬如說,PSM Mobility公司的一個客戶部署了數(shù)千臺PC。它希望有一個移動資產(chǎn)管理應用軟件來跟蹤自己安裝的軟硬件,以便既能跟蹤自己的記錄,又能跟蹤客戶的記錄。難就難在,他們與好多家組織打交道,既有希望能夠準確記錄資產(chǎn)(包括被換掉的PC)的大型商業(yè)銀行,又有一些要求相當松的組織。

因而對每個客戶而言,數(shù)據(jù)獲取及報告方面的參數(shù)各不相同,有時,客戶可能會在開發(fā)中途改變數(shù)據(jù)要求。手持設備應用軟件往往很不靈活,所以對基于手持設備的解決方案來說,很難顧及這種要求的改變。PSM的解決辦法就是,利用Agentry在手持設備上開發(fā)了易于定制的前端表格,通過公司網(wǎng)絡連接到易于定制的數(shù)據(jù)庫后端,從而滿足每個客戶的要求。

PSM的另一個客戶是為辦公樓提供辦公室管理和門衛(wèi)服務的。它起初要求PSM為其現(xiàn)場維護工作隊伍提供一個移動系統(tǒng),用來跟蹤員工的活動以便計費。但對方有個客戶抱怨,他們的工作人員在現(xiàn)場辦公的時間不夠長。于是,需求就變成了: 如何證明某人在特定的時間就在那里。辦法就是,使用內(nèi)置了GPS的手持設備,比如Symbol MC70。Syclo公司有一個出色的工具,可以獲取加有時間標記的GPS坐標,作為工作單的一部分內(nèi)容,那樣就可以證明他們在規(guī)定時間的確去了客戶那里。

三 手持設備具有特殊功能

正如PC有自己的一套應用軟件(有別于服務器上的應用軟件)一樣,手持設備代表了一種新型的計算方式,它也有自己的一套獨特功能。大體上來說,這些功能與位置有關,有的在事件發(fā)生時獲取記錄; 有的提供有關臨近地方的信息。譬如說,手持設備可以用來獲取眾多信息,如有關工作小組在特定時間所處位置、所做工作(包括利用條形碼掃描已安裝設備或者已更換零件),以及證明工作單已完成的客戶簽名等。

四 現(xiàn)場工作環(huán)境對物理尺寸的不同需求

IT人員要了解的第四個方面是,現(xiàn)場服務員工對于手持設備在物理尺寸方面的要求不同于公司主管。小巧、精致又容易損壞的手持設備并不適合整天離不開大型、笨重工具的員工??墒撬麄兺瑯有枰軌騽e在工具帶或者口袋上的設備,因為他們騰不出手來操縱平板電腦或者便攜式電腦。

五 智能設備需要更多的應用軟件

一旦員工有了智能設備,很快就會開始要求更多的應用軟件。譬如說,現(xiàn)場服務人員往往需要跟蹤開支和里程數(shù),那么干嘛不開發(fā)一款應用軟件,好讓他們可以獲取這方面的實時數(shù)據(jù),然后把數(shù)據(jù)直接匯報給總部的計賬應用軟件呢?

他們通常還需要攜帶一大摞服務手冊。要是這些手冊經(jīng)過數(shù)字化處理后可以存入到設備的內(nèi)存或者SD卡上,那么公司就不需要打印及分發(fā)紙質(zhì)手冊,只要下載即可實現(xiàn)自動更新,從而確保每個人手里都有最新版本的手冊。而現(xiàn)場服務員工手頭總是擁有所需信息,用不著去車上找,或者落在家里,不必像工具和備用零件那樣需要隨身攜帶笨重的手冊。

所以選擇統(tǒng)一使用哪款手持設備時,要考慮應用方面的可擴展性。

六 電池壽命至關重要

篇8

隨著計算機網(wǎng)絡技術的發(fā)展,我國已進入信息化時代。人們對計算機網(wǎng)絡的應用也越來越廣泛,深入到生產(chǎn)、生活的各個方面。不同的商品軟件被研發(fā)出來,為人們的生活與工作提供了很多便利。本文從商品軟件的設計出發(fā),簡單探討了商品軟件在設計以及推廣過程中的一些注意事項和對策。

關鍵詞:

商品軟件;設計推廣;信息技術

近年來,信息技術逐漸得到發(fā)展,同時多種多樣的軟件在人們的生活與工作中逐漸得到應用。這些軟件不僅可為人們的生活及生產(chǎn)提供巨大便利,同時還可提高學習與工作的效率,增加生活的趣味性,軟件早已深深地融入人們的日常生活、工作中去。而這些軟件均由專業(yè)軟件公司按照用戶具體需求通過研發(fā)制作出來,再作為商品進行交易,它們常被稱為商品軟件。

一、商品軟件的設計

(一)明確用戶的使用要求。很多做銷售的都知道要想將產(chǎn)品推銷出去,就要了解用戶的需求點,對于商品軟件這一觀點也被采用。專業(yè)的軟件開發(fā)公司在進行軟件開發(fā)前需對市場展開一定的調(diào)研,分析受眾關于這一軟件的需求情況,以此為依據(jù)將軟件后續(xù)推廣的空間予以拓展。開發(fā)公司在對軟件進行開發(fā)時,需幫助目標客戶將需解決問題加以解決,且還應滿足使用者借助這一軟件完成學習及工作等任務,以便用戶可以獲取更多的工作、學習的空間及時間。故而相關公司在設計商品軟件開發(fā)工作前,需針對特定人群需求展開調(diào)查與分析,找到正確的用戶需求點,再根據(jù)需求點提出軟件開發(fā)的目標。

(二)明確軟件開發(fā)的目標?!靶枨鬀Q定產(chǎn)品的選擇”。隨著計算機的普及和各種軟件的應用,現(xiàn)在每臺計算機上都安裝有不同功能的軟件,它們作用不同,對于軟件的要求也不完全一樣。用戶購買一款軟件,主要是看中該軟件能滿足他的某一個或者一些需要,這些需要應該作為重點需求被軟件開發(fā)者所重視。同時,軟件開發(fā)者在進行商品軟件的設計過程時要考慮到該軟件的可操作性以及界面簡潔性,以軟件使用的便捷和功能的有效為重點,使得用戶在應用軟件時覺得得心應手,保證這一軟件設計應與相應的設計目標、設計變動及設計策略等要求符合,從而促使軟件實用性得到明顯提高。

(三)明確軟件的使用者層次。不同層次的用戶,對軟件的需求也不完全一樣。但有一點,就是這些軟件都是被不同的用戶所使用的,是為用戶提供所需要的服務的。因此,軟件開發(fā)者要站在用戶角度進行分析,分清楚本軟件的使用者層次,然后有針對性地進行設計。對于初級層次的用戶,則應該首先對軟件從操作頁面加以簡化,在確保軟件基本功能正常的前提下保證其可操作性強,以便用戶可以快速掌握軟件應用方法,進而方便用戶的操作。同時,對于一些專業(yè)級的用戶,就應該提供更強大的功能接口,以滿足他們更高層次的需要。

(四)軟件后期維護分析?!昂玫氖酆蠓湛梢栽黾佑脩舻酿ば浴?。計算機軟件作為耐用消費品,隨著時間的流逝,考慮不周的軟件在使用過程中會產(chǎn)生大量的垃圾文件,導致系統(tǒng)運行速度變慢、響應速度下降,最終嚴重影響用戶的使用體驗。這就要求商品軟件開發(fā)人員應將軟件的可維護性作為考慮的一項重要內(nèi)容。一般說來,商品軟件中都應該設置相應的提醒功能,使用戶在應用軟件期間可及時下載補丁并更新,對計算機中存在的漏洞加以修復。同時軟件應能自動識別運行過程中產(chǎn)生的數(shù)據(jù),哪些是必須要保留的,而還有哪些是可以刪除也不會影響使用的,并提醒用戶及時清理這些垃圾數(shù)據(jù),減輕系統(tǒng)的負載。另一方面,商品軟件也可以增加評價建議功能,讓用戶填寫相關體驗,以便軟件開發(fā)人員對用戶應用軟件之后的感受有切身了解,并對用戶相關建議加以收集,在這些建議基礎上對軟件加以修改并更新,以便讓軟件更好地滿足使用方的相關需求。在收集用戶評價建議的過程中,無論用戶的評價建議是否恰當,都應注意及時給予用戶反饋,以增強用戶的參與感。反饋的方式,可以單獨郵件回復,也可以在論壇上以表格的方式羅列多個用戶的建議,集中反饋。

二、商品軟件的推廣

商品軟件的開發(fā)目標之一就是將產(chǎn)品賣出去。對已開發(fā)成型且通過測驗的軟件,應根據(jù)目標用戶展開市場推廣。推廣期間,軟件開發(fā)商或者商必須根據(jù)不同的目標用戶,采取有針對性的推廣策略。例如,商品軟件可能有兩部分功能,一是按照特定用戶實際需求特別定制軟件功能,二是以用戶對于軟件功能的需求的預期判斷為依據(jù)進行軟件開發(fā)。對這兩部分功能的推廣,必須采用不同的方式,才能讓研發(fā)的軟件進入市場,獲得市場的認可,進而獲得經(jīng)濟利益。

(一)分析購買對象再加以推廣。商品軟件推廣前要先分析軟件的特點、適應的人群,然后再進行推廣,這樣才能保證推廣的效果。首先,應對使用人群進行分類,然后通過問卷調(diào)查、訪談、免費試用等方式進行推廣,讓他們可以切實感受到軟件的優(yōu)良性能,進而增強購買的欲望。同時,不同類別的軟件,也有不同的推廣方式和推廣重點。企業(yè)用戶的軟件在進行推廣時,要先和相關的企業(yè)進行溝通,為管理人員詳細講解軟件的功能,并和企業(yè)現(xiàn)有軟件進行對比,在此基礎上重點講述使用本軟件會給企業(yè)帶來多少額外經(jīng)濟效益;而對于個人用戶,應該多從軟件的操作簡潔上,以及給生活帶來的便利上加以講解,以消除人們對新東西的恐懼不安感,增強其購買欲望,實現(xiàn)軟件推廣的目標。

(二)積極開展推廣宣傳活動。現(xiàn)在社會就是好酒也怕巷子深,因此加大推廣宣傳活動是必須的。軟件開發(fā)商應充分利用網(wǎng)絡,在各大型軟件下載網(wǎng)站展開懸窗,并定期或不定期組織用戶體驗部分軟件,再與軟件下載網(wǎng)站后臺跟進方式相結(jié)合,于設計平臺之上放置設計出的軟件,從而可向目標人群盡快推廣相應軟件。同時也應和線下推廣方式結(jié)合,比如多參加各種展會、適當贊助一些公共活動。

(三)提供軟件試用的機會。讓用戶有更多的機會去體驗軟件可吸引越來越多的用戶使用這一軟件。軟件開發(fā)商可于大象軟件下載論壇上為用戶提供免費應用的機會,將下載鏈接在論壇之上,以吸引用戶。軟件論壇上一般無需支付費用即可對軟件展開有效的宣傳,故而軟件開發(fā)應該多加利用軟件論壇,這不僅可促使軟件推廣的成本得到節(jié)約,還可促使宣傳范圍得到有效拓展。

(四)及時地收集用戶使用的反饋信息。用戶使用軟件后的反饋信息是軟件設計工作的重要信息資料,因此,軟件開發(fā)商必須通過各種途徑收集用戶對軟件的使用體驗反饋信息。這樣可以利用這些信息有效地提高軟件的設計水平,而且還能夠提高軟件的售后服務水平,提高軟件的知名度和樹立良好的口碑。

(五)開展評價活動。軟件開發(fā)商可以在網(wǎng)站上設置提問環(huán)節(jié),也可以利用問卷調(diào)查的形式上街對用戶進行調(diào)查,了解用戶對軟件的評價。這樣可以加大對用戶需求的了解,也收集到一些好的建議,同時提高了軟件的知名度。

三、結(jié)語

綜上所述,信息技術已經(jīng)深入到人們生活的各個領域,影響著人們的生活。商品軟件的廣泛應用,給人們生活、工作帶來便利的同時,也增加了生活的情趣。隨著科技的不斷發(fā)展和進步,各種商品軟件也會相繼設計出來。商品軟件的開發(fā)設計必須選擇好針對性的用戶群體。在軟件開發(fā)設計最初,即應分析市場的具體需求,確保軟件設計更加具有針對性。另外,在做軟件推廣期間還應與軟件設計緊密結(jié)合,借助信息反饋的手段逐步完善軟件,確保用戶可以獲得最好的應用體驗。

參考文獻:

[1]曹恒來,鐘柏昌.開源軟件與商品軟件的教育價值比較研究[J].中國遠程教育,2016,6

篇9

在與微軟的長期競爭中,Borland的業(yè)務也得到了極大的提升,不僅在開發(fā)工具方面有所增強,同時也成功地進入了企業(yè)級的軟件工程解決方案領域。為了專注于企業(yè)級的軟件工程解決方案,Borland于去年年底獨立出一家叫做CodeGear的全資子公司,而Borland和CodeGear將在各自不同的領域與微軟及其他競爭者展開廝殺。

日前,記者與CodeGear公司副總裁,同時也是在全球開發(fā)者心目中占據(jù)重要位置的David Intersimon(在開發(fā)人員社區(qū)中,很多人親切地稱他為“David I”)進行了一番交流。

助初學者騰飛

20世紀90年代畢業(yè)的很多理工科大學生對于Borland有著很深的感情,而筆者也是其中之一。和很多人一樣,當年在電腦上用Turbo系列開發(fā)工具寫那些現(xiàn)在看來很粗陋的C和Pascal程序,也曾是筆者津津樂道和樂此不疲的。

在進入Windows時代之后,Turbo系列被Borland終止了,令許多人扼腕嘆息。今天,新生的CodeGear為我們帶來了好消息: 將恢復Turbo系列開發(fā)工具。David I表示,現(xiàn)在這一系列的Turbo工具主要是針對入門級的編程人員,比如學生和一些業(yè)余愛好者。同時,他希望傳達給廣大開發(fā)者的是,盡管這一系列的開發(fā)工具沿用了Turbo的名字,但是它們所使用的技術都是最新的。

之所以恢復Turbo系列開發(fā)工具,David I認為是因為當前需要更多的編程人員,但是人員的缺口卻在不斷拉大。他表示,在中國和印度等軟件和人口大國都看到了這樣的情況,那里不僅有大量軟件學院的學生,還有很多入門級的編程人員,CodeGear把Turbo這個名字再帶回來,就是為了能夠推動編程人員的需求。同時也希望通過Turbo系列,能夠為那些初中、高中的學生早期接觸編程提供一個易于學習的工具。

David I寄語那些莘莘學子,一定要打好基礎,掌握計算機科學和軟件科學最基本的知識,比如算法、數(shù)據(jù)結(jié)構和機器架構等。在掌握了這些基本知識之后,就應開始大量的編程練習,并嘗試不同的語言和平臺,甚至去編寫互聯(lián)網(wǎng)方面的應用,譬如Web 2.0的應用。

幫開發(fā)者成功

很多人都有一種誤解,以為被獨立出來的CodeGear的開發(fā)工具只是針對個體的開發(fā)人員。

實際上,CodeGear的開發(fā)工具也可以為項目組所容納,或者是項目組下的項目團隊來使用,并且它更有利于項目負責人進行變更管理,以及做一些跟蹤的工作或者是項目任務規(guī)劃的工作。

今年,CodeGear正式了PHP RAD開發(fā)工具:Delphi for PHP。對于目前眾多使用PHP的開發(fā)者來說,這絕對是一個好消息,因為在此之前PHP開發(fā)領域還沒有這樣的產(chǎn)品――融合了PHP語言、編輯器、連結(jié)器、除錯器以及RAD等功能于一身的現(xiàn)代化開發(fā)工具。目前,PHP是互聯(lián)網(wǎng)上僅次于HTML的技術,推出針對PHP的開發(fā)工具對CodeGear來說無疑是順理成章的,而它也或多或少地透露出了這樣的一種趨勢,即開發(fā)工具最終都將向網(wǎng)絡方向發(fā)展,面向單機的孤立開發(fā)將會越來越少。

篇10

關鍵詞:軟件工程方法;計算機軟件;開發(fā)應用;意義;策略

一、軟件工程方法在計算機軟件開發(fā)應用中的意義

(一)提升計算機軟件開發(fā)效率。在計算機軟件開發(fā)中,一直存在著軟件整體效能不能滿足預期的情況。計算機軟件開發(fā)效果和質(zhì)量不是很理想,軟件開發(fā)效率比較低,在有些情況下,需要重新開發(fā)新的軟件,這必然增加人力物力成本,也會影響到軟件開發(fā)工作的發(fā)展。但軟件工程方法應用于計算機軟件開發(fā)中能夠?qū)崿F(xiàn)計算機軟件開發(fā)的有效監(jiān)測,這樣,能夠保障所開發(fā)的軟件具有較好的總體性能。

(二)提升軟件產(chǎn)品的體驗效果。對于一款新軟件而言,體驗效果設計很重要,如果軟件在用戶使用后,能夠滿足用戶的使用體驗,這個軟件設計就是成功的,如果軟件性能好,能夠在較短時間內(nèi)完成設計應用任務,并且降低系統(tǒng)漏洞問題,會對各種問題進行處理,這種軟件設計質(zhì)量很高。而軟件工程方法的應用能夠?qū)崿F(xiàn)這種突破,能夠顯著提升軟件產(chǎn)品的體驗效果。

(三)降低對計算機硬件及網(wǎng)絡的壓力。在計算機軟件開發(fā)中應用軟件工程方法精心設計,能夠優(yōu)化網(wǎng)絡系統(tǒng),實現(xiàn)軟件系統(tǒng)的有效設計,這樣就能降低計算機硬件壓力,降低對整個網(wǎng)絡系統(tǒng)的壓力,這種應用,計算機軟件開發(fā)質(zhì)量得到提升,網(wǎng)絡資源利用效率會不斷提升。

(四)推動計算機軟件的智能化發(fā)展。在計算機軟件開發(fā)中應用軟件工程方法能夠不斷軟件的性能,促進軟件系統(tǒng)的整體功能的發(fā)展[1]。借助于軟件工程方法實現(xiàn)軟件開發(fā)設計,軟件系統(tǒng)的存儲量會得到有效提升,用戶在使用軟件的過程中,不需要做頻頻修改和調(diào)試操作,軟件的智能化能夠得到有效提升。

二、軟件工程方法在計算機軟件開發(fā)中的應用策略

(一)重視調(diào)研與需求分析。軟件工程方法在計算機軟件開發(fā)中應用,首先需要做好調(diào)研與需求分析工作,要針對軟件用戶群進行調(diào)研,對用戶群的需求進行全面掌握分析,并進行需求的數(shù)據(jù)信息轉(zhuǎn)化。在用戶需求信息掌握之后,借助于軟件工程方法進行用戶信息進行分析,依據(jù)相關數(shù)據(jù)信息設置軟件系統(tǒng)的基本功能體系,并設置軟件系統(tǒng)開發(fā)的規(guī)范標準,明確整個軟件開發(fā)過程中的系統(tǒng)規(guī)范標準和系統(tǒng)設置目標。這是軟件開發(fā)設計工作的基礎。

(二)加強系統(tǒng)分析。在這個環(huán)節(jié)中,需要借助于軟件工程方法把軟件開發(fā)的任務需求情況進行進一步的精細化設置,分析各種可能的解法,根據(jù)系統(tǒng)要求規(guī)范,對數(shù)據(jù)結(jié)構進行系統(tǒng)化的抽象設計,確定數(shù)據(jù)操作內(nèi)容及操作模式,對數(shù)據(jù)流程圖進行描繪設置。

(三)開展系統(tǒng)設計工作。利用軟件工程方法進行計算機軟件開發(fā),系統(tǒng)設計工作是軟件開發(fā)的關鍵。在系統(tǒng)設置中,要能夠?qū)⒂脩粜枨笮畔⑦M行轉(zhuǎn)化設計,轉(zhuǎn)化設計成為一個具體的設計方案,以用戶需求設計方案為依托,構建系統(tǒng)功能模塊體系,并要設計出完整的的系統(tǒng)功能模塊結(jié)構圖。

(四)系統(tǒng)實施。在系統(tǒng)設計的基礎上,根據(jù)系統(tǒng)的功能結(jié)構模塊要求和相關信息流程要求,進行精細化的的程序設計,并設計出各功能模塊的源程序,這是系統(tǒng)設計實施的重要工作。

(五)加強系統(tǒng)測試與評價。借助于軟件工程方法進行計算機軟件開發(fā),在分析與設計工作完成的基礎上,需要對系統(tǒng)規(guī)范書和模塊功能進行測試和評價,能夠通過軟件工程方法對軟件系統(tǒng)的模塊系統(tǒng)進行測試,對其智能化水平進行評價,然后開展聯(lián)合測試及驗收工作,對整個軟件系統(tǒng)的技術優(yōu)勢,對系統(tǒng)的完整性穩(wěn)定性進行整體評價[2]。傳統(tǒng)的軟件工程方法不重視調(diào)研階段的工作,這個環(huán)節(jié)的工作容易被忽視,這樣,沒有完整的規(guī)范書,就開展系統(tǒng)編程及設計,就容易導致一些軟件開發(fā)問題重重,這也是軟件系統(tǒng)經(jīng)常出問題的根源。而借助于現(xiàn)代軟件工程方法進行計算機軟件開發(fā)設計,這個環(huán)節(jié)的工作就會被突出出來,這樣,就能夠保障計算機軟件開發(fā)設計的質(zhì)量,用戶要求系統(tǒng)做什么,系統(tǒng)就會做什么,系統(tǒng)設計會有效滿足用戶的需求,并且系統(tǒng)穩(wěn)定性很強,各種應用問題也會大大降低。總之,軟件工程方法在計算機軟件開發(fā)中應用的價值和意義是突出的。在計算機軟件開發(fā)中,要能夠積極借助于現(xiàn)代軟件工程方法進行設計,借助于這種應用優(yōu)化軟件系統(tǒng)性能,滿足用戶對軟件的要求,豐富用戶使用體驗,這樣,計算機軟件才能贏得更為廣闊的市場,其應用價值和優(yōu)勢才能得以有效發(fā)揮。

參考文獻