SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Softrel, LLC
20 Towne Drive #130
Bluffton, SC 29910
http://www.softrel.com
321-514-4659
January 22, 2015
amneufelder@softrel.com
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole
without written permission from Ann Marie Neufelder.
About Ann Marie Neufelder
 Chairperson of the IEEE 1633 Recommended Practices
for Software Reliability
 Since 1983 has been a software engineer or manager for
DoD and commercial software applications
 Co-Authored first DoD Guidebook on software reliability
 Developed NASAs webinar on Software FMEA and FTA
 Has trained every NASA center and every major defense
contractor on software reliability
 Has patent pending for model to predict software defect
density
 Has conducted software reliability predictions for
numerous military and commercial vehicles and aircraft,
space systems, medical devices and equipment,
semiconductors, commercial electronics.
2
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
There are 3 basic things that determine the
software MTTF and MTTCF
 This presentation will focus on the defect and defect density
reduction of defects that escape development and testing
Factor Sensitivity Comments
Fielded defect
density/defects
Cutting this in half
-> doubles MTBF.
Reducing defects requires elimination of
development practices that aren’t
effective as well as embracing those that
are
Effective code
size
Cutting effective size
in half -> doubles
MTBF.
• COTS and reuse can have big impact
• Error in size prediction has direct impact
on error in reliability prediction
Reliability
growth– how many
hours real end user
operate tank per
month after
deployment
Non-linear
relationship.
More of this after delivery means MTTF at
end of growth period is better but MTTF upon
delivery is less because more defects are
found earlier.
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
If you ask a software engineer to rank the top 10
factors associated with unreliable software – this is
what they might say…
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Ranking Factors Where this factor actually ranks
1 Not enough calendar time to finish 457 - because usually late projects are late
because they started late and not because of
insufficient time
2 Too much noise 352
3 Insufficient design tools 126
4 Agile development So far, not a single project in our DB used this
completely and consistently from start to finish.
5 Existing code is too difficult to change 146
6 Number of years of experience with a
particular language
400 – What matters is the industry experience
7 Our software is inherently more
difficult to develop
370 – Everyone thinks this
8 Everybody has poor coding style 423 – While code with good style may be less
error prone, that doesn’t mean its defect free
9 Object oriented design and code 395 – While OO code may be more cohesive,
that doesn’t mean its defect free
10 If they would just leave me alone I
could write great code
Our data shows that the reverse is true
If you ask a software process engineer to rank the top 10 factors
associated with unreliable software – this is what they might say…
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Ranking Factors Where this factor actually ranks
1 Capability Maturity 417 - Organizations with low CMM can and have developed reliable
software. Defect density reduction in our DB plateaued at level 3.
2 Process improvement
activities
8 – The right activities tailored to the process can avoid a failed
project but not necessarily result in a successful project
3 Metrics 54 – Not all metrics are relevant for reducing defects. Too many
metrics or poorly timed metrics won’t reduce defects either.
4 Code reviews 366 - Because the criteria for the reviews is often missing or not
relevant to reducing defects
5 Independent SQA
audits
359 – Probability because the audits focus on product and often
miss technique
6 Popular metrics such
as complexity
430 – Fastest way tor reduce complexity is to reduce exception
handling which is necessary for reliability.
7 Peer reviews #368 - Because peer reviews are often lacking a clear agenda and
because peers don’t necessarily understand the requirements
8 Traceability of
requirements
61 – The problem is what’s NOT in the requirements. Requirements
almost never discuss negative or unexpected behavior.
9 Independent test
organization
295 – Organizations with this are less motivated to do developer
testing
10 High ratio of testers
to software engineers
380 – Those that have this are often not doing developer testing
This is the top 10 list based on hard facts and data
1. Avoid Big Blobs – “Code a little – Test a little”. Avoid big and long releases, avoid big
teams working on same code, avoid reinvention of the wheel. Planning ahead and with
daily or weekly detail. Micromanage the development progress.
2. Mandatory developer white box testing at module, class and integration level
3. Techniques that make it easier to visualize the requirements, design, code, test
or defects
4. Identifying, designing, coding and testing what the software should NOT do
5. Understand the end user. Employ software engineers with DOMAIN
experience. Involve customers in requirements, Prototyping, etc.
6. Not skipping requirements, design, unit test, test, change control, etc. even for
small releases.
7. Defect reduction techniques – Formal product reviews, SFMEAs, root cause
analysis.
8. Process improvement activities – tailored to the needs of the project
9. Maintaining version and source control, defect tracking, prioritizing changes.
Avoiding undocumented changes to requirements, design or code. Verifying
changes to code don’t have an unexpected impact.
10. Techniques for how to test the software better instead of longer
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
How the “Top Ten” list was developed
 Since 1993 Ann Marie Neufelder has benchmarked 679
development factors versus actual defect data
 156 factors were either employed by everyone or employed by
no one in the database.
 The benchmarking was conducted on the remaining 523 factors.
 75 complete sets and 74 incomplete sets of actual fielded defect
data
 See backup slides for a summary of the projects in this database
 Benchmarking results yielded
 Ranked list of each factor by sensitivity to fielded defect density
 A model to predict defect density before the code is even written
 Refer to white paper “The Cold Hard Truth about Reliable
