SlideShare ist ein Scribd-Unternehmen logo
1 von 47
Software Quality:
The Elusive Target?

  Syed Sohail Javaad


    28th July 2011
Presentation Theme
•   Introduction to Quality
•   Software Quality
•   Addressing Software Quality
•   Final Discussion
•   Theme for the Term Paper




                  Software Quality - An Elusive Target   2
Introduction to Quality
Introduction to Quality*
 • What is Quality?
 • How do writers define Quality?
      –   Conformance to requirements
      –   Customers’ reactions
      –   Notions of completeness
      –   Notions of cost effectiveness
 • Defining Quality is a problem. Why?
      – Ambiguous and subjective.
            •   …lies in the eye of beholder
            •   Depends on who is the respondent?
            •   Depends on requirements and psychology
            •   Quality Vs. Grade


* Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on
                 Quality Systems (Winter Quality at UW). Used with permission
                                      Software 2011 - An Elusive Target                            4
Introduction to Quality*
 • Measurement and Scope:
      – How much Quality is good enough?
      – Where to start and where to stop?
 • Cost-Benefit trade-off
      – Example: Five 9s
 • How to achieve Quality?
      – Is quality about documentation only or standards or
        processes or everything?
 • Who is responsible for Quality?

* Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on
                 Quality Systems (Winter Quality at UW). Used with permission
                                      Software 2011 - An Elusive Target                            5
Introduction to Quality
• Misconceptions*
      – Quality is only about testing and audits
      – Quality is the job of Quality department
      – Even with all these, you may not have actual
        quality or a quality system




* Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on
                 Quality Systems (Winter Quality at UW). Used with permission
                                      Software 2011 - An Elusive Target                            6
Cost of Quality
• Cost of providing acceptable quality
• Two types of costs:
   – Conformance costs: defect prevention and inspection
   – Non-conformance costs: losses from defects (reworks) and
     product failures
• Improvements in quality, therefore leads to
  lowered cost because of reduced defects, less
  process failures and opportunity costs


                     Software Quality - An Elusive Target   7
Returns to Quality
• Focusing on quality by just reducing costs may
  not result in better performance.
• Focus on revenue generation is also important




                 Software Quality - An Elusive Target   8
PMBOK’s Approach




   Software Quality - An Elusive Target   9
Software Quality
Characteristics of Software
• Deming: “If you do not have a competitor today, you will get
  one tomorrow”
• Appreciating that software is different because it is
  characterised by volatility and rapid change
• Low barriers to entry in the market
• Internet enabled market place provides variety and product
  knowledge to customers
• Producing a product without defects is not sufficient
• Knowing the customer and the environment is really
  important
• Cooperation and Collaboration are the keys to success

                     Software Quality - An Elusive Target    11
What is Software Quality?
• A recent survey of Chief Information Officers
  (CIOs)indicates that ‘‘Improve IT quality” is one of
  the top concerns facing IT executives
• But the question is: What is Software Quality?
• “The extent to which software satisfies its users”
• It is not only concerned with meeting user
  requirements but also with criteria such as ease
  of learning, ease of use, enjoyment to use and so
  on…
                   Software Quality - An Elusive Target   12
User           Developer              Measurable        
                             External quality
     features            x                                          yes
      speed              x                         x                yes
      space              x                         x                yes
  network usage          x                         x                yes
     stability           x                         x                yes
    robustness           x                         x             somewhat
   ease-of-use           x                                       subjective
   determinism           x                         x                yes
back-compatibility       x                                          yes
     security            x                                        difficult
power consumption        x                                        difficult
                             Internal quality
  test coverage                                    x                yes
    testability                                    x               hard
    portability                                    x             somewhat
 thread-safeness                                   x               hard
   conciseness                                     x             somewhat
 maintainability                                   x               hard
 documentation                                     x             subjective
     legibility                                    x             subjective
    scalability                                    x             somewhat

                      Software Quality - An Elusive Target                    13
Views on Software Quality*
   • Transcendental view: Ideal
   • User View: Fitness for purpose; product
     characteristics; product usability
   • Manufacturing View: “Did you build the thing right”;
     believes that process improvement will lead to
     improved product quality; may lead to standards
   • Product View: focus on Internal and inherent
     characteristics of a product eg. quality of code
   • Value based view: quality is what the customer is
     willing to pay for; value for money
* D. Garvin, “What Does “Product Quality” Really Mean?” Sloan Management Review, Fall 1984, pp. 25-45
                                          Software Quality - An Elusive Target                          14
Measurement of Software Quality*
     The way we choose to measure quality depends on the
     view point we take…
     •User View: Quality concept can be broken down into
     directly measurable attributes
     •Manufacturing View: measuring defect counts and
     rework costs (cost of defect correction)
     •Business View: How the product enables a business to
     expand and gain more market share


* Kitchenham, B.; Pfleeger, S.L.; , "Software quality: the elusive target [special issues section]," Software, IEEE ,
vol.13, no.1, pp.12-21, Jan 1996; doi: 10.1109/52.476281
                                              Software Quality - An Elusive Target                                      15
