No Silver Bullet

Accidental complexitySilver bulletNo Silver Bullet – Essence and Accident in Software Engineering
"No Silver Bullet – Essence and Accident in Software Engineering" is a widely discussed paper on software engineering written by Turing Award winner Fred Brooks in 1986.wikipedia
30 Related Articles

Fred Brooks

Frederick P. Brooks, Jr.Brooks, FredBrooks, Jr., Frederick P.
"No Silver Bullet – Essence and Accident in Software Engineering" is a widely discussed paper on software engineering written by Turing Award winner Fred Brooks in 1986.
In addition to The Mythical Man-Month, Brooks is also known for the paper No Silver Bullet – Essence and Accident in Software Engineering.

Silver bullet

silver bulletsbulletbullet out of silver
While Brooks insists that there is no one silver bullet, he believes that a series of innovations attacking essential complexity could lead to significant improvements.

Software prototyping

prototypingprototypeprototypes
The practice of prototyping is one of the points Frederick P. Brooks makes in his 1975 book The Mythical Man-Month and his 10-year anniversary article "No Silver Bullet".

The Mythical Man-Month

The Mythical Man-Month: Essays on Software EngineeringMythical man monthmythical man-month
The article, and Brooks's later reflections on it, 'No Silver Bullet' Refired, can be found in the anniversary edition of The Mythical Man-Month.
The work was first published in 1975 (ISBN: 0-201-00650-2), reprinted with corrections in 1982, and republished in an anniversary edition with four extra chapters in 1995 (ISBN: 0-201-83595-9), including a reprint of the essay "No Silver Bullet" with commentary by the author.

History of software engineering

In 1986, Fred Brooks published his No Silver Bullet article, arguing that no individual technology or practice would ever make a 10-fold improvement in productivity within 10 years.

Wirth's law

May's law
Brooks' paper has been sometimes cited in connection with Wirth's law, to argue that "software systems grow faster in size and complexity than methods to handle complexity are invented".

Software engineering

software engineersoftware engineerssoftware
"No Silver Bullet – Essence and Accident in Software Engineering" is a widely discussed paper on software engineering written by Turing Award winner Fred Brooks in 1986.

Turing Award

ACM Turing AwardA.M. Turing AwardA. M. Turing Award
"No Silver Bullet – Essence and Accident in Software Engineering" is a widely discussed paper on software engineering written by Turing Award winner Fred Brooks in 1986.

Order of magnitude

orders of magnitudeorderon the order of
Brooks argues that "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, in reliability, in simplicity."

Moore's law

Moore’s Lawcomputational powermass-produced
He also states that "we cannot expect ever to see two-fold gains every two years" in software development, as there is in hardware development (Moore's law).

Assembly language

assemblerassemblyassembly code
Accidental complexity relates to problems which engineers create and can fix; for example, the details of writing and optimizing assembly code or the delays caused by batch processing.

High-level programming language

high-levelhigh-level languagehigh level language
One technology that had made significant improvement in the area of accidental complexity was the invention of high-level programming languages, such as Ada.

Ada (programming language)

AdaAda programming languageAda 83
One technology that had made significant improvement in the area of accidental complexity was the invention of high-level programming languages, such as Ada.

C (programming language)

CC programming languageC language
Today's languages, such as C, C++, C# and Java, are considered to be improvements, but not of the same order of magnitude.

C++

C++ programming languageC++98C with Classes
Today's languages, such as C, C++, C# and Java, are considered to be improvements, but not of the same order of magnitude.

C Sharp (programming language)

C#Visual C#C# programming language
Today's languages, such as C, C++, C# and Java, are considered to be improvements, but not of the same order of magnitude.

Java (programming language)

JavaJava programming languageJava language
Today's languages, such as C, C++, C# and Java, are considered to be improvements, but not of the same order of magnitude.

Remuneration

compensationemolumentemoluments
He then advocates treating star designers equally well as star managers, providing them not just with equal remuneration, but also all the perks of higher status: large office, staff, travel funds, etc.

Coding by exception

Coding by exception is an accidental complexity in a software system in which the program handles specific errors that arise with unique exceptions.