【正文】
活動(dòng)集 10 體叫做軟件維護(hù)。 微處理器產(chǎn)生了大多智能產(chǎn)品,比如從汽車到微波爐 , 從產(chǎn)業(yè)機(jī)器人到血液清液診斷設(shè)備。面向?qū)ο蟮募夹g(shù) (章節(jié) 8 和 12) 在許多應(yīng)用范圍迅速地偏移更加常規(guī)的軟件開發(fā)方法。 這些問(wèn)題的的回應(yīng) , 被采取在產(chǎn)業(yè)過(guò)程中。但是很悲哀的是 , 軟件經(jīng)常只是少許事后的想法。 本文譯自 : Roger , “Software Engineering ,” 1992 。少量正常方法存在了但是也只有很少人使用了他們。 產(chǎn)業(yè)透視 在早期計(jì)算 , 程序員開發(fā)了計(jì)算機(jī)為主的系統(tǒng)使用被安置的硬件管理。 現(xiàn)在,“軟件開發(fā)的第四代”技術(shù) (在這個(gè)章節(jié)里以后會(huì)討論 ) 改變方式軟件社區(qū)修造了計(jì)算機(jī)程序的一些段。 個(gè)人計(jì)算機(jī)是許多軟件公司成長(zhǎng)的催化劑。 更糟糕的是 , 許多程序的個(gè)人化的本質(zhì)使他們潛伏的盟友失去了運(yùn)轉(zhuǎn)的可靠性。軟件為計(jì)算機(jī)主機(jī)和微型計(jì)算機(jī)吸引了上百和甚至數(shù)以萬(wàn)計(jì)的用戶。這些令人傾慕的成就有很多保留在今天的使用中提供繼續(xù)糾錯(cuò)。軟件,另一方面,是按客戶要求設(shè)計(jì)的為各種應(yīng)用和有相對(duì)地有限地發(fā)行。 在早年計(jì)算機(jī)系統(tǒng)發(fā)展期間 , 硬件進(jìn)行了連續(xù)變動(dòng)。 軟件角色的演變 在計(jì)算機(jī)系統(tǒng)發(fā)展的五十年左右的時(shí)間里,軟件緊密地配合著其發(fā)展。那理解力和功能被插入的軟件提供,經(jīng)常區(qū)分二種相似的工業(yè)或消費(fèi)品。t we find all errors before we give the software to our customers? Why do we have difficulty in measuring progress as software is being developed? These, and many other’ questions, are a manifestation of the concern about software and the manner in which it is developeda concern that has tend to the adoption of software engineering practices. 7 譯文 : 軟件和軟件工程 —— 軟件的出現(xiàn)及列舉 在二十世紀(jì)八十年代的前十年開始的時(shí)候 , 在商業(yè)周刊雜志里一個(gè)頭版故事大聲宣揚(yáng)以下標(biāo)題:“軟件, 我們新的驅(qū)動(dòng)力!”軟件帶來(lái)了一個(gè)時(shí)代 它成為了一個(gè)大家關(guān)心的主題。s potential. Our ability to build new programs cannot keep pace with the demand for new programs. Our ability to maintain existing programs is threatened by poor design and inadequate resources. In response to these problems, software engineering practicesthe topic to which this book is dedicatedare being adopted throughout the industry. An Industry Perspective In the early days of puting, puterbased systems were developed using hardwareoriented management. Project managers focused on hardware because it was the single largest budget item for system development. To control hardware costs, managers instituted formal controls and technical standards. They demanded thorough analysis and design before something was built. They measured the process to determine where improvements could be made. Stated simply, they applied the controls, methods, and tools that we recognize as hardware engineering. Sadly, software was often little more than an afterthought. 6 In the early days, programming was viewed as an art form. Few formal methods existed and fewer people used them. The programmer often learned his or her craft by trial and error. The jargon and challenges of building puter software created a mystique that few managers cared to perate. The software world was virtually undisciplinedand many practitioners of the clay loved it! Today, the distribution of costs for the development of puterbased systems has changed dramatically. Software, rather than hardware, is often the largest single cost item. For the past decade managers and many technical practitioners have asked the following questions: Why does it take so long to get programs finished? Why are costs so high? Why can39。軟件產(chǎn)品的設(shè)計(jì)和圖案的功能來(lái)自人類,區(qū)分它從只能選其中之一的產(chǎn)品以一個(gè)相似的作用來(lái)看。軟件是使我們利用和輕拍這潛力的機(jī)制。 圖 11 描述的是在計(jì)算機(jī)為主的系統(tǒng)應(yīng)用區(qū)域之內(nèi)軟件的演變的時(shí)間表。 在早年期間 , 通用硬件變得普遍。但是 , 我們必須承認(rèn)被開發(fā)在這個(gè)時(shí)代期間的計(jì)算機(jī)為主的系統(tǒng)是有許多卓著之處的。軟件為普遍發(fā)行在一個(gè)多重學(xué)科的市場(chǎng)上這個(gè)目的而被開發(fā)了。在軟件維護(hù)上工作人員花費(fèi)了很多的功夫,但是軟件還是以驚人的比率吸收資源得到資源。在許多情況下 , 軟件技術(shù)是聯(lián)合了解硬件的產(chǎn)品的技術(shù)職員開發(fā)的,但經(jīng)常是新手在開發(fā)軟件。 作 者譬如 [ FEI83 ] 以及 Allman [ ALL89 ] 預(yù)言 五世代 計(jì)算機(jī) , 計(jì)算的程序根本不同 , 并且他們的相關(guān)軟件在世界各地將對(duì)政治和工業(yè)力量的平衡方面產(chǎn)生深刻的沖擊。軟件工程實(shí)踐 —— 這本書的題目是熱忱的。 在早期 , 編程被觀看者觀看了但是只是作為“藝