軟件開發(fā)的管理和控制軟件開發(fā)是一項很復(fù)雜的工作,對于軟件開發(fā)的管理和控制,現(xiàn)在有一門專門的學(xué)科:軟件工程。在這方面有許多國家標(biāo)準(zhǔn)和國際標(biāo)準(zhǔn)。許多公司也有相應(yīng)的文檔模版,及相關(guān)規(guī)定?,F(xiàn)在不談技術(shù)角度來規(guī)范軟件開發(fā)的管理和控制,從管理和實踐的角度來探討軟件開發(fā)的管理和控制應(yīng)遵循的的一些原則。對于軟件開發(fā)項目中,經(jīng)常出現(xiàn)兩種極端情況,一種是創(chuàng)造了新的生產(chǎn)率和質(zhì)量的紀(jì)錄;一種則完全是一場災(zāi)難,不是被取消就是拖延很長時間。前者如在很短的時間內(nèi),為了趕進度,在幾乎不可能的時間內(nèi)開發(fā)出一套軟件產(chǎn)品,創(chuàng)造了軟件開發(fā)的記錄,滿足了上級所要求的上機日期,由于開發(fā)時間太短,過于倉促,上機時,問題百出,試運行時間長達幾個月或一年半載的,而且程序一改再改,維護工作量大。后者,如某套系統(tǒng)未弄清楚需求,或因設(shè)計問題,開發(fā)失敗。通過提煉這些成功和失敗的例子,軟件項目成功或失敗的根本原因可能會更清晰一些。在討論這些原因之前,我們先來說明一下什么情況可以稱為失敗的軟件項目。1.由于費用超支或計劃執(zhí)行超時而終止。2.完成計劃的時間或費用超過了原計劃的50%。3.由于質(zhì)量或性能上的原因引起和客戶的糾紛。本階段的基本任務(wù)是和用戶一起確定要解決的問題,建立軟件的邏輯模型。專業(yè)性軟件開發(fā)零售價格
②合同雙方應(yīng)明確約定所開發(fā)軟件的知識產(chǎn)權(quán)的權(quán)屬,是共同所有還是一方所有。5、驗收驗收對委托開發(fā)軟件合同雙方都非常重要,它關(guān)系到如何確認以下幾個問題。①、委托方在收到軟件程序以及***批文檔后多長時間內(nèi)完成對軟件的測驗,以及在多長時間內(nèi)委托方有權(quán)以軟件程序質(zhì)量未達到合同所規(guī)定的技術(shù)標(biāo)準(zhǔn)要求為由,要求被委托方對程序進行修改使其達到合同規(guī)定的標(biāo)準(zhǔn)。②、對程序進行修改費用應(yīng)哪方負責(zé)。③、被委托方應(yīng)在多長內(nèi)完成修改程序的工作,并且應(yīng)在何時、何地以及以何種方式將修改后的軟件交會給委托方。④、委托方收到修改過的軟件之后應(yīng)在多長時間完成第二次測驗,并應(yīng)在多長時間內(nèi)委托方應(yīng)將第二次測驗的結(jié)果通知被委托方。⑤、如第二次測驗計算機程序仍未達到合同規(guī)定的技術(shù)標(biāo)準(zhǔn)要求,委托方是否有權(quán)拒絕拒絕接受程序,交且是否有權(quán)要求被委托方按合同規(guī)定的索賠條款進行賠償。⑥、如果委托方要按期將***或者第二次測驗的結(jié)論通知被委托方,是否可以視為委托方已接受被委托方開發(fā)的軟件。⑦、如果程序文檔分為兩次交付,在委托方實際接受軟件后多長時間內(nèi)被委托方應(yīng)將第二批文檔交付給委托方。6、交付說明書①合同雙方應(yīng)明確約定交付的文檔的形式和內(nèi)容。五華區(qū)上門軟件開發(fā)零售價格從技術(shù)、經(jīng)濟和社會因素等3個方面研究并論證本軟件項目的可行性。
如I/O處理、圖形處理等。這一步的分解通常很明確,而這些子系統(tǒng)的進一步分解因有較具體的系統(tǒng)模型為依據(jù),也相對容易。所以O(shè)MT也具有自頂向下方法的優(yōu)點,即能有效地控制模塊的復(fù)雜性,同時避免了Yourdon方法**能分解的困難和不確定性。OMT的基礎(chǔ)是對象模型每個對象類由數(shù)據(jù)結(jié)構(gòu)(屬性)和操作(行為)組成,有關(guān)的所有數(shù)據(jù)結(jié)構(gòu)(包括輸入、輸出數(shù)據(jù)結(jié)構(gòu))都成了軟件開發(fā)的依據(jù)。因此Jackson方法和PAM中輸入、輸出數(shù)據(jù)結(jié)構(gòu)與整個系統(tǒng)之間的鴻溝在OMT中不再存在。OMT不*具有Jackson方法和PAM的優(yōu)點,而且可以應(yīng)用于大型系統(tǒng)。更重要的是,在Jackson方法和PAM方法中,當(dāng)它們的出發(fā)點--輸入、輸出數(shù)據(jù)結(jié)構(gòu)(即系統(tǒng)的邊界)發(fā)生變化時,整個軟件必須推倒重來。但在OMT中系統(tǒng)邊界的改變只是增加或減少一些對象而已,整個系統(tǒng)改動極小。需求分析徹底需求分析不徹底是軟件失敗的主要原因之一。即使在目前,這一危險依然存在。傳統(tǒng)的軟件開發(fā)方法不允許在開發(fā)過程中用戶的需求發(fā)生變化,從而導(dǎo)致種種問題。正是由于這一原因,人們提出了原型化方法,推出探索原型、實驗原型和進化原型,積極鼓勵用戶改進需求。在每次改進需求后又形成新的進化原型供用戶試用,直到用戶基本滿意。
M.A.Jackson提出了一類至今仍***使用的軟件開發(fā)方法。這一方法從目標(biāo)系統(tǒng)的輸入、輸出數(shù)據(jù)結(jié)構(gòu)入手,導(dǎo)出程序框架結(jié)構(gòu),再補充其它細節(jié),就可得到完整的程序結(jié)構(gòu)圖。這一方法對輸入、輸出數(shù)據(jù)結(jié)構(gòu)明確的中小型系統(tǒng)特別有效,如商業(yè)應(yīng)用中的文件表格處理。該方法也可與其它方法結(jié)合,用于模塊的詳細設(shè)計。Jackson方法有時也稱為面向數(shù)據(jù)結(jié)構(gòu)的軟件設(shè)計方法。Warnier方法1974年,J.D.Warnier提出的軟件開發(fā)方法與Jackson方法類似。差別有三點:一是它們使用的圖形工具不同,分別使用Warnier圖和Jackson圖;另一個差別是使用的偽碼不同;**主要的差別是在構(gòu)造程序框架時,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)點,而避免它們的缺陷。它的基本思想是:考慮到輸入、輸出數(shù)據(jù)結(jié)構(gòu),指導(dǎo)系統(tǒng)的分解,在系統(tǒng)分析指導(dǎo)下逐步綜合。這一方法的具體步驟是:從輸入、輸出數(shù)據(jù)結(jié)構(gòu)導(dǎo)出基本處理框;分析這些處理框之間的先后關(guān)系。編寫可行性研究報告,探討解決問題的方案,并對可供使用的資源。
從而宣告了軟件危機末日的來臨。自底向上的歸納OMT的第一步是從問題的陳述入手,構(gòu)造系統(tǒng)模型。從真實系統(tǒng)導(dǎo)出類的體系,即對象模型包括類的屬性,與子類、父類的繼承關(guān)系,以及類之間的關(guān)聯(lián)。類是具有相似屬性和行為的一組具體實例(客觀對象)的抽象,父類是若干子類的歸納。因此這是一種自底向上的歸納過程。在自底向上的歸納過程中,為使子類能更合理地繼承父類的屬性和行為,可能需要自頂向下的修改,從而使整個類體系更加合理。由于這種類體系的構(gòu)造是從具體到抽象,再從抽象到具體,符合人類的思維規(guī)律,因此能更快、更方便地完成任務(wù)。這與自頂向下的Yourdon方法構(gòu)成鮮明的對照。在Yourdon方法中構(gòu)造系統(tǒng)模型是**困難的一步,因為自頂向下的"頂"是一個空中樓閣,缺乏堅實的基礎(chǔ),而且功能分解有相當(dāng)大的任意性,因此需要開發(fā)人員有豐富的軟件開發(fā)經(jīng)驗。而在OMT中這一工作可由一般開發(fā)人員較快地完成。在對象模型建立后,很容易在這一基礎(chǔ)上再導(dǎo)出動態(tài)模型和功能模型。這三個模型一起構(gòu)成要求解的系統(tǒng)模型。自頂向下的分解系統(tǒng)模型建立后的工作就是分解。與Yourdon方法按功能分解不同,在OMT中通常按服務(wù)(Service)來分解。服務(wù)是具有共同目標(biāo)的相關(guān)功能的**。軟件需求分析就是對開發(fā)什么樣的軟件的一個系統(tǒng)的分析與設(shè)想。東川區(qū)綜合軟件開發(fā)價格實惠
它是一個對用戶的需求進行去粗取精、去偽存真、正確理解,然后把它用軟件工程開發(fā)語言。專業(yè)性軟件開發(fā)零售價格
下面我們將按其影響大小的順序排列說明5種錯誤的實踐方式。錯誤1:沒有軟件項目開發(fā)的歷史數(shù)據(jù)缺乏軟件開發(fā)的歷史數(shù)據(jù)是大多數(shù)軟件項目失敗的關(guān)鍵所在,這樣的結(jié)論也許使很多人感到吃驚,但事實就是如此。沒有一個可靠的軟件開發(fā)的歷史數(shù)據(jù)會使項目經(jīng)理,程序員,客戶對于軟件開發(fā)的過程缺少清醒的認識。假設(shè)現(xiàn)在你正在管理一個軟件項目,而這個項目還沒有一個公司在36個月內(nèi)完成。作為一個負責(zé)的經(jīng)理,你作了一個比較細致和保守的估計,然后告訴你的客戶和你的手下說你認為這個項目需要36-38個月完成。然而常常有這樣的情況發(fā)生:你的客戶和程序員要求把時間壓縮到18個月??蛻粢环矫嫦M浖M早投入使用而產(chǎn)生經(jīng)濟效益,一方面也想壓縮項目時間作為一個討價還價的籌碼;而程序員一方面可能過于自信,一方面盡早結(jié)束項目也能使他們多賺點錢。而此時你的手頭上也沒有一個可靠的軟件開發(fā)的歷史數(shù)據(jù),在他們的壓力下你同意了18個月的計劃,于是一場災(zāi)難開始了。在項目的開始階段你發(fā)現(xiàn)計劃被拖延了,于是開始向程序員們施加壓力,要求他們加快進度,程序員為了追求進度而不得不把其它指標(biāo)放在一邊,這些問題不斷的積累下來而項目經(jīng)理卻蒙在鼓里。到了項目中后期這些質(zhì)量問題會不斷暴露出來。專業(yè)性軟件開發(fā)零售價格
昆明酷通科技有限公司位于巫家壩機場現(xiàn)場業(yè)務(wù)1幢3層303室,交通便利,環(huán)境優(yōu)美,是一家生產(chǎn)型企業(yè)??嵬ü?yīng)是一家有限責(zé)任公司(自然)企業(yè),一直“以人為本,服務(wù)于社會”的經(jīng)營理念;“誠守信譽,持續(xù)發(fā)展”的質(zhì)量方針。公司擁有專業(yè)的技術(shù)團隊,具有軟件開發(fā)等多項業(yè)務(wù)??嵬ü?yīng)將以真誠的服務(wù)、創(chuàng)新的理念、高品質(zhì)的產(chǎn)品,為彼此贏得全新的未來!