Software, Revision 6e”
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
These are the actual fielded defect densities for
each of the projects in the database.
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
4.0
0 10 20 30 40 50 60
Actual fielded defect density of each project in database
If you can predict where
your software release is
with respect to those in
our database, you can
predict the reliability
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
These
software
projects
were
distressed
These
software
projects
were
successful
The 523 factors and the 4 P’s and a T
Factor
category
Number of
factors in this
category
Examples of factors in this category
Product 50 Size, complexity, OO design, whether the
requirements are consistent, code that is old and
fragile, etc.
Product risks 12 Risks imposed by end users, government
regulations, customers, product maturity, etc.
People 38 Turnover, geographical location, amount of noise
in work area, number of years of experience in
the applicable industry, number of software
people, ratio of software developers to testers,
etc.
Process 121 Procedures, compliance, exit criteria, standards,
etc.
Technique 302 The specific methods, approaches and tools that
are used to develop the software. Example:
Using a SFMEA to help identify the exceptions
that should be designed and coded.
Now let’s see which development activities have been covered.
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
The 523 factors by development phases/activities
Activity associated with factor #Factors
Scheduling and personnel assignments 32
Project execution – making sure that work gets done on time and with desired
functionality
24
Software development planning 10
Requirements analysis 42
Architectural design 3
Design 32
Detailed design 22
Firmware design* 1
Graphical User Interface design* 2
Database design* 1
Network design* 1
Implementation – coding 54
Corrective action – correcting defects 11
Configuration Management (CM), source and version control 27
Unit testing – testing from a developers perspective 48
Systems testing – testing from a black box perspective 75
Regression testing – retesting after some changes have been made to the
baseline
4
Defect tracking 17
Process improvement 24
Reliability engineering 18
Software Quality Assurance 25
No activity – these are related to operational profile and inherent risks 33
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
The factors associated with increased
defect density
1. Using short term contractors to write code that requires
domain expertise and is sensitive to your company
2. Reinventing the wheel – failing to buy off the shelf when
you can
3. Large projects spanning over many years with many people
4. “Throw over the wall” testing approach
Now that we’ve seen what causes high defect density, let’s see what causes a
failed project…
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
All failed projects had these things
in common
 They started the project late
 They had more than 3 things that required a
learning curve
 New system/target hardware
 New tools or environment
 New processes
 New product (version 1)
 New software people
 They failed to mitigate known risks early in the
project
What’s not on these lists is as important as
what IS on these lists….
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
The factors that didn’t correlate one way or the
other to reduced defect density
 Metrics such as complexity, depth of nesting, etc.
 Interruptions to software engineers (some interruptions are
good while others are not)
 Having more than 40% of staff doing testing full time (usually
indicates poor developer testing)
 CMMi levels > 3
 Coding standards that don’t have criteria that are actually
related to defects
 Metrics that aren’t useful for either progress reporting,
scheduling or defect removal
 Peer walkthrus (when the peers don’t have domain or
industry experience)
 Superficial test cases
 Number of years of experience with a particular language
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Conclusions
 The benchmarking results were used to identify the factors
that result in fewer or more defects
 The ranked list was used to develop a model to predict
defect density before the code is written
 This model is available in
○ The Software Reliability Toolkit
○ The Software Reliability Toolkit Training Class
○ The Frestimate software
○ The Software Reliability Assessment services
 Traditional software reliability models are used late in testing
when there is little opportunity to improve the software
without delaying the schedule
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Backup slides
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Software reliability defined
 Probability of success of the software over some specified mission
time
 Term commonly used to describe an entire collection of software
metrics.
 Also defined as a function of
 Inherent defects
○ Introduced during requirements translation, design, code,
corrective action, integration, and interface definition with
other software and hardware
 Operational profile
○ Duty cycle
○ Spectrum of end users
○ Number of install sites/end users
○ Product maturity
These things
can be
predicted
before the
code is
written
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Related Terms
 Error
 Related to human mistakes made while developing the software
 Ex: Human forgets that b may approach 0 in algorithm c = a/b
 Fault or defect
 Related to the design or code
 Ex: This code is implemented without exception handling “c = a/b;”
 Defect rate is from developer’s perspective
 Defects measured/predicted during testing or operation
 Defect density = defects/normalized size
 Failure
 An event
 Ex: During execution the conditions are so that the value of b approaches 0
and the software crashes or hangs
 Failure rate is from system or end user’s perspective
 KSLOC
 1000 source lines of code – common measure of software size
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
Who’s doing software reliability
predictions?
 Space systems
 Missiles defense systems
 Naval craft
 Commercial ground vehicles
 Military ground vehicles
 Inertial Navigation and GPS
 Command and Control and Communication
 Electronic Warfare
 General aviation
 Medical devices
 Healthcare/EMR software
 Major appliances
 Commercial electronics
 Semiconductor fabrication equipment
 HVAC
 Energy
18
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
About the projects in this
database…
29%
5%
7%
10%
1%
5%
5%
38%
Defense
Space
Medical
Commercial electronics
Commercial transportation
Commercial software
Energy
Semiconductor fabrication
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
The benchmarking revealed 7 percentile groups in
which the project defect densities are clustered
20
•Percentile group predictions…
•Pertain to a specific product release
•Based on the number of risks and strengths
•Can only change if or when risks or strengths change
•Some risks/strengths are temporary; others can’t be changed at all
•Can transition in the wrong direction on same product if
•New risks/obstacles added
•Strengths are abandoned
•World class does not mean defect free. It simply means better than
the defect density ranges in database.
Fewer fielded defects
97%
Failed
10%
Very
good
75%
Fair
50%
Average
25%
Good
More risks than strengths More strengths than risksStrengths and risks
Offset each other
More fielded defects
90%
Poor
3%
World
Class
Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.

