© 2015 D JAGHE Walter Shewhart & the Philosophy of Software David Alan Grier Center for International Science & Technology Policy George Washington University.

Slides:



Advertisements
Similar presentations
Developed by Reneta Barneva, SUNY Fredonia
Advertisements

INTRODUCTION TO MODELING
© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. Instruction sets Computer architecture taxonomy. Assembly language. 1.
ISBN Chapter 3 Describing Syntax and Semantics.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
CS1001 Lecture 3. Overview Computer Science; Algorithms Computer Science; Algorithms Multidisciplinary Heritage Multidisciplinary Heritage Evolution of.
Describing Syntax and Semantics
CSC230 Software Design (Engineering)
David L. Spooner1 IT Education: An Interdisciplinary Approach David L. Spooner Rensselaer Polytechnic Institute.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Chapter 01 Nell Dale & John Lewis.
Do we need theoretical computer science in software engineering curriculum: an experience from Uni Novi Sad Bansko, August 28, 2013.
Guide to the Software Engineering Body of Knowledge Chapter 1 - Introduction.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
What is Software Engineering?. Software engineering Multi-person construction of multi-version software (David Parnas) An engineering discipline whose.
© Dennis Adams Associates Limited, 2006 Coming soon: ITIL Version 3 Dennis Adams October 2006 Dennis Adams a s s o c i a t e s Step forward? Or Step into.
CS3300 Fall 2015 Software Development Lifecycles.
Ch.11 Software Engineering A Preview. Ch.12 Outline Definitions of software engineering (SE) Historical origins of SE SE as part of systems engineering.
The Program Development Cycle
Chapter 1 The Big Picture.
1 Chapter 5 Software Engineering Practice. 2 What is “Practice”? Practice is a broad array of concepts, principles, methods, and tools that you must consider.
Software Engineering EKT 420 MOHAMED ELSHAIKH KKF 8A – room 4.
Henry Muccini - Computer Science Department, Universita' dell'Aquila, Italy Paola Inverardi - Computer Science Department, Universita'
The Physics of Computer Science By Matthew Pinney A Brief look at how physics is related to Computer Science and a sample application of problem solution.
Program Development Cycle Modern software developers base many of their techniques on traditional approaches to mathematical problem solving. One such.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
The Nature of Computing INEL 4206 – Microprocessors Lecture 3 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
The Nature of Computing INEL 4206 – Microprocessors Lecture 2 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
Process 3a 1 A Spiral Model of Software Development and Enhancement Barry Boehm Computer, May 1988 text pp34-45.
CSI 1340 Introduction to Computer Science II Chapter 1 Software Engineering Principles.
College of Computer Science, SCU Computer English Lecture 1 Computer Science Yang Ning 1/46.
1 Prof. Dr. Nizamettin AYDIN
CSC3315 (Spring 2009)1 CSC 3315 Languages & Compilers Hamid Harroud School of Science and Engineering, Akhawayn University
Introduction to Computer Programming using Fortran 77.
INTRODUCTION TO COMPUTER PROGRAMMING(IT-303) Basics.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
Addressing modes, memory architecture, interrupt and exception handling, and external I/O. An ISA includes a specification of the set of opcodes (machine.
Sub-fields of computer science. Sub-fields of computer science.
Computers’ Basic Organization
Fundamentals of Technological Design :
Introduction to Programming Part 1
Electrical Engineering
Top Ten List for Directors of Technology
Software Life Cycle “What happens in the ‘life’ of software”
Ontology From Wikipedia, the free encyclopedia
Software Engineering and Best Practices
Introduction to Eclipse Process Framework: EPF Composer and OpenUP
Chapter 18: Introduction to Assurance
Overview Introduction General Register Organization Stack Organization
Choreographies: the idea
Production Engineering Department
Introduction to Computer Programming
CSCI/CMPE 3334 Systems Programming
Computer Science I CSC 135.
Atern v2 – Summary of changes from v1
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Introduction Artificial Intelligent.
Chapter 0: Introduction
Computer Architecture
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
University of California
Conference on the History of Programming Languages III
Programming What?! How?!.
OBE & Accreditation {Role in Excellence in Education}
Software Engineering Practice: A Generic View
Map of Human Computer Interaction
Motivation for Language Specification
Chapter 0: Introduction
Six Sigma Introduction 1 1.
Presentation transcript:

© 2015 D JAGHE Walter Shewhart & the Philosophy of Software David Alan Grier Center for International Science & Technology Policy George Washington University

Historical Talk Not Philosopher Historian of Ideas – Claim to be Philosophy Current Literature – Language & Thought – Metaphor Materialization of Software – Engineering Perspective – Practical Problems

© 2015 D JAGHE Walter Shewhart

© 2015 D JAGHE Walter Shewhart Production Engineer – Not philosopher

© 2015 D JAGHE Walter Shewhart Production Engineer – Not philosopher Widely read in philosophy – Dewey, Bertrand Russell, C. I. Lewis

© 2015 D JAGHE Walter Shewhart Production Engineer – Not philosopher Widely read in philosophy – Dewey, Bertrand Russell, C. I. Lewis What is mass production? – What kind of entity is it?

© 2015 D JAGHE Connection to Software

© 2015 D JAGHE Connection to Software Producing Quality Software

© 2015 D JAGHE Connection to Software Producing Quality Software Perceptions: – Error prone software – Slow delivery

© 2015 D JAGHE Connection to Software Producing Quality Software Perceptions: – Error prone software – Slow delivery Garmisch Conference (1968) – Nato Sponsored – Problems creating quality software

© 2015 D JAGHE Connection to Software Producing Quality Software Perceptions: – Error prone software – Slow delivery Garmisch Conference (1968) – Nato Sponsored – Problems creating quality software Not amortized over different firms

© 2015 D JAGHE Connection to Software Producing Quality Software Perceptions: – Error prone software – Slow delivery Garmisch Conference (1968) – Nato Sponsored – Problems creating quality software Not amortized over different firms No software industry

© 2015 D JAGHE Switch Engineering Role

© 2015 D JAGHE Switch Engineering Role Electrical Engineering

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity Electrical Engineering – Don’t engineering electricity

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering – Engineer signal to control machine Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering – Engineer signal to control machine

© 2015 D JAGHE Switch Engineering Role Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering – Engineer signal to control machine Continued reluctance to engineer Electrical Engineering – Don’t engineering electricity – Engineer machine to control electricity – Machine to control signal Software Engineering – Engineer signal to control machine Continued reluctance to engineer

© 2015 D JAGHE Why process started in 1968?

© 2015 D JAGHE Why process started in 1968? Software quasi-material

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly – Disks

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly – Disks RAMAC (~1957)

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly – Disks RAMAC (~1957) – Time Sharing

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly – Disks RAMAC (~1957) – Time Sharing MCP/CTSS/Multics (~1961)

© 2015 D JAGHE Why process started in 1968? Software quasi-material Punched cards / Tape Not worthy of engineering Dematerialized slowly – Disks RAMAC (~1957) – Time Sharing MCP/CTSS/Multics (~1961) – Mini-computers (1968)

© 2015 D JAGHE Connection between software & production

© 2015 D JAGHE Connection between software & production 1793: De Prony

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term “plan general de l'execution”

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term “plan general de l'execution” Transferred to Industrial Engineering

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term “plan general de l'execution” Transferred to Industrial Engineering Division between

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term “plan general de l'execution” Transferred to Industrial Engineering Division between – Mathematics

© 2015 D JAGHE Connection between software & production 1793: De Prony “Plan” Common term “plan general de l'execution” Transferred to Industrial Engineering Division between – Mathematics – Coding (Mechanical Translation)

© 2015 D JAGHE Software Breaks with Origins

© 2015 D JAGHE Separate Staff – SAGE (1959) Software Breaks with Origins

© 2015 D JAGHE Separate Staff – SAGE (1959) Different Process – OS/360 Software Breaks with Origins

© 2015 D JAGHE By 1968: Five Treatment Strategies

© 2015 D JAGHE By 1968: Five Treatment Strategies Mechanical Device (McIlroy)

© 2015 D JAGHE By 1968: Five Treatment Strategies Mechanical Device (McIlroy) Axiomatic Process (Hoare) Mechanical Device (McIlroy) Axiomatic Process (Hoare)

© 2015 D JAGHE By 1968: Five Treatment Strategies Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra) Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra)

