【正文】
長期時(shí)間得到被完成的編程 ? 為什么費(fèi)用是很高的 ? 為什么我們不可以發(fā)現(xiàn)所有錯(cuò)誤在我們把軟件給我們的顧客之前 ? 為什么我們當(dāng)軟件被開發(fā)時(shí)在測量的進(jìn)展時(shí)有困難 ? 12 這些 , 并且還有很多其他的問題 , 是被程序開發(fā)者對軟件的關(guān)心和對軟件工程實(shí)踐的采納的關(guān)心的一種表現(xiàn)的顯示。 很多程序員經(jīng)常地經(jīng)過反復(fù)試驗(yàn)大家的編程藝術(shù),然后學(xué)會這些復(fù)雜的編程工藝。 項(xiàng)目負(fù)責(zé)人集中于硬件因?yàn)檫@是為系統(tǒng)開發(fā)唯一最大的預(yù)算項(xiàng)目。最后,專家系統(tǒng)和人工智能軟件從實(shí)驗(yàn)室進(jìn)入了現(xiàn)實(shí)世界中的廣泛問題,成為其實(shí)際應(yīng)用的軟件。如果說第二個(gè)時(shí)代被賣的是上百或數(shù)以萬計(jì)的軟件公司他們的程序的拷貝 , 第三時(shí)代出售就是十和甚而成千上萬個(gè)的拷貝的軟件公司。一個(gè)“軟件危機(jī)”在世界上隱約地出現(xiàn) 了。 從此,企業(yè)家從產(chǎn)業(yè)、 政府 以及學(xué)術(shù)界打破了“開發(fā)最后軟件包”和贏得捆綁金錢的模式。 第二個(gè)時(shí)代計(jì)算機(jī)系統(tǒng)演變 (圖 11) 跨過了十年即從 60 年代中期對 70 年代晚期。 軟件產(chǎn)品 (.,節(jié)目顯現(xiàn)出被賣對一個(gè)或更多顧客 ) 是在聯(lián)邦稅務(wù)局初期。那時(shí)侯軟件作為事后的不被注意想法被許多人觀看了。更好的硬件性能,更小的尺寸,更少的花費(fèi)已經(jīng)促成更好的計(jì)算機(jī)基礎(chǔ)系統(tǒng)。 這就是有利有弊的軟件。在八十年代中期,《財(cái)富》雜志的一個(gè)封面故事在哀嘆:“一個(gè)在發(fā)展的軟件 的缺口 ”在這十年結(jié)束時(shí) ,商業(yè)周刊雜志的經(jīng)理被警告只因?yàn)殛P(guān)于那句“軟件陷阱自動(dòng)裝置或者其他”。 data access put heavy demands on software developers. The third era has also been characterized by the advent and widespread use of microprocessors, personal puters, and powerful desktop workstations. The microprocessor has spawned a wide array of intelligent productsfrom automobiles to microwave ovens, from industrial robots to blood serum diagnostic equipment. In many cases, software technology is being integrated into products by technical staff who understand hardware but are often novices in software development. The personal puter has been the catalyst for the growth of many software panies. While the software panies of the second era sold hundreds or thousands of copies of their programs, the software panies of the third era sell tens and even hundreds of thousands of copies. Personal puter hardware is rapidly being a modity, while software provides the differentiating characteristic. In fact, as the rate of personal puter sales growth flattened during the mid1980s, softwareproduct sales continued to grow. Many people in industry and at home spent more money on software than they did to purchase the puter on which the software would run. 5 The fourth era in puter software is just beginning. Objectoriented technologies (Chapters 8 and 12) are rapidly displacing more conventional software development approaches in many application areas. Authors such as Feigenbaum and McCorduck [FEI83] and Allman [ALL89] predict that fifthgeneration puters, radically different puting architectures, and their related software will have a profound impact on the balance of political and industrial power throughout the world. Already, fourthgeneration techniques for software development (discussed later in this chapter) are changing the manner in which some segments of the software munity build puter programs. Expert systems and artificial intelligence software has finally moved from the laboratory into practical application for wideranging problems in the real world. Artificial neural work software has opened exciting possibilities for pattern recognition and humanlike information processing abilities. As we move into the fourth era, the problems associated with puter software continue to intensify: Hardware sophistication has outpaced our ability to build software to tap hardware39。信息的完整性和實(shí)時(shí)性由一個(gè)公司的不同的競爭者的不同軟件 (和相關(guān)的數(shù)據(jù)庫 ) 提供?,F(xiàn)代硬件的令人敬畏的處理和貯藏能力代表計(jì)算的潛力。 20世紀(jì) 60年代 — 70年代 傳統(tǒng)的軟件工程 20世紀(jì) 80年代中 對象工程 20世紀(jì) 80年代末 軟件過程工程 20世紀(jì) 90年代 構(gòu)件工程 圖 11 軟件的演變。甚至在很大程度上,硬件是執(zhí)行一個(gè)專用執(zhí)行文件程序的專用物件。 在早年我們學(xué)會了關(guān)于計(jì)算機(jī)為主的系統(tǒng)的實(shí)施 , 但較少學(xué)習(xí)關(guān)于計(jì)算機(jī)系統(tǒng)工程。 第二個(gè)時(shí)代為軟件公司出現(xiàn)并且描繪產(chǎn)品軟件的用途。 這些