Weitere ähnliche Inhalte

Was ist angesagt?

Thick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdfThick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdfSouvikRoy114738
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testingTharinda Liyanage
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentationBelatrix Software
 
Fundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDFundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDBatyr Nuryyev
 
Introduction to appDynamics
Introduction to appDynamics Introduction to appDynamics
Introduction to appDynamics Siddhanta Rath
 
Thick Application Penetration Testing: Crash Course
Thick Application Penetration Testing: Crash CourseThick Application Penetration Testing: Crash Course
Thick Application Penetration Testing: Crash CourseScott Sutherland
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testingsonukalpana
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance TestingAtul Pant
 
Selenium Automation Testing Interview Questions And Answers
Selenium Automation Testing Interview Questions And AnswersSelenium Automation Testing Interview Questions And Answers
Selenium Automation Testing Interview Questions And AnswersAjit Jadhav
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overviewsharadkjain
 
Performance Testing
Performance TestingPerformance Testing
Performance Testingsharmaparish
 
Welcome to the Jungle: Pentesting AWS
Welcome to the Jungle: Pentesting AWSWelcome to the Jungle: Pentesting AWS
Welcome to the Jungle: Pentesting AWSMike Felch
 
Postman: An Introduction for Developers
Postman: An Introduction for DevelopersPostman: An Introduction for Developers
Postman: An Introduction for DevelopersPostman
 
VIPER Labs - VOIP Security - SANS Summit
VIPER Labs - VOIP Security - SANS SummitVIPER Labs - VOIP Security - SANS Summit
VIPER Labs - VOIP Security - SANS SummitShah Sheikh
 
Android Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamAndroid Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamMohammed Adam
 
DevSecOps at Agile 2019
DevSecOps at   Agile 2019 DevSecOps at   Agile 2019
DevSecOps at Agile 2019 Elizabeth Ayer
 
Understanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryUnderstanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryDaniel Miessler
 

Was ist angesagt? (20)

Thick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdfThick Client Penetration Testing.pdf
Thick Client Penetration Testing.pdf
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
 
Fundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CDFundamentals of DevOps and CI/CD
Fundamentals of DevOps and CI/CD
 
Introduction to appDynamics
Introduction to appDynamics Introduction to appDynamics
Introduction to appDynamics
 
Thick Application Penetration Testing: Crash Course
Thick Application Penetration Testing: Crash CourseThick Application Penetration Testing: Crash Course
Thick Application Penetration Testing: Crash Course
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
 
Jmeter Performance Testing
Jmeter Performance TestingJmeter Performance Testing
Jmeter Performance Testing
 
Selenium Automation Testing Interview Questions And Answers
Selenium Automation Testing Interview Questions And AnswersSelenium Automation Testing Interview Questions And Answers
Selenium Automation Testing Interview Questions And Answers
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
API Testing for everyone.pptx
API Testing for everyone.pptxAPI Testing for everyone.pptx
API Testing for everyone.pptx
 
Welcome to the Jungle: Pentesting AWS
Welcome to the Jungle: Pentesting AWSWelcome to the Jungle: Pentesting AWS
Welcome to the Jungle: Pentesting AWS
 
Postman: An Introduction for Developers
Postman: An Introduction for DevelopersPostman: An Introduction for Developers
Postman: An Introduction for Developers
 
VIPER Labs - VOIP Security - SANS Summit
VIPER Labs - VOIP Security - SANS SummitVIPER Labs - VOIP Security - SANS Summit
VIPER Labs - VOIP Security - SANS Summit
 
Android Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamAndroid Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed Adam
 
DevSecOps at Agile 2019
DevSecOps at   Agile 2019 DevSecOps at   Agile 2019
DevSecOps at Agile 2019
 
Api testing
Api testingApi testing
Api testing
 
Understanding Cross-site Request Forgery
Understanding Cross-site Request ForgeryUnderstanding Cross-site Request Forgery
Understanding Cross-site Request Forgery
 

Andere mochten auch

Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Ann Marie Neufelder
 
Revised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityRevised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityAnn Marie Neufelder
 
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...Brasscom
 
Rodillos vibratorios en Obra
Rodillos vibratorios en ObraRodillos vibratorios en Obra
Rodillos vibratorios en ObraJOHNNY JARA RAMOS
 
Mastery Journal Timeline by Laurence Ramsey
Mastery Journal Timeline by Laurence Ramsey Mastery Journal Timeline by Laurence Ramsey
Mastery Journal Timeline by Laurence Ramsey Laurence Ramsey
 
Claudio Gagliardini - Social Media: marketing o relazioni
Claudio Gagliardini - Social Media: marketing o relazioniClaudio Gagliardini - Social Media: marketing o relazioni
Claudio Gagliardini - Social Media: marketing o relazioniElena Minchenok
 
IN-salary-guide-2015
IN-salary-guide-2015IN-salary-guide-2015
IN-salary-guide-2015Abhisek Gupta
 
