Entry
Reader's guide
Entries A-Z
Subject index
Software Engineering
Since the terms software and software engineering (SE) began to be used, they have undergone significant changes. While the meaning of the former has evolved from a specific program to a complex product, the latter has become a professional discipline affecting almost every industry. Spectacular improvements in hardware, memory, and storage capacity, along with the new computing architectures, have paved the way for sophisticated computing systems over the past five decades. Today’s world cannot be run without software, and our global society could not function without professional software systems. Software is embedded inside everything from simple consumer electronics to medical systems to command and control systems. Therefore, it provides a gateway to worldwide information networks; infrastructures, transportation, industry, and financial systems are all controlled by computer-based systems. SE has become critically important, and therefore, software engineers have responsibilities both to the engineering profession and society.
SE is an applied discipline encompassing processes, methods, tools, and principles in order to build reliable, maintainable, and large-scale software systems with high productivity and quality. The inherent constraints in SE stem from its intangibility, complexity, and human dependency, and thus, the main problem in SE is generally viewed as that of making the connection between the abstract world and the physical world. To that aim, software engineers are concerned not only with technical issues but also the conceptual and theoretical background of SE as a discipline. Theory provides a conceptual framework for organizing facts and knowledge, it helps understanding the underlying mechanisms of software systems, and finally, it facilitates communication of ideas in SE community as well as in SE research area. From an evolutionary point of view, SE can be regarded as a young discipline; however, it has transdisciplinary and theoretical foundations that incorporate multifaceted principles in other disciplines while allowing the development and use of SE-specific theories. After defining SE and noting its key concepts of SE, the entry goes on to describe the nature of software, SE as a discipline, its theoretical and transdisciplinary foundations, and the development and use of theory in the research and the software industry.
Engineering as Concept and Profession
Engineering is an applied discipline as well as a technological and problem-solving approach in which complicated artifacts are systematically planned, designed, developed, and maintained on the basis of scientific theories and principles. As a profession, it is defined by the Accreditation Board for Engineering and Technology (ABET) as “the profession in which knowledge of the mathematical and natural sciences gained by study, experience, and practice is applied with judgment to develop ways to economically utilize the materials and forces of nature for the benefit of mankind” (ABET, 1986, n.p.). Therefore, the use and choice of appropriate tools and methods is the key to engineering when playing the roles such as research, design, development, production, testing, and maintenance during engineering processes.
The concept of engineering, which emerged from the times of manufacture-based and mass-production-oriented industrial revolution, is a methodology for achieving a common goal with a group of people working together, which could not be done by individuals technically, physically, or economically. Science accumulates and organizes the theoretical and empirical knowledge for solving technological and engineering problems. While scientists perform research to create new theoretical knowledge, engineers convert this knowledge into practices, applications, devices, and processes for the design and development of products. In other words, scientists seek to know and explore what is, and engineers find out how to do. As a result, engineers perform, calibrate, and validate measurements; make approximations based on experience and empirical data; and work quantitatively whenever possible.
...
- General Theory of Science
- Abduction
- Abstract Knowledge
- Abstraction
- Accuracy
- Ad Hoc Hypothesis
- Analysis
- Authority
- Belief Revision
- Church–Turing Thesis
- Communication Theory, Technical Overview
- Completeness
- Concept
- Conceptual Analysis
- Conceptual Blending
- Consilience
- Epistemology
- Evidence
- Experiment, Theory of
- Explanation
- Fact Versus Theory
- Falsifiability
- Formal Sciences
- Generalization
- Hypothesis Testing
- Hypothetico-Deductivism
- Induction
- Inference
- Inference to the Best Explanation
- Inferentialism
- Instrumentalism
- Interpretation
- Intuition
- Justification
- Knowledge
- Mental Models
- Metaphysics
- Metatheory
- Modeling
- Paraconsistency
- Paradigm
- Paradoxes
- Phenomenalism
- Philosophy of Mind
- Philosophy of Science
- Physical Theory
- Pragmatism
- Prediction
- Pseudoscience
- Rationality
- Realism in Mathematics
- Reasoning
- Scientific Realism
- Scientific Revolutions
- Social Construction of Scientific Knowledge
- Speculation
- Statistics
- Taxonomy
- Theory Change
- Thought Experiments, Scientific and Philosophical
- Truth
- Understanding
- Values in Science
- Nature and Structure of Theories
- Axiom Schema
- Axiomatic Theory
- Data Models
- Framework
- Gödel’s Incompleteness Theorems
- Geometry, Classical
- Geometry, Non-Euclidean
- Instrumentalism
- Intuitionism in Logic and Mathematics
- Laws of Nature
- Laws, Scientific
- Linguistic Frameworks
- Modeling
- Paradigm
- Philosophy of Science
- Rational Mechanics
- Received View of Theories
- Relative Consistency
- Set Theory
- Theories, Semantic Conception of
- Theories, Syntactic Conception of
- Theory Construction
- Theory Structure
- Formal Disciplines
- Computer Science
- Artificial Intelligence
- Big Data
- Bioinformatics
- Biostatistics
- Church–Turing Thesis
- Complex Systems
- Cybernetics, 20th Century
- Informatics
- Information Theory
- Information Theory, Historical Background
- Software Engineering
- Statistical Inference, Bayesian
- Statistical Inference, Frequentist
- Statistics
- Statistics, Completeness in
- Systems Science
- Logic and Mathematics
- Abduction
- Abstraction
- Analysis
- Axiom Schema
- Axiomatic Theory
- Category Theory
- Church–Turing Thesis
- Communication Theory, Technical Overview
- Concept
- Cybernetics, 20th Century
- Deduction
- Gödel’s Incompleteness Theorems
- Generalization
- Geometry, Classical
- Geometry, Non-Euclidean
- Induction
- Inference
- Intuitionism in Logic and Mathematics
- Justification
- Knowledge
- Linguistics, Contemporary
- Linguistics, Historical
- Logic and Language
- Logic, Formal and Informal
- Logic, Inductive
- Logical Theory
- Mathematics, 19th Century
- Mathematics, 20th Century
- Mathematics, Antiquity
- Mathematics, Enlightenment
- Mathematics, Middle Ages
- Mathematics, Renaissance
- Paraconsistency
- Paradoxes
- Perturbation Theory
- Rational Mechanics
- Realism in Mathematics
- Reasoning
- Refutation
- Relative Consistency
- Semantics (Introduction to Theory)
- Semantics (Scientific and Empirical)
- Set Theory
- Soundness
- Statistics
- Syntax (Introduction to Theory)
- Syntax (Scientific and Empirical)
- Understanding
- Empirical Disciplines
- Biological Science
- Biochemistry, 19th Century
- Biochemistry, 20th Century
- Biochemistry, Contemporary
- Bioinformatics
- Biology, Evolutionary
- Biophysics, 19th Century
- Biophysics, 20th Century
- Biophysics, Contemporary
- Biostatistics
- Cell Theory
- Complementary Medicine
- Developmental Systems Theory
- Environmental Studies
- Evolutionary Psychology
- Game Theory
- Genetic Drift
- Germ Theory
- Health Care Science
- Infectious Disease Studies
- Life Sciences, Contemporary
- Medicine, 19th Century
- Medicine, 20th Century
- Medicine, Antiquity
- Medicine, Contemporary
- Medicine, Enlightenment
- Medicine, Middle Ages
- Medicine, Renaissance
- Natural Selection
- Neuroscience
- Punctuated Equilibrium
- Vitalism
- Chemistry
- Cognitive Sciences
- Artificial Intelligence
- Belief Revision
- Big Data
- Biopsychosocial Model
- Cognitive Science
- Conceptual Blending
- Evolutionary Psychology
- Linguistic Frameworks
- Linguistics, Contemporary
- Linguistics, Historical
- Mental Models
- Neuroscience
- Philosophy of Mind
- Semantics (Introduction to Theory)
- Semantics (Scientific and Empirical)
- Syntax (Introduction to Theory)
- Syntax (Scientific and Empirical)
- Earth and Space Sciences
- Engineering
- Physics
- Biophysics, 19th Century
- Biophysics, 20th Century
- Biophysics, Contemporary
- Complex Systems
- Cosmology
- Environmental Studies
- Geophysics
- Information Theory
- Kinetic (Molecular) Theory
- Physical Theory
- Physics, 19th Century
- Physics, 20th Century
- Physics, Antiquity
- Physics, Contemporary
- Physics, Enlightenment
- Physics, Gravitational Theory
- Physics, Middle Ages
- Physics, Quantum Theory
- Physics, Renaissance
- Physics, Solid-State
- Physics, Thermodynamics
- Plate Tectonics
- Rational Mechanics
- Systems Science
- Technology
- Loading...
Get a 30 day FREE TRIAL
-
Watch videos from a variety of sources bringing classroom topics to life
-
Read modern, diverse business cases
-
Explore hundreds of books and reference titles
Sage Recommends
We found other relevant content for you on other Sage platforms.
Have you created a personal profile? Login or create a profile so that you can save clips, playlists and searches