Some Measures of Software Quality
•   Number of pre- and post-release defects
•   Defect Density
•   Mean Time Between Failures (MTFB)
•   Customer Perceived Quality




                    Software Quality - An Elusive Target   16
Software Quality: Greek Chimera*
   • Why?
         – the perceived scale of the
           problem,
         – the diversity of quality defects
           in software, and
         – the difficulty of factoring high
           level quality attributes down to
           tangible properties
         – Market Structure
         – Spread of Internet
         – ??



*R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284
                                         Software Quality - vol. 13, no. 1,                                      17
Addressing Software Quality




        Software Quality - An Elusive Target   18
The Software Development Process
Waterfall




             Software Quality - An Elusive Target   19
The Software Development Process
Agile




           Software Quality - An Elusive Target   20
The Software Development Process
• Iterative approach should not be reactive and
  must be carefully planned
• Frequent and unplanned iterations may lead
  to deviations from the desired results




                 Software Quality - An Elusive Target   21
Addressing Product Quality*
   • Quality Model Framework:
         – Links product properties that influence Quality with a set of high-level quality attributes
   •    Quality carrying properties (tangible):
         – Internal Correctness: Component’s normal form should not be violated eg. Every loop
           must have a termination point
         – Contextual Correctness: Avoiding redundancy and repetition
         – Descriptive: Easy to understand code, variable names etc.
   •    Software Quality Attributes (intangible):
         – high-level attributes like functionality, reliability, efficiency and maintainability
         – Process maturity (assuming that it impacts product quality)
   •    Define linkages:
         – Example: redundancy affects efficiency and maintainability
   • Implement the model for the key products of software
     development: Implementation, Design and Requirements


*R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284
                                         Software Quality - vol. 13, no. 1,                                      22
Addressing Product Quality*
   • Implementation Quality Model:
         – Role of programming languages; language structure and statements;
           data (variables, constants etc)
   • Requirements Quality Model:
         – Must be complete, precise, consistent, explicit, understandable,
           implementable, verifiable, traceable and non-redundant
         – Prototyping may be used to achieve this
   • Design Quality Model:
         – The design must show how each of these requirements is to be realized in the
           context of the overall system: focus on overall architecture
         – Reduced variety of software structure leads to reduced complexity




*R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284
                                         Software Quality - vol. 13, no. 1,                                      23
Addressing Product Quality
• Controlling defects controls cost
• But is it possible to prevent defects from
  passing on to the customer? Maybe.
• Is testing sufficient?
• What about rapidly changing requirements?
• Maybe a process oriented view is better?



                Software Quality - An Elusive Target   24
Software Quality - An Elusive Target   25
Improving Process for Improved
         Software Quality
• Process Improvements:
  – Total Quality Management
  – Six Sigma
  – Failure Mode and Effect Analysis (FMEA)
  – Design reviews
  – Voice of the Customers
  – Continuous Improvement (Including Process
    Improvements: CMMI, OPM3)
  – Software Quality Function Deployment (SQFD)

                 Software Quality - An Elusive Target   26
Software Quality Function
         Deployment (SQFD)
• Focuses on requirements planning phase
• Steps:
  – Customer requirements are solicited
  – Product specifications are generated using these
    requirements
  – Customers are asked to correlate between their
    requirements and the product specs
  – Customers are asked to prioritize their requirements
  – Product specification priorities are developed

                    Software Quality - An Elusive Target   27
SQFD - Benefits
• Improved User and Management Involvement
• Shorter development cycle
• Better communication between users and
  developers
• Improved quality overall




               Software Quality - An Elusive Target   28
Total Quality Management*
    • Instead of post-process inspection and testing focus
      should be on continuous Improvement in processes
      and response to user demands
    • Improvement in development quality leads to
      improved product quality
    • An increase in process standardization and tool
      capability can significantly increase the level of
      development quality
    • Does less reporting of defects by customers
      necessarily mean higher quality?
*Marcus A. Rothenberger , “Total quality in Software Quality - An ElusiveAn empirical study of quality drivers and benefits
                                            software development: Target                                              29
in Indian software projects” Information & Management (December 2010), 47 (7-8), pg. 372-379
Process Improvement

  •In assembled goods industry, strong
operational excellence in internal product
development processes positively impacts
market outcomes
  •In the context of software development in
some industries, the relationship between
quality and profitability may not be uniform
across all customers

                 Software Quality - An Elusive Target   30
Process Maturity
• Increased CMM levels could:
  • Improved software product quality (less defects)
  • lead to less operating cost
  • better product reliability
  • Adoption of standards by clients resulted in better
    requirements (reduced requirements volatility)
  • Result in higher development quality
• but…
  • Reduction in variance in quality resulting in uniformity
    in quality
  • doesn’t mean you start producing good software

                    Software Quality - An Elusive Target   31
Software Validation*
• Did you build the right thing?
• Why?
      – Usually required for regulated industries
      – To ensure design is correct
      – To reduce defects after changes are made
• Done in all phases of software development and
  everybody participates
• Validation is considered costly, brittle and more
  about documentation
