Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
History of software engineering
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Software projects === Seemingly, every new technology and practice from the 1970s through the 1990s was trumpeted as a ''[[silver bullet]]'' to solve the software crisis. Tools, discipline, [[formal methods]], process, and professionalism were touted as silver bullets:{{citation needed|date=February 2016}} * Tools: Especially emphasized were tools: [[structured programming]], [[object-oriented programming]], [[Computer-aided software engineering|CASE]] tools such as ICL's [[CADES]] CASE system,<ref>D.J.Pearson "The use and abuse of a software engineering system" National Computer Conference 1979</ref> [[Ada (programming language)|Ada]], [[documentation]], and [[standardization|standards]] were touted as silver bullets. * Discipline: Some pundits argued that the software crisis was due to the lack of discipline of programmers. * Formal methods: Some believed that if formal engineering methodologies would be applied to software development, then production of software would become as predictable an industry as other branches of engineering. They advocated proving all programs correct. * Process: Many advocated the use of defined processes and [[Methodology (software engineering)|methodologies]] like the [[Capability Maturity Model]]. * Professionalism: This led to work on a code of ethics, licenses, and professionalism. 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.{{citation needed|date=February 2016}} Debate about silver bullets raged over the following decade. Advocates for [[Ada (programming language)|Ada]], [[software componentry|components]], and processes continued arguing for years that their favorite technology would be a silver bullet. Skeptics disagreed. Eventually, almost everyone accepted that no silver bullet would ever be found. Yet, claims about ''silver bullets'' pop up now and again, even today.{{citation needed|date=February 2016}} Some{{who|date=February 2016}} interpret{{why|date=February 2016}} ''[[no silver bullet]]'' to mean that software engineering failed.{{clarify|date=February 2016}} However, with further reading, Brooks goes on to say: "We will surely make substantial progress over the next 40 years; an order of magnitude over 40 years is hardly magical ..."{{citation needed|date=February 2016}} The search for a single key to success never worked. All known technologies and practices have only made incremental improvements to productivity and quality. Yet, there are no silver bullets for any other profession, either. Others interpret ''no silver bullet'' as proof that software engineering has finally matured and recognized that projects succeed due to hard work.{{citation needed|date=February 2016}} However, it could also be said that there are, in fact, a range of ''silver bullets'' today, including lightweight methodologies (see "[[Project management]]"), spreadsheet calculators, customized [[web browser|browsers]], in-site search engines, database report generators, integrated design-test coding-editors with memory/differences/undo, and specialty shops that generate niche software, such as information web sites, at a fraction of the cost of totally customized web site development. Nevertheless, the field of software engineering appears too complex and diverse for a single "silver bullet" to improve most issues, and each issue accounts for only a small portion of all software problems.{{citation needed|date=February 2016}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)