© 2015 D JAGHE By 1968: Five Treatment Strategies Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra) Natural Entity (Halstead) Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra) Natural Entity (Halstead)

© 2015 D JAGHE By 1968: Five Treatment Strategies Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra) Natural Entity (Halstead) Production Plan (Boehm) Mechanical Device (McIlroy) Axiomatic Process (Hoare) Structured Communication (Djikstra) Natural Entity (Halstead) Production Plan (Boehm)

All 5 remain in software todate All 5 remain Some more important than others Shewharts’s apprach is core – Materialism that measuring effects

© 2015 D JAGHE Mechanical

© 2015 D JAGHE Mechanical Dates to 1938 & Harvard Mark I

© 2015 D JAGHE Mechanical Dates to 1938 & Harvard Mark I Parts you assemble into whole – Subroutines

© 2015 D JAGHE Mechanical Dates to 1938 & Harvard Mark I Parts you assemble into whole – Subroutines Surviving Elements: Libraries – Mathematical – Language – Graphic

© 2015 D JAGHE Shortcomings Mechanical

© 2015 D JAGHE Shortcomings – Not Sufficient Shortcomings – Not Sufficient Mechanical

© 2015 D JAGHE Shortcomings – Not Sufficient – Mere Analysis Shortcomings – Not Sufficient – Mere Analysis Mechanical

