Software QualityWhat is quality?Other Definitions:TQM principalsSlide 5Software Engineering Culture and EthicsValue and Cost of QualityModels for Quality in SoftwareCMMIISO 9001 Requirements for Quality Management SystemPlanning for SQAMinimum Documentation IEEE Std. 730 RequiresMinimum Software Reviews IEEE Std. 730 RequiresKey Processes to Support SQASQA Process Includes:Measurement for SQAMetric Attributes According to IEEE Std. 1061Slide 18Recommended Life Cycle for Quality MetricsConclusionReferences:Thank you!Software QualityAuthor: Claire LohrPresenter: Ehsan GhaneieWhat is quality?The degree to which a system, component, or process meets specified requirementsThe degree to which a system, component, or process meets customer or user needs or expectationsOther Definitions:Conformance to user requirementsAchieving excellent levels of fitness for useMarket-driven qualityCustomer-driven qualityTQM principalsEveryone has a customerThere is quantitative feedback from all customersCorrective actions occur based on the measuresEvery process has an ownerSoftware Quality Activities:–Quality Assurance (QA)–Quality ControlSoftware Engineering Culture and EthicsEstablish code of ethics for all participants–Impossible for SQA organization to create desired level of quality by itself–Every one has to be committedUsually part of a larger quality improvement programValue and Cost of QualityCost of poor quality software:–Internal and external failuresCost of improving quality:–Prevention and appraisalCost of improving quality is more than offset by savings resulting from higher qualityModels for Quality in SoftwareCMMI-SWISO 9001:2000ISO 90003TickItSix SigmaPlan, Do, Check, Act (PCDA)CMMIRatings from 1 to 5:–1 – Initial–2 – Repeatable–3 – Defined–4 – Managed–5 – OptimizingISO 9001 Requirements for Quality Management SystemGeneral RequirementsDocumentation RequirementsManagement ResponsibilityResource ManagementProduct RealizationMeasurement, analysis, and improvementPlanning for SQAIEEE Std. 730: Standard for Software Quality Assurance–Choose process improvement model–Plan the organization–Show documentation in the life cycle context–Add review, audit, test, problem reporting, and corrective action tasks–Develop the measurement goals and processes–Peer review of the SQAP–Maintenance of the SQAPMinimum Documentation IEEE Std. 730 RequiresSoftware requirements description (SRD)Software design description (SDD)Verification and validation plansVerification and validation results reportUser documentationSoftware configuration management plan (SCMP)Other (defined by the user of the standard)Minimum Software Reviews IEEE Std. 730 RequiresSoftware specifications review (SPR)Architecture design review (ADR)Detailed design review (DDR)Verification and validation plan reviewFunctional auditPhysical auditIn-process auditsManagerial reviewsSoftware CM plan review (SCMPR)Post-implementation reviewOther reviews and audits as definedKey Processes to Support SQASQA processVerification processValidation processReview processSQA Process Includes:Setting standardsChecking compliance with standardsRevising standardsCoaching participantsCollecting, evaluating, and reporting metricsDisseminating best practice examplesProposing potential improvementsMeasurement for SQADesirable attributesUndesirable attributesEach quality criteria can be evaluated with a metricMetric Attributes According to IEEE Std. 1061NameCostsBenefitImpactTarget ValueQuality FactorToolsApplicationData itemComputationInterpretationConsiderationsTraining requiredExampleValidation historyReferencesRecommended Life Cycle for Quality MetricsEstablish software quality requirementsIdentify software quality metricsImplement the software quality metricsAnalyze the software quality metrics resultsValidate the software quality metricsConclusionReferences:http://www.swebok.org/http://www.tickit.org/http://www.sei.cmu.edu/cmmi/http://en.wikipedia.org/wiki/CMMI/Thank
View Full Document