FEDOROV, A. MEDIA LITERACY EDUCATION. МOSCOW: ICO “INFORMATION FOR ALL”. ...
FEDOROV, A.  MEDIA  LITERACY  EDUCATION.  МOSCOW: ICO “INFORMATION FOR ALL”. ...FEDOROV, A.  MEDIA  LITERACY  EDUCATION.  МOSCOW: ICO “INFORMATION FOR ALL”. ...
FEDOROV, A. MEDIA LITERACY EDUCATION. МOSCOW: ICO “INFORMATION FOR ALL”. ...Alexander Fedorov
 
Minteer, 777X Fuel System Team Lead Historical Resume 170201
Minteer, 777X Fuel System Team Lead Historical Resume 170201Minteer, 777X Fuel System Team Lead Historical Resume 170201
Minteer, 777X Fuel System Team Lead Historical Resume 170201David Minteer
 
Remodelación de París y eclecticismo
Remodelación de París y eclecticismoRemodelación de París y eclecticismo
Remodelación de París y eclecticismoElianebutterfly
 
Public Matters December 2015
Public Matters December 2015Public Matters December 2015
Public Matters December 2015Carly Mars
 
줄기세포화장품
줄기세포화장품줄기세포화장품
줄기세포화장품zenithbrain78
 

Andere mochten auch (20)

Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...
 
Revised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityRevised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software Reliability
 
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...
MANIFESTAÇÃO AO SUBSTITUTIVO DO SENADO FEDERAL AO PROJETO DE LEI DA CÂMARA Nº...
 
Tic
TicTic
Tic
 
Rodillos vibratorios en Obra
Rodillos vibratorios en ObraRodillos vibratorios en Obra
Rodillos vibratorios en Obra
 
Prezi
PreziPrezi
Prezi
 
Mastery Journal Timeline by Laurence Ramsey
Mastery Journal Timeline by Laurence Ramsey Mastery Journal Timeline by Laurence Ramsey
Mastery Journal Timeline by Laurence Ramsey
 
journal od tourims_11 (4)
journal od tourims_11 (4)journal od tourims_11 (4)
journal od tourims_11 (4)
 
Claudio Gagliardini - Social Media: marketing o relazioni
Claudio Gagliardini - Social Media: marketing o relazioniClaudio Gagliardini - Social Media: marketing o relazioni
Claudio Gagliardini - Social Media: marketing o relazioni
 
IN-salary-guide-2015
IN-salary-guide-2015IN-salary-guide-2015
IN-salary-guide-2015
 
Dist.book2
Dist.book2Dist.book2
Dist.book2
 
FEDOROV, A. MEDIA LITERACY EDUCATION. МOSCOW: ICO “INFORMATION FOR ALL”. ...
FEDOROV, A.  MEDIA  LITERACY  EDUCATION.  МOSCOW: ICO “INFORMATION FOR ALL”. ...FEDOROV, A.  MEDIA  LITERACY  EDUCATION.  МOSCOW: ICO “INFORMATION FOR ALL”. ...
FEDOROV, A. MEDIA LITERACY EDUCATION. МOSCOW: ICO “INFORMATION FOR ALL”. ...
 
Minteer, 777X Fuel System Team Lead Historical Resume 170201
Minteer, 777X Fuel System Team Lead Historical Resume 170201Minteer, 777X Fuel System Team Lead Historical Resume 170201
Minteer, 777X Fuel System Team Lead Historical Resume 170201
 
GlobalmkgPart2
GlobalmkgPart2GlobalmkgPart2
GlobalmkgPart2
 
Chapter05
Chapter05Chapter05
Chapter05
 
Remodelación de París y eclecticismo
Remodelación de París y eclecticismoRemodelación de París y eclecticismo
Remodelación de París y eclecticismo
 
Public Matters December 2015
Public Matters December 2015Public Matters December 2015
Public Matters December 2015
 
줄기세포화장품
줄기세포화장품줄기세포화장품
줄기세포화장품
 
LoanSafe Risk Manager
LoanSafe Risk ManagerLoanSafe Risk Manager
LoanSafe Risk Manager
 
Media Kit Health Plus
Media Kit   Health PlusMedia Kit   Health Plus
Media Kit Health Plus
 

Ähnlich wie The Top Ten things that have been proven to effect software reliability

The Top Ten things that have been proven to effect software reliability
The Top Ten things that have been proven to effect software reliabilityThe Top Ten things that have been proven to effect software reliability
The Top Ten things that have been proven to effect software reliabilityAnn Marie Neufelder
 
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdf
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdfthe-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdf
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdfmattcs901
 
real simple reliable software
real simple reliable software real simple reliable software
real simple reliable software AnnMarieNeufelder1
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineeringMark Turner CRP
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software managementmeena466141
 
IEEE 1633 Recommended Practices for Reliable Software
IEEE 1633 Recommended Practices for Reliable SoftwareIEEE 1633 Recommended Practices for Reliable Software
IEEE 1633 Recommended Practices for Reliable SoftwareAnn Marie Neufelder
 
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Ann Marie Neufelder
 
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGUnit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGSangeetha Rangarajan
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
 
Software Development Lifecycle Presentation
Software Development Lifecycle PresentationSoftware Development Lifecycle Presentation
Software Development Lifecycle Presentationssuser645e24
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemRogue Wave Software
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycleDiUS
 
Software Common Defect Enumeration
Software Common Defect EnumerationSoftware Common Defect Enumeration
Software Common Defect EnumerationAnnMarieNeufelder1
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdfMUSAIDRIS15
 
The Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxThe Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxssusera34210
 
Rhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software
 
IEEE 1633 Recommended Practice on Software Reliability
IEEE 1633 Recommended Practice on Software ReliabilityIEEE 1633 Recommended Practice on Software Reliability
IEEE 1633 Recommended Practice on Software ReliabilityHilaire (Ananda) Perera P.Eng.
 
05_SoftwareTesting.pdf student of comuter
05_SoftwareTesting.pdf student of comuter05_SoftwareTesting.pdf student of comuter
05_SoftwareTesting.pdf student of comuterabdulghaffarfrotan20
 

Ähnlich wie The Top Ten things that have been proven to effect software reliability (20)

The Top Ten things that have been proven to effect software reliability
The Top Ten things that have been proven to effect software reliabilityThe Top Ten things that have been proven to effect software reliability
The Top Ten things that have been proven to effect software reliability
 
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdf
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdfthe-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdf
the-top-ten-things-that-have-been-proven-to-effect-software-reliability-1.pdf
 
real simple reliable software
real simple reliable software real simple reliable software
real simple reliable software
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineering
 
Introduction to software FMEA
Introduction to software FMEAIntroduction to software FMEA
Introduction to software FMEA
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software management
 
IEEE 1633 Recommended Practices for Reliable Software
IEEE 1633 Recommended Practices for Reliable SoftwareIEEE 1633 Recommended Practices for Reliable Software
IEEE 1633 Recommended Practices for Reliable Software
 
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...Reliable software in a continuous integration/continuous deployment (CI/CD) e...
Reliable software in a continuous integration/continuous deployment (CI/CD) e...
 
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERINGUnit i FUNDAMENTALS OF SOFTWARE ENGINEERING
Unit i FUNDAMENTALS OF SOFTWARE ENGINEERING
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 
Software Development Lifecycle Presentation
Software Development Lifecycle PresentationSoftware Development Lifecycle Presentation
Software Development Lifecycle Presentation
 
Cyber security - It starts with the embedded system
Cyber security - It starts with the embedded systemCyber security - It starts with the embedded system
Cyber security - It starts with the embedded system
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
 
Software Common Defect Enumeration
Software Common Defect EnumerationSoftware Common Defect Enumeration
Software Common Defect Enumeration
 
Quality Software Development
Quality Software DevelopmentQuality Software Development
Quality Software Development
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdf
 
The Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docxThe Software Engineering Profession SWE311The Software Enginee.docx
The Software Engineering Profession SWE311The Software Enginee.docx
 
Rhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software Quality Assurance Services
Rhonda Software Quality Assurance Services
 
IEEE 1633 Recommended Practice on Software Reliability
IEEE 1633 Recommended Practice on Software ReliabilityIEEE 1633 Recommended Practice on Software Reliability
IEEE 1633 Recommended Practice on Software Reliability
 
05_SoftwareTesting.pdf student of comuter
05_SoftwareTesting.pdf student of comuter05_SoftwareTesting.pdf student of comuter
05_SoftwareTesting.pdf student of comuter
 

Mehr von Ann Marie Neufelder

Software Failure Modes Effects Analysis Overview
Software Failure Modes Effects Analysis OverviewSoftware Failure Modes Effects Analysis Overview
Software Failure Modes Effects Analysis OverviewAnn Marie Neufelder
 
Five Common Mistakes made when Conducting a Software FMECA
Five Common Mistakes made when Conducting a Software FMECAFive Common Mistakes made when Conducting a Software FMECA
Five Common Mistakes made when Conducting a Software FMECAAnn Marie Neufelder
 
Overview of software reliability engineering
Overview of software reliability engineeringOverview of software reliability engineering
Overview of software reliability engineeringAnn Marie Neufelder
 
An Introduction to Software Failure Modes Effects Analysis (SFMEA)
An Introduction to Software Failure Modes Effects Analysis (SFMEA)An Introduction to Software Failure Modes Effects Analysis (SFMEA)
An Introduction to Software Failure Modes Effects Analysis (SFMEA)Ann Marie Neufelder
 
Top Ten things that have been proven to effect software reliability
Top Ten things that have been proven to effect software reliabilityTop Ten things that have been proven to effect software reliability
Top Ten things that have been proven to effect software reliabilityAnn Marie Neufelder
 
Introduction to Software Failure Modes Effects Analysis
Introduction to Software Failure Modes Effects AnalysisIntroduction to Software Failure Modes Effects Analysis
Introduction to Software Failure Modes Effects AnalysisAnn Marie Neufelder
 
Predict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenPredict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenAnn Marie Neufelder
 
Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Ann Marie Neufelder
 

Mehr von Ann Marie Neufelder (8)

Software Failure Modes Effects Analysis Overview
Software Failure Modes Effects Analysis OverviewSoftware Failure Modes Effects Analysis Overview
Software Failure Modes Effects Analysis Overview
 
Five Common Mistakes made when Conducting a Software FMECA
Five Common Mistakes made when Conducting a Software FMECAFive Common Mistakes made when Conducting a Software FMECA
Five Common Mistakes made when Conducting a Software FMECA
 
Overview of software reliability engineering
Overview of software reliability engineeringOverview of software reliability engineering
Overview of software reliability engineering
 