© 2015 D JAGHE Shortcomings – Not Sufficient – Mere Analysis – Mismatch material model Shortcomings – Not Sufficient – Mere Analysis – Mismatch material model Mechanical

© 2015 D JAGHE Axiomatic

© 2015 D JAGHE Axiomatic Reasoning from fixed assumptions

© 2015 D JAGHE Axiomatic Reasoning from fixed assumptions Hilbert/Turing/Church

© 2015 D JAGHE Axiomatic Reasoning from fixed assumptions Hilbert/Turing/Church Algol 60 – Formal Definitions

© 2015 D JAGHE Axiomatic Reasoning from fixed assumptions Hilbert/Turing/Church Algol 60 – Formal Definitions C. A. R. Hoare (1969)

© 2015 D JAGHE Axiomatic Reasoning from fixed assumptions Hilbert/Turing/Church Algol 60 – Formal Defintions C. A. R. Hoare (1969)

© 2015 D JAGHE Axiomatic

© 2015 D JAGHE Axiomatic Surviving Elements:

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions – Academic Interest

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions – Academic Interest Shortcomings

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions – Academic Interest Shortcomings – Economics

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions – Academic Interest Shortcomings – Economics – Mechanical Support – Stopping Problem

© 2015 D JAGHE Axiomatic Surviving Elements: – Specification Languages – Formal Definitions – Academic Interest Shortcomings – Economics – Mechanical Support – Stopping Problem – Not Materializing at all No artifact

© 2015 D JAGHE Structured Communication Edsger Dijkstra

© 2015 D JAGHE Structured Communication Programmer – Machine Edsger Dijkstra

© 2015 D JAGHE Structured Communication Programmer – Machine Discipline Programmer Edsger Dijkstra

© 2015 D JAGHE Structured Communication Programmer – Machine Discipline Programmer Proof Easier Edsger Dijkstra

