Chapter 7 - Integrating Quality Activities in theProject Life CycleChapter 8 - ReviewsChapter 9 - Software Testing (Strategies)Chapter 10 - Software Testing (Implementation)Chapter 11 - Assuring the Quality of SoftwareMaintenance ComponentsChapter 12 - Assuring the Quality of ExternalParticipant’s ContributionChapter 13 - CASE Tools and Their Effect onSoftware Quality
Chapter 7 Integrating QualityActivities in the Project Life Cycle
• Most quality assurance activities take place in conjunction with the completion or examination of activity milestones, which require review of the product development activities previously completed.• Therefore, SQA professionals should be acquainted with the var- ious software engineering models in order to be able to prepare a quality plan that is properly integrated into the project plan.
Software Development Methodologies• SDLC Model • the model display the major building blocks for the entire development process, described as a linear sequence• Prototyping Model • based on replacement of one or more SDLC phases by an evolutionary process• Spiral Model • provides a methodology for ensuring effective performance at each of the SDLC model phases• Object-oriented Model • incorporated large-scale reuse of software by integrating reusables modules into new software system
Veriﬁcation, Validation, Qualiﬁcation• “Veriﬁcation – The process of evaluating a system or component to deter- mine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.”• “Validation – The process of evaluating a system or component during or at the end of the development process to determine whether it satisﬁes speciﬁed requirements.”• “Qualiﬁcation – The process used to determine whether a system or com- ponent is suitable for operational use.”
The main advantages of automated tests :• Accuracy and completeness of performance• Accuracy of results log and summary reports• Comprehensiveness of information• Few manpower resources required to perform tests• Shorter duration of testing• Performance of complete regression tests• Performance of test classes beyon the scope of manual testing
The main disadvantages of automated tests :• High investments required in package purchasing and training• High package development investment costs• High manpower requirements for test preparation• Considerable testing area left uncovered
Chapter 11Assuring the Quality ofSoftware Maintenance Componenets
Introduction Corrective maintenance – user support services and software corrections.■ Adaptive maintenance – adapts the software package to differences in new customer requirements, changing environmental conditions and the like.■ Functionality improvement maintenance – combines (1) perfective maintenance of new functions added to the software so as to enhance performance, with (2) preventive maintenance activities that improve reliability and system infrastructure for easier and more efﬁcient future maintainability.
The Foundation of High Quality• Foundation 1 : software package quality• Foundation 2 : maintenance policy
Pre-maintenance Software Quality Components•Maintenance contract review•Maintenance plan construction
Maintenance contract review• Customer requirements clariﬁcation• Review of alternative approaches to maintenance provision• Review of estimates of required maintenance resources• Review of maintenance services to be provided by subcontractors/customer• Review of maintenance costs estimates
Maintenance plan• A list of the contracted maintenance services• A description of the maintenance team’s organization• A list of maintenance facilities• A list of identiﬁed maintenance service risks• A list of required software maintenance procedures & controls• The software maintenance budget
Maintenance Software Quality Assurance Tools• SQA tools for corrective • maintenance documentation & maintenance quality records• SQA tools for functionality • Managerial control SQA tools for improvement maintenance software maintenance• SQA infrastructure components for • performance controls for software software maintenance maintenance service • maintenance procedures & WI • quality metrics for software maintenance • supporting quality devices • costs of software maintenance quality • training & certiﬁcation of maintenance teams • cost of external failure of software corrective maintenance activities • preventive & corrective action • conﬁguration management
Chapter 12Assuring the Quality of External Participant’s Contribution
Types of External Participants • Subcontractors • Supplier of COTS software & reused software modules • The customer themselves as participant in performing the project