An Introduction to Software Failure Modes Effects Analysis (SFMEA)
An Introduction to Software Failure Modes Effects Analysis (SFMEA)An Introduction to Software Failure Modes Effects Analysis (SFMEA)
An Introduction to Software Failure Modes Effects Analysis (SFMEA)
 
Top Ten things that have been proven to effect software reliability
Top Ten things that have been proven to effect software reliabilityTop Ten things that have been proven to effect software reliability
Top Ten things that have been proven to effect software reliability
 
Introduction to Software Failure Modes Effects Analysis
Introduction to Software Failure Modes Effects AnalysisIntroduction to Software Failure Modes Effects Analysis
Introduction to Software Failure Modes Effects Analysis
 
Predict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenPredict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is Written
 
Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...Four things that are almost guaranteed to reduce the reliability of a softwa...
Four things that are almost guaranteed to reduce the reliability of a softwa...
 

Kürzlich hochgeladen

Low rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbineLow rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbineAftabkhan575376
 
Roushan Kumar Java oracle certificate
Roushan Kumar Java oracle certificate Roushan Kumar Java oracle certificate
Roushan Kumar Java oracle certificate RaushanKumar452467
 
Lect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptxLect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptxMonirHossain707319
 
Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2T.D. Shashikala
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationDr. Radhey Shyam
 
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamDr. Radhey Shyam
 
Top 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering ScientistTop 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering Scientistgettygaming1
 
School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdfKamal Acharya
 
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdfRESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Planetary Gears of automatic transmission of vehicle
Planetary Gears of automatic transmission of vehiclePlanetary Gears of automatic transmission of vehicle
Planetary Gears of automatic transmission of vehicleahmedmostafa941217
 
İTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopİTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopEmre Günaydın
 
Online resume builder management system project report.pdf
Online resume builder management system project report.pdfOnline resume builder management system project report.pdf
Online resume builder management system project report.pdfKamal Acharya
 
Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdfKamal Acharya
 
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...Roi Lipman
 
Online book store management system project.pdf
Online book store management system project.pdfOnline book store management system project.pdf
Online book store management system project.pdfKamal Acharya
 
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...Complex plane, Modulus, Argument, Graphical representation of a complex numbe...
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...MohammadAliNayeem
 
2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edgePaco Orozco
 
Laundry management system project report.pdf
Laundry management system project report.pdfLaundry management system project report.pdf
Laundry management system project report.pdfKamal Acharya
 
Electrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineElectrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineJulioCesarSalazarHer1
 
Construction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptxConstruction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptxwendy cai
 

Kürzlich hochgeladen (20)

Low rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbineLow rpm Generator for efficient energy harnessing from a two stage wind turbine
Low rpm Generator for efficient energy harnessing from a two stage wind turbine
 
Roushan Kumar Java oracle certificate
Roushan Kumar Java oracle certificate Roushan Kumar Java oracle certificate
Roushan Kumar Java oracle certificate
 
Lect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptxLect_Z_Transform_Main_digital_image_processing.pptx
Lect_Z_Transform_Main_digital_image_processing.pptx
 
Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2Research Methodolgy & Intellectual Property Rights Series 2
Research Methodolgy & Intellectual Property Rights Series 2
 
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and VisualizationKIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
KIT-601 Lecture Notes-UNIT-5.pdf Frame Works and Visualization
 
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data StreamKIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
KIT-601 Lecture Notes-UNIT-3.pdf Mining Data Stream
 
Top 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering ScientistTop 13 Famous Civil Engineering Scientist
Top 13 Famous Civil Engineering Scientist
 
School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdf
 
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdfRESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
RESORT MANAGEMENT AND RESERVATION SYSTEM PROJECT REPORT.pdf
 
Planetary Gears of automatic transmission of vehicle
Planetary Gears of automatic transmission of vehiclePlanetary Gears of automatic transmission of vehicle
Planetary Gears of automatic transmission of vehicle
 
İTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering WorkshopİTÜ CAD and Reverse Engineering Workshop
İTÜ CAD and Reverse Engineering Workshop
 
Online resume builder management system project report.pdf
Online resume builder management system project report.pdfOnline resume builder management system project report.pdf
Online resume builder management system project report.pdf
 
Paint shop management system project report.pdf
Paint shop management system project report.pdfPaint shop management system project report.pdf
Paint shop management system project report.pdf
 
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
The battle for RAG, explore the pros and cons of using KnowledgeGraphs and Ve...
 
Online book store management system project.pdf
Online book store management system project.pdfOnline book store management system project.pdf
Online book store management system project.pdf
 
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...Complex plane, Modulus, Argument, Graphical representation of a complex numbe...
Complex plane, Modulus, Argument, Graphical representation of a complex numbe...
 
2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge
 
Laundry management system project report.pdf
Laundry management system project report.pdfLaundry management system project report.pdf
Laundry management system project report.pdf
 
Electrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission lineElectrostatic field in a coaxial transmission line
Electrostatic field in a coaxial transmission line
 
Construction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptxConstruction method of steel structure space frame .pptx
Construction method of steel structure space frame .pptx
 

