Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the 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

System Integration Verification and Validation
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Engineering 1. Software development – the grand view 2. Requirements engineering.
CHAPTER 1 Introduction to SQA.
Overview Lesson 10,11 - Software Quality Assurance
Software project management (intro) Quality assurance.
R&D SDM 1 Metrics How to measure and assess software engineering? 2009 Theo Schouten.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
Chapter#7.  Part 1: Quality Management ◦ ƒ Understand the definition of quality and the different methodologies to provide quality ◦ ƒ Know quality management.
Software Process and Product Metrics
Software Quality Assurance For Software Engineering && Architecture and Design.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
SOFTWARE QUALITY ASSURANCE SOFTWARE QUALITY ASSURANCE  DEFINITIONS OF SQA  SOFTWARE STANDARDS  Process Quality Assurance  Product Quality Assurance.
Chapter 16 Software Quality Assurance
Factor Of Software Quality
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
S OFTWARE Q UALITY A SSURANCE M ODEL. S UGGESTED MODEL One of SQA model that is suggested is a McCall’s model which consists of 11 factors, subsequent.
Software Project Management Fifth Edition
CHAPTER 5 Infrastructure Components PART I. 2 ESGD5125 SEM II 2009/2010 Dr. Samy Abu Naser 2 Learning Objectives: To discuss: The need for SQA procedures.
UNIT-II Chapter : Software Quality Assurance(SQA)
Introduction to Software Quality Assurance (SQA)
Software Quality Assurance
Managing Software Quality
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.
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
Software Quality Assurance Activities
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Software Quality Applied throughout SW Engineering Process Encompasses ▫ Analysis, design, coding, testing, tools ▫ Formal tech reviews ▫ Multi-tiered.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
Quality Control Project Management Unit Credit Value : 4 Essential
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,
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Question To know that quality has improved, it would be helpful to be able to measure quality. How can we measure quality?
Creator: ACSession No: 15 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 Software Quality Assurance & Software Quality Control.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Software Testing and Quality Assurance Software Quality Assurance 1.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
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,
Software quality factors
Quality Factors Chapter Three. Question To know that quality has improved, it would be helpful to be able to measure quality. How can we measure quality?
SEN 460 Software Quality Assurance
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Hussein Alhashimi. “If you can’t measure it, you can’t manage it” Tom DeMarco,
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
Software Quality Control and Quality Assurance: Introduction
Software Quality Management
Software Quality Factors
Rekayasa Perangkat Lunak
Software Quality Assurance
Software Quality Assurance
Software Verification and Validation
SEVERITY & PRIORITY RELATIONSHIP
Source & Courtesy: Doc. S. Dapkūnas
Software Quality Assurance Software Quality Factor
McCall’s Quality Factors
Software Quality Models.
Software Quality Assurance
Software engineering.
مقدمه اي بر مهندسي نيازمنديها
Rekayasa Perangkat Lunak
Software Quality Engineering CS- 449
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software Quality Assurance
Chapter # 2 Software Quality Factors
Presentation transcript:

Prepared by: Hussein Alhashimi

 This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software industry: Measurements of product, process and resource attributes – Planning a measurements program - Goal/Question/Metric - Collection and analysis of software empirical measurements - Building software metrics - Quality concepts – Software quality assurance - Software quality management - Quality planning and control – Quality manual – Product and process standards - Internal and external software quality attributes - Software reviews, walkthrough and inspection – Statistical software quality assurance – Software configuration management - Software reliability – International Software quality models, e.g. ISO 9000 Quality standards and ISO , etc.. – Software process improvement – The Capability Maturity Model (CMM), balanced scorecards. Ethical responsibility to produce high-quality software is also discussed. Students participate in a group project on Software quality assurance.

Topic Introduction and definitions Components of software quality assurance Software quality planning and control Software quality metrics Costs of Software Quality International software quality models Capability maturity model (CMM, CMMI) Personal software process and team software process Concluding remarks, review, and evaluation

 Software Requirements Specification  Software Design  Implementation (Coding & Module Testing)  Integration & Testing Each stage will require some sort of Software Quality Assurance (SQA).

 IEEE Glossary: Degree to which a system, component, or process meets (1) specified requirements, and (2) customer or user needs or expectations  ISO: the totality of features and characteristics of a product or service that bear on its ability to satisfy specified or implied needs

