1 Chapter 1 The Software Quality Challenge. 2 The uniqueness of software quality assurance  DO you think that there is a bug-free software?  Can software.

Slides:



Advertisements
Similar presentations
1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
Advertisements

OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Systems Analysis, Prototyping and Iteration Systems Analysis.
PERTEMUAN - 2 SOFTWARE QUALITY. OBJECTIVES After completing this chapter, you will be able to: ■ Define software, software quality and software quality.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 6/e (McGraw-Hill 2005). Slides copyright 2005 by Roger Pressman.1.
Difference between project and other assignments  real customer  before programming: negotiations with client to clarify requirements  often.
CHAPTER 1 Introduction to SQA.
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 What is software? Software errors, faults and failures Classification.
Quality assurance in software production Lari Karppinen
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
OHT 13.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 What is a CASE tool? The contribution of CASE tools to software product.
Software Quality Assurance
Galin, SQA from theory to implementation © Pearson Education Limited Chapter 13 CASE Tools and their Effect on Software Quality.
Software Quality Assurance What is software quality?
Chapter 1 The Uniqueness of Software Quality Assurance
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Chapter 2 Please note that author slides have been significantly modified.
SQA Architecture Software Quality.
 Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis.
Chapter 1 The Uniqueness of Software Quality Assurance.
SE513 Software Quality Assurance Lecture04: Contract Review Galin, SQA from Theory to Education Limited 2004.
1 Chapter 1 The Software Quality Challenge. 2 The uniqueness of software quality assurance  DO you think that there is a bug-free software?  Can software.
The Software Quality Challenge
SQA Architecture Software Quality By: MSMZ.
Chapter 2 What is software quality ?. Outline What is software? Software errors, faults and failures Classification of the causes of software errors Software.
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Software Project Management
1 Chapter 1 The Software Quality Challenge. 2 The uniqueness of software quality assurance  DO you think that there is a bug-free software?  Can software.
Laudon & Laudon: Canadian Edition
Chapter 4 Components of the Software Quality Assurance System
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
SE513 Software Quality Control Lecture01: Introduction to Software Quality Assurance Galin, SQA from Theory to Education Limited.
Software is:  Computer programs, procedures, and possibly associated documentation and data relates to the operation of a computer system. [IEEE_Std_ ]
Chapter 3: Software Maintenance Process Omar Meqdadi SE 3860 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
S Q A.
 Black Box Testing Techniques © Sheridan College SYST30009-Engineering Quality Software 4.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Tutorial 1: Date: 19/09/2012 Instructor: Hanif Ullah
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
Software Engineering Jon Walker. What is Software Engineering? Why do we call it Software Engineering? Why not just call it programming or software development?
Click to add text Systems Analysis, Prototyping and Iteration.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
CS3320-Chap21 Office Hours TR 1:00-2:15 PM W 2:30-3:30 PM By appointment.
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill Stephen R. Schach 1.
Chapter 1 Outline - The uniqueness of software quality assurance - The environments for which SQA methods are developed.
C++ for Engineers and Scientists, Second Edition 1 Problem Solution and Software Development Software development procedure: method for solving problems.
Multitude of source of errors - various style of source of errors will affect the SQA components * The environment in which software development & maintenance.
SEN 460 Software Quality Assurance. Bahria University Karachi Campus Waseem Akhtar Mufti B.E(CSE) UIT, M.S(S.E) AAU Denmark Assistant Professor Department.
Lecture#1 Introduction….Cont Software Quality Engineering Subject : 19(A/B) – {Assignment /Query}
Chapter 1 the uniqueness of software quality assurance Dr. AlaaEddin Almabhouh.
CASE Tools and their Effect on Software Quality
CASE (Computer-Aided Software Engineering) Tools
Chapter 2 What is software quality?. Outline What is software? Software errors, faults and failures differences Classification of the causes of software.
What is software quality
Software Project Configuration Management
Components of software quality assurance system overview
Chapter 1 The Uniqueness of Software Quality Assurance
Software Verification and Validation
Software Verification and Validation
The Software Quality Challenge
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
What is software quality?
What is software quality?
Chapter # 1 Overview of Software Quality Assurance
Software Quality assurance SQA – SWE 333
Presentation transcript:

1 Chapter 1 The Software Quality Challenge

2 The uniqueness of software quality assurance  DO you think that there is a bug-free software?  Can software developers warrant their software applications and their documentation from any bugs or defects ?  What are the essential elemental differences between software and other industrial products such as automobiles, washing machines etc?

3 The essential differences between software and other industrial products can be categorized as follows : 1. Product complexity : # of operational modes the product permit. 2. Product visibility : SW products are invisible. 3. Product development and production process.

4 The phases at which the possibility of detecting defects in industrial products and software products: SW products do not benefit from the opportunities for detection of defects at the three phases of the production process Industrial products:  Product development : QA -> product prototype  Product production planning : Production - line  Manufacturing : QA procedure applied Software products:  Product development : QA -> product prototype  Product production planning : Not required  Manufacturing : Copying the product & printing copies