The Top Ten things that have been proven to effect software reliability

  • 1. Softrel, LLC 20 Towne Drive #130 Bluffton, SC 29910 http://www.softrel.com 321-514-4659 January 22, 2015 amneufelder@softrel.com Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 2. About Ann Marie Neufelder  Chairperson of the IEEE 1633 Recommended Practices for Software Reliability  Since 1983 has been a software engineer or manager for DoD and commercial software applications  Co-Authored first DoD Guidebook on software reliability  Developed NASAs webinar on Software FMEA and FTA  Has trained every NASA center and every major defense contractor on software reliability  Has patent pending for model to predict software defect density  Has conducted software reliability predictions for numerous military and commercial vehicles and aircraft, space systems, medical devices and equipment, semiconductors, commercial electronics. 2 Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 3. There are 3 basic things that determine the software MTTF and MTTCF  This presentation will focus on the defect and defect density reduction of defects that escape development and testing Factor Sensitivity Comments Fielded defect density/defects Cutting this in half -> doubles MTBF. Reducing defects requires elimination of development practices that aren’t effective as well as embracing those that are Effective code size Cutting effective size in half -> doubles MTBF. • COTS and reuse can have big impact • Error in size prediction has direct impact on error in reliability prediction Reliability growth– how many hours real end user operate tank per month after deployment Non-linear relationship. More of this after delivery means MTTF at end of growth period is better but MTTF upon delivery is less because more defects are found earlier. Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 4. If you ask a software engineer to rank the top 10 factors associated with unreliable software – this is what they might say… Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder. Ranking Factors Where this factor actually ranks 1 Not enough calendar time to finish 457 - because usually late projects are late because they started late and not because of insufficient time 2 Too much noise 352 3 Insufficient design tools 126 4 Agile development So far, not a single project in our DB used this completely and consistently from start to finish. 5 Existing code is too difficult to change 146 6 Number of years of experience with a particular language 400 – What matters is the industry experience 7 Our software is inherently more difficult to develop 370 – Everyone thinks this 8 Everybody has poor coding style 423 – While code with good style may be less error prone, that doesn’t mean its defect free 9 Object oriented design and code 395 – While OO code may be more cohesive, that doesn’t mean its defect free 10 If they would just leave me alone I could write great code Our data shows that the reverse is true
  • 5. If you ask a software process engineer to rank the top 10 factors associated with unreliable software – this is what they might say… Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder. Ranking Factors Where this factor actually ranks 1 Capability Maturity 417 - Organizations with low CMM can and have developed reliable software. Defect density reduction in our DB plateaued at level 3. 2 Process improvement activities 8 – The right activities tailored to the process can avoid a failed project but not necessarily result in a successful project 3 Metrics 54 – Not all metrics are relevant for reducing defects. Too many metrics or poorly timed metrics won’t reduce defects either. 4 Code reviews 366 - Because the criteria for the reviews is often missing or not relevant to reducing defects 5 Independent SQA audits 359 – Probability because the audits focus on product and often miss technique 6 Popular metrics such as complexity 430 – Fastest way tor reduce complexity is to reduce exception handling which is necessary for reliability. 7 Peer reviews #368 - Because peer reviews are often lacking a clear agenda and because peers don’t necessarily understand the requirements 8 Traceability of requirements 61 – The problem is what’s NOT in the requirements. Requirements almost never discuss negative or unexpected behavior. 9 Independent test organization 295 – Organizations with this are less motivated to do developer testing 10 High ratio of testers to software engineers 380 – Those that have this are often not doing developer testing
  • 6. This is the top 10 list based on hard facts and data 1. Avoid Big Blobs – “Code a little – Test a little”. Avoid big and long releases, avoid big teams working on same code, avoid reinvention of the wheel. Planning ahead and with daily or weekly detail. Micromanage the development progress. 2. Mandatory developer white box testing at module, class and integration level 3. Techniques that make it easier to visualize the requirements, design, code, test or defects 4. Identifying, designing, coding and testing what the software should NOT do 5. Understand the end user. Employ software engineers with DOMAIN experience. Involve customers in requirements, Prototyping, etc. 6. Not skipping requirements, design, unit test, test, change control, etc. even for small releases. 7. Defect reduction techniques – Formal product reviews, SFMEAs, root cause analysis. 8. Process improvement activities – tailored to the needs of the project 9. Maintaining version and source control, defect tracking, prioritizing changes. Avoiding undocumented changes to requirements, design or code. Verifying changes to code don’t have an unexpected impact. 10. Techniques for how to test the software better instead of longer Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 7. How the “Top Ten” list was developed  Since 1993 Ann Marie Neufelder has benchmarked 679 development factors versus actual defect data  156 factors were either employed by everyone or employed by no one in the database.  The benchmarking was conducted on the remaining 523 factors.  75 complete sets and 74 incomplete sets of actual fielded defect data  See backup slides for a summary of the projects in this database  Benchmarking results yielded  Ranked list of each factor by sensitivity to fielded defect density  A model to predict defect density before the code is even written  Refer to white paper “The Cold Hard Truth about Reliable Software, Revision 6e” Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 8. These are the actual fielded defect densities for each of the projects in the database. 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 0 10 20 30 40 50 60 Actual fielded defect density of each project in database If you can predict where your software release is with respect to those in our database, you can predict the reliability Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder. These software projects were distressed These software projects were successful
  • 9. The 523 factors and the 4 P’s and a T Factor category Number of factors in this category Examples of factors in this category Product 50 Size, complexity, OO design, whether the requirements are consistent, code that is old and fragile, etc. Product risks 12 Risks imposed by end users, government regulations, customers, product maturity, etc. People 38 Turnover, geographical location, amount of noise in work area, number of years of experience in the applicable industry, number of software people, ratio of software developers to testers, etc. Process 121 Procedures, compliance, exit criteria, standards, etc. Technique 302 The specific methods, approaches and tools that are used to develop the software. Example: Using a SFMEA to help identify the exceptions that should be designed and coded. Now let’s see which development activities have been covered. Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 10. The 523 factors by development phases/activities Activity associated with factor #Factors Scheduling and personnel assignments 32 Project execution – making sure that work gets done on time and with desired functionality 24 Software development planning 10 Requirements analysis 42 Architectural design 3 Design 32 Detailed design 22 Firmware design* 1 Graphical User Interface design* 2 Database design* 1 Network design* 1 Implementation – coding 54 Corrective action – correcting defects 11 Configuration Management (CM), source and version control 27 Unit testing – testing from a developers perspective 48 Systems testing – testing from a black box perspective 75 Regression testing – retesting after some changes have been made to the baseline 4 Defect tracking 17 Process improvement 24 Reliability engineering 18 Software Quality Assurance 25 No activity – these are related to operational profile and inherent risks 33 Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 11. The factors associated with increased defect density 1. Using short term contractors to write code that requires domain expertise and is sensitive to your company 2. Reinventing the wheel – failing to buy off the shelf when you can 3. Large projects spanning over many years with many people 4. “Throw over the wall” testing approach Now that we’ve seen what causes high defect density, let’s see what causes a failed project… Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 12. All failed projects had these things in common  They started the project late  They had more than 3 things that required a learning curve  New system/target hardware  New tools or environment  New processes  New product (version 1)  New software people  They failed to mitigate known risks early in the project What’s not on these lists is as important as what IS on these lists…. Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 13. The factors that didn’t correlate one way or the other to reduced defect density  Metrics such as complexity, depth of nesting, etc.  Interruptions to software engineers (some interruptions are good while others are not)  Having more than 40% of staff doing testing full time (usually indicates poor developer testing)  CMMi levels > 3  Coding standards that don’t have criteria that are actually related to defects  Metrics that aren’t useful for either progress reporting, scheduling or defect removal  Peer walkthrus (when the peers don’t have domain or industry experience)  Superficial test cases  Number of years of experience with a particular language Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 14. Conclusions  The benchmarking results were used to identify the factors that result in fewer or more defects  The ranked list was used to develop a model to predict defect density before the code is written  This model is available in ○ The Software Reliability Toolkit ○ The Software Reliability Toolkit Training Class ○ The Frestimate software ○ The Software Reliability Assessment services  Traditional software reliability models are used late in testing when there is little opportunity to improve the software without delaying the schedule Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 15. Backup slides Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 16. Software reliability defined  Probability of success of the software over some specified mission time  Term commonly used to describe an entire collection of software metrics.  Also defined as a function of  Inherent defects ○ Introduced during requirements translation, design, code, corrective action, integration, and interface definition with other software and hardware  Operational profile ○ Duty cycle ○ Spectrum of end users ○ Number of install sites/end users ○ Product maturity These things can be predicted before the code is written Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 17. Related Terms  Error  Related to human mistakes made while developing the software  Ex: Human forgets that b may approach 0 in algorithm c = a/b  Fault or defect  Related to the design or code  Ex: This code is implemented without exception handling “c = a/b;”  Defect rate is from developer’s perspective  Defects measured/predicted during testing or operation  Defect density = defects/normalized size  Failure  An event  Ex: During execution the conditions are so that the value of b approaches 0 and the software crashes or hangs  Failure rate is from system or end user’s perspective  KSLOC  1000 source lines of code – common measure of software size Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 18. Who’s doing software reliability predictions?  Space systems  Missiles defense systems  Naval craft  Commercial ground vehicles  Military ground vehicles  Inertial Navigation and GPS  Command and Control and Communication  Electronic Warfare  General aviation  Medical devices  Healthcare/EMR software  Major appliances  Commercial electronics  Semiconductor fabrication equipment  HVAC  Energy 18 Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 19. About the projects in this database… 29% 5% 7% 10% 1% 5% 5% 38% Defense Space Medical Commercial electronics Commercial transportation Commercial software Energy Semiconductor fabrication Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.
  • 20. The benchmarking revealed 7 percentile groups in which the project defect densities are clustered 20 •Percentile group predictions… •Pertain to a specific product release •Based on the number of risks and strengths •Can only change if or when risks or strengths change •Some risks/strengths are temporary; others can’t be changed at all •Can transition in the wrong direction on same product if •New risks/obstacles added •Strengths are abandoned •World class does not mean defect free. It simply means better than the defect density ranges in database. Fewer fielded defects 97% Failed 10% Very good 75% Fair 50% Average 25% Good More risks than strengths More strengths than risksStrengths and risks Offset each other More fielded defects 90% Poor 3% World Class Copyright © SoftRel, LLC 2011. This presentation may not be copied in part or in whole without written permission from Ann Marie Neufelder.

Hinweis der Redaktion

  1. As of this writing, there is not a universally accepted definition of software reliability. The definition shown above, however, is commonly used in industry. The definition is basically stating that software reliability is a function of how software is used and the inherent fault content of the software. The most controversial part of this definition is the unqualified use of the term “time”. We will define time later in this presentation.
  2. This chart simplifies the differences between errors, faults and failures. During this class we will be counting either faults or failures depending on what phase of the lifecycle war are measuring and what models we are using to measure reliability.