
PERSPECTIVE Computers ... -- - iiiiiUr AnA... h.aa..;.. --- --==.... -- --~,.- .... ~~--- As mOie and better software designers are needed, universities and industry are under pressure to establish programs to train them years will coinpete with large conventional in software engineering, Among them are puters in particular become an inexorable computers and require extensive software Seattle University in Washington; Texas part of more and more new equipment, a support. Christian University in Fort Worth; Dart­ new type of engineer is growing in impor­ Also contributing to this crisis is the mouth College in Hanover, N.H.; and the tance. Bearing the title "software engi­ fact that software development and Wang Institute of Graduate Studies in neer,' he or she is part programmer and maintenance problems are compounded Tyngsboro, Mass. Companies like IBM!, pan systems-hardware and -software de­ because most microprocessor software is Bell Laboratories; and TRW have also sign engineer, among other things. not portable from one microprocessor to developed educational programs in this Industry and government agencies C,Ul­ another. Tnese systems are usually designed area. not find enough ofthem, and the need for with large sections of code written in Many university software engineering them is critical. Softw~r~ is !!0~ such a machine-dependent languages, resuiting courses are taught from notes that pro­ vital part of operating equipment- in programs that can be used by only one fessors have collected from engineers in whether electronic field testers or automo­ microprocessor family. Proprietary lan­ industry and government. There are few biles-that it must be designed in parallel guages and development systems tend to books on the subject, though articles on with the hardware from the outset if cost­ lock the equipment manufacturers into a the multidisciplined field have appeared in ly, unreliable trial-and-error software with particular line of chips and systems. Also, professional journals, including the IEEE limited performance is to be avoided. compilers generally lag behind hardware Transactions on Software Engineering The software engineer is a computer system development by a year or more. and IEEE Transactionson Computers, as jack-of-all-trades. He understands both But as great as the demand for software well as various ACM publications. The hardware and software and can mesh the engineers is today, it is expected to grow IEEE Computer Society Technical Com­ two smoothly for optimum performance. many times over during the next several mittee of Software Engineering sponsors Ideally, he becomes involved in the hard­ years. international conferences on software ware and software design before the sys­ An accurate tally of the number of engineering and publishes tutorial books. tem gets on the drawing board. these engineers in the U.S. at present is Most software engineers come from the not available. Some idea of the total can ranks of computer programmers, com­ I. The demand is rising perhaps be gleaned from membership and puter scientists, and electrical and What has pushed the demand for these publication subscription lists of the pro­ mechanical engineers. new engineers is the "software crisis," or fessional societies. Statistics from the the high cost of redesigning defective or IEEE and the Association for Computing III. The job specs outmoded software, along with growing Machinery (ACM) indicate that 15 700 In general, software engineers view a distrust among users of software because members of the IEEE Computer Society system, with iiS operating hardware and of delivery of poor packages. The crisis receive the IEEE Transactions on Soft­ software problems, as an integrated was caused in part by a slow advance in wareEngineering and that there are about whole. They must be familiar with elec­ software technology during the 19705, 7000 members in the ACM Special In­ tronic specifications, design analysis, when semiconductor technology advanced terest Group O!1 Software Engineering quality control, and environmentai re­ rapidly, Microprocessors and other hard­ (Sigsoft), quirements. Unlike programmers-s-who ware devices, on the other hand, have cut Whatever the actual total, Barry are mostly involved in the relatively nar­ the cost of equipment and opened up a Boehm, director of the office of software row field of writing codes, designing proliferation of applications. research and technology in the TRW algorithms, and working with computer New microprocessors like rnters 8086, System Engineering and Integration Divi­ languages-e-software engineers must see Motorola's 68000, and Zilog's Z8000 will sion, predicts that "by 1988there will be a the big picture. require software systems more complex need for double the number of software Their work can range from systems us­ than most minicomputer systems to ex­ engineers currently in the field." ing microprocessor technology to very ploit their high performance and memory In spite of the growing demand, few large multiprocessor computer systems. capacities. The micromainframe devices steps have been taken to train software They work on total system design, in­ that will arrive OJ! the market in a few engineers. cluding subsystems, systems using either off-the-shelf or custom electronic hard­ II. Formal training lags ware, process-control systems, computer­ Joel Fagenbaum At present only a few institutions in the aided manufacturing, and computer­ Associate Editor country offer formal graduate education aided instruction-in short, they deal with 62 OO! 8-9235/81/0800-0062$00.75 © 1981 iEEE IEEE spectrum SEPTEMBER 1981 just about every computer and microcom­ science disciplines, and business practices. new joint meetings of systems hardware puter application. They are most impor­ Program design may involve queuing the­ design and software engineers, new tant when large complex systems are in­ ory, structured programming, operating negotiating, and new solutions. volved, such as strategic weapons systems, systems, and programming languages. In large software projects, the software space, electronic funds transfer.. and mass For tile negotiation process, the disci­ engineer is immersedas well in written and transportation systems. plines include cost estimating, budgeting, oral commurucanons-e-prepanng propo­ and requirements analysis. sals, work statements, system documenta­ engineer because of the relationship be­ Under optimum conditions the. soft­ tion, and maintenance reports. He must tween computer architecture and the ware engineer meets with the system hard­ act as a technical liaison with other com­ structure of operating systems and soft­ ware design engineers while the design is panies and interface with systems hard­ ware. He may need to specify new forms still under discussion. At this stage ware and software engineers, as well as of hardware to implement a project changes in hardware may make the soft­ with nontechnical persons such as design. ware more effective. Together the engi­ business managers in the government and On a typical working day the software neers analyze tradeoffs, negotiate dif­ university sectors, engineer interfaces with people in dif­ ferences, and try to arrive at a final, ferent engineering disciplines as well as in reliable design that will pose few main­ IV. Typical applications other fields. He must also be competent in tenance problems. Large complex software systems such management techniques and industrial en­ Most errors in large industrial software as operating, navigation, industriai con­ gineering. This means an ability to development systems, it has been found, trol, communications, computer-aided organize, estimate, and use the skills and occur in the early stages of design. Here manufacturing, computer-aided design, knowledge ofother people and to eSihnate design errors considerably outnumber management information, and medical resources to accomplish objectives. coding errors and it is important to nip data-base systems all interface with peo­ This engineer uses several kinds oftools them in the bud. As a project advances ple. The software engineer has to be able tn-- -------r----~~~nrnn1ic:h thrpp------ -------"'!:lin t!:lC:1cc:·------- !:Innllr~_--,.,.---- from !,re1imin~ry to detailed design the to evaluate how people react and behave tions solutions, program design, and cost of correcting sofware errors increases when interacting with these electronic negotiation with other engineers in the considerably. systems. "The software engineer design­ organization. For applications solutions, Nor does the software engineer's job ing, for instance, a patient data-base the software engineer may use numerical end with the completed design of a prod­ system for a hospital has to know what analysis, mathematical optimization, sim­ uct. It continues while the product is being data a doctor needs and what information ulation, modeling, information theory, built. Unexpected problems may call for nurses, technicians, and paramedics re- ,.---[ lL ll_J~ l[ II J~ Ope!~~ons S¥stem So!'ware Pre!imin!'ryl Detailed I Cl)Cf" And IJ. Test and I .-.1 requirements rsqutrements design design debug preoparations main~~~ance Validation Validation Validation Validation Unit test and Validation test Revalidation integration [l] Software engineering covers the entire 80 software life cycle shown above, including 1 c=l Linker/loader I redesign and modification or software n maintenance. 70r _ Real-time application _ Environmental simulator ~ [2J
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages6 Page
-
File Size-