◦ Functionality ◦ Efficiency ◦ Flexibility ◦ Integrity ◦ Interoperability ◦ Maintainability ◦ Portability ◦ Reliability ◦ Reusability ◦ Testability ◦ Usability

In respective stages of software development The degree to which a system, component, or process meets specified requirements. The degree to which a system, component or process meets customer or user needs or expectations.

 Software quality assurance (SQA) is a process that ensures that developed software meets and complies with defined or standardized quality specifications. SQA is an ongoing process within the software development life cycle (SDLC) that routinely checks the developed software to ensure it meets desired quality measures.

SQA encompasses the entire software development process software requirements software design coding source code control code reviews change management configuration management release management

 Decreased number of defects and errors in software  Less rework as a result of less software defects  Reduced development and maintenance cost  Increased software reliability  Increased customer satisfaction  Happier software practitioners

 The software requirement document regarding a software system for managing a hospital laboratory (Super Lab) consists of chapters of requirements. For each section, fill in the name of the factor that best fits the requirement. the requirement (use McCall’s factor model and the attached reading list to choose only one factor per requirements section).

No Section taken from the software requirement document The requirement factors 1 The probability that the “Super-lab” software system will be found in a state of failure during peak hours (9 am to 4 pm) is required to be below 0.5%. 2 The “Super-Lab” software system will enable direct transfer of laboratory results to those files of hospitalized patients managed by the “MD-File” software package. 3The “Super-Lab” software system will include a module that prepares a detailed report of the patient’s laboratory test results during his current hospitalization. (This report will serve as an Appendix to the family physician’s file). The time required to obtain this printed report will be less than 30 seconds; the level of accuracy and completeness will be at least 99%. Reliability Interoperability Correctness

No Section taken from the software requirement document The requirement factors 4 The “Super-Lab” software to be developed for hospital laboratory use may be adapted later for private laboratory use. 5 The training of a laboratory technician, requiring no more than 3 days, will enable the technician to reach level C of “Super-Lab” software usage. This means he or she will be able to manage reception of 20patients per Hour. 6The “Super-Lab” software system will record a detailed user‘s Log. In addition, the system will report attempts by unauthorized persons to obtain medical information from the laboratory test results data base. The report will include the following informations: The network identification of the applying terminal, the system code of the employee who requested that information, the day and time of attempt and the type of attempt. Flexibility Usability Integrity

No Section taken from the software requirement document The requirement factors 7 The “Super-Lab” sub-system that deals with billing patients for their tests may be eventually used as a subsystem in the “physiotherapy center” software package. 8 The different system components should be kept so simple as possible, and very well documented. 9 The software system should be able to serve 12 workstations and 8 automatic testing machines with a single model AS20 server and a cs25 communication server that will be able to serve 25 communication lines. This hardware system should conform to all availability requirements as listed in appendix C Reusability Correctness Efficiency

No Section taken from the software requirement document The requirement factors 10 The “Super-Lab” software package developed for the Linux Operating System should be compatible for applications in a window NT environment. 11 The system software documentation should be clear, self descriptive, and have a high degree of consistency. Portability Usability

The three factor categories belonging to McCall’s factor model are:  Product operations (basic operational characteristics).  Product revision (ability to change).  Product transition (adaptability to new environments).

 There are 11 factors grouped into three categories as follows:  Product operations  Correctness الصواب the functionality matches the specification.  Reliability الموثوقية the extent to which the system fails.  Efficiency الكفاءة, system resource (including cpu, disk, memory, network) usage.  Integrity النزاهة, protection from unauthorized access.  Usability سهولة الاستخدام, ease of use.

 Product revision  Maintainability الصيانة, the ability to find and fix a defect.  Flexibility المرونة قابلية, the ability to make changes required as dictated by the business.  Testability الاختبار قابلية, the ability to Validate the software requirements.

 Product transition  Portability قابلية التشغيل في بيئة مختلفة the ability to transfer the software from one environment to another.  Reusability قابلية إعادة استخدام the ease of using existing software components in a different context.  Interoperability قابلية التشغيل و التفاعل مع برامج اخرى the extent, or ease, to which software components work together.