軟件開發(fā)的管理和控制軟件開發(fā)是一項(xiàng)很復(fù)雜的工作,對(duì)于軟件開發(fā)的管理和控制,現(xiàn)在有一門專門的學(xué)科:軟件工程。在這方面有許多國家標(biāo)準(zhǔn)和國際標(biāo)準(zhǔn)。許多公司也有相應(yīng)的文檔模版,及相關(guān)規(guī)定。現(xiàn)在不談技術(shù)角度來規(guī)范軟件開發(fā)的管理和控制,從管理和實(shí)踐的角度來探討軟件開發(fā)的管理和控制應(yīng)遵循的的一些原則。對(duì)于軟件開發(fā)項(xiàng)目中,經(jīng)常出現(xiàn)兩種極端情況,一種是創(chuàng)造了新的生產(chǎn)率和質(zhì)量的紀(jì)錄;一種則完全是一場災(zāi)難,不是被取消就是拖延很長時(shí)間。前者如在很短的時(shí)間內(nèi),為了趕進(jìn)度,在幾乎不可能的時(shí)間內(nèi)開發(fā)出一套軟件產(chǎn)品,創(chuàng)造了軟件開發(fā)的記錄,滿足了上級(jí)所要求的上機(jī)日期,由于開發(fā)時(shí)間太短,過于倉促,上機(jī)時(shí),問題百出,試運(yùn)行時(shí)間長達(dá)幾個(gè)月或一年半載的,而且程序一改再改,維護(hù)工作量大。后者,如某套系統(tǒng)未弄清楚需求,或因設(shè)計(jì)問題,開發(fā)失敗。通過提煉這些成功和失敗的例子,軟件項(xiàng)目成功或失敗的根本原因可能會(huì)更清晰一些。在討論這些原因之前,我們先來說明一下什么情況可以稱為失敗的軟件項(xiàng)目。1.由于費(fèi)用超支或計(jì)劃執(zhí)行超時(shí)而終止。2.完成計(jì)劃的時(shí)間或費(fèi)用超過了原計(jì)劃的50%。3.由于質(zhì)量或性能上的原因引起和客戶的糾紛。軟件需求分析就是對(duì)開發(fā)什么樣的軟件的一個(gè)系統(tǒng)的分析與設(shè)想。五華區(qū)綜合軟件開發(fā)特價(jià)
下面我們將按其影響大小的順序排列說明5種錯(cuò)誤的實(shí)踐方式。錯(cuò)誤1:沒有軟件項(xiàng)目開發(fā)的歷史數(shù)據(jù)缺乏軟件開發(fā)的歷史數(shù)據(jù)是大多數(shù)軟件項(xiàng)目失敗的關(guān)鍵所在,這樣的結(jié)論也許使很多人感到吃驚,但事實(shí)就是如此。沒有一個(gè)可靠的軟件開發(fā)的歷史數(shù)據(jù)會(huì)使項(xiàng)目經(jīng)理,程序員,客戶對(duì)于軟件開發(fā)的過程缺少清醒的認(rèn)識(shí)。假設(shè)現(xiàn)在你正在管理一個(gè)軟件項(xiàng)目,而這個(gè)項(xiàng)目還沒有一個(gè)公司在36個(gè)月內(nèi)完成。作為一個(gè)負(fù)責(zé)的經(jīng)理,你作了一個(gè)比較細(xì)致和保守的估計(jì),然后告訴你的客戶和你的手下說你認(rèn)為這個(gè)項(xiàng)目需要36-38個(gè)月完成。然而常常有這樣的情況發(fā)生:你的客戶和程序員要求把時(shí)間壓縮到18個(gè)月??蛻粢环矫嫦M浖M早投入使用而產(chǎn)生經(jīng)濟(jì)效益,一方面也想壓縮項(xiàng)目時(shí)間作為一個(gè)討價(jià)還價(jià)的籌碼;而程序員一方面可能過于自信,一方面盡早結(jié)束項(xiàng)目也能使他們多賺點(diǎn)錢。而此時(shí)你的手頭上也沒有一個(gè)可靠的軟件開發(fā)的歷史數(shù)據(jù),在他們的壓力下你同意了18個(gè)月的計(jì)劃,于是一場災(zāi)難開始了。在項(xiàng)目的開始階段你發(fā)現(xiàn)計(jì)劃被拖延了,于是開始向程序員們施加壓力,要求他們加快進(jìn)度,程序員為了追求進(jìn)度而不得不把其它指標(biāo)放在一邊,這些問題不斷的積累下來而項(xiàng)目經(jīng)理卻蒙在鼓里。到了項(xiàng)目中后期這些質(zhì)量問題會(huì)不斷暴露出來。呈貢區(qū)方便軟件開發(fā)價(jià)格走勢包括設(shè)計(jì)軟件的功能和實(shí)現(xiàn)的算法和方法、軟件的總體結(jié)構(gòu)設(shè)計(jì)和模塊設(shè)計(jì)、編程和調(diào)試。
從而宣告了軟件危機(jī)末日的來臨。自底向上的歸納OMT的第一步是從問題的陳述入手,構(gòu)造系統(tǒng)模型。從真實(shí)系統(tǒng)導(dǎo)出類的體系,即對(duì)象模型包括類的屬性,與子類、父類的繼承關(guān)系,以及類之間的關(guān)聯(lián)。類是具有相似屬性和行為的一組具體實(shí)例(客觀對(duì)象)的抽象,父類是若干子類的歸納。因此這是一種自底向上的歸納過程。在自底向上的歸納過程中,為使子類能更合理地繼承父類的屬性和行為,可能需要自頂向下的修改,從而使整個(gè)類體系更加合理。由于這種類體系的構(gòu)造是從具體到抽象,再從抽象到具體,符合人類的思維規(guī)律,因此能更快、更方便地完成任務(wù)。這與自頂向下的Yourdon方法構(gòu)成鮮明的對(duì)照。在Yourdon方法中構(gòu)造系統(tǒng)模型是**困難的一步,因?yàn)樽皂斚蛳碌?頂"是一個(gè)空中樓閣,缺乏堅(jiān)實(shí)的基礎(chǔ),而且功能分解有相當(dāng)大的任意性,因此需要開發(fā)人員有豐富的軟件開發(fā)經(jīng)驗(yàn)。而在OMT中這一工作可由一般開發(fā)人員較快地完成。在對(duì)象模型建立后,很容易在這一基礎(chǔ)上再導(dǎo)出動(dòng)態(tài)模型和功能模型。這三個(gè)模型一起構(gòu)成要求解的系統(tǒng)模型。自頂向下的分解系統(tǒng)模型建立后的工作就是分解。與Yourdon方法按功能分解不同,在OMT中通常按服務(wù)(Service)來分解。服務(wù)是具有共同目標(biāo)的相關(guān)功能的**。
M.A.Jackson提出了一類至今仍***使用的軟件開發(fā)方法。這一方法從目標(biāo)系統(tǒng)的輸入、輸出數(shù)據(jù)結(jié)構(gòu)入手,導(dǎo)出程序框架結(jié)構(gòu),再補(bǔ)充其它細(xì)節(jié),就可得到完整的程序結(jié)構(gòu)圖。這一方法對(duì)輸入、輸出數(shù)據(jù)結(jié)構(gòu)明確的中小型系統(tǒng)特別有效,如商業(yè)應(yīng)用中的文件表格處理。該方法也可與其它方法結(jié)合,用于模塊的詳細(xì)設(shè)計(jì)。Jackson方法有時(shí)也稱為面向數(shù)據(jù)結(jié)構(gòu)的軟件設(shè)計(jì)方法。Warnier方法1974年,J.D.Warnier提出的軟件開發(fā)方法與Jackson方法類似。差別有三點(diǎn):一是它們使用的圖形工具不同,分別使用Warnier圖和Jackson圖;另一個(gè)差別是使用的偽碼不同;**主要的差別是在構(gòu)造程序框架時(shí),Warnier方法*考慮輸入數(shù)據(jù)結(jié)構(gòu),而Jackson方法不*考慮輸入數(shù)據(jù)結(jié)構(gòu),而且還考慮輸出數(shù)據(jù)結(jié)構(gòu)。四、問題分析法PAM問題分析法。PAM(ProblemAnalysisMethod)是80年代末由日立公司提出的一種軟件開發(fā)方法。PAM方法希望能兼顧Yourdon方法、Jackson方法和自底向上的軟件開發(fā)方法的優(yōu)點(diǎn),而避免它們的缺陷。它的基本思想是:考慮到輸入、輸出數(shù)據(jù)結(jié)構(gòu),指導(dǎo)系統(tǒng)的分解,在系統(tǒng)分析指導(dǎo)下逐步綜合。這一方法的具體步驟是:從輸入、輸出數(shù)據(jù)結(jié)構(gòu)導(dǎo)出基本處理框;分析這些處理框之間的先后關(guān)系。本階段的基本任務(wù)是和用戶一起確定要解決的問題,建立軟件的邏輯模型。
現(xiàn)在國外市場上有大約50種商業(yè)軟件費(fèi)用估計(jì)工具包和大約100種商業(yè)項(xiàng)目計(jì)劃工具包,使用他們作精確的估計(jì)比手工的估計(jì)更可能獲得成功。常用的軟件費(fèi)用估計(jì)工具軟件有Checkpoint,Colomo,Estimacs,Price_s,Slim。常用的項(xiàng)目管理軟件有MSProject,Primavera,ProjectManager*sWorkbench,Timeline。把這二種工具軟件聯(lián)合使用可以互為補(bǔ)充,幫助經(jīng)理駁回客戶和程序員的無理要求并且能精確的控制項(xiàng)目的執(zhí)行。錯(cuò)誤3:忽視用戶的需求的變動(dòng)盡管**初的用戶需求在簽定開發(fā)合同時(shí)已經(jīng)包含在需求說明書中,但在整個(gè)開發(fā)周期中期望用戶的需求一直保持不變是不大可能的,因?yàn)橛脩魧?duì)于如何應(yīng)用計(jì)算機(jī)軟件并沒有一個(gè)成熟的經(jīng)驗(yàn)。在項(xiàng)目進(jìn)行中用戶的需求會(huì)不斷的增長,一般情況下用戶的需求以每月1%的速率增加,如果一個(gè)項(xiàng)目在12個(gè)月內(nèi)完成,**終將有超過10%的改動(dòng),如果項(xiàng)目要持續(xù)36個(gè)月,**后將增加1/3的功能。每月1%也只是一個(gè)經(jīng)驗(yàn)數(shù)據(jù),一個(gè)缺乏計(jì)算機(jī)應(yīng)用經(jīng)驗(yàn)的用戶會(huì)更頻繁的改變和增加他的要求。因此在作項(xiàng)目的費(fèi)用和時(shí)間估計(jì)時(shí)一定要考慮用戶需求的變化。一種比較明智的方法是在簽定開發(fā)合同時(shí)把用戶需求的改動(dòng)和經(jīng)濟(jì)利益掛鉤,如果用戶增加或改動(dòng)了需求,那么軟件的交付日期可以推遲,費(fèi)用也應(yīng)增加。軟件分為系統(tǒng)軟件和應(yīng)用軟件,并不只是包括可以在計(jì)算機(jī)上運(yùn)行的程序。盤龍區(qū)方便軟件開發(fā)網(wǎng)上價(jià)格
對(duì)所要解決的問題進(jìn)行總體定義,包括了解用戶的要求及現(xiàn)實(shí)環(huán)境。五華區(qū)綜合軟件開發(fā)特價(jià)
測試數(shù)據(jù)與功能和預(yù)期的輸出結(jié)果組成了測試用例)。如何才能設(shè)計(jì)出一套出色的測試用例,關(guān)鍵在于理解測試方法。不同的測試方法有不同的測試用例設(shè)計(jì)方法。兩種常用的測試方法是白盒法測試對(duì)象是源程序,依據(jù)的是程序內(nèi)部的的邏輯結(jié)構(gòu)來發(fā)現(xiàn)軟件的編程錯(cuò)誤、結(jié)構(gòu)錯(cuò)誤和數(shù)據(jù)錯(cuò)誤。結(jié)構(gòu)錯(cuò)誤包括邏輯、數(shù)據(jù)流、初始化等錯(cuò)誤。用例設(shè)計(jì)的關(guān)鍵是以較少的用例覆蓋盡可能多的內(nèi)部程序邏輯結(jié)果。白盒法和黑盒法依據(jù)的是軟件的功能或軟件行為描述,發(fā)現(xiàn)軟件的接口、功能和結(jié)構(gòu)錯(cuò)誤。其中接口錯(cuò)誤包括內(nèi)部/外部接口、資源管理、集成化以及系統(tǒng)錯(cuò)誤。黑盒法用例設(shè)計(jì)的關(guān)鍵同樣也是以較少的用例覆蓋模塊輸出和輸入接口。軟件開發(fā)6維護(hù)維護(hù)是指在已完成對(duì)軟件的研制(分析、設(shè)計(jì)、編碼和測試)工作并交付使用以后,對(duì)軟件產(chǎn)品所進(jìn)行的一些軟件工程的活動(dòng)。即根據(jù)軟件運(yùn)行的情況,對(duì)軟件進(jìn)行適當(dāng)修改,以適應(yīng)新的要求,以及糾正運(yùn)行中發(fā)現(xiàn)的錯(cuò)誤。編寫軟件問題報(bào)告、軟件修改報(bào)告。一個(gè)中等規(guī)模的軟件,如果研制階段需要一年至二年的時(shí)間,在它投入使用以后,其運(yùn)行或工作時(shí)間可能持續(xù)五年至十年。那么它的維護(hù)階段也是運(yùn)行的這五年至十年期間。在這段時(shí)間。五華區(qū)綜合軟件開發(fā)特價(jià)
昆明酷通科技有限公司位于巫家壩機(jī)場現(xiàn)場業(yè)務(wù)1幢3層303室,擁有一支專業(yè)的技術(shù)團(tuán)隊(duì)。專業(yè)的團(tuán)隊(duì)大多數(shù)員工都有多年工作經(jīng)驗(yàn),熟悉行業(yè)專業(yè)知識(shí)技能,致力于發(fā)展酷通的品牌。我公司擁有強(qiáng)大的技術(shù)實(shí)力,多年來一直專注于昆明酷通科技有限公司,是一家互聯(lián)網(wǎng)軟件開發(fā)的企業(yè),成立于2009年總部位于北京朝陽區(qū),昆明分公司坐落美麗的昆明市官渡區(qū),業(yè)務(wù)范圍:計(jì)算機(jī)軟硬件開發(fā)銷售,網(wǎng)站建設(shè),軟件開發(fā),400電話,域名注冊,服務(wù)器,虛擬主機(jī),微信營銷托管,財(cái)務(wù)軟件, crm軟件,OA系統(tǒng),監(jiān)控安裝,推廣seo,網(wǎng)站服務(wù)器,電子商務(wù)平臺(tái)運(yùn)營。是一家IT技術(shù)為的企業(yè)大中型企業(yè)。的發(fā)展和創(chuàng)新,打造高指標(biāo)產(chǎn)品和服務(wù)。自公司成立以來,一直秉承“以質(zhì)量求生存,以信譽(yù)求發(fā)展”的經(jīng)營理念,始終堅(jiān)持以客戶的需求和滿意為重點(diǎn),為客戶提供良好的軟件開發(fā),從而使公司不斷發(fā)展壯大。