Critical Analysis: No Silver Bullets By Brook Fredrick

Superior Essays
No Silver bullets by Brook Fredrick
i) Introduction:
Brooks, Fredrick P., “No Silver Bullet: Essence and Accidents of Software Engineering, “Computer, Vol 20, No 4 (April 1987), pp. 10-19. It is a widely discussed paper in software engineering. It discusses the fact that not anyone can be a software developer. It is not as straight forward as they will have you believe. Discusses the problems with software development and its complexities, and the fact that decades have passed with price of software is same compare to hardware as discussed in Moore’s law.

ii) Summary:
"There is no single development, in either technology or management technique, which by itself promises even one order of magnitude [tenfold] improvement within a decade in productivity,
…show more content…
All software construction involves essential tasks. Brooks defines some concept relating to software development, in order to help people understand that software development is hard work. And there is no magical solution for people to be able to easily do it. He said there are two classes of qualities of a software:
1. Essential qualities/difficulties: difficult to address and improve
2. Accidental qualities/difficulties: can be improved via tool support.
Essential qualities/difficulties have to do with software design: understanding the problem, designing and testing the conceptual construct. Accidental qualities/difficulties have to do with implementing the construct in code and testing it.
Following are some essential qualities/difficulties:
• Complexity: Designing a software is complex. Understanding domain concept so one can define them and the relationship between them is hard but essential if we want to convert it into code. Unlike real\physical object, no 2 parts of a software are alike. The problem with complexities are miscommunication b/w design team, difficulties in considering all possibilities in a program (unreliability), harder to use, if program is complex it is also harder to overview (taking out the
…show more content…
Software is seen as a thing that should conform of the systems.

Accidental Qualities relates to implementation and testing, these are solved the most and are likely to be solved. Following are the things brook says have helped to reduce the impact of the accidental qualities
• High level language: High level language allows programmers to express concept closer to original design. This reduce or eliminate translation steps between data models, operation, sequence and communication and register bits. This eliminate a lot of complexities. Brooks say high level languages can do to finish product that programmer imagines in abstract. Their level of thinking is improving it does so at an ever decreasing rate.
• Time sharing and better OS support: Time sharing is different from batch processing. It help because we don’t have to wait for code testing cycle. Better OS support means difference b/w DOS and UNIX (which contains library which allow display code, etc.)
Brooks talks about hopes for the future, AI (idea of a software solving problems that were previously domain of human intelligence), expert systems automatic programing, graphical programing, proof based design verification better tools and work

Related Documents

  • Improved Essays

    In order to understand how software has been able to influence and change our society, it is important to have a full understanding of what software means. According to Discovering Computers 2003 “software is the series of instructions that tells the hardware how to perform tasks” (Shelly). The two, hardware and software, are the two key technologies in computing. However, for a long time they were inseparable.…

    • 1275 Words
    • 6 Pages
    Improved Essays
  • Improved Essays

    The Story of Success Everyone in this world can be successful if she works on herself. Sometimes we lose the meaning of success and everybody has a different standard for being successful. These standards depend on personality, society that surrounds this one, and the determination to achieve a goal. Also, one of the most important parts to achieve success is spending the effort on what you want to do.…

    • 792 Words
    • 4 Pages
    Improved Essays
  • Superior Essays

    There are basic principles that all software engineers recognize as vital for success. However, the constant change of software development practices is consistent with the constant advancement in hardware and other related technologies. Managerial practices can only make software as good as the limits which bound software. Brooks writes, “There is no single development, in either technology or management technique, which by itself promises even one order of magnitude improvement in productivity, in reliability, in simplicity” (Brooks 181). All of the advancements made in technology are incremental.…

    • 1561 Words
    • 7 Pages
    Superior Essays
  • Improved Essays

    Obliteration Written Response 2a. My program is an arkanoid type game. I wrote this game in C Sharp using Unity environment to write this code. The purpose of my program is to entertain the user with this challenging game and it also shows some basic physics concepts. The video illustrates how the user can play the game and whether they want to use AI to play a specific level.…

    • 434 Words
    • 2 Pages
    Improved Essays
  • Improved Essays

    The utilization about middleware on create generally dispersed Healthcare Information System (HIS) need ended up unavoidable. However, those certainty that a lot of people different platforms, Significantly at times heterogeneous should every other, would snared under those same system makes the coordination of Different middleware parts that's only the tip of the iceberg challenging over a portion may trust. This paper examines the HISA standard What's more proposes extensions of the model that, on turn, Might be consistent with different existing disseminated platforms also their middleware segments. Executive Summary:- On social events give a progressed help to those specific needs of the single individual focuses What's more units (which…

    • 667 Words
    • 3 Pages
    Improved Essays
  • Improved Essays

    Computer programmers are the engineers that develop these software programs. They are the core of what makes technology possible. Creation begins with software engineers submitting design specification to the programmers. After analyzing the information, they determine how to translate this request, using computer languages like C++, to achieve the desired end product. In addition, through thorough testing, debugging, and at times, rewriting of code, programmers accomplish…

    • 996 Words
    • 4 Pages
    Improved Essays
  • Improved Essays

    Some technical excellences such as critical thinking, creativity, and logical thinking should be virtues that a good engineer in this area must have as they are needed to deal with the typical problems found in Computer Engineering. Also, a good Computer Engineer must have the moral virtue of courage to overcome any difficulties presented and to confidently present and defend her ideas to others. Specially, if the ideas question the ethically rightfulness or safety of something, a good engineer must have the courage to expose this to others. Another virtue very important is the virtue of pragmatic thinking in the sense that an engineer must try to maximize efficiency and productivity. Or in other words to do as much as possible with the resources available.…

    • 1045 Words
    • 5 Pages
    Improved Essays
  • Improved Essays

    Computers and Smartphones are a part of almost everybody’s life. The use of these devices has made life for many people easier and more enjoyable. But some people may wonder, how do the application on your device, or the device itself, work? The minds behind these creations are called software developers. Software developers create software that is found on every computer, without them, you would not be able to use anything on a computer.…

    • 468 Words
    • 2 Pages
    Improved Essays
  • Improved Essays

    Challenger Disaster

    • 1088 Words
    • 5 Pages

    In general, both Vaughan (1996) and Perrow (1999) represent the human and technical reasons that cause the Challenger shuttle disaster, but they do not mention the aspects of project management regards to how to avoid accidents. Therefore, Deming (1986) agrees with Vaughan (1996), focusing on the human cause. He believes that industries can accomplish the project with high effectiveness and few deviations that they continue enhancing quality. Deming (1986) argues that even though errors and mistakes can be reduced by applying quality management methods and tools, they cannot be eliminated totally in the firms. Therefore, Deming’s (1986) 14 points of quality give guidelines for internal causes of the Challenger disaster from a quality perception…

    • 1088 Words
    • 5 Pages
    Improved Essays
  • Improved Essays

    Ehr Disadvantages

    • 505 Words
    • 3 Pages

    On the other hand, it is critical for nurses in the 21st century to have the ability to use technology to incorporate into patient care (Barnard & Sandelowski, 2012). In order to keep up with the competitive edge, nurses have to keep up with such changes. This can be a struggle for some nurses, especially for the older generation nurses (baby boomers). Another disadvantage is troubleshooting when technology malfunction. Nurses were not trained to fix the machine when it malfunctions.…

    • 505 Words
    • 3 Pages
    Improved Essays
  • Improved Essays

    Fred Brooks is the first recipient of ACM Allen Newel Award. This award is presented as a token of honour to the individuals for their contributions in bridging Computer Science with other disciplines. In the article “The Computer Scientist as Toolsmith – II”, Brooks has given the opinion that Computer Science is probably not the best name that is coined for the discipline of computers which deals with solving problems for the users. Explaining the core difference between Science and Engineering, he states that Science is about discovering facts and laws of the universe, but engineering is about creating new things. In Computer Science, we are focussed on creating new things/new solutions, so the discipline can be appropriately referred as…

    • 896 Words
    • 4 Pages
    Improved Essays
  • Superior Essays

    A person needs to be quite a logical thinker (Computer Scientists). He must be able to solve problems, and he needs to be able to communicate his ideas in a verbal or written form (Computer Scientists). Computer scientists must also keep learning about new compilers and development environments such as the latest version of Microsoft Visual Studios (Parvin). He then needs to use them frequently and become familiar with them (Parvin). It is important for a computer scientist to be creative if he wishes to solve problems and develop new technologies (Streubel).…

    • 1799 Words
    • 8 Pages
    Superior Essays
  • Decent Essays

    Ece 511 Case Study

    • 952 Words
    • 4 Pages

    Copying is a serious offence which attracts a severe penalty and must be avoided at all costs. If any learner transgresses this rule, the lecturer will retain the assignments and ask the affected learners to resubmit a new assignment which will be capped at 50%. 5. Use the Harvard referencing method. QUESTION ONE [20 MARKS]…

    • 952 Words
    • 4 Pages
    Decent Essays
  • Improved Essays

    Importance Of MIS

    • 969 Words
    • 4 Pages

    The five-component model can be used to do a business process automatically. This can be done when people do a particular task by following a procedure, and move it so that the computer hardware runs following the rules from the software. It can also be used to evaluate the scope of new systems by using a set of standards that has to be met, or can also be by determining its strengths, weaknesses, opportunities, threats. Every information system involves a person, and thus it is the most important component; however, the usefulness of the information gathered is limited by the quality of a person’s thinking – it depends on how the information will be…

    • 969 Words
    • 4 Pages
    Improved Essays
  • Improved Essays

    NTUC Case Study

    • 1854 Words
    • 8 Pages

    NTUC is one of the largest insurers in Singapore, it operates in a highly competitive market. Founded in 1970 as a co-operative to ensure low paid workers have insurance, which fits well in Singapore’s culture of social welfare where people are required to save to take care of their needs themselves, which is an alternative to the European style welfare state. (Goodman, 2015) Types of Information systems NTUC used decade’s old business processes and IT systems, with a manual paper based process supported by legacy HP 3000 mainframe running COBOL. The Mainframe had the following modules (Core Insurance application, Accounting system and MIS).…

    • 1854 Words
    • 8 Pages
    Improved Essays