Presentation is loading. Please wait.

Presentation is loading. Please wait.

COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility.

Similar presentations


Presentation on theme: "COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility."— Presentation transcript:

1 COURSE TITLE: 1 Software Quality Assurance

2 Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility of a QA tester. Document/executing test case. Introduction to defect reporting and tracking. Writing metrics. Information Technology Project Management, Fourth Edition 2

3 Learning Outcomes At the end of this course should be able to understands: How to defects,classify,prevent, and remove defects. Conduct formal inspection, record,evaluate results of inspection. Chose effective strategies of testing. Distinguish between the software testing and the quality assurance. Information Technology Project Management, Fourth Edition 3

4 4 Assessment Methods:  Continuous assessment : 20%  Midterm Exam : 30%  Total 100%  Final Exam : 50 %

5 Taher Saad Ahmed Introduction to Software Quality engineering

6 Agenda 6 What is Quality? Aspect of quality ? Quality Issues in life cycle model Quality planning and risk management ? Discuss the importance of quality assurance.

7 We all have an idea about the meaning of quality. Software Quality: an overview But when it comes to software quality disagreements between people arises. But when it comes to software quality disagreements between people arises. Most software professionals understand software quality as testing, verification and validation of software. Most software professionals understand software quality as testing, verification and validation of software.

8 8 Software Quality: an overview  Quality is achieved when a project and product meets the client’s needs and expectations.  Several studies shown that the success of any project depends largely on the quality of product or service delivered to the clients.

9 9 Definitions of Software Quality:  The concept of ‘Software Quality’ can be described from five different perspectives as follow: 1.User View: quality is fitness for purpose or meeting user’s needs.  Fitness for use means take customer requirements and expectations into account.

10 10 Definitions of Software Quality: 1.Transcendental View: quality is hard to define generally associated with some intangible properties that delight users. 1.Value View: quality is the customers’ willingness to pay for a software

11 11 Definitions of Software Quality: 1.Product View: the focus is on inherent characteristics in the product itself 1.Manufacturing View: quality means conformance to process standards.

12 Aspect of Quality(ISO framework) 12 Functionality: A set of attributes that bear on the existence of a set of functions and their specified properties. The functions are those that satisfy stated or implied needs. The sub-characteristics include: - Suitability- Accuracy- Interoperability- Security. Reliability: A set of attributes that bear on the capability of software to maintain its level of performance under stated conditions for a stated period of time. The sub-characteristics include: - Maturity- Fault tolerance - Recoverability

13 Cont… 13 Usability: A set of attributes that bear on the effort needed for use, and on the individual assessment of such use, by a stated or implied set of users. The sub characteristics include: Understandability- Learnability- Operability Efficiency: A set of attributes that bear on the relationship between the level of performance of the software and the amount of resources used, under stated conditions.The sub-characteristics include: - Time behavior - Resource behavior

14 Cont… 14 Maintainability: A set of attributes that bear on the effort needed to make specified modifications. The sub- characteristics include: Analyzability- Changeability - Stability - Testability. Portability: A set of attributes that bear on the ability of software to be transferred from one environment to another. The sub-characteristics include: Adaptability- Installability- Conformance- Replaceability.

15 Definitions: Error, fault, failure, and defect 15 Key to the correctness aspect of software quality is the concept of defect, failure, fault, and error. Failure: The inability of a system or component to perform its required functions within specified performance requirements.

16 Cont… 16 Fault: An incorrect step, process, or data definition in a computer program. Error: A human action that produces an incorrect result. All this refer to defect

17 Quality in software engineering 17 divide software engineering into four progressive stages: 1. In the functional stage, the focus was on providing the automated functions to replace what had been done manually before. 2. In the schedule stage, the focus was on introducing important features and new systems on a timely and orderly basis to satisfy urgent user needs. 3. In the cost stage, the focus was on reducing the price to stay competitive accompanied by the widespread use of personal computers. 4. In the reliability stage, the focus was managing users’ quality expectations under the increased dependency on software and high cost or severe damages associated with software failures.

18 Summary Information Technology Project Management, Fourth Edition 18 Quality has many definition according to ask. Quality framework has six an important character. Quality dealing with defect detection and correction

19 End lecture 19

20 Quality Planning 20 Implies the ability to anticipate situations and prepare actions to bring about the desired outcome. Important to prevent defects by:  Selecting proper materials.  Training and indoctrinating people in quality.  Planning a process that ensures the appropriate outcome.

21 Quality Assurance Information Technology Project Management, Fourth Edition 21 quality assurance (QA) can be viewed as to ensure that few, if any, defects remain in the software system when it is delivered to its customers or released to the market. Furthermore, we want to ensure that these remaining defects will cause minimal disruptions or damages. A quality audit is a structured review of specific quality management activities that help identify lessons learned that could improve performance on current or future projects.

