Based on D. Galin, and R. Patton.  According to D. Galin  Software quality assurance is:  A systematic, planned set of actions necessary to provide.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

Software Quality Assurance Plan
PERTEMUAN - 2 SOFTWARE QUALITY. OBJECTIVES After completing this chapter, you will be able to: ■ Define software, software quality and software quality.
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
CHAPTER 1 Introduction to SQA.
Stepan Potiyenko ISS Sr.SW Developer.
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 What is software? Software errors, faults and failures Classification.
School of Computing, Dublin Institute of Technology.
Software Engineering For Beginners. General Information Lecturer, Patricia O’Byrne, office K115A. –
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
9 1 Chapter 9 Database Design Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
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.
Introduction to Software Testing
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality - continued So let’s move on to ‘exactly’ what we mean.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Software Process Activities. Process activities Real software processes are inter-leaved sequences of technical, collaborative and managerial activities.
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
Introduction to Software Quality Assurance (SQA)
Chapter 2 What is software quality ?. Outline What is software? Software errors, faults and failures Classification of the causes of software errors Software.
Systems Analysis and Design
Managing Software Quality
S OFTWARE Q UALITY QA: Quality Assurance By: MSMZ.
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.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
Software Quality Assurance Activities
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
Software System Engineering: A tutorial
Requirements Engineering How do we keep straight what we are supposed to be building?
SE513 Software Quality Control Lecture01: Introduction to Software Quality Assurance Galin, SQA from Theory to Education Limited.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
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,
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Project quality management. Introduction Project quality management includes the process required to ensure that the project satisfies the needs for which.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
1 Quality Attributes of Requirements Documents Lecture # 25.
Software Engineering Lecture # 1.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Software Testing Mehwish Shafiq. Testing Testing is carried out to validate and verify the piece developed in order to give user a confidence to use reliable.
Software Requirements Specification Document (SRS)
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
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.
Week # 4 Quality Assurance Software Quality Engineering 1.
Getting Ready for the NOCTI test April 30, Study checklist #1 Analyze Programming Problems and Flowchart Solutions Study Checklist.
 System Requirement Specification and System Planning.
Software Quality Control and Quality Assurance: Introduction
Classifications of Software Requirements
The Development Process of Web Applications
Software Verification and Validation
Software Process Activities.
Software Verification and Validation
SEVERITY & PRIORITY RELATIONSHIP
Topic for Presentaion-2
Quality Management Perfectqaservices.
Introduction to Software Testing
What is software quality?
Maintenance.
What is software quality?
Chapter # 1 Overview of Software Quality Assurance
Presentation transcript:

Based on D. Galin, and R. Patton

 According to D. Galin  Software quality assurance is:  A systematic, planned set of actions necessary to provide sufficient assurance that the software development process or the maintenance process of a software system product conforms to established functional technical requirements as well as with the managerial requirements of keeping the schedule and operating within the budgetary confines  According to the IEEE  Software quality assurance is:  1. A planned and systematic pattern of all actions  necessary to provide sufficient confidence that an item  or product conforms to established technical  requirements.  2. A set of activities designed to evaluate the process by  which the products are developed or manufactured.

 (1) Assuring an acceptable level of confidence that the software will conform to functional technical requirements. A function is described as a set of inputs, the behavior (use case) and outputs. Functional requirements may be calculations, data manipulation and processing and other specific functionality that define what a system is supposed to accomplish Functional requirements are supported by non-functional requirements, which enforce constraints on the design or implementation (such as performance requirements, security, or reliability).on-functional requirements Functional requirements are expressed in the form "system must do ", while non-functional requirements are "system shall be ". The plan for implementing functional requirements is detailed in the system design. The plan for implementing non-functional requirements is detailed in the system architecture.  (2) Assuring an acceptable level of confidence that the software will conform to managerial scheduling and budgetary requirements.

 The logical design of a system relates to an abstract representation of the data flows, inputs and outputs of the system  Often conducted via modelling, using an over-abstract (and sometimes graphical) model of the actual system. Logical design includes ER Diagrams

 The physical design relate to the actual input and output processes of the system.  In terms of how data is input into a system, how it is verified/authenticated, how it is processed, and how it is displayed as In Physical design, the following requirements about the system are decided.  Input requirement,  Output requirements,  Storage requirements,  Processing Requirements,  System control and backup or recovery.

 (1) Assuring an acceptable level of confidence that the software  maintenance activities will conform to the functional  technical requirements.  (2) Assuring an acceptable level of confidence that the software  maintenance activities will conform to managerial  scheduling and budgetary requirements.  The importance of software maintenance  A study by Lientz and Swanson, categorized maintenance activities into four classes:  Adaptive – modifying the system to cope with changes in the software environment (Ex. DBMS, OS)  Perfective – implementing new or changed user requirements which concern functional enhancements to the software  Corrective – diagnosing and fixing errors, possibly ones found by users  Preventive – increasing software maintainability or reliability to prevent problems in the future

● Know what you are doing ● Know what you should be doing ● Know how to measure the difference

1.Know what you are doing – understand what is being built, how it is being built and what it currently does  suppose a software development process with management structure (milestones, scheduling) reporting policies, tracking

2. Know what you should be doing – having explicit requirements and specifications – presume a software development process with requirements analysis, acceptance tests, frequent user feedback

3. Know how to measure the difference – having explicit measures comparing what is being done from what should be done Complementary methods: ● formal methods – verify mathematically specified properties ● testing – explicit input to exercise software and check for expected output ● inspections – human examination of requirements, design, code,... based on checklists

SQA includes ● Verification – are we building the product right ? – performed at the end of a phase to ensure that requirements established during previous phase have been met ● Validation – are we building the right product ? – performed at the end of the development process to ensure compliance with product requirements

REQUIREMENT ARCHITECTING LOW DESIGN CODING Verification

 Reliability Requirements  Reliability is to have your system available in the worst possible scenario. To achieve these goals exist redundancy that provides data reliability, and fault tolerance that provides disk reliability.fault tolerance  Portability Requirements  System can be easily and quickly docked to a new specified environment when necessary.  Usability Requirements  Usability involves satisfaction and learnability, because if the common user can not learn naturally what the system can and can not do then he will not use it.  Note : without usability the whole system has no meaning because no one will use it  Efficiency Requirements  It comprises two type: ◦ Space Requirements, it involves the space the system or application could fill in its life, for example the amount of disk space the database will occupy in the first year, or maybe the minimun available memory space need it to correctly perform. ◦ Performance Requirements, it includes the application reponse time, for example some applications would need to have a minimum response time of 0.5 seconds. With this requirement you have to consider how the system will change overtime.  Nietho,J, Nietho,J,