• In practice, everybody looks for ways to avoid it
* Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on
                 Quality Systems (Winter Quality at UW). Used with permission
                                      Software 2011 - An Elusive Target                           32
Managing Quality on Projects
• Quality Management is a key area of project
  management
• Some recent observations:
  – Release the product, fixes will come later
  – Minimize the cost at the expense of customer
    inconvenience




                  Software Quality - An Elusive Target   33
Role of Quality Standards
• There are so many of them
• ISO, CMM, CMMI, IEEE, ANSI, AIAA
• Used for the certification function
• Can help ensure consistent process quality but
  their impact on product quality is unclear
• Can standards be imposed on program
  behaviour?
• Maybe be mandatory for some industries and
  may also provide legal cover

                  Software Quality - An Elusive Target   34
Will COTS lead to better
       Organizational Quality?
• Enterprise Software may be of good quality
  but its implementation might not be
• Post-Implementation Processes are more
  important than the Software itself
• But Software quality issues may aggravate the
  overall implementation
• Overall IT Architecture become more
  important and plays an important role in
  determining overall quality
                 Software Quality - An Elusive Target   35
Quality in Outsourcing*
 • Contracts as a means of managing risk and
   quality on project
 • Outsourcing (contracts) helps in improving
   overall quality
 • Clients can focus more on quality by
   outsourcing some of their activities
 • Fixed Price contracts provide better quality
   then Time and Material
* Gopal, A. and Koka, B. R. (2010), The Role of Contracts on Quality and Returns to Quality in
Offshore Software Development Outsourcing. Decision Sciences, 41: 491–516
                                      Software Quality - An Elusive Target                       36
Is Open Source Software (OSS) the
               Answer*
  • Does OSS have more Reliability, performance,
    scalability, security?

  • Equivalent OSS/FS applications
  are more reliable
  • MySQL database (a leading
  OSS/FS database) had fewer
  defects than a set of 200 proprietary
  programs used for comparison
  • Sites using Microsoft’s IIS web serving software have over double
    the average time offline than sites using the Apache software
  • Surveys report that GNU/Linux systems experience fewer viruses
    and successful cracks.

* http://www.dwheeler.com/oss_fs_why.html
                                 Software Quality - An Elusive Target   37
Open Source Software Development
                 Process*




* http://cio-nii.defense.gov/sites/oss/Open_Source_Software_(OSS)_FAQ.htm
                                   Software Quality - An Elusive Target     38
Quality In OSS
  • Open Source Software can be of higher
    quality*
       • Users track bugs to their root cause and fix them
       • Peer Reviews: Developers review each other’s
         code
       • Meritocracy
       • No resource or time pressure


* http://www.dwheeler.com/oss_fs_why.html
                                 Software Quality - An Elusive Target   39
Final Discussion




   Software Quality - An Elusive Target   40
Quality Issues
  • A software is not just a piece of code
  • It requires:
       •   hardware
       •   People
       •   Processes
       •   Policies and
       •   Other software (Operating systems, databases,
           languages, internet and so on)
  • Example: Enterprise Software
* http://www.dwheeler.com/oss_fs_why.html
                                 Software Quality - An Elusive Target   41
Quality Issues
  • So Software Quality is not an absolute concept
       – It is difficult to define…
       – But easy to blame
  • Propagation of internet is changing the
    concept of quality
       – More and continuous opportunity for testing
       – Easy to release upgrades
       – But requirements are also continuously evolving

* http://www.dwheeler.com/oss_fs_why.html
                                 Software Quality - An Elusive Target   42
Role of Organizational Politics
• Quality Manager is usually
  – not a position of power within the organization
  – Someone without a strong sponsor
• Is usually viewed as someone
  – who creates hurdles (and so increases cost)
  – Who is “not on our side”
• Quality Manager has to be more like a PMBOK
  Project Manager

                  Software Quality - An Elusive Target   43
Role of Quality Manager
•   A principled friend
•   Advisor
•   Relationship builder
•   Wise
•   Empathetic
•   Positive
•   And most importantly: political

                   Software Quality - An Elusive Target   44
Theme for the Term Paper
• How has the Concept of Software Quality
  evolved during the last three decades?
• What models and methods for managing
  quality have evolved?
• Is there an improvement in Software Quality?
• And is there any empirical evidence for this?



                 Software Quality - An Elusive Target   45
BACK TO SLIDE 1




Thank you




Software Quality - An Elusive Target                     46
BACK




Source: R. Geoff Dromey, "Cornering the Chimera," Quality - An Elusive Target no. 1, pp. 33-43, Jan. 1996,
                                          Software IEEE Software, vol. 13,                                      47
doi:10.1109/52.476284

Weitere ähnliche Inhalte

Was ist angesagt?

Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluationEric Lai
 
Software Quality Plan
Software Quality PlanSoftware Quality Plan
Software Quality Planguy_davis
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?Denys Zaiats
 
Software product quality
Software product qualitySoftware product quality
Software product qualitytumetr1
 
Lect2 quality factor
Lect2 quality factorLect2 quality factor
Lect2 quality factorbabak sh
 