22 classify QA alternatives Information Technology Project Management, Fourth Edition 22 Defect prevention through error blocking or error source removal: These QA activities prevent certain types of faults from being injected into the software. Since errors are the missing or incorrect human actions that lead to the injection of faults into software systems, we can directly correct or block these actions, or remove the underlying causes for them.

23 Cont… Information Technology Project Management, Fourth Edition 23 Defect reduction through fault detection and removal: These QA alternatives detect and remove certain faults once they have been injected into the software systems. In fact, most traditional QA activities fall into this category. For example, Inspection directly detects and removes faults from the software code, design, ect. Testing removes faults based on related failure observations during program execution.

24 Cont…. Information Technology Project Management, Fourth Edition 24 Defect containment through failure prevention and containment: These containment measures focus on the failures by either containing them to local areas so that there are no global failures observable to users, or limiting the damage caused by software system failures.

25 Quality issue in the life cycle model 25 Various defect prevention activities are typically concentrated in the earlier phases of software development, before actual faults have been injected into the software systems. There are several important reasons for this focus on early development phases:

26 Reason cont… Information Technology Project Management, Fourth Edition 26 The error sources are typically associated with activities in these early phases, such as conceptual mistakes by designers and programmers, unfamiliarity with the product domain, etc. Therefore,error source removal, a primary method of defect preventions, Although some faults could be injected into the software systems during testing and other late development phases, the experience tells us that the vast majority of faults are injected in the early development phases,. Therefore, effective defect prevention through error blocking needs to be carried out during these phases.

27 27

28 QUALITY ENGINEERING: ACTIVITIES AND PROCESS Information Technology Project Management, Fourth Edition 28 there are three major groups of activities in the quality engineering process: pre-QA activities. in-QA activities. post-QA activities:

29 29

30 Cont… Information Technology Project Management, Fourth Edition 30 1. Pre-QA activities: Quality planning. These are the activities that should be carried out before carrying out the regular QA activities. There are two major types of pre-QA activities in quality planning, including: (a) Set specific quality goals. (b) Form an overall QA strategy, which includes two sub activities: i. Select appropriate QA activities to perform. ii. Choose appropriate quality measurements and models to provide feedback, quality assessment and improvement.

31 Cont …. Information Technology Project Management, Fourth Edition 31 In-QA activities: Executing planned QA activities and handling discovered defects. In addition to performing selected QA activities, an important part of this normal execution is to deal with the discovered problems.

32 Cont …. Information Technology Project Management, Fourth Edition 32 Post-QA activities: Quality measurement, assessment and improvement These are the activities that are carried out after normal QA activities have started but not as part of these normal activities. The primary purpose of these activities is to provide quality assessment and feedback so that various management decisions can be made and possible quality improvement initiatives can be carried out.

33 feedback in the quality engineering process Information Technology Project Management, Fourth Edition 33 The short term feedback to QA activities typically provides information for progress tracking, activity scheduling, and identification of areas that need special attentions. The long-term feedback to the overall quality engineering process comes in two forms: 1. Feedback to quality planning so that necessary adjustment can be made to quality goals and QA strategies. For example, if the current quality goals are unachievable, alternative goals need to be negotiated. If the selected QA strategy is inappropriate, a new or modified strategy needs to be selected.

34 long-term feedback Cont… Information Technology Project Management, Fourth Edition 34 Feedback to the quality assessment and improvement activities. For example, the modeling results may be highly unstable, which may well be an indication of the model inappropriateness. In this case, new or modified models need to be used, probably on screened or pre-processed data.

35 QUALITY PLANNING: GOAL SETTING AND STRATEGY FORMATION 35 1. Setting quality goals by matching customer’s quality expectations with what can be economically achieved by the software development organizations in the following sub-steps: (a) Identify quality views and attributes meaningful to target customers and users. (b) Select direct quality measures that can be used to measure the selected quality (c) Quantify these quality measures to set quality goals while considering customer’s perspective. marketting environment and the cost of achieving different quality goals.

36 Cont… Information Technology Project Management, Fourth Edition 36 2. In forming a QA strategy, we need to plan for its two basic elements: (a) Map the above quality views, attributes, and quantitative goals to select a specific set of QA alternatives. (b) Map the above external direct quality measures into internal indirect ones via selected quality models. This step selects indirect quality measures as well as usable models for quality assessment and analysis.

37 Summary Information Technology Project Management, Fourth Edition 37 Project quality management ensures that the project will satisfy the needs for which it was undertaken. Main processes include:  Quality planning  Quality assurance  Quality control


Download ppt "COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility."

Similar presentations


Ads by Google