隨著越來(lái)越現(xiàn)代化的發(fā)展,提起如今的IT項(xiàng)目,軟件工程倍受人們關(guān)注。而軟件的質(zhì)量更是眾人關(guān)注的焦點(diǎn),因?yàn)槟壳斑€沒(méi)有一套完善的評(píng)估標(biāo)準(zhǔn)。甚至有人提出,現(xiàn)在的軟件開(kāi)發(fā)根本提不上是“工程”,因?yàn)樗赡哿耍€沒(méi)有一套成熟的標(biāo)準(zhǔn)來(lái)比照;因而軟件項(xiàng)目極易出現(xiàn)失敗或失誤。大量實(shí)踐證明,軟件工程項(xiàng)目的成敗,通常是因?yàn)楣芾韱?wèn)題(協(xié)同工作的能力),而不是技術(shù)上的問(wèn)題。要想做一盤(pán)“完美”的軟件大餐,質(zhì)量管理的作用是不言而喻的。
項(xiàng)目中質(zhì)量管理的原則
在軟件項(xiàng)目實(shí)施中,由于進(jìn)度和成本兩大因素的影響,它的質(zhì)量管理與產(chǎn)品開(kāi)發(fā)有著很大的差別。因此,在項(xiàng)目實(shí)施中做好質(zhì)量管理工作應(yīng)該堅(jiān)持自己的原則。
想法落實(shí)到行動(dòng)中
軟件質(zhì)量管理的重要性已經(jīng)逐漸被國(guó)內(nèi)的IT企業(yè)認(rèn)可,但是要落實(shí)到具體的項(xiàng)目實(shí)施工作中,并通過(guò)它提高軟件質(zhì)量,還有一段很長(zhǎng)的路要走。因?yàn)閹缀跛械能浖径脊噍斨斑M(jìn)度高于一切”的思想,只要是為了趕進(jìn)度和發(fā)布產(chǎn)品,所有影響進(jìn)度的工作都可以忽略。因此,把想法落實(shí)到實(shí)際工作中是做好軟件質(zhì)量管理的第一原則。
提高質(zhì)量,尊重客戶(hù)
可以說(shuō),目前很多公司都有“愚弄客戶(hù)”的嫌疑,不管是有心的還是無(wú)意的。很多公司實(shí)施項(xiàng)目時(shí)只要能拿到“錢(qián)”就達(dá)到目的了,因此也就不在乎是否掩蓋缺陷和敷衍客戶(hù)。至于后果,那是以后的事情了。
在軟件產(chǎn)業(yè)發(fā)達(dá)的今天,已經(jīng)是客戶(hù)的買(mǎi)方市場(chǎng),客戶(hù)永遠(yuǎn)會(huì)選擇質(zhì)量和服務(wù)都表現(xiàn)良好的產(chǎn)品來(lái)滿(mǎn)足自己的需求。因此,我們應(yīng)該尊重客戶(hù),把客戶(hù)放在“上帝”的位置上,認(rèn)證做好質(zhì)量。
建立規(guī)范的質(zhì)量保證體系
在沒(méi)有開(kāi)發(fā)規(guī)范的前提下,軟件團(tuán)隊(duì)是不能開(kāi)發(fā)出高質(zhì)量軟件的。因此軟件團(tuán)隊(duì)一定要建立規(guī)范的質(zhì)量保證體系,同時(shí)把規(guī)范體系逐步落實(shí)到工作中。如果急功近利,不但會(huì)做很多浪費(fèi)人力和物力的無(wú)效工作,還會(huì)給客戶(hù)留下不好的印象。
項(xiàng)目實(shí)施中的技術(shù)評(píng)審
很多軟件項(xiàng)目由于性能等諸多原因最后導(dǎo)致失敗,實(shí)際上都是由于設(shè)計(jì)階段技術(shù)評(píng)審做的不夠。一味地節(jié)省時(shí)間、關(guān)鍵工作僅由某幾個(gè)人執(zhí)行、整個(gè)項(xiàng)目的成敗依賴(lài)于某些“個(gè)人英雄”等做法是十分錯(cuò)誤的,重要的技術(shù)評(píng)審工作是不可以忽略的。
技術(shù)評(píng)審可以把一些軟件缺陷消滅在代碼開(kāi)發(fā)之前,尤其是一些架構(gòu)方面的缺陷。在項(xiàng)目實(shí)施中,為了節(jié)省時(shí)間應(yīng)該優(yōu)先對(duì)一些重要環(huán)節(jié)進(jìn)行技術(shù)評(píng)審,這些環(huán)節(jié)主要有:項(xiàng)目計(jì)劃、軟件架構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)、系統(tǒng)概要設(shè)計(jì)等。如果時(shí)間和資源允許,可以考慮適當(dāng)增加評(píng)審內(nèi)容。
項(xiàng)目實(shí)施中的過(guò)程檢查
項(xiàng)目經(jīng)常延期是中國(guó)軟件企業(yè)實(shí)施很多項(xiàng)目時(shí)候的特點(diǎn),因此項(xiàng)目實(shí)施中的過(guò)程檢查重點(diǎn)是“進(jìn)度檢查”。在實(shí)際工作中,很多項(xiàng)目都是啟動(dòng)一段時(shí)間后就開(kāi)始不停地加班,使整個(gè)團(tuán)隊(duì)處于疲憊狀態(tài),導(dǎo)致工作效率低下,最后把項(xiàng)目計(jì)劃丟在一邊。對(duì)于這種情況,比較好的做法是不斷地檢查項(xiàng)目計(jì)劃與實(shí)際進(jìn)度是否存在偏差,如果存在偏差則找出問(wèn)題的根源,然后消除引起問(wèn)題的因素,例如可以調(diào)整進(jìn)度安排或者增加人力投入,這樣就避免了問(wèn)題不斷放大。
版本檢查在項(xiàng)目實(shí)施中也需要特別注意,因?yàn)榘姹净靵y會(huì)帶來(lái)很大麻煩,尤其進(jìn)行測(cè)試的時(shí)候。此外,項(xiàng)目實(shí)施時(shí)候也應(yīng)該注意文檔檢查,尤其是一些關(guān)鍵文檔的質(zhì)量,例如接口文檔、用戶(hù)手冊(cè)等。
項(xiàng)目實(shí)施中的軟件測(cè)試
項(xiàng)目實(shí)施相關(guān)的全部質(zhì)量管理工作中,軟件測(cè)試的工作量最大。由于很多項(xiàng)目在實(shí)施中非常不規(guī)范,因此軟件測(cè)試一定要把好關(guān)。軟件測(cè)試應(yīng)該重點(diǎn)做好測(cè)試用例設(shè)計(jì)、功能測(cè)試、性能測(cè)試、缺陷管理等工作。
●測(cè)試用例設(shè)計(jì):雖然項(xiàng)目實(shí)施中沒(méi)有太多時(shí)間來(lái)設(shè)計(jì)測(cè)試用例,但是這個(gè)環(huán)節(jié)是必不可少的。項(xiàng)目實(shí)施中設(shè)計(jì)測(cè)試用例應(yīng)該根據(jù)進(jìn)度安排,優(yōu)先設(shè)計(jì)核心應(yīng)用模塊或核心業(yè)務(wù)相關(guān)的測(cè)試用例。設(shè)計(jì)測(cè)試用例的時(shí)候可以不設(shè)計(jì)的特別完善,基本目標(biāo)是列出測(cè)試重點(diǎn),對(duì)測(cè)試執(zhí)行起良好地指導(dǎo)作用,這個(gè)時(shí)候的測(cè)試用例更像是“測(cè)試大綱”
●功能測(cè)試:軟件首先應(yīng)該從功能上滿(mǎn)足用戶(hù)需求,因此功能測(cè)試是質(zhì)量管理工作中的重中之重。功能測(cè)試在產(chǎn)品試運(yùn)行前一定要開(kāi)展好,否則將會(huì)發(fā)生“讓用戶(hù)來(lái)執(zhí)行測(cè)試”的情況,后果非常嚴(yán)重。
●性能測(cè)試:性能測(cè)試是經(jīng)常容易被忽略的測(cè)試。在實(shí)施項(xiàng)目過(guò)程中,應(yīng)該充分考慮軟件地性能,運(yùn)行較慢的軟件仍然不會(huì)為用戶(hù)所接受。性能測(cè)試可以根據(jù)用戶(hù)對(duì)軟件的性能需求來(lái)開(kāi)展,通常系統(tǒng)軟件和銀行、電信等特殊行業(yè)應(yīng)用軟件對(duì)性能要求較高,應(yīng)該盡早進(jìn)行,這樣更易于早解決問(wèn)題。
●缺陷管理:缺陷跟蹤與管理工作也經(jīng)常被忽略,很多問(wèn)題會(huì)被遺忘,直到客戶(hù)再次發(fā)現(xiàn)。建議測(cè)試人員在項(xiàng)目實(shí)施中仍然采用一些工具進(jìn)行缺陷管理與跟蹤,保證任何缺陷都得到妥善的處理。
此外,對(duì)于一些項(xiàng)目,如果實(shí)在沒(méi)有測(cè)試人員,可以考慮讓開(kāi)發(fā)人員互相進(jìn)行測(cè)試,這樣也可以發(fā)現(xiàn)很多缺陷。
項(xiàng)目實(shí)施中的質(zhì)量管理工作是非常復(fù)雜的,存在很多不可以控制的因素,例如沒(méi)有質(zhì)量人員、測(cè)試環(huán)境不具備等。因此,項(xiàng)目實(shí)施中的質(zhì)量管理原則應(yīng)該是“最大限度地去提高質(zhì)量”。只有這樣,才能更好地利用現(xiàn)有資源盡可能地提高質(zhì)量。
軟件項(xiàng)目質(zhì)量管理主要存在的問(wèn)題
缺乏軟件質(zhì)量意識(shí)
缺乏軟件質(zhì)量意識(shí),信息化建設(shè)中軟件質(zhì)量問(wèn)題未被完全重視。無(wú)形的軟件產(chǎn)品較有形產(chǎn)品隱蔽,軟件質(zhì)量的檢查要求一定的知識(shí)基礎(chǔ),對(duì)軟件進(jìn)行全面的檢測(cè)、評(píng)估需要系統(tǒng)的方法和相關(guān)的標(biāo)準(zhǔn)以及評(píng)價(jià)體系,這樣造成了軟件質(zhì)量意識(shí)的淡化。同時(shí),在項(xiàng)目交付后,軟件質(zhì)量缺乏科學(xué)的量化指標(biāo)。
追求項(xiàng)目進(jìn)度
追求項(xiàng)目進(jìn)度,從而忽視了軟件質(zhì)量和軟件過(guò)程控制。較之國(guó)外長(zhǎng)期的信息化的實(shí)施過(guò)程,我國(guó)信息化起步晚,底子薄,信息化過(guò)程積累的經(jīng)驗(yàn)相對(duì)較少,尚未形成規(guī)范的標(biāo)準(zhǔn)和對(duì)應(yīng)的體系,項(xiàng)目實(shí)施中不能形成有效的開(kāi)發(fā)組織計(jì)劃,文檔控制和管理不規(guī)范,階段性測(cè)試不深入等質(zhì)量控制問(wèn)題大量存在。
軟件技術(shù)處于發(fā)展過(guò)程
軟件技術(shù)處于發(fā)展過(guò)程,質(zhì)量管理體系滯后。在開(kāi)發(fā)過(guò)程中,對(duì)軟件的發(fā)展高于軟件質(zhì)量的要求。軟件開(kāi)發(fā)是高智力的創(chuàng)造性活動(dòng),更強(qiáng)調(diào)過(guò)程的創(chuàng)新和合作。
缺乏有效質(zhì)量控制體系
信息化過(guò)程的流動(dòng)模式是:需求、調(diào)研、選型、招標(biāo)、開(kāi)發(fā)、測(cè)試、上線(xiàn)、維護(hù)。該模式的一個(gè)環(huán)節(jié)的質(zhì)量問(wèn)題是通過(guò)軟件生產(chǎn)企業(yè)對(duì)產(chǎn)品的負(fù)責(zé)而受到一定的控制,但是大多數(shù)質(zhì)量控制活動(dòng)僅限軟件測(cè)試,未對(duì)信息化過(guò)程的各個(gè)階段質(zhì)量進(jìn)行控制。
軟件項(xiàng)目質(zhì)量管理方法論
項(xiàng)目質(zhì)量管理的主要方法包括:確定管理計(jì)劃、定義合適的軟件、確定軟件需求、迭代開(kāi)發(fā)、代碼走樣、軟件評(píng)審、軟件測(cè)試幾個(gè)方面。
確定軟件管理計(jì)劃
計(jì)算機(jī)軟件是計(jì)算機(jī)得以運(yùn)行的重要保證,它是計(jì)算機(jī)順利運(yùn)行的基礎(chǔ)。在進(jìn)行軟件開(kāi)發(fā)前。需要有一個(gè)軟件質(zhì)量保證計(jì)劃,用于規(guī)劃運(yùn)行計(jì)算機(jī)軟件的運(yùn)行,設(shè)施的調(diào)適,并對(duì)可能出現(xiàn)的事情進(jìn)行事先預(yù)防。軟件質(zhì)量管理的內(nèi)容一般包括:計(jì)劃實(shí)行目的;軟件質(zhì)量管理的相關(guān)理論分析和參考文獻(xiàn)作保障;在軟件質(zhì)量管理時(shí),組織的領(lǐng)導(dǎo),以及組織實(shí)施任務(wù)的責(zé)任;軟件質(zhì)量管理的執(zhí)行標(biāo)準(zhǔn)和約定,用以規(guī)范軟件執(zhí)行;計(jì)算機(jī)軟件執(zhí)行過(guò)程中,需要對(duì)軟件進(jìn)行詳細(xì)的審計(jì),以保證計(jì)算機(jī)軟件的規(guī)范性;對(duì)于計(jì)算機(jī)軟件的實(shí)施,要進(jìn)行軟件驗(yàn)證和確認(rèn)評(píng)審,以確認(rèn)軟件能夠有效的起效益,特別是對(duì)軟件的各項(xiàng)功能進(jìn)行調(diào)適,以確認(rèn)其適應(yīng)性;要正確運(yùn)用各項(xiàng)工具、技術(shù)和方法,來(lái)規(guī)范計(jì)算機(jī)軟件操作控制;要記錄、收集計(jì)算機(jī)軟件維護(hù)時(shí)的數(shù)據(jù),收集第一手資料,為日后的做準(zhǔn)備;要加強(qiáng)員工的風(fēng)險(xiǎn)管理培訓(xùn)意識(shí),提高操作的可行性,保障計(jì)算機(jī)軟件能夠持續(xù)有效的運(yùn)行,提高組織效率 。
定義合適的軟件過(guò)程
軟件過(guò)程是一個(gè)為建造高質(zhì)量軟件所需完成的任務(wù)的框架,即形成軟件產(chǎn)品的一系列步驟,包括中間產(chǎn)品、資源、角色及過(guò)程中采取的方法、工具等范疇。在以計(jì)算機(jī)網(wǎng)絡(luò)為基礎(chǔ)的現(xiàn)代社會(huì)信息化背景下過(guò)程管理作為現(xiàn)代企業(yè)管理的先進(jìn)思想和有效工具,隨著外部環(huán)境與組織模式的變化而變化。因此作為一個(gè)好的軟件項(xiàng)目過(guò)程,必須針對(duì)企業(yè)和項(xiàng)目的實(shí)際情況,確定軟件項(xiàng)目運(yùn)作流程,定義軟件功能及相關(guān)性能明確各階段的進(jìn)入條件和退出條件進(jìn)行有效的過(guò)程控制與管理,在提高軟件開(kāi)發(fā)的效率和項(xiàng)目的成功率的基礎(chǔ)上進(jìn)一步保證所開(kāi)發(fā)軟件的質(zhì)量。
確定軟件需求
對(duì)于任何軟件項(xiàng)目而言,需求是一個(gè)重要的環(huán)節(jié),也是軟件開(kāi)發(fā)的基礎(chǔ)。需求獲取可能是軟件開(kāi)發(fā)中最困難、最關(guān)鍵、最易出錯(cuò)及最需要交流的方面。往往用戶(hù)需求明確變更少的項(xiàng)目的成功率就高,因此,需求分析的成敗直接決定后期軟件產(chǎn)品的成敗。但是,在現(xiàn)實(shí)軟件開(kāi)發(fā)過(guò)程中,用戶(hù)的需求總會(huì)由于各種不同的原因而不斷發(fā)生變化。這就給軟件項(xiàng)目過(guò)程實(shí)施帶來(lái)不確定因素,導(dǎo)致項(xiàng)目組在開(kāi)發(fā)階段不停的返工,進(jìn)而造成代碼質(zhì)量低下,測(cè)試拖期等一系列問(wèn)題。因此在項(xiàng)目實(shí)施過(guò)程中,為了保證軟件開(kāi)發(fā)的順利進(jìn)行和最后交付的產(chǎn)品質(zhì)量,應(yīng)該對(duì)項(xiàng)目需求變更進(jìn)行管理。
(1)需求應(yīng)盡量明確。在項(xiàng)目開(kāi)發(fā)過(guò)程中要盡早明確用戶(hù)需求,有些內(nèi)容一時(shí)無(wú)法確定則應(yīng)該暫緩該部分的開(kāi)發(fā),盡量降低因需求變更而帶來(lái)的風(fēng)險(xiǎn)。
(2)對(duì)需求變更進(jìn)行管理。當(dāng)需求分析完成后項(xiàng)目就進(jìn)入開(kāi)發(fā)階段,用戶(hù)可能會(huì)因?yàn)槭袌?chǎng)或策略的變化而提出需求變更的要求。此時(shí),若是合理變更則有利于項(xiàng)目實(shí)施,但有時(shí)所作的變更可能會(huì)影響項(xiàng)目整體的設(shè)計(jì)和開(kāi)發(fā),造成項(xiàng)目進(jìn)度的延期。對(duì)于這一情況,項(xiàng)目組應(yīng)該積極與用戶(hù)溝通,制訂需求變更說(shuō)明書(shū),在雙方都認(rèn)可的情況下方可實(shí)施。
迭代開(kāi)發(fā)
通過(guò)轉(zhuǎn)向迭代開(kāi)發(fā),改變客戶(hù)和開(kāi)發(fā)團(tuán)隊(duì)之間的交互模式,客戶(hù)和開(kāi)發(fā)團(tuán)隊(duì)都可以避免產(chǎn)生大量的分歧。在一個(gè)迭代開(kāi)發(fā)的項(xiàng)目中,客戶(hù)應(yīng)該是構(gòu)建應(yīng)用團(tuán)隊(duì)中的不可缺少的一部分??蛻?hù)與開(kāi)發(fā)團(tuán)隊(duì)的其他成員協(xié)同工作以確保最終交付的應(yīng)用系統(tǒng)滿(mǎn)足被需要的業(yè)務(wù)價(jià)值??蛻?hù)的組織應(yīng)該盡可能的保持與開(kāi)發(fā)團(tuán)隊(duì)之間交互的興趣,以確保開(kāi)發(fā)團(tuán)隊(duì)可以理解他們應(yīng)該構(gòu)建什么和項(xiàng)目中具有什么樣的風(fēng)險(xiǎn)和問(wèn)題。
代碼走樣
代碼走查是一個(gè)開(kāi)發(fā)人員與架構(gòu)師集中與討論代碼的過(guò)程。代碼走查的目的交換有關(guān)代碼是如何書(shū)寫(xiě)的思路,并建立一個(gè)對(duì)代碼的標(biāo)準(zhǔn)集體闡述。在代碼走查的過(guò)程中,開(kāi)發(fā)人員都應(yīng)該有機(jī)會(huì)向其他人來(lái)闡述他們的代碼。 通常地,即便是簡(jiǎn)單的代碼闡述也會(huì)幫助開(kāi)發(fā)人員識(shí)別出錯(cuò)誤并預(yù)想出對(duì)以前麻煩問(wèn)題的新的解決辦法。
軟件評(píng)審
計(jì)算機(jī)軟件能夠得以順利運(yùn)行,其評(píng)定和審議工作必不可少,它是計(jì)算機(jī)軟件工作必不可少的部分。軟件評(píng)審并不是在軟件開(kāi)發(fā)畢后進(jìn)行評(píng)審,而是在軟件開(kāi)發(fā)的各個(gè)階段都進(jìn)行評(píng)審,特別是軟件的前期工作,對(duì)于軟件的適應(yīng)性及軟件的效益要進(jìn)行詳細(xì)的評(píng)審。軟件開(kāi)發(fā)的各個(gè)階段都可能發(fā)生錯(cuò)誤,如果這些錯(cuò)誤不能夠得到及時(shí)發(fā)現(xiàn)并糾正,必將帶來(lái)巨大的損失,甚至有可能導(dǎo)致會(huì)導(dǎo)致開(kāi)發(fā)的失敗。軟件評(píng)審是相當(dāng)重要的工作,也是目前我國(guó)在軟件開(kāi)發(fā)方面最不重視的工作。所以,必須要加強(qiáng)對(duì)軟件開(kāi)發(fā)的評(píng)審工作,用以保障計(jì)算機(jī)軟件的順利實(shí)施。
軟件測(cè)試
對(duì)于已經(jīng)開(kāi)發(fā)成功的計(jì)算機(jī)軟件,測(cè)試工作必不可少,要保證對(duì)軟件的適應(yīng)性和可操作性。計(jì)算機(jī)測(cè)試一般包括單元測(cè)試、省測(cè)試、集成系統(tǒng)測(cè)試。如果測(cè)試結(jié)果與預(yù)期結(jié)果不一致,則很可能是發(fā)現(xiàn)了系統(tǒng)中的錯(cuò)誤,以便有時(shí)間得到糾正,測(cè)試過(guò)程中將產(chǎn)生下述基本文檔:一是測(cè)試計(jì)劃,要確定測(cè)試范圍、方法和需要的資源等。二是測(cè)試過(guò)程,要詳細(xì)描述和每個(gè)測(cè)試方案有關(guān)的測(cè)試步驟和數(shù)據(jù)。三是測(cè)試結(jié)果,要把每次測(cè)試的結(jié)果歸入文檔,進(jìn)行認(rèn)真整理和分析,如果運(yùn)行出錯(cuò),則應(yīng)產(chǎn)生問(wèn)題報(bào)告,并且必須經(jīng)過(guò)調(diào)試解決所發(fā)現(xiàn)的問(wèn)題,并為以后的各項(xiàng)工作奠定基礎(chǔ)。
項(xiàng)目質(zhì)量管理是一個(gè)科學(xué)和系統(tǒng)的過(guò)程,其中的每項(xiàng)工作都是相互關(guān)聯(lián)、相互影響的,只要其中一個(gè)環(huán)節(jié)出現(xiàn)問(wèn)題,都會(huì)影響到整個(gè)軟件項(xiàng)目的進(jìn)展,所以項(xiàng)目管理者應(yīng)高度重視軟件項(xiàng)目的質(zhì)量管理,對(duì)質(zhì)量管理的每項(xiàng)工作要認(rèn)真執(zhí)行,這樣才能按時(shí)按需、保質(zhì)保量的完成軟件項(xiàng)目。
2018-04-17 17:34:08 1756次 http://www.yiqi.com/retiao/detail_1867.html 熱門(mén)標(biāo)簽: