為什麼軟體開發所用技術落後
⑴ 軟體危機產生的原因
問題一:軟體危機形成的原因!!! 所謂軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題。
導致出現軟體危機的主要原因是人們在開發軟體時使用了錯誤的方法,而錯誤做法是在談敬激錯誤認識的指導下採用的。為了消除軟體危機首先應該樹立起對軟體和軟體開發的正確認識
問題二:軟體危機產生的原因,以及應對方法? 兄弟,居然把軟體工程的書里的題也來啊,自己查書啊或看這里ke./view/30093?wtp=tt
問題三:下述選項除了什麼,都是軟體危機的原因 除b外都是
問題四:為什麼會產生軟體危機?怎樣克服軟體危機? (1) 開發人員方面,對軟體產品缺乏正確認識,沒有真正理解軟體產品是一個完整的配置組成。造成開發中制定計劃盲目、編程草率,不考慮維護工作的必要性。
(2) 軟體本身方面,對於計算機系統來說,軟體是邏輯部件,軟體開發過程沒有統一的、公認的方法論和規范指導,造成軟體維護困難。
(3) 尤其是隨著軟體規模越來越大,復雜程度越來越高,原有軟體開發方式效率不高、質量不能保證、成本過高、研製周期不易估計、維護困難等一系列問題更為突出,技術的發展已經遠遠不能適應社會需求。
(1) 充分吸收和借鑒人類長期以來從事各種工程項目中積累的行之有效的有效原理、概念、技術與方法,特別是吸取幾十年來人類從事計算機硬體研究和開發的經驗教訓。在開發軟體的過程中努力作到良好的組織,嚴格的管理,相互友好的協作。
(2) 推廣在實踐中總結出來的開發軟體的成功的技術和方法,並研究更好、更有效的技術和方法,盡快克服在計算機系統早期發展階段形成的一些錯誤概念和作法。
(3) 根據不同的應用領域,開發更好的軟體工具並使用這些工具。將軟體開發各個階段使用的軟體工具 *** 成一個整體,形成一個很好的軟體開發支環環境。
總之為了解決軟體危機,既要有技術措施(方法和工具),又要有必要的組織管理措施
問題五:軟體危機有什麼表現? (1)對於軟體開發的成本和進度的估計很不準確。(2)開發的軟體產品不能完全滿足用戶要求,用戶對已完成的軟體系統不滿意的現象常常發生。(3)開發的軟體可靠性差。(4)軟體通常沒有適當的文檔資料。(5)軟體的可維護性差。(6)軟體開發生產率提高的速度,遠遠跟不上計算機應用普及深入的趨勢。
問題六:什麼是軟體危機?分析軟體危機產生的原因。 好好看看這里啊:希望對你有點幫助ke./view/30093?wtp=tt
問題七:軟體危機形成的原因!!! 概括地說,主要包含兩方面的問題:如何開發軟體,怎樣滿足對軟體日益增長的需求;如何維護數量不斷膨脹的已有軟體。軟體發展第二階段的末期,由於計算機硬體技術的進步。一些復雜的、大型的軟體開發項目提出來了,但軟體開發技術的進步一直未能滿足發展的要求。在軟體開發中遇到的問題找不到解決的辦法,使問題積累起來,形成了尖銳的矛盾,因而導致了軟體危機。主要表現在以下幾個方面:a.經費預算經常突破,完成時間一再拖延。b.開發的軟體不通滿足用戶要求。c.開發的軟體可維護性差。d. 開發的軟體可靠性差。軟體危機產生的原因是由於軟體產品本身的特點以及開發軟體的方式、方法、技術和人員引起的:a.軟體的規模越來越大,結構越來越復雜。b.軟體開發管理困難而復雜。c.軟體開發費用不斷增加。d.軟體開發技術落後。e.生產方式落後。f.開發工具落後,生產率提高緩慢。
問題八:什麼是軟體危機 所謂軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題。主要是指如何開發軟體,怎樣滿足含襪對軟體日益增長的需求,如何維護數量不斷膨脹的先有軟體。
問題九:軟體危機的原因分析 用戶需求不明確在軟體開發過程中,用戶需求不明確問題主要體現在四個方面:在軟體開發出來之前,用戶自己也不清楚軟體開發的具體需求;用戶對軟體開發需求的描述不精確,可能有遺漏、有二義性、甚至有錯誤;在軟體開發過程中,用戶還提出修改軟體開發功能、界稿槐面、支撐環境等方面的要求;軟體開發人員對用戶需求的理解與用戶本來願望有差異。缺乏正確的理論指導缺乏有力的方法學和工具方面的支持。由於軟體開發不同於大多數其他工業產品,其開發過程是復雜的邏輯思維過程,其產品極大程度地依賴於開發人員高度的智力投入。由於過分地依靠程序設計人員在軟體開發過程中的技巧和創造性,加劇軟體開發產品的個性化,也是發生軟體開發危機的一個重要原因。軟體開發規模越來越大隨著軟體開發應用范圍的增廣,軟體開發規模愈來愈大。大型軟體開發項目需要組織一定的人力共同完成,而多數管理人員缺乏開發大型軟體開發系統的經驗,而多數軟體開發人員又缺乏管理方面的經驗。各類人員的信息交流不及時、不準確、有時還會產生誤解。軟體開發項目開發人員不能有效地、獨立自主地處理大型軟體開發的全部關系和各個分支,因此容易產生疏漏和錯誤。軟體開發復雜度越來越高軟體開發不僅僅是在規模上快速地發展擴大,而且其復雜性也急劇地增加。軟體開發產品的特殊性和人類智力的局限性,導致人們無力處理「復雜問題」。所謂「復雜問題」的概念是相對的,一旦人們採用先進的組織形式、開發方法和工具提高了軟體開發效率和能力,新的、更大的、更復雜的問題又擺在人們的面前。
⑵ 軟體工程產生的主要原因是
原因:軟體危機的出現。軟體工程是一門研究用工程化方法構建和維護有效的、實用的和高質量的軟體的學科。
(2)為什麼軟體開發所用技術落後擴展閱讀
產生原因:
1 、軟體規模越來越大,結構越來越復雜。
2 、軟體開發管理困難而復雜。
3 、軟體開發技術落後。旅槐
4、 生產方式落後,仍採用手工方式。
5、 開發工具落後,輪祥生產臘鎮搏率提高緩慢。
⑶ 中國那麼多軟體工程師,系統架構師,為什麼沒有自己的操作系統。 都得依賴國外 是技術不行嗎
首先你要去了解下什麼是系統底層,然後就是系統框架,再之後就是系統的功能,最重要的是目前所有系統開發都是基於C/C++語言,而C語言是屬於美國,這是沒法跳出圈外,還有系統內核這些,基本上都是美國,現在國內很多什麼謊稱自主研發系統的,其實就是一個換皮UI系統而已,內核都用是別人開源,而新框架編碼也是由美國一家大學開發出來,並且開源給全球使用,目前世界上除了微軟系統外,其他系統都是基於Linux/Unix內核,包括蘋果系統,底層核心也是這個,反正目前世界上只有2個系統了,一個微軟一個Linux/Unix,Linux是基於Unix下開發繁衍,具體發展史自己查網路就不說過多了,你把所有系統內核和系統框架查一遍就知道了,大部分都是美國那邊技術的,還有一個就是編程,目前依賴C語言開發工具是非常多,Python、Java、object-C等等一些比較常用開發語言都是用C語言去開發,也就是說無法脫離這技術,而C語言是誰的我就不說了,全世界有成千上百種開發語言就有一半以上都是依賴C語言去更新相關功能,這些發展史你具體可以去看網路,就不多說了,基本上就是目前的現狀、全世界都沒法改變的情況。
⑷ 為什麼軟體開發過程比硬體開發困難
1.與軟體本身的特點有關。軟體不同於硬體,它是計算機系統中的邏輯部件而不是物理部件;軟體樣品型帶態即是產品,試制過程也就是生產過程;軟體不會因使用時間過長而「老化」或「用壞」;軟體具有可運行的行為特性,在寫出程序代碼並在計算機上試運行之前,軟體開發過程的進展情況較難衡量,軟體質量也較難評價,因此管理和控制軟體開發過程十分困難;軟體質量不是根據大量製造的相同實體的質量來度量,而是與每一個組成部分的不同實體的質量緊密相關,因此,在運行時所出現的軟體錯誤幾乎都是在開發時期就存在而一直未被發現的,改正這類錯誤通常意味著改正或修改原來的設計,這就在客觀上使得軟體維護遠比硬體維護困難;軟體是一種信息產品,具有可延展性,屬於柔性生產,與通用性強的硬體相比,軟體更具有多樣化的特點,更加接近人們的應用問題。隨著計算機應用領域的擴大,99%的軟體應用需求已不再是定義良好的數值計算問題,而是難以精確描述且富於變化的非數值型應用問題。因此,當人們的應用需求變化發展的時候,往往要求通過改變軟體來使計算機系統滿足新的需求,維護用戶業務的延續性。
2.來自於軟體開發人員的弱點。其一,軟體產品是人的思維結果,因此軟體生產水平最終在相當程度上取決於軟體人員的教育、訓練和經驗的積累;其二,對於大型軟體往往需要許多人合作開發,卜源甚至要求軟體開發人員深入應用領域的問題研究,這樣就需要在用戶與軟體人員之間以及軟體開發人員之間相互通訊,在此過程中難免發生理解的差異,行冊從而導致後續錯誤的設計或實現,而要消除這些誤解和錯誤往往需要付出巨大的代價;其三,由於計算機技術和應用發展迅速,知識更新周期加快,軟體開發人員經常處在變化之中,不僅需要適應硬體更新的變化,而且還要涉及日益擴大的應用領域問題研究;軟體開發人員所進行的每一項軟體開發幾乎都必須調整自身的知識結構以適應新的問題求解的需要,而這種調整是人所固有的學習行為,難以用工具來代替
⑸ 軟體危機產生的原因,以及應對方法
軟體危機是指落後的軟體生產方式無法滿足迅速增長的計算機軟體需求,從而導致軟體開發與維護過程中出現一系列嚴重問題的現象。
產生軟體危機的原因主要有兩個方面:
1.這與軟體本身的特性有關。
與硬體不同,軟體是計算機系統的邏輯部分,而不是物理部分。軟體樣品是產品,試制過程也是生產過程。
軟體不會因使用時間過長而「老化」或「磨損」;在編寫程序代碼並在計算機上運行之前,很難測量軟體開發過程的進度和評估軟體質量。因此,軟體開發過程的管理和控制是非常困難的。
2.軟體開發人員的弱點。
首先,軟體產品是人們思考的結果,所以軟體產品的水平最終在很大程度上取決於軟體人員的教育、培訓和經驗積累。
合作開發大型軟體通常需要很多人,即使對於一個軟體開發人員深入研究領域的應用程序,所以你需要用戶和軟體和軟體開發人員之間的溝通,不可避免地發生在這個過程中理解的差異,導致後續錯誤的設計或實現。
(5)為什麼軟體開發所用技術落後擴展閱讀:
解決途徑
人們開始開發過程中軟體開發和軟體工具的使用,協助軟體項目管理和生產技術,人們還將使用在軟體生命周期的所有階段的軟體工具有機地集合作為一個整體,形成可以支持軟體開發和維護的整個過程的集成軟體支持環境,以解決軟體危機從管理和技術兩個方面的問題。
此外,人工智慧和軟體工程的結合在20世紀80年代後期成為一個活躍的研究領域。基於程序轉換、自動生成和可復用軟體的新軟體技術的研究取得了一定的進展。
在軟體工程理論的指導下,發達國家建立了較為完整的軟體產業生產體系,形成了較強的軟體生產能力。軟體標准化和可重用性受到業界的高度重視,在避免勞動重復使用和緩解軟體危機方面發揮了重要作用。
⑹ 為什麼國內軟體開發比國外要落後那麼多
在開始任何其他文字之前,首先有必要正視一個根本現實:國內外軟體開發的水平是有差距的。這一結論的最直接證據是每一輪新技術的發起者基本上都是國外的人或公司,從方法論(CMMI,敏捷等)到各種框架(近來很熱的Hadoop等)再到新的編程語言都是如此。
總的來看這類差距似乎可以概括為「原創的缺失」,大多時候,我們只是處在一種「跟隨者」的角色上。RUP出來後我們跟誰RUP,敏捷出來我們跟誰敏捷,雲計算出來後我們跟隨雲計算,大致如此。
年紀小的時候,會單純的以為造成這種局面的主要原因是個人技術能力不足或努力不夠。但現在想來,這反倒是次要原因。
如果說既能看懂,有足夠的時間也可以自己寫出來,那麼大致上就不是個人技術能力的問題。這樣事情就變的有些微妙,我們也就需要在更高的視點上審視一下促成一件事情的因子。
一件事情的成敗大致可以用四個維度去考量:
有沒有意識去做?-->創新
有沒有能力去做
有沒有時間去做?-->環境
有沒有動力持續去做?-->意願和環境
排除第二點能力之外,其餘三點可以大致概括為:勇為天下先的意識(創新)和創新得以生長的泥土(意願和環境)。這幾者彼此影響,不可分割。
一提創新,很多人可能會想到其瓶頸是沒有想法,進而認為差距的主要原因是意識問題。但這很可能是錯的,就我自身的觀感,程序員這個群體里,現實的情形應該是想法很多,但受種種制約,實踐下來的不多。
現實的需要激發了創新,也提供了實踐創新的場所和養分,脫離實際需要的創新是走不遠的。這似乎只能寄希望於本土軟體企業的崛起,為程序員提供相應的環境(時間+實踐創新的場所),接下來如果程序員這個群體再有實踐自身追求的意願,那麼事情將會改觀。
國內外差距的一個間接證據是國內軟體開發的工程化的程度過於薄弱。軟體這東西過度工程化是不行的,但不工程化也一定是不行的。先不論CMMI這種大型方法論,就說最簡單的軟體工程數據收集。
在這點上國外比較容易找到各種數據,比如下面這樣的表格:
代碼行/天?最低值-最高值(典型值)軟體類型10,000代碼行的項目
100,000代碼行的項目
250,000代碼行的項目航空電子15-150(30)3-45(7)3-30(6)應用系統120-2,700(450)
30-1050(90)15-750(75)命令與控制30-450(75)7-90(15)6-75(12)嵌入式系統15-300(45)
4.5-75(11)3-60(9)公眾網際網路/系統
90-1500(225)15-300(45)15-225(30)內部內聯網/系統
225-2700(600)
45-1050(120)30-750(90)微代碼15-120(30)3-30(6)3-15(4)過程式控制制75-750(150)15-150(45)13-130(30)實時系統15-225(30)3-45(7)3-45(6)科學系統/工程研究
75-1125(150)15-225(45)12-150(30)套裝軟體60-750(150)15-150(30)10-120(30)系統軟體/驅動程序30-750(90)7-150(15)6-120(13)電信軟體30-450(90)7-90(15)6-75(7)即使是在日本,也有一個叫IPA這樣的機構在定義各種指標,並持續收集數據。而國內似乎還沒人做這類事情。這樣的話對軟體開發個體而言,負面影響可能並不直觀,但從整體來看卻也是一種切切實實的差距。
這點上很難靠個人來推進和改善,需要有一種組織(軟體協會?)來持續推進才有可能改觀。
⑺ 大型軟體開發的困難及原因
大型軟體開發的困難及原因:首先前期大量的資金投入,技術,銷售,調研等工作人員的質量及忠誠度要絕對可靠,保證開發成功後能迅速占據市場份額,若其中一個環節出了問題,就可能導致前期大量資金的投入打水漂,甚至你開發成功後有一段時間還得燒錢,投入到媒體廣告這一領域來宣傳你的產品,最終還得看你宣傳的思路及操作的手法是否得當,否則又是打水漂。
而技術上面也是難於一般軟體的,首先大型軟體的結構是很復雜的,包括資料庫的搭建,穩定性,要不停的壓力測試,安全性也很重要等等。在開發過程中,必須保證團隊和諧,如果隨時撤換人員,也是很麻煩的事。
個人見解,僅供參考。
⑻ 軟體開發前景
件開發將成為21世紀的主要發展趨勢,更是擁有最大規模趨勢的新興產業之一。而我國目前的國民經濟信息化建設為軟體和信息服務業帶來良好的發展機遇;在人才需求方面,由於IT技術在通信、醫療、教育等各個方面的全面發展促進了各個軟體開發方向的發展,從架構、編程到測試對人才的需求旺盛。 著名企業家、慈善家、軟體工程師比爾蓋茨甚至認為:中國的軟體市場將會迎來前所未有的爆炸性增長;INTEL董事長格魯夫也認為:中國應致力於發展軟體業。
1、市場需求晌拿大:根據資料顯示,目前國內IT軟體研發人才缺口超過百萬,其中軟體應用類研發人才缺口至少60萬,各大招聘平台每天平均發布10萬個左右的軟體開發職位。
2、就業范圍廣:現在各行各業,略有規模的大中型企業,基本都會有自己的IT部門或者各類應用管理軟體,其中消費電子和通信設備行業,對於軟體開發人才的需求尤為旺盛;市場上也有很多軟體開發外包公司,存在即合理。
3、薪資收入高:軟體開發人才的薪資也相對較高,同比高出其宴消搭他行業百分之五十左右。
4、職位晉升快:軟體橋首開發人才需要的是技術和實際操作,一個有經驗的、熟練的、技術好的軟體開發工程師,特別受用人單位的歡迎,升職加薪非常快。
⑼ 為什麼現在的軟體開發效率很難快速提升,甚至到達瓶頸
首先就是資金預算的問題,一款軟體從著手開發到交付客戶,往往是有許多不可預算的突發情況,因此也給開發預算帶來了許多不便,如果我們在開發之前不能准確的預算出軟體開發所需要的資金並告知客戶,那麼如果在開發過程中遇到一些沒有預估出來的突發情況使得資金不夠,這部分資金客戶會不會承認並願意支付就是一個問題,或者說這部分資金是不是在客戶的承受能力之內都不得而知。
大型軟體的內存問題,一些大型電腦軟體往往佔用的內存有好幾個G,這對於一些安裝了很多軟體的電腦來說是災難性的,內存過大往往會拖慢電腦的運行速度,在有些時候還可能導致電腦死機,造成不可預估的損失。