Overview of Software QA and What is Software Quality
Overview of Software QA and What is Software QualityOverview of Software QA and What is Software Quality
Overview of Software QA and What is Software QualityUniversity of Dhaka
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 MuhammadTalha436
 
52892006 manual-testing-real-time
52892006 manual-testing-real-time52892006 manual-testing-real-time
52892006 manual-testing-real-timeSunil Pandey
 
Quality software management
Quality software managementQuality software management
Quality software managementArun Kumar
 
Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1Santhiya Grace
 
Mc call's software quality model
Mc call's software quality modelMc call's software quality model
Mc call's software quality modelYatharth Aggarwal
 
Ch 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleCh 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleKittitouch Suteeca
 

Was ist angesagt? (20)

Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluation
 
Software Quality Plan
Software Quality PlanSoftware Quality Plan
Software Quality Plan
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Software product quality
Software product qualitySoftware product quality
Software product quality
 
Lect2 quality factor
Lect2 quality factorLect2 quality factor
Lect2 quality factor
 
Overview of Software QA and What is Software Quality
Overview of Software QA and What is Software QualityOverview of Software QA and What is Software Quality
Overview of Software QA and What is Software Quality
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Testing banking apps
Testing banking appsTesting banking apps
Testing banking apps
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
 
52892006 manual-testing-real-time
52892006 manual-testing-real-time52892006 manual-testing-real-time
52892006 manual-testing-real-time
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
M017548895
M017548895M017548895
M017548895
 
Software quality management
Software quality management  Software quality management
Software quality management
 
Software Reliability
Software ReliabilitySoftware Reliability
Software Reliability
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Quality software management
Quality software managementQuality software management
Quality software management
 
Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1
 
Mc call's software quality model
Mc call's software quality modelMc call's software quality model
Mc call's software quality model
 
Ch 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycleCh 7 integrating quality activities in the projectlife cycle
Ch 7 integrating quality activities in the projectlife cycle
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Lecture1422914635
 

Andere mochten auch (20)

No silver bullet
No silver bulletNo silver bullet
No silver bullet
 
No silver bullet essence and accidents of software engineering
No silver bullet essence and accidents of software engineeringNo silver bullet essence and accidents of software engineering
No silver bullet essence and accidents of software engineering
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matrices
 
The looking glass
The looking glassThe looking glass
The looking glass
 
Finance
FinanceFinance
Finance
 
What is a noun
What is a nounWhat is a noun
What is a noun
 
Igcdp imperium
Igcdp imperiumIgcdp imperium
Igcdp imperium
 
Presentacion Aula Virtual
Presentacion Aula VirtualPresentacion Aula Virtual
Presentacion Aula Virtual
 
Chair
ChairChair
Chair
 
Xd review
Xd reviewXd review
Xd review
 
Vistaar
VistaarVistaar
Vistaar
 
ppt
pptppt
ppt
 
BI session
BI sessionBI session
BI session
 
Os & jd of cim
Os & jd of cimOs & jd of cim
Os & jd of cim
 
教學設計
教學設計教學設計
教學設計
 
ню
нюню
ню
 
Process of Delivery
Process of DeliveryProcess of Delivery
Process of Delivery
 
Internal ppt
Internal pptInternal ppt
Internal ppt
 
The millennials updates 15.9.2014
The millennials updates   15.9.2014The millennials updates   15.9.2014
The millennials updates 15.9.2014
 
HQTS Group
HQTS GroupHQTS Group
HQTS Group
 

Ähnlich wie Software Quality

Agile and Secure
Agile and SecureAgile and Secure
Agile and SecureDenim Group
 
Adressing requirements with agile practices
Adressing requirements with agile practicesAdressing requirements with agile practices
Adressing requirements with agile practicesfboisvert
 
Quality Concept
Quality ConceptQuality Concept
Quality ConceptAnand Jat
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software QualityAjeng Savitri
 
1_Software Quality Control.pptx
1_Software Quality Control.pptx1_Software Quality Control.pptx
1_Software Quality Control.pptxBahaAbuKbash
 
Application Assessment Techniques
Application Assessment TechniquesApplication Assessment Techniques
Application Assessment TechniquesDenim Group
 
Software Quality without Testing
Software Quality without TestingSoftware Quality without Testing
Software Quality without TestingNagarro
 
Testing Theories & Methodologies
Testing Theories & MethodologiesTesting Theories & Methodologies
Testing Theories & MethodologiesYi Xu
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdfMUSAIDRIS15
 
Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Denim Group
 
SQA_Lec#01-1.ppt
SQA_Lec#01-1.pptSQA_Lec#01-1.ppt
SQA_Lec#01-1.pptAhmad Abbas
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architectureGang Tao
 
Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?Source Conference
 
20110223a Special Report By Central Solutions
20110223a Special Report By Central Solutions20110223a Special Report By Central Solutions
20110223a Special Report By Central SolutionsJames 'Jim' Todd
 
Managing Software Debt - Quality Debt Focus - QASIG Kirkland
Managing Software Debt - Quality Debt Focus - QASIG KirklandManaging Software Debt - Quality Debt Focus - QASIG Kirkland
Managing Software Debt - Quality Debt Focus - QASIG KirklandChris Sterling
 