5 Factors affecting detecting defects in SW products VS other industrial products: CharacteristicSW productsOther industrial products Complexity Usually, v. complex allowing for v. large number of operational options Degree of complexity much lower Visibility Invisible, impossible to detect defects or omissions by sight ( diskette or CD storing ) Visible, allowing effective detection of defects by sight Nature of development and production process Opportunities to detect defects arise in only one phase, namely product development Opportunities to detect defects arise in all phases of development and production

6 Important Conclusion The great complexity as well as invisibility of software, among other product characteristics, make the development of SQA methodologies and its successful implementation a highly professional challenge

7  Pupils & students  Hobbies  Engineers, economics, mgt & other fields  SW development professionals All those SW developers are required to deal with SW quality problems “Bugs” The environment for which SQA methods are developed

8 SQA environment The main characteristics of this environment : 1. Contractual conditions 2. Subjection to customer-supplier relationship 3. Required teamwork 4. Cooperation and coordination with other SW teams 5. Interfaces with other SW systems 6. The need to continue carrying out a project despite team member changes. 7. The need to continue out SW maintenance for extended period.

9 Contractual conditions the activities of SW development & maintenance need to cope with :  A defined list of functional requirements  The project budget  The project timetable

10 Subjection to customer-supplier relationship  SW developer must cooperate continuously with customer : To consider his request to changes To discuss his criticisms To get his approval for changes

11 Required teamwork  Factors motivating the establishment of a project team: Timetable requirements The need of variety The wish to benefit from professional mutual support & review for enhancement of project quality

12 Cooperation and coordination with other SW teams  Cooperation may be required with: Other SW dev. Teams in the same org. HW dev. teams in the same org. SW & HW dev. teams of other suppliers Customer SW and HW dev. teams that take part in the project’s dev.

13 Interfaces with other SW Systems  Input interfaces  Output interfaces  I/O interfaces to the machine’s control board, as in medical and lab. Control systems

14 The need to continue carrying out a project despite team member changes.  During project dev. Period we might be face : Leave from the members of the team Switch in employees Transfer to another city

15 The need to continue out SW maintenance for extended period.  From 5 to 10 years, customers need continue to utilizing their systems: Maintenance Enhancement Changes ( Modification )

16 Chapter 2 What is Software Quality ?

17 What is Software ?  IEEE Definition: Software Is : Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system.

18 IEEE Definition is almost identical to the ISO def. ( ISO/IEC )  Computer programs (“Code”)  Procedures  Documentation  Data necessary for operation the SW system.

19 TO sum up: Software quality assurance always includes :  Code quality  The quality of the documentation  And the quality of the necessary SW data

20 SW errors, faults and failures  Questions arise from HRM conference Page 16.  An error : can be a grammatical error in one or more of the code lines, or a logical error in carrying out one or more of the client’s requirements.  Not all SW errors become SW faults.  SW failures that disrupt our use of the software.

21 The relationship between SW faults & SW failures:  Do all SW faults end with SW failures? The answer is not necessarily The SW fault becomes a SW failure only when it is activated.  Example page 17-18

22 Classification of the causes of SW errors  SW errors are the cause of poor SW quality  SW errors can be Code error Documentation error SW data error  The cause of all these errors are human

23 The nine causes of software errors 1. Faulty requirement definition 2. Client-developer communication failures 3. Deliberate deviation from SW requirements 4. Logical design errors 5. Coding errors 6. Non-compliance with documentation and coding instructions 7. Shortcomings of the testing process 8. Procedure errors 9. Documentation errors

24 Faulty requirement definition 1. Erroneous definition of requirements 2. Absence of vital requirements 3. Incomplete definition of requirements 4. Inclusion of unnecessary requirements

25 Client-developer communication failures  Misunderstandings resulting from defective client-developer comunications.  Misunderstanding of the client’s requirements changes presented to the developer In written forms Orally Responses to the design problems others

26 Deliberate deviation from SW requirements  The developer reuse SW modules taken from the earlier project  Due to the time budget pressure  Due to the unapproved improvements

27 Logical design errors  This is come from systems architects, system analysts, SW engineers such as: Erroneous algorithms Process definitions that contain sequencing errors Erroneous definition of boundary conditions Omission of required SW system states Omission of definitions concerning reactions to illegal operations

28 Coding errors  Misunderstanding the design documentation  Linguistic errors in the prog. Lang.  Errors in the application of CASE and other dev. Tools  etc

29 Non-compliance with documentation and coding  Team members who need to coordinate their own codes with code modules developed by non-complying team members  Individuals replacing the non-complying team member will find it difficult to fully understand his work.  Design review to other non-complying team

30 Shortcomings of the testing process  Incomplete testing plans  Failures to document and report errors and faults  Failures to promptly correct detected SW faults as a result of inappropriate indications of the reasons for the fault.  Incomplete correction of detected errors.