The Emerging g g Profession of Software Engineering
Dennis J Frailey
g g
Dennis J. Frailey April 7, 2008 Presented at ITNG 2008
The Emerging g g Profession of Software Engineering g g Dennis - - PowerPoint PPT Presentation
The Emerging g g Profession of Software Engineering g g Dennis J Frailey Dennis J. Frailey April 7, 2008 Presented at ITNG 2008 Page 2 4/10/2008 The Public Who Cares! Protective Cloak of Technology Computer Software Development --
Dennis J Frailey
Dennis J. Frailey April 7, 2008 Presented at ITNG 2008
Protective Cloak of Technology
Page 2 4/10/2008
Therac-25 - Radiation therapy unit killed five patients by
2003 Northeast Blackout – Caused partially by a software flaw in
2004 Los Angeles Air Traffic Control Failure
2004 Los Angeles Air Traffic Control Failure – LAX Airport lost
French Ariane 5 Launch System – Rocket tore itself apart due to
Mars Climate Orbiter- Was destroyed when a navigation system
Page 3 4/10/2008
Cheyenne Mountain Upgrade – Project to replace five main
California DMV Drivers License and registration system -
FBI Virtual Case File
FBI Virtual Case File – Deemed a failure and abandoned after
Washington D.C. City Payroll System - Abandoned in 2000 after
Ford Motor Company Purchasing system - Abandoned after
Hewlett-Packard Enterprise Resource System – Problems
Page 4 4/10/2008
Page 5 4/10/2008
Page 6 4/10/2008
(Merriam-Webster's New ( Collegiate Dictionary, 10th Edition)
Page 7 4/10/2008
(IEEE Std 610.12)
Page 8 4/10/2008
Analyze the intended application Participate in the design of the computer system
Analyze the performance of a proposed design Design the basic structure of the software
Analyze the software structure for desired
Implement the software Integrate new software
Perform systematic and statistical testing Revise and enhance software systems
Page 9 4/10/2008
Parnas, D. (2001) “The Professional Responsibilities of Software Engineers”, Software Fundamentals: Collected Papers by David L. Parnas, MA: Addison-Wesley. pp. 540-541.
Page 10 4/10/2008
Page 11 4/10/2008
long and intensive academic preparation; a principal calling, g g vocation or employment; the whole body of persons engaged in a calling. P f i l (1) R l ti t h t i ti f f i
engaged in one of the learned professions; characterized by or conforming to the technical or ethical standards of a profession. (2) participating for gain or livelihood in an activity or field of endeavor often engaged in by amateurs; engaged in by persons receiving financial returns. g
characterize or mark profession or a professional person. (2) Th f ll i f f i ( hl i ) f i li lih d The following of a profession (as athletics) for gain or livelihood.
(Merriam-Webster's New Collegiate Dictionary 10th Edition )
Page 12 4/10/2008
Collegiate Dictionary, 10th Edition )
Page 13 4/10/2008
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 14 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
1968 -- NATO conference introduces the term Software
1970-present – Textbooks, Masters Degrees, Tools,
1980-2000 -- Licensing for software engineers is recognized
2001 -- Rochester Institute of Technology grants the first-in-
2003 -- Four university BS programs in software engineering
alone
Page 15 4/10/2008
alone
Auburn University Clarkson University Embry-Riddle Aeronautical University - Daytona Beach Fairfield University-School of Engineering
Fl id I tit t f T h l
Florida Institute of Technology University of Michigan-Dearborn Milwaukee School of Engineering Milwaukee School of Engineering Mississippi State University Monmouth University Pennsylvania State University, Behrend College Rochester Institute of Technology
R H l I tit t f T h l
Rose-Hulman Institute of Technology University of Texas at Arlington University of Texas at Dallas
Page 16 4/10/2008
University of Texas at Dallas University of Wisconsin-Platteville
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 17 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
1998 -- ACM/IEEE-CS Software Engineering Code of Ethics was
2001 -- ACM/IEEE-CS Computing Curriculum 2001 is completed -
2002 – “Strawman” version of IEEE-CS Guide to the Software
Several universities are using it to rationalize curriculum, e.g. SMU, NTU, NJIT.
2002 -- IEEE-CS instituted the Certified Software Development
2004 – “Ironman” version of IEEE-CS Guide to the Software
Page 18 4/10/2008
Page 19 4/10/2008
interest. 2 CLIENT AND EMPLOYER S ft i h ll t i
that is in the best interests of their client and employer consistent with the public interest.
3 PRODUCT - Software engineers shall ensure that their products and
related modifications meet the highest professional standards possible.
independence in their professional judgment. independence in their professional judgment.
subscribe to and promote an ethical approach to the management of software development and maintenance. p
reputation of the profession consistent with the public interest.
7 COLLEAGUES - Software engineers shall be fair to and supportive of
Software engineers shall be fair to and supportive of their colleagues.
regarding the practice of their profession and shall promote an ethical
Page 20 4/10/2008
g g p p p approach to the practice of the profession.
Software Requirements Analysis Software Design
Software Construction Software Testing Software Maintenance Software Configuration
Software Engineering
Software Engineering Process Software Engineering Tools and Software Engineering Tools and
Software Quality
Page 21 4/10/2008
Australian Computer Society core body of
British Computer Society
Many others are adopting the SWEBOK
Page 22 4/10/2008
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 23 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
Formal recognition of demonstrated proficiency
Peer recognition Not registration or licensure.
Certification is voluntary.
Page 24 4/10/2008
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 25 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
Page 26 4/10/2008
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 27 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
2007 - iSSEc Project to establish a model
2007 – Software Engineering Licensing
2008 – IITP – International IT Professional
Page 28 4/10/2008
2008 – IITP – International IT Professional
Worldwide, most of the value in new products and systems is
Page 29 4/10/2008
Software engineering is the acknowledged discipline by
The iSSEc (integrated Software and Systems Engineering
Page 30 4/10/2008
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 31 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
IEEE (USA, CS PPC, CS
TBPE
Board
NSPE (PEI, L&QP, BOD)
NSPE
IEEE
TBPE (Board, Staff,
NCEES (Exam
Q
Software Engineering Licensing Consortium
NCEES (Exam
NCEES
Others
Page 32 4/10/2008
Infrastructure: emergency dispatch services, fire alarms/sprinklers,
emergency shut down systems, electrical grid, public water supply
Medicine: heart lung machines, ventilators, medical infusion pumps,
medical dispensers, implant devices, robotics, and medical records
Energy: nuclear reactors, override systems, electrical grid systems,
gy y g y petroleum pumps
Recreation: amusement park rides Transportation: railway signals/controls auto; airbags brakes seatbelts Transportation: railway signals/controls, auto; airbags, brakes, seatbelts,
aviation; air traffic control, avionics, air crew life support, emergency evacuation equipment, automated traffic control
Financial: banking systems accounting online financial systems Financial: banking systems, accounting, online financial systems,
information security
Government: taxation, licenses, criminal systems legislative support,
public policy tools public policy tools
Communications: switching, transmission multiplexing, network
management
Page 33 4/10/2008
Military: GPS satellite, radio communications, artillery controls, aircraft
systems
I3P (International Professional Practice Program)
IFIP (International Federation for Information Processing)
members
Microsoft has committed $1-1.5M to this effort
Page 34 4/10/2008
an “umbrella” (meta-)credential designed to
an I3P member society will be able to submit a
society members who currently hold IITP-
Page 35 4/10/2008
Current participants in the I3P effort, and their certifications:
British Computer Society British Computer Society
Chartered IT Professional (CITP)
Australian Computer Society
Computer Professional (CP)
Canadian Information Processing Society
Information Systems Professional (ISP)
y ( )
Proposed future participants
IEEE and others in the US
CSDP
IT organizations from other countries around the world
Note:
This is an effort of professional societies.
Page 36 4/10/2008
The target audience is industry, not individual professionals.
Development of Software Software Engineering Curriculum Consensus on a Core a Core Body of Knowledge Development of Certification/ Licensing Criteria Development of University Program Accreditation Licensing Criteria and Exams Criteria Code of Ethics, Professional Practices, Performance Norms
Page 37 4/10/2008
Code of Ethics, Professional Practices, Performance Norms
More Accurate Estimates Software that does Not Crash (at least not often :-) Higher Productivity Higher Productivity Employees Like it
Page 38 4/10/2008
Overly Prescriptive Interpretations People wanting a Cookbook instead of a Model “Dehumanization” of Software Development
Process and Discipline are Blamed because the Software
Employees Leaving because they Don’t Like the Climate
g
Page 39 4/10/2008
Education and Understanding are the Keys to Effective
disciplined practices
Even if they don’t use that terminology
Even if they don t use that terminology
practices
There will always be differences of opinion about these
in place? H d b l th d f di i li ith th d f
innovation?
Page 40 4/10/2008
Page 41 4/10/2008
Apologies to Richard Hamming, ACM Turing Lecture, 1969.
Page 42 4/10/2008
http://www.swebok.org -- SW engineering body of
http://computer.org/certification -- IEEE-CS certified
http://www.acm.org/serving/se/code.htm -- Software
http://sites computer org/ccse/ -- ACM Software http://sites.computer.org/ccse/ -- ACM Software
http://www.abet.org – ABET accreditation information
http://www.abet.org/criteria.html -- Accreditation criteria
http://www.tbpe.state.tx.us/ -- Texas PE Board
Page 44 4/10/2008
http://www.acs.org.au/index.cfm?action=show&conID=cbok -
http://sites.computer.org/ccse/SE2004Volume.pdf -- SE2004
http://www.asysti.org/issechome.aspx -- Integrated Systems
Page 45 4/10/2008
Information Technology:
3 programs
Information Systems:
24 Programs
Computer Science:
g
Computer Engineering:
Other Titles:
Page 46 4/10/2008
Page 47 4/10/2008