A Roadmap to Enterprise Quality
A Roadmap to Enterprise QualityA Roadmap to Enterprise Quality
A Roadmap to Enterprise QualityJeff Bramwell
 
requirement engineering
requirement engineeringrequirement engineering
requirement engineeringanam singla
 

Ähnlich wie Software Quality (20)

Agile and Secure
Agile and SecureAgile and Secure
Agile and Secure
 
Adressing requirements with agile practices
Adressing requirements with agile practicesAdressing requirements with agile practices
Adressing requirements with agile practices
 
Quality Concept
Quality ConceptQuality Concept
Quality Concept
 
CIS512_Topic1.pptx
CIS512_Topic1.pptxCIS512_Topic1.pptx
CIS512_Topic1.pptx
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
 
1_Software Quality Control.pptx
1_Software Quality Control.pptx1_Software Quality Control.pptx
1_Software Quality Control.pptx
 
Quality
QualityQuality
Quality
 
Application Assessment Techniques
Application Assessment TechniquesApplication Assessment Techniques
Application Assessment Techniques
 
Software Quality without Testing
Software Quality without TestingSoftware Quality without Testing
Software Quality without Testing
 
Testing Theories & Methodologies
Testing Theories & MethodologiesTesting Theories & Methodologies
Testing Theories & Methodologies
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdf
 
Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007
 
SQA_Lec#01-1.ppt
SQA_Lec#01-1.pptSQA_Lec#01-1.ppt
SQA_Lec#01-1.ppt
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?Are Agile And Secure Development Mutually Exclusive?
Are Agile And Secure Development Mutually Exclusive?
 
20110223a Special Report By Central Solutions
20110223a Special Report By Central Solutions20110223a Special Report By Central Solutions
20110223a Special Report By Central Solutions
 
Managing Software Debt - Quality Debt Focus - QASIG Kirkland
Managing Software Debt - Quality Debt Focus - QASIG KirklandManaging Software Debt - Quality Debt Focus - QASIG Kirkland
Managing Software Debt - Quality Debt Focus - QASIG Kirkland
 
ppt_se.pdf
ppt_se.pdfppt_se.pdf
ppt_se.pdf
 
A Roadmap to Enterprise Quality
A Roadmap to Enterprise QualityA Roadmap to Enterprise Quality
A Roadmap to Enterprise Quality
 
requirement engineering
requirement engineeringrequirement engineering
requirement engineering
 