© 2015 D JAGHE Structured Communication Programmer – Machine Discipline Programmer Proof Easier Reduce Complexity – T. H. E. Operating System Edsger Dijkstra

© 2015 D JAGHE Structured Communication Programmer – Machine Discipline Programmer Proof Easier Reduce Complexity – T. H. E. Operating System “Goto Considered Harmful” Edsger Dijkstra

© 2015 D JAGHE Structured Communication

© 2015 D JAGHE Structured Communication Surviving Elements:

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture – Programming Tools

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture – Programming Tools Shortcomings

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture – Programming Tools Shortcomings – Not Necessary

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture – Programming Tools Shortcomings – Not Necessary – Clarified Structure Not Meaning

© 2015 D JAGHE Structured Communication Surviving Elements: – Software Architecture – Programming Tools Shortcomings – Not Necessary – Clarified Structure Not Meaning – Materializing irrelevant thing

© 2015 D JAGHE Natural Entity

© 2015 D JAGHE Natural Entity Software Science

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead Software Natural Entity

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead Software Natural Entity Natural Measurements

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead Software Natural Entity Natural Measurements – Number of Operands

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead Software Natural Entity Natural Measurements – Number of Operands – Program Length

© 2015 D JAGHE Natural Entity Software Science Maurice Halstead Software Natural Entity Natural Measurements – Number of Operands – Program Length – Program Volume

© 2015 D JAGHE Halstead Methods

© 2015 D JAGHE Halstead Methods Surviving Elements

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings – Not Sufficient or Necessary

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings – Not Sufficient or Necessary – High Variability

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings – Not Sufficient or Necessary – High Variability – Limited Correlation

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings – Not Sufficient or Necessary – High Variability – Limited Correlation – Chaotic Materiality

© 2015 D JAGHE Halstead Methods Surviving Elements – Performance Modeling Shortcomings – Not Sufficient or Necessary – High Variability – Limited Correlation – Chaotic Materiality Natural World

© 2015 D JAGHE Production Plan

© 2015 D JAGHE Production Plan Aerospace Industry

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm Well-versed in Production

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm Well-versed in Production – Complex Production

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm Well-versed in Production – Complex Production – High Risk Production

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm Well-versed in Production – Complex Production – High Risk Production Software as part of plan

© 2015 D JAGHE Production Plan Aerospace Industry Barry Boehm Well-versed in Production – Complex Production – High Risk Production Software as part of plan Turned to Walter Shewhart

© 2015 D JAGHE Quality Control/Assurance

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s Production Plans for Western Electric

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s Production Plans for Western Electric What is Quality?

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s Production Plans for Western Electric What is Quality? Basis for Work

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s Production Plans for Western Electric What is Quality? Basis for Work – Materialization of Modern Physics

© 2015 D JAGHE Quality Control/Assurance Bell Labs, 1920s Production Plans for Western Electric What is Quality? Basis for Work Materialization of Modern Physics – Materializing Quality of System

© 2015 D JAGHE Clarence I. Lewis C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic – A  B ≠ (Not A) ∨ B C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic – A  B ≠ (Not A) ∨ B Follower of Dewey C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic – A  B ≠ (Not A) ∨ B Follower of Dewey – Pragmatist C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic – A  B ≠ (Not A) ∨ B Follower of Dewey – Pragmatist – “Pragmatism is a Process” C. I. Lewis ( )

© 2015 D JAGHE Clarence I. Lewis Student of Royce Mathematical Logic – A  B ≠ (Not A) ∨ B Follower of Dewey – Pragmatist – “Pragmatism is a Process” – Effects of Process not system C. I. Lewis ( )

© 2015 D JAGHE Materializing Quality Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Moved from Object to Process Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Moved from Object to Process Process as means for controlling system Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Moved from Object to Process Process as means for controlling system – Controllable Causes Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Moved from Object to Process Process as means for controlling system – Controllable Causes – Uncontrollable Causes Statistical Quality Control (1939)

