RollingHillsBaptist.faithweb.com
RollingHillsBaptist.faithweb.com

Terminology

Origins
The term software engineering was used occasionally in the late 1950s and early 1960s. The term software engineering was popularized by the 1968 NATO Software Engineering Conference held in Garmisch, Germany and has been in widespread use since.

[edit]
Meanings
The term software engineering is commonly used with a variety of distinct meanings:

As the usual contemporary term for the broad range of activities that was formerly called programming and systems analysis;
As the broad term for all aspects of the practice of computer programming, as opposed to the theory of computer programming, which is called computer science;
As the term embodying the advocacy of a specific approach to computer programming, one that urges that it be treated as an engineering profession rather than an art or a craft, and advocates the codification of recommended practices in the form of software engineering methodologies.
Software engineering is "(1) the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, that is, the application of engineering to software," and "(2) the study of approaches as in (1)." -- IEEE Standard 610.12
Software engineering is practiced by software engineers.

[edit]
Debate over who is a software engineer
Some people believe that Software Development is a more appropriate term than Software Engineering for the process of creating software. People like Pete McBreen (author of "Software Craftsmanship") believe that the term Software Engineering implies levels of rigor and proven processes that are not appropriate for all types of software development.

Some people dispute the notion that the field is mature enough to warrant the title "engineering". In each of the last few decades, at least one radical new approach has entered the mainstream of software development (e.g. Structured Programming, Object Orientation, Agile Development), implying that the field is still changing too rapidly to be considered an engineering discipline. Other people would argue that the supposedly radical new approaches are actually evolutionary rather than revolutionary, the mere introduction of new tools rather than fundamental changes.

There are currently no widely accepted criteria for distinguishing someone who is a software engineer from someone who is not a software engineer. In addition, the industry is in the midst of a complex debate on the licensing of practicing software engineers.

[edit]
Levels
For the localities that do not license software engineers, some hiring classifications are made based on education and experience. Classification levels may include: entry-level, mid-level, and senior.

Typical entry-level software engineers have a bachelor's degree and zero to five years of experience. Typical mid-level software engineers have a bachelor's or master's degree and have five to ten years of experience. Typical senior-level software engineers have an advanced degree and have ten or more years of experience. Note that these are only guidelines that are trends seen in hiring practices and that many exceptions exist.

[edit]
Software engineering today
Software engineering affects economies and societies in many ways.

Economic
In the U.S., software drove about 1/4 of all increase in GDP during the 1990s (about $90 billion per year), and 1/6 of all productivity growth (efficiency within GDP) during the late 1990s (about $33 billion per year). Software engineering drove $1 trillion of economic and productivity growth over the last decade. Around the world, software drives economic growth in similar ways, though reliable statistics are hard to find.
Social
Software engineering changes world culture, wherever people use computers. Email, the world-wide web, and instant messaging enable people to interact in new ways. Software lowers the cost and improves the quality of health-care, fire departments, and other important social services.
Successful projects where software engineering methods have been applied include Linux, the space shuttle software, and automatic teller machines.

See also software engineering economics.

[edit]
Room for improvement
In spite of the enormous economic growth and productivity gains enabled by software, persistent complaints about the quality remain.

Deficient software engineering is often blamed for project failures when the blame might more properly be placed with business managers who ignore lessons already learned by Software Engineers.

See also Debates within software engineering and Criticism of software engineering

[edit]
Technologies and practices
What is the best way to make more and better software? SEs advocate many different technologies and practices, with much disagreement. This debate has gone on for 60 years and may continue forever. Software engineers use a wide variety of technologies and practices.

Practitioners use a wide variety of technologies: compilers, code repositories, to word processors.

Practitioners use a wide variety of practices to carry out and coordinate their efforts: pair programming, code reviews, daily stand up meetings.


Main Roll1 Roll2 electric1electric2 electric3 electric4 electric5

membrane filtration water distillers | yacht charter | oil painting reproductions | Safety Glasses | Night Vision | hawaiian music aloha shirts | Health Care | football shirts | oil paintings | Nashville Real Estate free credit report | Dental Care | caribbean yacht charter | south pacific yacht charter | Kit Car