Kürzlich hochgeladen

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Kürzlich hochgeladen (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

Software Quality

  • 1. Software Quality: The Elusive Target? Syed Sohail Javaad 28th July 2011
  • 2. Presentation Theme • Introduction to Quality • Software Quality • Addressing Software Quality • Final Discussion • Theme for the Term Paper Software Quality - An Elusive Target 2
  • 4. Introduction to Quality* • What is Quality? • How do writers define Quality? – Conformance to requirements – Customers’ reactions – Notions of completeness – Notions of cost effectiveness • Defining Quality is a problem. Why? – Ambiguous and subjective. • …lies in the eye of beholder • Depends on who is the respondent? • Depends on requirements and psychology • Quality Vs. Grade * Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on Quality Systems (Winter Quality at UW). Used with permission Software 2011 - An Elusive Target 4
  • 5. Introduction to Quality* • Measurement and Scope: – How much Quality is good enough? – Where to start and where to stop? • Cost-Benefit trade-off – Example: Five 9s • How to achieve Quality? – Is quality about documentation only or standards or processes or everything? • Who is responsible for Quality? * Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on Quality Systems (Winter Quality at UW). Used with permission Software 2011 - An Elusive Target 5
  • 6. Introduction to Quality • Misconceptions* – Quality is only about testing and audits – Quality is the job of Quality department – Even with all these, you may not have actual quality or a quality system * Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on Quality Systems (Winter Quality at UW). Used with permission Software 2011 - An Elusive Target 6
  • 7. Cost of Quality • Cost of providing acceptable quality • Two types of costs: – Conformance costs: defect prevention and inspection – Non-conformance costs: losses from defects (reworks) and product failures • Improvements in quality, therefore leads to lowered cost because of reduced defects, less process failures and opportunity costs Software Quality - An Elusive Target 7
  • 8. Returns to Quality • Focusing on quality by just reducing costs may not result in better performance. • Focus on revenue generation is also important Software Quality - An Elusive Target 8
  • 9. PMBOK’s Approach Software Quality - An Elusive Target 9
  • 11. Characteristics of Software • Deming: “If you do not have a competitor today, you will get one tomorrow” • Appreciating that software is different because it is characterised by volatility and rapid change • Low barriers to entry in the market • Internet enabled market place provides variety and product knowledge to customers • Producing a product without defects is not sufficient • Knowing the customer and the environment is really important • Cooperation and Collaboration are the keys to success Software Quality - An Elusive Target 11
  • 12. What is Software Quality? • A recent survey of Chief Information Officers (CIOs)indicates that ‘‘Improve IT quality” is one of the top concerns facing IT executives • But the question is: What is Software Quality? • “The extent to which software satisfies its users” • It is not only concerned with meeting user requirements but also with criteria such as ease of learning, ease of use, enjoyment to use and so on… Software Quality - An Elusive Target 12
  • 13. User Developer Measurable   External quality features x yes speed x x yes space x x yes network usage x x yes stability x x yes robustness x x somewhat ease-of-use x subjective determinism x x yes back-compatibility x yes security x difficult power consumption x difficult Internal quality test coverage x yes testability x hard portability x somewhat thread-safeness x hard conciseness x somewhat maintainability x hard documentation x subjective legibility x subjective scalability x somewhat Software Quality - An Elusive Target 13
  • 14. Views on Software Quality* • Transcendental view: Ideal • User View: Fitness for purpose; product characteristics; product usability • Manufacturing View: “Did you build the thing right”; believes that process improvement will lead to improved product quality; may lead to standards • Product View: focus on Internal and inherent characteristics of a product eg. quality of code • Value based view: quality is what the customer is willing to pay for; value for money * D. Garvin, “What Does “Product Quality” Really Mean?” Sloan Management Review, Fall 1984, pp. 25-45 Software Quality - An Elusive Target 14
  • 15. Measurement of Software Quality* The way we choose to measure quality depends on the view point we take… •User View: Quality concept can be broken down into directly measurable attributes •Manufacturing View: measuring defect counts and rework costs (cost of defect correction) •Business View: How the product enables a business to expand and gain more market share * Kitchenham, B.; Pfleeger, S.L.; , "Software quality: the elusive target [special issues section]," Software, IEEE , vol.13, no.1, pp.12-21, Jan 1996; doi: 10.1109/52.476281 Software Quality - An Elusive Target 15
  • 16. Some Measures of Software Quality • Number of pre- and post-release defects • Defect Density • Mean Time Between Failures (MTFB) • Customer Perceived Quality Software Quality - An Elusive Target 16
  • 17. Software Quality: Greek Chimera* • Why? – the perceived scale of the problem, – the diversity of quality defects in software, and – the difficulty of factoring high level quality attributes down to tangible properties – Market Structure – Spread of Internet – ?? *R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284 Software Quality - vol. 13, no. 1, 17
  • 18. Addressing Software Quality Software Quality - An Elusive Target 18
  • 19. The Software Development Process Waterfall Software Quality - An Elusive Target 19
  • 20. The Software Development Process Agile Software Quality - An Elusive Target 20
  • 21. The Software Development Process • Iterative approach should not be reactive and must be carefully planned • Frequent and unplanned iterations may lead to deviations from the desired results Software Quality - An Elusive Target 21
  • 22. Addressing Product Quality* • Quality Model Framework: – Links product properties that influence Quality with a set of high-level quality attributes • Quality carrying properties (tangible): – Internal Correctness: Component’s normal form should not be violated eg. Every loop must have a termination point – Contextual Correctness: Avoiding redundancy and repetition – Descriptive: Easy to understand code, variable names etc. • Software Quality Attributes (intangible): – high-level attributes like functionality, reliability, efficiency and maintainability – Process maturity (assuming that it impacts product quality) • Define linkages: – Example: redundancy affects efficiency and maintainability • Implement the model for the key products of software development: Implementation, Design and Requirements *R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284 Software Quality - vol. 13, no. 1, 22
  • 23. Addressing Product Quality* • Implementation Quality Model: – Role of programming languages; language structure and statements; data (variables, constants etc) • Requirements Quality Model: – Must be complete, precise, consistent, explicit, understandable, implementable, verifiable, traceable and non-redundant – Prototyping may be used to achieve this • Design Quality Model: – The design must show how each of these requirements is to be realized in the context of the overall system: focus on overall architecture – Reduced variety of software structure leads to reduced complexity *R. Geoff Dromey, "Cornering the Chimera," IEEE Software, An Elusive Targetpp. 33-43, Jan. 1996, doi:10.1109/52.476284 Software Quality - vol. 13, no. 1, 23
  • 24. Addressing Product Quality • Controlling defects controls cost • But is it possible to prevent defects from passing on to the customer? Maybe. • Is testing sufficient? • What about rapidly changing requirements? • Maybe a process oriented view is better? Software Quality - An Elusive Target 24
  • 25. Software Quality - An Elusive Target 25
  • 26. Improving Process for Improved Software Quality • Process Improvements: – Total Quality Management – Six Sigma – Failure Mode and Effect Analysis (FMEA) – Design reviews – Voice of the Customers – Continuous Improvement (Including Process Improvements: CMMI, OPM3) – Software Quality Function Deployment (SQFD) Software Quality - An Elusive Target 26
  • 27. Software Quality Function Deployment (SQFD) • Focuses on requirements planning phase • Steps: – Customer requirements are solicited – Product specifications are generated using these requirements – Customers are asked to correlate between their requirements and the product specs – Customers are asked to prioritize their requirements – Product specification priorities are developed Software Quality - An Elusive Target 27
  • 28. SQFD - Benefits • Improved User and Management Involvement • Shorter development cycle • Better communication between users and developers • Improved quality overall Software Quality - An Elusive Target 28
  • 29. Total Quality Management* • Instead of post-process inspection and testing focus should be on continuous Improvement in processes and response to user demands • Improvement in development quality leads to improved product quality • An increase in process standardization and tool capability can significantly increase the level of development quality • Does less reporting of defects by customers necessarily mean higher quality? *Marcus A. Rothenberger , “Total quality in Software Quality - An ElusiveAn empirical study of quality drivers and benefits software development: Target 29 in Indian software projects” Information & Management (December 2010), 47 (7-8), pg. 372-379
  • 30. Process Improvement •In assembled goods industry, strong operational excellence in internal product development processes positively impacts market outcomes •In the context of software development in some industries, the relationship between quality and profitability may not be uniform across all customers Software Quality - An Elusive Target 30
  • 31. Process Maturity • Increased CMM levels could: • Improved software product quality (less defects) • lead to less operating cost • better product reliability • Adoption of standards by clients resulted in better requirements (reduced requirements volatility) • Result in higher development quality • but… • Reduction in variance in quality resulting in uniformity in quality • doesn’t mean you start producing good software Software Quality - An Elusive Target 31
  • 32. Software Validation* • Did you build the right thing? • Why? – Usually required for regulated industries – To ensure design is correct – To reduce defects after changes are made • Done in all phases of software development and everybody participates • Validation is considered costly, brittle and more about documentation • In practice, everybody looks for ways to avoid it * Most of the material in section is from lecture slides of Dr. Darrell Raymond from his course on Quality Systems (Winter Quality at UW). Used with permission Software 2011 - An Elusive Target 32
  • 33. Managing Quality on Projects • Quality Management is a key area of project management • Some recent observations: – Release the product, fixes will come later – Minimize the cost at the expense of customer inconvenience Software Quality - An Elusive Target 33
  • 34. Role of Quality Standards • There are so many of them • ISO, CMM, CMMI, IEEE, ANSI, AIAA • Used for the certification function • Can help ensure consistent process quality but their impact on product quality is unclear • Can standards be imposed on program behaviour? • Maybe be mandatory for some industries and may also provide legal cover Software Quality - An Elusive Target 34
  • 35. Will COTS lead to better Organizational Quality? • Enterprise Software may be of good quality but its implementation might not be • Post-Implementation Processes are more important than the Software itself • But Software quality issues may aggravate the overall implementation • Overall IT Architecture become more important and plays an important role in determining overall quality Software Quality - An Elusive Target 35
  • 36. Quality in Outsourcing* • Contracts as a means of managing risk and quality on project • Outsourcing (contracts) helps in improving overall quality • Clients can focus more on quality by outsourcing some of their activities • Fixed Price contracts provide better quality then Time and Material * Gopal, A. and Koka, B. R. (2010), The Role of Contracts on Quality and Returns to Quality in Offshore Software Development Outsourcing. Decision Sciences, 41: 491–516 Software Quality - An Elusive Target 36
  • 37. Is Open Source Software (OSS) the Answer* • Does OSS have more Reliability, performance, scalability, security? • Equivalent OSS/FS applications are more reliable • MySQL database (a leading OSS/FS database) had fewer defects than a set of 200 proprietary programs used for comparison • Sites using Microsoft’s IIS web serving software have over double the average time offline than sites using the Apache software • Surveys report that GNU/Linux systems experience fewer viruses and successful cracks. * http://www.dwheeler.com/oss_fs_why.html Software Quality - An Elusive Target 37
  • 38. Open Source Software Development Process* * http://cio-nii.defense.gov/sites/oss/Open_Source_Software_(OSS)_FAQ.htm Software Quality - An Elusive Target 38
  • 39. Quality In OSS • Open Source Software can be of higher quality* • Users track bugs to their root cause and fix them • Peer Reviews: Developers review each other’s code • Meritocracy • No resource or time pressure * http://www.dwheeler.com/oss_fs_why.html Software Quality - An Elusive Target 39
  • 40. Final Discussion Software Quality - An Elusive Target 40
  • 41. Quality Issues • A software is not just a piece of code • It requires: • hardware • People • Processes • Policies and • Other software (Operating systems, databases, languages, internet and so on) • Example: Enterprise Software * http://www.dwheeler.com/oss_fs_why.html Software Quality - An Elusive Target 41
  • 42. Quality Issues • So Software Quality is not an absolute concept – It is difficult to define… – But easy to blame • Propagation of internet is changing the concept of quality – More and continuous opportunity for testing – Easy to release upgrades – But requirements are also continuously evolving * http://www.dwheeler.com/oss_fs_why.html Software Quality - An Elusive Target 42
  • 43. Role of Organizational Politics • Quality Manager is usually – not a position of power within the organization – Someone without a strong sponsor • Is usually viewed as someone – who creates hurdles (and so increases cost) – Who is “not on our side” • Quality Manager has to be more like a PMBOK Project Manager Software Quality - An Elusive Target 43
  • 44. Role of Quality Manager • A principled friend • Advisor • Relationship builder • Wise • Empathetic • Positive • And most importantly: political Software Quality - An Elusive Target 44
  • 45. Theme for the Term Paper • How has the Concept of Software Quality evolved during the last three decades? • What models and methods for managing quality have evolved? • Is there an improvement in Software Quality? • And is there any empirical evidence for this? Software Quality - An Elusive Target 45
  • 47. BACK Source: R. Geoff Dromey, "Cornering the Chimera," Quality - An Elusive Target no. 1, pp. 33-43, Jan. 1996, Software IEEE Software, vol. 13, 47 doi:10.1109/52.476284

Hinweis der Redaktion

  1. What is quality? Timely, Attractive, desirable, robust, factual, secure, reliable, auditable, predictable, maintainable, environmental, accountable, ethical, precise? Quality is the degree to which a set of inherent characteristics fulfill requirements – PM Book Grade is a category assigned to products or services having the same functional use but different technical characteristics Not meeting quality requirements is a problem; low grade is not High quality vs low grade or low quality vs high grade: Trade off
  2. What is quality? Timely, Attractive, desirable, robust, factual, secure, reliable, auditable, predictable, maintainable, environmental, accountable, ethical, precise? (Make notes using quality lecture)
  3. Definition: “Project Quality Management includes the processes and activities of the performing organisation that determine quality policies, objectives and responsibilities so that the project will satisfy the needs for which it was undertaken.”
  4. Examples of volatility and change is the change in technologies etc So software is more about process and less about product
  5. Thread Safeness:
  6. User view: Thus, each quality-requirement specification includes a measurement concept, unit, and tool, as well as the planned level (the target for good quality), the currently available level, the best possible level (state of- the-art), and worst level. Manufacturing View: Defect counts may lead to process improvements and test efficiency but the impact of defects on operational failures is not clear; Rework is defined as any additional effort required to find and fix problems after documents and code are formally signed-off as part of configuration management. Thus, end-phase verification and validation are usually excluded, but debugging effort during integration and system testing is included. Rework can also be pre-release and post release but only post release rework can be counted towards the measurement of quality (you didn’t find it but the customers did) because pre-release rework contributes towards process improvements.
  7. Defect Density: MTFB:
  8. The Chimera or Chimaera was, according to Greek mythology, a monstrous fire-breathing female creature of Lycia in Asia Minor, composed of the parts of multiple animals: upon the body of a lioness with a tail that ended in a snake's head, the head of a goat arose on her back at the center of her spine. The Chimera was one of the offspring of Typhon and Echidna and a sibling of such monsters as Cerberus and the Lernaean Hydra. The term chimera has also come to describe any mythical animal with parts taken from various animals and, more generally, an impossible or foolish fantasy.
  9. To identify high-level quality attributes of a requirements specification, ask “What do I want to do with this specification?” Principally, you want to use it to describe a problem’s requirements; use it as the basis for design; use it as. the instrument of contract and common understanding among the client, the users, and the developer;
  10. OPM3: Organizational Project Management Maturity Model Also mention Malcolm Baldridge awards
  11. Development quality is indicated by the defects reported before the product release Product quality is indicated by the defects reported by the customers
  12. In other words, control over costs and defects internally enable the firm to cut costs in the manufacturing process while still charging premiums for the high-quality products in the market
  13. Standards may be in computer science, quality assurance, project management, systems engineering, reliability, safety, product standards, process standards and there may be company guidelines too. Standards may be used for repeatable processes, may provide consensus wisdom, cross-specialization, professional discipline, customer protection Standards reduce variance in the process by driving them towards commonality AIAA: American Institute of Aeronautics and Astronautics (e.g. AIAA R-013-1992 Recommended Practice for Software Reliability). Standards can help ensure consistent quality, but primarily for process, not product
  14. Standards may be in computer science, quality assurance, project management, systems engineering, reliability, safety, product standards, process standards and there may be company guidelines too. Standards may be used for repeatable processes, may provide consensus wisdom, cross-specialization, professional discipline, customer protection Standards reduce variance in the process by driving them towards commonality AIAA: American Institute of Aeronautics and Astronautics (e.g. AIAA R-013-1992 Recommended Practice for Software Reliability). Standards can help ensure consistent quality, but primarily for process, not product
  15. When a firm accepts fixed price contracts this shows that they may be more efficient in doing something T&M are usually used when the work being undertaken is new
  16. CEO Scott Trappe explained this result by noting that the open source model encourages several behaviors that are uncommon in the development of commercial code. First, many users don’t just report bugs, as they would do with [proprietary] software, but actually track them down to their root causes and fix them. Second, many developers are reviewing each other’s code, if only because it is important to understand code before it can be changed or extended. It has long been known that peer review is the most effective way to find defects. Third, the open source model seems to encourage a meritocracy, in which programmers organize themselves around a project based on their contributions. The most effective programmers write the most crucial code, review the contributions of others, and decide which of these contributions make it into the next release. Fourth, open source projects don’t face the same type of resource and time pressures that [proprietary] projects do. Open source projects are rarely developed against a fixed timeline, affording more opportunity for peer review and extensive beta testing before release.