© 2015 D JAGHE Materializing Quality Object – Go/No Go Gauges – Quality is Nd parallelepiped Moved from Object to Process Process as means for controlling system – Controllable Causes – Uncontrollable Causes Materialism of System implies materialism of software Statistical Quality Control (1939)

© 2015 D JAGHE Shewhart’s Philosophical Problem

© 2015 D JAGHE Shewhart’s Philosophical Problem Causality Problem

© 2015 D JAGHE Shewhart’s Philosophical Problem Causality Problem Specify – Want for operation

© 2015 D JAGHE Shewhart’s Philosophical Problem Causality Problem Specify – Want for operation Production – Adjust manufacture

© 2015 D JAGHE Shewhart’s Philosophical Problem Causality Problem Specify – Want for operation Production – Adjust manufacture Inspect – What you can see (nondestructive) (sample destructive)

© 2015 D JAGHE Pragmatic Solution

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences Equalize Variation of Uncontrollable

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences Equalize Variation of Uncontrollable Largely overlooked in modern applications

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences Equalize Variation of Uncontrollable Largely overlooked in modern applications Assume fundamental materialism

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences Equalize Variation of Uncontrollable Largely overlooked in modern applications Assume fundamental materialism – Underlying thing

© 2015 D JAGHE Pragmatic Solution Align Controllable Influences Equalize Variation of Uncontrollable Largely overlooked in modern applications Assume fundamental materialism – Underlying thing – Materialized process

© 2015 D JAGHE Transfer to Software Barry Boehm )

© 2015 D JAGHE Transfer to Software Materializing Action of System Barry Boehm )

© 2015 D JAGHE Transfer to Software Materializing Action of System Quality is Uniform Action Barry Boehm )

© 2015 D JAGHE Transfer to Software Materializing Action of System Quality is Uniform Action Controllable forces more general Barry Boehm )

© 2015 D JAGHE Transfer to Software Materializing Action of System Quality is Uniform Action Controllable forces more general Uncontrollable forces more prevalent Barry Boehm )

© 2015 D JAGHE Transfer to Software Materializing Action of System Quality is Uniform Action Controllable forces more general Uncontrollable forces more prevalent Implemented in Standards Barry Boehm )

© 2015 D JAGHE IEEE Standardization

© 2015 D JAGHE IEEE Standardization Begins in 1978

© 2015 D JAGHE IEEE Standardization Begins in 1978 IEEE 730: Quality Assurance Plans

© 2015 D JAGHE IEEE Standardization Begins in 1978 IEEE 730: Quality Assurance Plans Defining material (measurable) nature of software

© 2015 D JAGHE IEEE Computer Society Progress

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984) – 1002 Taxonomy for Software Standards (1987)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984) – 1002 Taxonomy for Software Standards (1987) – 730 Quality Assurance Plans (1988)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984) – 1002 Taxonomy for Software Standards (1987) – 730 Quality Assurance Plans (1988) – 982 Measures of Dependability (1988)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984) – 1002 Taxonomy for Software Standards (1987) – 730 Quality Assurance Plans (1988) – 982 Measures of Dependability (1988) – 828 Configuration Management (1990)

© 2015 D JAGHE IEEE Computer Society Progress – 829 Software Test Documentation (1983) – 830 Requirements Specification (1984) – 1002 Taxonomy for Software Standards (1987) – 730 Quality Assurance Plans (1988) – 982 Measures of Dependability (1988) – 828 Configuration Management (1990) – 1074 Software Lifecycle (1991)

What do we learn about Philosophy? Engineers more Pragmatists than we thought Less Rational Positivists Clearly Mathematical Logic still important Materialize Problem – Identify aspects that can be put in box – Solve those aspects – Limit Influence of all else

© 2015 D JAGHE Walter Shewhart & the Philosophy of software David Alan Grier