Issue No.12 - December (2011 vol.44)
Published by the IEEE Computer Society
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MC.2011.356
Recently, considerable attention has been devoted to the notion that factors directly related to the psychological nature of human beings play a major role in the development of computer software.
COMPUTER SOCIETY STATUS (p. 3) "The spectacular growth of the Computer Society within the IEEE is cause for both admiration and concern. With nearly 40,000 members, we are more than twice as big as the next largest society (Power Engineering). This situation makes us vulnerable to larger assessments, to opposition to introducing new publications, and to suggestions to break up the Computer Society into smaller units. …"
INTERACTIVE SYSTEMS (p. 9) "… System developers are increasingly aware that ad hoc design processes, based on intuition and limited experience, may have been adequate for early programming languages and applications but are insufficient for interactive systems which will be used by millions of diverse people. Regular users quickly pass through the gadget fascination stage and become demanding users who expect the system to help them in performance of their work. …"
SOFTWARE DEVELOPMENT (p. 21) "Recently, considerable attention has been devoted to the notion that factors directly related to the psychological nature of human beings play a major role in the development of computer software. If human factors do significantly affect software development, then varying the size of the programming team and the degree of methodological discipline—two supposedly potent human factors—should induce measurable differences in both the development process and the developed product. …"
PROGRAM CODING (p. 41) "Software managers need to know what standards to set and what programming tools to provide to obtain higher quality software. Coding practices such as mnemonic naming of variables, comments inserted between lines of code, and structured control flow are supposed to result in more maintainable software and are often required as programming standards. There is a growing body of scientific research on the effectiveness of these practices, although recent experiments have occasionally produced conflicting results."
NAMING DATA (p. 50) "Recognizing problems associated with indiscriminate use of transfers of control has led to structured programming, a discipline providing guidelines for such transfers. We suggest that other language features are amenable to similar constraints. Furthermore, structured-programming guidelines were based predominantly on case studies or anecdotal evidence, but we contend that language-feature constraints should be based on empirical studies of the relationship between language features and programming effort."
PERFORMANCE EVALUATION (p. 60) "The underlying assumption in this evaluation process is that the test workload is in some sense representative of the real workload. The closer the test workload is to the real workload, the better the selection decision. Thus, it is evident that great care must be taken in the generation of a test workload, and that the degree of representativeness achieved must be explicitly evaluated."
PETRI NETS (p. 85) "It is expected that many future computer-based systems will incorporate multiple, communicating units. Such systems can exhibit very complex interactions and behaviors. Tools for modeling, representing, and analyzing conventional sequential systems will be totally inadequate. Future computer system designers and users will require new conceptual mechanisms and theories to deal with their systems. Petri nets incorporate the fundamental concepts which can be used as a basis for these models and theories."
MICROPROCESSOR STANDARD (p. 96) "The impetus for the development of this [draft programming] standard was the helter skelter proliferation of microprocessor mnemonic codes, the inconsistent and conflicting use of operands, the varying definition of address modes, and other annoying anomalies of the various assembly languages. The standard will transform this mishmash of languages into one that is consistent, easily understood, and easily used."
PROFESSIONAL RESPONSIBILITY (p. 119) "Most people, whether individually interacting with computers or not, must protect themselves against computer invasion of privacy. As professionals, Computer Society members share the responsibility for guarding the rights of the public against misuse of computers. Professional computer developers, hobbyists having fun at home, hesitant but curious computer neophytes, and those as yet unaware of or uninterested in the computer boom are all equally in need of information enabling them to intelligently control the computer's effects on work roles, governmental decisions and everyday life."
COMPUTER (p. 5) "Our reader feedback indicates that our shift toward more of a practitioner focus is the right move. According to a 1994 survey, 33 percent of our readers work in the areas of software engineering and design, while 15 percent work in R&D, 12 percent in education, and 11 percent in consulting. Systems designers and integrators, engineering managers, general corporate managers, design engineers (hardware), and personnel involved in engineering services (testing, quality control, and so on) are also part of our readership. Thus, Computer is reaching both researchers and practitioners, with a majority of our readers focusing on applications."
CHRISTMAS (p. 8) "The Christmas selling season is upon us again, and this year promises to be a multimedia cornucopia. No wonder the Apple Macintosh 5200 is equipped with MPEG and the WinTel commodity boxes are racing to fill discount store shelves with plug-and-play gadgets for Windows 95. Daddy BigBucks is always a headline getter, but the real story belongs to the Nethead Gang—that festive group of interactive multimedia capitalists flush with cash obtained from recent initial public offerings (IPOs) and high per-employee earnings. Watching them spend money this season is a lesson in Info Age sliding down the learning curve in style and points once again to the importance of Info Age mainstreaming."
THE SINGLE-CHIP AGE (p. 10) "Signaling the beginning of the multimedia chip age, major chip makers and Silicon Valley start-up companies gathered in San Jose, California, this October to preview their upcoming wares. At the Eighth Annual Microprocessor Forum; familiar and not-so-familiar names such as Intel, Motorola, MicroUnity, and Chromatic showcased chips that take communications and multimedia off add-in boards and onto single semiconductors. Although the industry leaders detailed powerful coprocessors, it was the less well-known companies that stole the show and are expected to play major roles in bringing multimedia into the mainstream."
TASK SCHEDULING (p. 27) "A task in a program, a job in a factory, and a customer in a bank are examples of consumers. A processing element in a computer system, a machine in a factory, and a teller in a bank are examples of resources. First come, first served is an example of a scheduling policy. Scheduling policy performance varies with circumstances. While the equitable first-come, first-served policy is appropriate in a bank, it may not be the best policy for jobs on a factory floor or tasks in a computer system. This article addresses the task scheduling problem in many of its variations and surveys the major solutions."
MASSIVE PARALLELISM (p. 39) "In recent years, many projects have addressed the design of efficient collective communication algorithms for wormhole-routed systems. By exploiting the relative distance-insensitivity of wormhole routing, these new algorithms often differ fundamentally from their store-and-forward counterparts. In this article, we examine software and hardware approaches to implementing collective communication operations. Although we emphasize methods in which the underlying architecture is a direct network—such as a hypercube or mesh, as opposed to an indirect switch-based network—several approaches apply to systems of either type. …"
PARALLELISM IN EDUCATION (p. 51) "Computer science students need to understand parallel computing, since it may become an integral part of their own careers. The best way to accomplish this is to integrate parallel computing concepts throughout the entire curriculum, from the introductory level on up. As parallel computing becomes a part of several courses, it need not displace large segments of material that are currently in these courses; each course can contribute a small amount to the overall objective of understanding parallel computing."
HOME ON THE INTERNET (p. 66) "Household chores never end, but they might be less burdensome if we could do them without actually having to be there. Some day soon it may be possible to remotely monitor household temperature, water plants, and even feed the cat (add your own suggestions to this wish list), regardless of how far from home we may be. The tool that will make all this possible is the Internet."
SOFTWARE PATENTS (p. 82) "Many programmers first became aware of software patents with the uproar in 1993 over Compton's multimedia patent. There are now thousands of patents involving software; and the United States Patent and Trademark Office has just released guidelines making it clear that software can be patented as machines, processes, or articles of manufacture in which programs are stored."
COMPUTER SCIENCE? (p. 136) "What 'computer scientists' do has all the trappings of science: peer-reviewed journals, conferences in exotic locations on even more exotic subjects, grants from the National Science Foundation. … But when you look at where the knowledge these people produce comes from, and where it goes, you find that while other sciences are very much alike, what happens in computer research is quite different."
PDFs of the articles and departments from Computer 's December 1979 and 1995 issues are available through the IEEE Computer Society's website: www.computer.org/computer.